marrub
/
Lithia
Archived
1
0
Fork 0
This repository has been archived on 2023-06-17. You can view files and clone it, but cannot push or open issues/pull-requests.
Lithia/pksrc/lscripts/Items/AmmoPickups.dec

201 lines
4.7 KiB
Plaintext

actor Lith_ManaPickupTrail
{
Scale 0.4
RenderStyle "Add"
+NOTIMEFREEZE
+NOINTERACTION
states
{
Spawn:
BLLT Q 0 bright A_SetScale(scalex * 0.9)
BLLT Q 1 bright A_FadeOut(0.05)
loop
}
}
actor Lith_ManaPickup : CustomInventory
{
RenderStyle "Add"
Radius 4
Height 4
Scale 0.8
Inventory.PickupSound "player/pickup/mana"
Inventory.PickupMessage ""
+INVENTORY.ALWAYSPICKUP
+INVENTORY.NOSCREENFLASH
+NOGRAVITY
+NOCLIP
+SEEKERMISSILE
var int user_deathwait;
states
{
Spawn:
BLLT Q 0
BLLT Q 0 Thing_SetTranslation(0, 42470 + random(0, 7))
BLLT Q 0 A_SetScale(scalex*frandom(0.5,1))
BLLT Q 0 ThrustThingZ(0, 16, 0, 1)
BLLT Q 0 A_SetUserVar(user_deathwait, 35 * 15)
SpawnLoop:
BLLT Q 0 A_JumpIf(user_deathwait == 0, "Death")
BLLT Q 0 A_SetUserVar(user_deathwait, user_deathwait - 1)
BLLT Q 0 A_ChangeVelocity(14, 14, velz*0.9, CVF_REPLACE)
BLLT Q 0 A_SpawnItemEx("Lith_ManaPickupTrail", 0,0,0, 0,0,0, 0, SXF_TRANSFERTRANSLATION)
BLLT Q 0 A_JumpIfTargetInLOS("Spawn1")
goto Spawn2
Spawn1:
BLLT Q 0 A_SeekerMissile(360, 40, SMF_PRECISE|SMF_CURSPEED)
Spawn2:
BLLT Q 1 bright
goto SpawnLoop
Death:
BLLT Q 1 bright A_FadeOut
wait
Pickup:
BLLT Q 0 A_GiveInventory("Lith_MagicAmmo", random(5, 10))
stop
}
}
actor Lith_Clip : Lith_ScoreItem replaces Clip
{
Inventory.PickupSound "player/pickup/scoresmall"
states
{
Spawn:
SCOR A -1
stop
Pickup:
TNT1 A 0 A_GiveInventory("Lith_ScoreCount", Score_Clip)
TNT1 A 0 ACS_NamedExecuteAlways("Lith_LogName", 0, msg_clip)
goto Super::Pickup
}
}
actor Lith_ClipBox : Lith_ScoreItem replaces ClipBox
{
Inventory.PickupSound "player/pickup/scorebig"
states
{
Spawn:
SCOR B -1
stop
Pickup:
TNT1 A 0 A_GiveInventory("Lith_ScoreCount", Score_ClipBox)
TNT1 A 0 ACS_NamedExecuteAlways("Lith_LogName", 0, msg_clipbox)
goto Super::Pickup
}
}
actor Lith_Shell : Lith_ScoreItem replaces Shell
{
Inventory.PickupSound "player/pickup/shells"
states
{
Spawn:
SHEL A -1
stop
Pickup:
TNT1 A 0 A_GiveInventory("Lith_ScoreCount", Score_Shell)
TNT1 A 0 A_GiveInventory("Lith_ShellAmmo", AmmoAmt_Shell)
TNT1 A 0 ACS_NamedExecuteAlways("Lith_LogName", 0, msg_shell)
goto Super::Pickup
}
}
actor Lith_ShellBox : Lith_ScoreItem replaces ShellBox
{
Inventory.PickupSound "player/pickup/shellb"
states
{
Spawn:
SBOX A -1
stop
Pickup:
TNT1 A 0 A_GiveInventory("Lith_ScoreCount", Score_ShellBox)
TNT1 A 0 A_GiveInventory("Lith_ShellAmmo", AmmoAmt_ShellBox)
TNT1 A 0 ACS_NamedExecuteAlways("Lith_LogName", 0, msg_shellbox)
goto Super::Pickup
}
}
actor Lith_RocketAmmoPickup : Lith_ScoreItem replaces RocketAmmo
{
Inventory.PickupSound "player/pickup/rockets"
states
{
Spawn:
ROCK A -1
stop
Pickup:
TNT1 A 0 A_GiveInventory("Lith_ScoreCount", Score_Rocket)
TNT1 A 0 A_GiveInventory("Lith_RocketAmmo", AmmoAmt_Rocket)
TNT1 A 0 ACS_NamedExecuteAlways("Lith_LogName", 0, msg_rocket)
goto Super::Pickup
}
}
actor Lith_RocketBox : Lith_ScoreItem replaces RocketBox
{
Inventory.PickupSound "player/pickup/rocketb"
states
{
Spawn:
BROK A -1
stop
Pickup:
TNT1 A 0 A_GiveInventory("Lith_ScoreCount", Score_RocketBox)
TNT1 A 0 A_GiveInventory("Lith_RocketAmmo", AmmoAmt_RocketBox)
TNT1 A 0 ACS_NamedExecuteAlways("Lith_LogName", 0, msg_rocketbox)
goto Super::Pickup
}
}
actor Lith_Cell : Lith_ScoreItem replaces Cell
{
Inventory.PickupSound "player/pickup/cells"
states
{
Spawn:
CELL A -1
stop
Pickup:
TNT1 A 0 A_GiveInventory("Lith_ScoreCount", Score_Cell)
TNT1 A 0 A_GiveInventory("Lith_PlasmaAmmo", AmmoAmt_Cell)
TNT1 A 0 ACS_NamedExecuteAlways("Lith_LogName", 0, msg_cell)
goto Super::Pickup
}
}
actor Lith_CellPack : Lith_ScoreItem replaces CellPack
{
Inventory.PickupSound "player/pickup/cellb"
states
{
Spawn:
CELP A -1
stop
Pickup:
TNT1 A 0 A_GiveInventory("Lith_ScoreCount", Score_CellPack)
TNT1 A 0 A_GiveInventory("Lith_PlasmaAmmo", AmmoAmt_CellPack)
TNT1 A 0 A_GiveInventory("Lith_CannonAmmo", AmmoAmt_CannonPack)
TNT1 A 0 ACS_NamedExecuteAlways("Lith_LogName", 0, msg_cellbox)
goto Super::Pickup
}
}
// EOF