- removed the remaining native parts of ABasicArmor.
- simplified some FindInventory calls using PClass::FindActor to call the variant taking a name directly.
This commit is contained in:
parent
3148496f57
commit
2fcffd1fc1
18 changed files with 62 additions and 107 deletions
|
|
@ -4955,8 +4955,8 @@ int DLevelScript::CallFunction(int argCount, int funcIndex, SDWORD *args)
|
|||
else
|
||||
{
|
||||
FName p(FBehavior::StaticLookupString(args[0]));
|
||||
ABasicArmor * armor = (ABasicArmor *) players[args[1]].mo->FindInventory(NAME_BasicArmor);
|
||||
if (armor && armor->ArmorType == p) return armor->Amount;
|
||||
auto armor = players[args[1]].mo->FindInventory(NAME_BasicArmor);
|
||||
if (armor && armor->NameVar(NAME_ArmorType) == p) return armor->Amount;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -4965,29 +4965,29 @@ int DLevelScript::CallFunction(int argCount, int funcIndex, SDWORD *args)
|
|||
{
|
||||
if (activator == NULL || activator->player == NULL) return 0;
|
||||
|
||||
ABasicArmor * equippedarmor = (ABasicArmor *) activator->FindInventory(NAME_BasicArmor);
|
||||
auto equippedarmor = activator->FindInventory(NAME_BasicArmor);
|
||||
|
||||
if (equippedarmor && equippedarmor->Amount != 0)
|
||||
{
|
||||
switch(args[0])
|
||||
{
|
||||
case ARMORINFO_CLASSNAME:
|
||||
return GlobalACSStrings.AddString(equippedarmor->ArmorType.GetChars());
|
||||
return GlobalACSStrings.AddString(equippedarmor->NameVar(NAME_ArmorType).GetChars());
|
||||
|
||||
case ARMORINFO_SAVEAMOUNT:
|
||||
return equippedarmor->MaxAmount;
|
||||
return equippedarmor->IntVar(NAME_MaxAmount);
|
||||
|
||||
case ARMORINFO_SAVEPERCENT:
|
||||
return DoubleToACS(equippedarmor->SavePercent);
|
||||
return DoubleToACS(equippedarmor->FloatVar(NAME_SavePercent));
|
||||
|
||||
case ARMORINFO_MAXABSORB:
|
||||
return equippedarmor->MaxAbsorb;
|
||||
return equippedarmor->IntVar(NAME_MaxAbsorb);
|
||||
|
||||
case ARMORINFO_MAXFULLABSORB:
|
||||
return equippedarmor->MaxFullAbsorb;
|
||||
return equippedarmor->IntVar(NAME_MaxFullAbsorb);
|
||||
|
||||
case ARMORINFO_ACTUALSAVEAMOUNT:
|
||||
return equippedarmor->ActualSaveAmount;
|
||||
return equippedarmor->IntVar(NAME_ActualSaveAmount);
|
||||
|
||||
default:
|
||||
return 0;
|
||||
|
|
@ -8235,7 +8235,7 @@ scriptwait:
|
|||
case PCD_PLAYERARMORPOINTS:
|
||||
if (activator)
|
||||
{
|
||||
ABasicArmor *armor = activator->FindInventory<ABasicArmor>();
|
||||
auto armor = activator->FindInventory(NAME_BasicArmor);
|
||||
PushToStack (armor ? armor->Amount : 0);
|
||||
}
|
||||
else
|
||||
|
|
@ -8682,7 +8682,7 @@ scriptwait:
|
|||
{
|
||||
AInventory *sigil;
|
||||
|
||||
if (activator == NULL || (sigil = activator->FindInventory(PClass::FindActor(NAME_Sigil))) == NULL)
|
||||
if (activator == NULL || (sigil = activator->FindInventory(NAME_Sigil)) == NULL)
|
||||
{
|
||||
PushToStack (0);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue