Code: Select all
ACTOR NewMinigun : Weapon
{
Inventory.PickupMessage "$GOTMINIGUN"
Tag "$TAGMINIGUN"
Inventory.PickupSound "misc/w_pkup"
Weapon.SelectionOrder 400
Weapon.Kickback 90
Weapon.AmmoType "DoomClip"
Weapon.AmmoGive 100
Weapon.AmmoUse 1
States
{
Spawn:
TSSX A 1600 BRIGHT
TNT1 A 0 A_SpawnItemEx ("DespawnCloudPart", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
Stop
Ready:
TSSN A 1 A_WeaponReady
Loop
Deselect:
TSSN A 0 A_StopSoundEx("SoundSlot6")
TSSN A 0 A_PlaySound("weapons/in")
TSSN A 1 A_Lower
goto Deselect+2
Select:
TSSN A 0 A_StopSoundEx("SoundSlot6")
TSSN A 0 A_PlaySound("weapons/miniout")
TSSN A 1 A_Raise
goto Select+2
Fire:
TSSN A 0 A_PlaySoundEx("weapons/minigunup", "SoundSlot6", 0)
TSSN B 6
TSSN C 5
TSSN D 4
TSSN A 3
TSSN B 2
TSSN C 1
TSSN DABCDABCDABCDABC 1
TSSN D 0 A_ReFire
WindDown:
TSSN A 0 A_PlaySoundEx("weapons/minigundown", "SoundSlot6", 0)
TSSN A 1
TSSN B 2
TSSN C 3
TSSN D 4
TSSN A 5
TSSN BCD 6
Goto Ready
Hold:
TSSN D 0 A_JumpIfNoAmmo("WindDown")
TSSF A 0 A_GunFlash
TSSF A 0 A_Quake(8,2,0,128,"null")
TSSF A 0 A_PlayweaponSound("weapons/minigun")
TSSF A 0 A_PlaySoundEx("weapons/minigunhold", "SoundSlot6", 1)
TSSF B 1 BRIGHT A_FireBullets (5.6, 0, 2, 5, "HandgunPuff")
TSSN D 1 A_FireCustomMissile("BulletCasingSpawn",5,0,8,-9)
TSSN D 0 A_ReFire
Goto WindDown
}
}