<
 
BD_Chainsaw
: Chainsaw
replaces Chainsaw
 

File

Flags

Properties

inventory.pickupsound"weapons/chainsaw/draw"
weapon.readysound""
weapon.selectionorder220
weapon.slotnumber1
weapon.slotpriority0
weapon.upsound""

States

Spawn: TNT1 A 0 NoDelay A_SpawnItemEx("DualPistols",0,0,0,random(3,5),random(3,5),4,random(0,360),0,128) CSAW A -1 Stop Select: TNT1 A 0 A_JumpIf(GetCVAR("bdoom_weapons")==1,3) TNT1 A 0 A_PlaySound("weapons/sawup") TNT1 A 0 A_Jump(256,2) TNT1 A 0 A_PlaySound("weapons/chainsaw/draw") TNT1 AAAAAAAA 0 A_Raise SAWS ABCDEF 1 A_WeaponReady(WRF_NOFIRE) goto ready Deselect: TNT1 A 0 A_JumpIf(GetCVAR("bdoom_weapons")==1,"Deselect.Enhanced") TNT1 A 0 A_Stopsound(4) SAWN A 1 A_Lower wait Ready: TNT1 A 0 A_JumpIf(GetCVAR("bdoom_weapons")==1,"Ready.Enhanced") TNT1 A 0 A_PlaySound("weapons/sawidle") SAWB BCDC 2 A_weaponready(WRF_NOSECONDARY) TNT1 A 0 A_SpawnItemEx("SawSmoke",cos(pitch)*15,random(8,10),sin(-pitch)*25+random(22,26),0,0,1,0,0,80) TNT1 A 0 A_SpawnItemEx("SawSmoke",cos(pitch)*15,random(8,10),sin(-pitch)*25+random(22,26),0,0,1,0,0,210) loop Fire: //should be 8 tics with no refire frames TNT1 A 0 A_JumpIf(GetCVAR("bdoom_weapons")==1,"Fire.Enhanced") TNT1 A 0 A_Saw("","weapons/sawhit",2,"ChainsawPuff") SAWN ABC 1 //shows preparation animation but the firing function has already begun (to coincide with vanilla attack speed) SAWF A 1 A_playsound("weapons/sawfull",4,1.0,TRUE) TNT1 A 0 A_Saw("","weapons/sawhit",2,"ChainsawPuff") SAWF ABAB 1 A_WeaponOffset(random(-2,2),random(32,34),WOF_INTERPOLATE) TNT1 A 0 A_Refire TNT1 A 0 A_Stopsound(4) SAWN CBA 1 A_WeaponReady goto ready Hold: TNT1 A 0 A_JumpIf(GetCVAR("bdoom_weapons")==1,"Hold.Enhanced") TNT1 A 0 A_Saw("","weapons/sawhit",2,"ChainsawPuff") SAWF ABAB 1 A_WeaponOffset(random(-2,2),random(32,34),WOF_INTERPOLATE) TNT1 A 0 A_Saw("","weapons/sawhit",2,"ChainsawPuff") SAWF ABAB 1 A_WeaponOffset(random(-2,2),random(32,34),WOF_INTERPOLATE) TNT1 A 0 A_Refire TNT1 A 0 A_Stopsound(4) SAWN CBA 1 A_WeaponReady goto ready Ready.Enhanced: TNT1 A 0 A_PlaySound("weapons/chainsaw/idle",5) SAWB BCDC 2 A_weaponready TNT1 A 0 A_SpawnItemEx("SawSmoke",cos(pitch)*15,random(8,10),sin(-pitch)*25+random(22,26),0,0,1,0,0,80) TNT1 A 0 A_SpawnItemEx("SawSmoke",cos(pitch)*15,random(8,10),sin(-pitch)*25+random(22,26),0,0,1,0,0,210) goto ready AltFire: TNT1 A 0 A_GunFlash("SawKick",GFF_NOEXTCHANGE) TNT1 A 2 TNT1 A 0 A_jumpifinventory("PowerStrength",1,"AltHoldStrong") KICK AB 1 TNT1 A 0 A_SetSpeed(0.1) TNT1 A 0 A_playsound("weapons/kick/swing") KICK CD 1 TNT1 A 0 A_Recoil(-2) KICK EF 1 TNT1 A 0 A_Blast(BF_NOIMPACTDAMAGE|BF_DONTWARN,0,72,10) KICK G 3 A_CustomPunch(3*random(5,12),TRUE,CPF_NOTURN,"KickPuff",72) KICK HD 2 KICK CBA 3 TNT1 A 0 A_SetSpeed(1) TNT1 A 4 goto ready AltHoldStrong: KICK AB 1 TNT1 A 0 A_SetSpeed(0.2) TNT1 A 0 A_playsound("weapons/kick/swing") KICK CD 1 TNT1 A 0 A_Recoil(-5) KICK EF 1 TNT1 A 0 A_Blast(RTF_NOIMPACTDAMAGE|BF_DONTWARN,200,80,25) KICK G 3 A_CustomPunch(30*random(3,10),TRUE,CPF_NOTURN,"KickPuffStrong",80) KICK HD 2 KICK CBA 3 TNT1 A 0 A_SetSpeed(1) TNT1 A 4 goto ready SawKick: TNT1 A 0 A_PlaySound("weapons/chainsaw/idle",5) SAW2 ACDF 1 SAW2 FE 2 TNT1 A 0 A_PlaySound("weapons/chainsaw/idle",5) SAW2 DCBA 2 TNT1 A 0 A_PlaySound("weapons/chainsaw/idle",5) SAWN A 4 TNT1 A 0 A_PlaySound("weapons/chainsaw/idle",5) SAWB BCDC 2 stop Deselect.Enhanced: TNT1 A 0 A_Stopsound(4) SAWN A 1 A_Lower SAWN A 0 A_Lower goto deselect.Enhanced+1 Fire.Enhanced: TNT1 A 0 A_PlaySound("weapons/chainsaw/start",4) TNT1 A 0 A_CustomPunch(2*random(1,10),1,0,"ChainsawPuff") SAWN ABC 1 SAWF A 1 TNT1 A 0 A_CustomPunch(2*random(1,10),1,0,"ChainsawPuff") SAWF ABAB 1 A_WeaponOffset(random(-2,2),random(32,34),WOF_INTERPOLATE) TNT1 A 0 A_Refire("Hold.Enhanced") TNT1 A 0 A_PlaySound("weapons/chainsaw/stop",4) SAWN CBA 1 A_WeaponReady goto ready Hold.Enhanced: TNT1 A 0 A_playsound("weapons/chainsaw/loop",4,1.0,TRUE) TNT1 A 0 A_CustomPunch(2*random(1,10),1,0,"ChainsawPuff") SAWF ABAB 1 A_WeaponOffset(random(-2,2),random(32,34),WOF_INTERPOLATE) TNT1 A 0 A_CustomPunch(2*random(1,10),1,0,"ChainsawPuff") SAWF ABAB 1 A_WeaponOffset(random(-2,2),random(32,34),WOF_INTERPOLATE) TNT1 A 0 A_Refire("Hold.Enhanced") TNT1 A 0 A_PlaySound("weapons/chainsaw/stop",4) SAWN CBA 1 A_WeaponReady goto ready

Class Hierarchy

Classes defined in \WEAPONS\BD_SAW.txt