actor LeafShieldWep : MegaBuster 10011
{
Weapon.AmmoGive 28
Weapon.SlotNumber 7
Obituary "%o was slashed by %k's Leaf Shield."
Inventory.Pickupmessage "Power up! Leaf Shield!"
weapon.ammotype "LeafAmmo"
weapon.ammouse 4
inventory.pickupsound "weapon/weaponup"
inventory.icon "LEAFI"
+WEAPON.AMMO_OPTIONAL
Scale 2.0
States
{
Spawn:
WEAP F 1
loop
Ready:
WOOD I 0 ACS_ExecuteAlways(998,0,2)
WOOD I 0 A_ClearRefire
WOOD I 1 A_WeaponReady
Goto Ready+2
Deselect:
WOOD I 0 A_JumpIfInventory("ShieldCheck",1,24)
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
WOOD I 1 A_Lower
Goto Deselect+1
WOOD I 0
WOOD I 0 A_TakeInventory("ShieldCheck",1)
WOOD I 0 A_FireCustomMissile("LeafShield",0,0,0,0)
Goto Deselect+1
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
WOOD I 1 A_Raise
Loop
Fire:
WOOD I 0 A_JumpIfInventory("ShieldCheck",1,"ShieldThrow")
WOOD J 0 A_JumpIfNoAmmo("NoAmmo")
WOOD J 0 A_PlaySoundEx("weapon/mbuster","Weapon")
WOOD J 0 A_TakeInventory("LeafAmmo",4)
WOOD J 1 A_GiveInventory("ShieldCheck",1)//A_SpawnItemEx("BubbleLeadStart",6,0,0,8,0,8,0,0,0)
goto ShieldActive
Hold:
WOOD J 1
goto Ready+1
ShieldActive:
WOOD J 0 A_PlayWeaponSound("weapon/leafshield")
WOOD J 1 A_SpawnItemEx("LeafShield1", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 1 A_SpawnItemEx("LeafShield1", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 1 A_SpawnItemEx("LeafShield2", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 1 A_SpawnItemEx("LeafShield2", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 0 A_PlayWeaponSound("weapon/leafshield")
WOOD J 1 A_SpawnItemEx("LeafShield3", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 1 A_SpawnItemEx("LeafShield3", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 1 A_SpawnItemEx("LeafShield4", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 1 A_SpawnItemEx("LeafShield4", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
Goto Shield
Shield:
WOOD J 1 A_WeaponReady
WOOD J 0 A_PlayWeaponSound("weapon/leafshield")
WOOD J 0 A_SpawnItemEx("LeafShield1", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 1 A_WeaponReady
WOOD J 0 A_SpawnItemEx("LeafShield1", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 1 A_WeaponReady
WOOD J 0 A_SpawnItemEx("LeafShield2", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 1 A_WeaponReady
WOOD J 0 A_SpawnItemEx("LeafShield2", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 1 A_WeaponReady
WOOD J 0 A_PlayWeaponSound("weapon/leafshield")
WOOD J 0 A_SpawnItemEx("LeafShield3", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 1 A_WeaponReady
WOOD J 0 A_SpawnItemEx("LeafShield3", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 1 A_WeaponReady
WOOD J 0 A_SpawnItemEx("LeafShield4", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
WOOD J 1 A_WeaponReady
WOOD J 0 A_SpawnItemEx("LeafShield4", 0, 0, 0, 0, 0, 0, 0, 0, 0)
WOOD J 0 A_GiveInventory("Repulsion",1)
loop
ShieldThrow:
WOOD J 0 A_TakeInventory("ShieldCheck",999)
WOOD J 0 A_FireCustomMissile("LeafShield",0,0,0,0)
WOOD K 5
WOOD J 5
WOOD I 20
goto Ready+1
NoAmmo:
WOOD I 1 ACS_Execute(979,0)
goto Ready+1
}
}

actor LeafShield1
{
scale 2.5
- SOLID
+NOGRAVITY
+NONETID
States
{
Spawn:
WOOD A 1
WOOD A 1
stop
}
}

actor LeafShield2
{
scale 2.5
- SOLID
+NOGRAVITY
+NONETID
States
{
Spawn:
WOOD B 1
WOOD B 1
stop
}
}

actor LeafShield3
{
scale 2.5
- SOLID
+NOGRAVITY
+NONETID
States
{
Spawn:
WOOD C 1
WOOD C 1
stop
}
}

actor LeafShield4
{
scale 2.5
- SOLID
+NOGRAVITY
+NONETID
States
{
Spawn:
WOOD D 1
WOOD D 1
stop
}
}


actor LeafShield
{
scale 2.5
PROJECTILE
Damage (30)
+DONTBLAST
Speed 20
Radius 12
Height 12
States
{
Spawn:
WOOD EFGH 2
loop
}
}

ACTOR Repulsion : ArtiBlastRadius
{
+AUTOACTIVATE
}

actor LeafAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 28
}


actor ShieldCheck : Inventory
{
inventory.amount 1
inventory.maxamount 1
States
{
Spawn:
TNT1 A 1
loop
}
}