Code: Select all
ACTOR RC_GS_Level1Armor : Inventory
{
Inventory.MaxAmount 1
}
ACTOR RC_GS_Level2Armor : RC_GS_Level1Armor {}
ACTOR RC_GS_FIREArmor : RC_GS_Level1Armor {}
ACTOR RC_GS_NORMALArmor : RC_GS_Level1Armor {}
ACTOR RC_GS_SPIRITArmor : RC_GS_Level1Armor {}
ACTOR RC_GS_Level3Armor : RC_GS_Level1Armor {}
//These are the three basic Armor types.
ACTOR FireArmor : BasicArmorPickup
{
Game Doom
Armor.SaveAmount 1
Armor.SavePercent 50.0
Armor.MaxFullAbsorb 25
Armor.MaxAbsorb 25
Inventory.Icon "FARMB0"
Inventory.MaxAmount 50
DamageFactor "Fire", 0.5
DamageFactor "Normal", 1.0
DamageFactor "Spirit", 1.0
+INVENTORY.IGNORESKILL
}
ACTOR NormalArmor : BasicArmorPickup
{
Game Doom
Armor.SaveAmount 1
Armor.SavePercent 50.0
Armor.MaxFullAbsorb 25
Armor.MaxAbsorb 25
Inventory.Icon "NARMB0"
Inventory.MaxAmount 50
DamageFactor "Normal", 0.5
DamageFactor "Fire", 1.0
DamageFactor "Spirit", 1.0
+INVENTORY.IGNORESKILL
}
ACTOR SpiritArmor : BasicArmorPickup
{
Game Doom
Armor.SaveAmount 1
Armor.SavePercent 50.0
Armor.MaxFullAbsorb 25
Armor.MaxAbsorb 25
Inventory.Icon "PARMB0"
Inventory.MaxAmount 50
DamageFactor "Spirit", 0.5
DamageFactor "Fire", 1.0
DamageFactor "Normal", 1.0
+INVENTORY.IGNORESKILL
}
ACTOR SubparArmor : BasicArmorPickup
{
Game Doom
// Armor.SaveAmount 12
Armor.SavePercent 25.0
Armor.MaxFullAbsorb 12
Armor.MaxAbsorb 12
Inventory.Icon "PARMB0"
Inventory.MaxAmount 25
DamageFactor "Spirit", 0.75
DamageFactor "Fire", 0.75
DamageFactor "Normal", 0.75
+INVENTORY.IGNORESKILL
}
ACTOR SupremeArmor : BasicArmorPickup
{
Game Doom
// Armor.SaveAmount 50
Armor.SavePercent 100.0
// Armor.MaxFullAbsorb 50
Armor.MaxAbsorb 50
Inventory.Icon "PARMB0"
Inventory.MaxAmount 100
DamageFactor "Spirit", 0.01
DamageFactor "Fire", 0.01
DamageFactor "Normal", 0.01
+INVENTORY.IGNORESKILL
}
//Seperate Elemental-Armor items.
ACTOR FireArmor_Pickup : CustomInventory
{
Inventory.PickupMessage "Acquired the Fire Armor."
Inventory.PickupSound "object/elementalarmor"
Inventory.MaxAmount 1
Radius 20
Height 16
+INVENTORY.IGNORESKILL
States
{
Spawn:
FARM B 6
Loop
Pickup:
TNT1 A 0 A_JumpIfInventory("RC_GS_Level3Armor",1,"Pickup.Failure")
TNT1 A 0 A_JumpIfInventory("RC_GS_FIREArmor",1,"Pickup.Failure")
TNT1 A 0 A_GiveInventory("RC_GS_Level2Armor",1)
TNT1 A 0 A_GiveInventory("RC_GS_FIREArmor",1)
TNT1 A 0 A_TakeInventory("FireArmor",50)
TNT1 A 0 A_GiveInventory("FireArmor",50)
Stop
Pickup.Failure:
TNT1 A 0
Fail
}
}
ACTOR NormalArmor_Pickup : CustomInventory
{
Inventory.PickupMessage "Found some Normal Armor."
Inventory.PickupSound "object/elementalarmor"
Inventory.MaxAmount 1
Radius 20
Height 16
+INVENTORY.IGNORESKILL
States
{
Spawn:
NARM B 6
Loop
Pickup:
TNT1 A 0 A_JumpIfInventory("RC_GS_Level3Armor",1,"Pickup.Failure")
TNT1 A 0 A_JumpIfInventory("RC_GS_NORMALArmor",1,"Pickup.Failure")
TNT1 A 0 A_GiveInventory("RC_GS_Level2Armor",1)
TNT1 A 0 A_GiveInventory("RC_GS_NORMALArmor",1)
TNT1 A 0 A_TakeInventory("NormalArmor",50)
TNT1 A 0 A_GiveInventory("NormalArmor",50)
Stop
Pickup.Failure:
TNT1 A 0
Fail
}
}
ACTOR SpiritArmor_Pickup : CustomInventory
{
Inventory.PickupMessage "You put on the Spirit Armor."
Inventory.PickupSound "object/elementalarmor"
Inventory.MaxAmount 1
Radius 20
Height 16
+INVENTORY.IGNORESKILL
States
{
Spawn:
PARM B 6
Loop
Pickup:
TNT1 A 0 A_JumpIfInventory("RC_GS_Level3Armor",1,"Pickup.Failure")
TNT1 A 0 A_JumpIfInventory("RC_GS_SPIRITArmor",1,"Pickup.Failure")
TNT1 A 0 A_GiveInventory("RC_GS_Level2Armor",1)
TNT1 A 0 A_GiveInventory("RC_GS_SPIRITArmor",1)
TNT1 A 0 A_TakeInventory("SpiritArmor",50)
TNT1 A 0 A_GiveInventory("SpiritArmor",50)
Stop
Pickup.Failure:
TNT1 A 0
Fail
}
}
//These are the All-Armor items.
ACTOR StandardArmor : CustomInventory replaces GreenArmor
{
Game Doom
Inventory.PickupMessage "Picked up some basic armor."
Inventory.PickupSound "object/elementalarmor"
SpawnID 68
Radius 20
Height 16
+INVENTORY.IGNORESKILL
States
{
Spawn:
ARMT A 6
Loop
Pickup:
TNT1 A 0 A_JumpIfInventory("RC_GS_Level3Armor",1,"Pickup.Failure")
TNT1 A 0 A_JumpIfInventory("RC_GS_Level2Armor",1,"Pickup.Failure")
TNT1 A 0 A_JumpIfInventory("RC_GS_Level1Armor",1,"Pickup.Failure")
TNT1 A 0 A_GiveInventory("RC_GS_Level1Armor",1)
TNT1 A 0 A_GiveInventory("SubparArmor",25)
TNT1 A 0 A_TakeInventory("FireArmor",25)
TNT1 A 0 A_TakeInventory("NormalArmor",25)
TNT1 A 0 A_TakeInventory("SpiritArmor",25)
TNT1 A 0 A_GiveInventory("FireArmor",25)
TNT1 A 0 A_GiveInventory("NormalArmor",25)
TNT1 A 0 A_GiveInventory("SpiritArmor",25)
Stop
Pickup.Failure:
TNT1 A 0
Fail
}
}
ACTOR SuperArmor : CustomInventory replaces BlueArmor
{
Game Doom
Inventory.PickupMessage "Found the Super Armor!"
Inventory.PickupSound "object/elementalarmor"
SpawnID 69
Radius 20
Height 16
+INVENTORY.IGNORESKILL
States
{
Spawn:
ARM2 A 6
Loop
Pickup:
TNT1 A 0 A_JumpIfInventory("RC_GS_Level3Armor",1,"Pickup.Failure")
TNT1 A 0 A_GiveInventory("RC_GS_Level3Armor",1)
TNT1 A 0 A_GiveInventory("SupremeArmor",100)
TNT1 A 0 A_GiveInventory("FireArmor",100)
TNT1 A 0 A_GiveInventory("NormalArmor",100)
TNT1 A 0 A_GiveInventory("SpiritArmor",100)
Stop
Pickup.Failure:
TNT1 A 0
Fail
}
}