Code: Select all
Actor FistX : XWeapon Replaces Fist
{
Weapon.SlotNumber 1
Weapon.Kickback 300
AttackSound "Weapons/fistx/Hit"
States
{
Ready:
1FIR A 1 A_WeaponReady
Loop
Deselect:
1FIR A 1 Offset(3,35)
1FIR A 1 Offset(7,39)
1FIR A 1 Offset(12,45)
1FIR A 1 Offset(20,52)
1FIR A 1 Offset(40,60)
1FIR A 1 Offset(70,69)
1FIR A 1 Offset(120,79)
TNT1 A 10
DeselectLoop:
TNT1 A 1 A_Lower
Loop
Select:
1FIR A 1 Offset(120,79)
1FIR A 1 Offset(70,69)
1FIR A 1 Offset(40,60)
1FIR A 1 Offset(20,52)
1FIR A 1 Offset(12,45)
1FIR A 1 Offset(7,39)
1FIR A 1 Offset(3,35)
SelectLoop:
1FIR A 1 A_Raise
Loop
Fire:
1FIR ABCD 1
Goto FireSelector
FireSelector:
1FIS A 0 A_PlaySound("Weapons/fistx/Swing", 5)
1FIS ABDF 1
TNT1 A 0 A_JumpIfInventory("FistPack", 5, "UpgradedDamage5")
TNT1 A 0 A_JumpIfInventory("FistPack", 4, "UpgradedDamage4")
TNT1 A 0 A_JumpIfInventory("FistPack", 3, "UpgradedDamage3")
TNT1 A 0 A_JumpIfInventory("FistPack", 2, "UpgradedDamage2")
TNT1 A 0 A_JumpIfInventory("FistPack", 1, "UpgradedDamage")
Goto FireContinue
FireMiss:
TNT1 A 0 A_JumpIfCloser(77, 12)
1FIF A 0 BRIGHT A_CustomPunch(20,1,0,"PelletExplode",64,0)
1FIS GH 3
1FIS E 3
1FIS DC 2
1FIS BA 1
TNT1 A 8
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
FireContinue:
TNT1 A 0 A_JumpIfTargetOutsideMeleeRange("FireMiss")
TNT1 A 0 A_JumpIfInventory("PowerStrength", 1, "Berserked")
1FIF A 0 A_PlaySound("weapons/fistx/fire", 6)
1FIF A 0 BRIGHT A_FireBullets(16, 5, 2, 2, "PelletExplode")
1FIF A 0 BRIGHT A_CustomPunch(20,1,0,"PelletExplode",76,0)
1FIF AB 3
1FIS E 3
1FIS DC 2
1FIS BA 1
TNT1 A 8
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
FireMissB:
TNT1 A 0 A_JumpIfCloser(77, 12)
1FIF A 0 BRIGHT A_CustomPunch(200,1,0,"PelletExplode",64,0)
1FIS GH 3
1FIS E 3
1FIS DC 2
1FIS BA 1
TNT1 A 8
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
Berserked:
TNT1 A 0 A_JumpIfTargetOutsideMeleeRange("FireMissB")
1FIF A 0 A_PlaySound("weapons/fistx/fire", 6)
1FIF A 0 BRIGHT A_FireBullets(16, 5, 2, 2, "PelletExplode")
1FIF A 0 A_CustomPunch(200,1,0,"PelletExplode",76,0)
1FIF AB 3
1FIS E 3
1FIS DC 2
1FIS BA 1
TNT1 A 4
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
Up1Miss:
TNT1 A 0 A_JumpIfCloser(77, 12)
1FIF A 0 A_CustomPunch(30,1,0,"PelletExplode",64,0)
1FIS GH 3
1FIS E 3
1FIS DC 2
1FIS BA 1
TNT1 A 6
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
UpgradedDamage:
TNT1 A 0 A_JumpIfTargetOutsideMeleeRange("Up1Miss")
TNT1 A 0 A_JumpIfInventory("PowerStrength", 1, "UpgradedBerserked")
1FIF A 0 A_PlaySound("weapons/fistx/fire", 6)
1FIF A 0 BRIGHT A_FireBullets(14, 5, 2, 3, "PelletExplode")
1FIF A 0 A_CustomPunch(30,1,0,"PelletExplode",76,0)
1FIF AB 3
1FIS E 3
1FIS DC 2
1FIS BA 1
TNT1 A 6
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
Up1MissB:
TNT1 A 0 A_JumpIfCloser(77, 12)
1FIF A 0 A_CustomPunch(210,1,0,"PelletExplode",64,0)
1FIS GH 3
1FIS E 3
1FIS DC 2
1FIS BA 1
TNT1 A 6
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
UpgradedBerserked:
TNT1 A 0 A_JumpIfTargetOutsideMeleeRange("Up1MissB")
1FIF A 0 A_PlaySound("weapons/fistx/fire", 6)
1FIF A 0 BRIGHT A_FireBullets(14, 5, 2, 3, "PelletExplode")
1FIF A 0 A_CustomPunch(210,1,0,"PelletExplode",77,0)
1FIF AB 3
1FIS E 3
1FIS DC 2
1FIS BA 1
TNT1 A 6
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
Up2Miss:
TNT1 A 0 A_JumpIfCloser(77, 12)
1FIF A 0 A_CustomPunch(40,1,0,"PelletExplode",64,0)
1FIS GH 3
1FIS EDC 2
1FIS BA 1
TNT1 A 4
TNT1 A 1 A_ReFire("UpgradedDamage2")
goto FireFinish
UpgradedDamage2:
TNT1 A 0 A_JumpIfTargetOutsideMeleeRange("Up2Miss")
TNT1 A 0 A_JumpIfInventory("PowerStrength", 1, "UpgradedBerserked2")
1FIF A 0 A_PlaySound("weapons/fistx/fire", 6)
1FIF A 0 BRIGHT A_FireBullets(12, 5, 2, 4, "PelletExplode")
1FIF A 0 A_CustomPunch(40,1,0,"PelletExplode",76,0)
1FIF AB 3
1FIS EDC 2
1FIS BA 1
TNT1 A 4
TNT1 A 1 A_ReFire("UpgradedDamage2")
goto FireFinish
Up2MissB:
TNT1 A 0 A_JumpIfCloser(77, 12)
1FIF A 0 A_CustomPunch(220,1,0,"PelletExplode",64,0)
1FIS GH 3
1FIS EDC 2
1FIS BA 1
TNT1 A 4
TNT1 A 1 A_ReFire("UpgradedDamage2")
goto FireFinish
UpgradedBerserked2:
TNT1 A 0 A_JumpIfTargetOutsideMeleeRange("Up2MissB")
1FIF A 0 A_PlaySound("weapons/fistx/fire", 6)
1FIF A 0 BRIGHT A_FireBullets(12, 5, 2, 4, "PelletExplode")
1FIF A 0 A_CustomPunch(220,1,0,"PelletExplode",6,0)
1FIF AB 3
1FIS EDC 2
1FIS BA 1
TNT1 A 4
TNT1 A 1 A_ReFire("UpgradedDamage2")
goto FireFinish
Up3Miss:
TNT1 A 0 A_JumpIfCloser(77, 12)
1FIF A 0 A_CustomPunch(50,1,0,"PelletExplode",64,0)
1FIS GH 3
1FIS ED 2
1FIS CBA 1
TNT1 A 4
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
UpgradedDamage3:
TNT1 A 0 A_JumpIfTargetOutsideMeleeRange("Up3Miss")
TNT1 A 0 A_JumpIfInventory("PowerStrength", 1, "UpgradedBerserked3")
1FIF A 0 A_PlaySound("weapons/fistx/fire", 6)
1FIF A 0 BRIGHT A_FireBullets(10, 4, 2, 5, "PelletExplode")
1FIF A 0 A_CustomPunch(50,1,0,"PelletExplode",76,0)
1FIF AB 3
1FIS ED 2
1FIS CBA 1
TNT1 A 4
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
Up3MissB:
TNT1 A 0 A_JumpIfCloser(77, 12)
1FIF A 0 A_CustomPunch(230,1,0,"PelletExplode",64,0)
1FIS GH 3
1FIS ED 2
1FIS CBA 1
TNT1 A 4
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
UpgradedBerserked3:
TNT1 A 0 A_JumpIfTargetOutsideMeleeRange("Up3MissB")
1FIF A 0 A_PlaySound("weapons/fistx/fire", 6)
1FIF A 0 BRIGHT A_FireBullets(10, 4, 2, 5, "PelletExplode")
1FIF A 0 A_CustomPunch(230,1,0,"PelletExplode",76,0)
1FIF AB 3
1FIS ED 2
1FIS CBA 1
TNT1 A 4
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
Up4Miss:
TNT1 A 0 A_JumpIfCloser(77, 12)
1FIF A 0 A_CustomPunch(60,1,0,"PelletExplode",64,0)
1FIS GH 3
1FIS ED 2
1FIS CBA 1
TNT1 A 3
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
UpgradedDamage4:
TNT1 A 0 A_JumpIfTargetOutsideMeleeRange("Up4Miss")
TNT1 A 0 A_JumpIfInventory("PowerStrength", 1, "UpgradedBerserked4")
1FIF A 0 A_PlaySound("weapons/fistx/fire", 6)
1FIF A 0 BRIGHT A_FireBullets(8, 4, 2, 6, "PelletExplode")
1FIF A 0 A_CustomPunch(60,1,0,"PelletExplode",76,0)
1FIF AB 3
1FIS ED 2
1FIS CBA 1
TNT1 A 3
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
Up4MissB:
TNT1 A 0 A_JumpIfCloser(77, 12)
1FIF A 0 A_CustomPunch(240,1,0,"PelletExplode",64,0)
1FIS GH 3
1FIS ED 2
1FIS CBA 1
TNT1 A 3
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
UpgradedBerserked4:
TNT1 A 0 A_JumpIfTargetOutsideMeleeRange("Up4MissB")
1FIF A 0 A_PlaySound("weapons/fistx/fire", 6)
1FIF A 0 BRIGHT A_FireBullets(8, 4, 2, 6, "PelletExplode")
1FIF A 0 A_CustomPunch(240,1,0,"PelletExplode",76,0)
1FIF AB 3
1FIS ED 2
1FIS CBA 1
TNT1 A 3
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
Up5Miss:
TNT1 A 0 A_JumpIfCloser(77, 12)
1FIF A 0 A_CustomPunch(75,1,0,"PelletExplode",64,0)
1FIS GH 3
1FIS ED 2
1FIS CBA 1
TNT1 A 2
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
UpgradedDamage5:
TNT1 A 0 A_JumpIfInventory("PowerStrength", 1, "UpgradedBerserked5")
1FIF A 0 A_PlaySound("weapons/fistx/fire", 6)
1FIF A 0 BRIGHT A_FireBullets(6, 4, 2, 7, "PelletExplode")
1FIF A 0 A_CustomPunch(75,1,0,"PelletExplode",76,0)
1FIF AB 3
1FIS ED 2
1FIS CBA 1
TNT1 A 2
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
Up5MissB:
TNT1 A 0 A_JumpIfCloser(77, 12)
1FIF A 0 A_CustomPunch(250,1,0,"PelletExplode",64,0)
1FIS GH 3
1FIS ED 2
1FIS CBA 1
TNT1 A 2
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
UpgradedBerserked5:
TNT1 A 0 A_JumpIfTargetOutsideMeleeRange("Up5MissB")
1FIF A 0 A_PlaySound("weapons/fistx/fire", 6)
1FIF A 0 BRIGHT A_FireBullets(6, 4, 2, 7, "PelletExplode")
1FIF A 0 A_CustomPunch(250,1,0,"PelletExplode",76,0)
1FIF AB 3
1FIS ED 2
1FIS CBA 1
TNT1 A 2
TNT1 A 1 A_ReFire("FireSelector")
goto FireFinish
FireFinish:
1FIR DCBA 1
goto Ready
}
}
ACTOR FistPack : Inventory replaces Chainsaw
{
Inventory.Amount 1
Inventory.MaxAmount 5
Inventory.Pickupmessage "Picked up an upgrade pack for the Explosive Fist."
States
{
Spawn:
1UPG A -1
Stop
}
}