Code: Select all
// Decorate
// Constants
const int flashlightVert = 18;
const int flashlightHoriz = 0; // 36 for over-the-shoulder effect
// Actors
ACTOR FlashlightSpawner : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_CustomMissile("FlashLightBeam1", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam2", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam3", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam4", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam5", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam6", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam7", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam8", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam9", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam10", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam11", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam12", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam13", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam14", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam15", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam16", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam17", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam18", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
TNT1 A 0 A_CustomMissile("FlashLightBeam19", flashlightVert, flashlightHoriz, 0, 2, ACS_NamedExecuteWithResult("PointerPitch", 0))
Stop
}
}
ACTOR FlashLightBeam
{
+NOGRAVITY
+RIPPER //Ripper functions similarly to noclip, but it still damages the monsters
+NOBLOCKMAP
+DONTSPLASH
+BLOODLESSIMPACT
Projectile
Renderstyle None
Damage 1 //The projectile is a ripper, so damage will be done really rapidly
Radius 8 //Increase the radius and height too
Height 16
DamageType "Light"
States
{
Spawn:
TNT1 AABC 1
Stop
}
}
ACTOR FlashLightBeam1 : FlashLightBeam
{
Speed 1
}
ACTOR FlashLightBeam2 : FlashLightBeam
{
Speed 2
}
ACTOR FlashLightBeam3 : FlashLightBeam
{
Speed 3
}
ACTOR FlashLightBeam4 : FlashLightBeam
{
Speed 4
}
ACTOR FlashLightBeam5 : FlashLightBeam
{
Speed 5
}
ACTOR FlashLightBeam6 : FlashLightBeam
{
Speed 7
}
ACTOR FlashLightBeam7 : FlashLightBeam
{
Speed 9
}
ACTOR FlashLightBeam8 : FlashLightBeam
{
Speed 12
}
ACTOR FlashLightBeam9 : FlashLightBeam
{
Speed 16
}
ACTOR FlashLightBeam10 : FlashLightBeam
{
Speed 21
}
ACTOR FlashLightBeam11 : FlashLightBeam
{
Speed 28
}
ACTOR FlashLightBeam12 : FlashLightBeam
{
Speed 37
}
ACTOR FlashLightBeam13 : FlashLightBeam
{
Speed 49
}
ACTOR FlashLightBeam14 : FlashLightBeam
{
Speed 65
}
ACTOR FlashLightBeam15 : FlashLightBeam
{
Speed 87
}
ACTOR FlashLightBeam16 : FlashLightBeam
{
Speed 116
}
ACTOR FlashLightBeam17 : FlashLightBeam
{
Speed 155
}
ACTOR FlashLightBeam18 : FlashLightBeam
{
Speed 207
}
ACTOR FlashLightBeam19 : FlashLightBeam
{
Speed 276
}
Code: Select all
ACTOR Batteries : Ammo 13488
{
//$Category Ammunition
States
{
Spawn:
BTRY A 1
Loop
}
Inventory.PickupMessage "Packet of Batteries."
Inventory.Amount 100
Inventory.MaxAmount 100
Ammo.BackpackAmount 0
Ammo.BackpackMaxAmount 100
Inventory.Icon SGASA0
Scale 0.2
}
ACTOR CheapBatteries : Batteries 13489
{
//$Category Ammunition
States
{
Spawn:
CBTR A 1
Loop
}
Inventory.PickupMessage "Cheap knockoff batteries."
Inventory.Amount 40
Inventory.MaxAmount 40
Ammo.BackpackAmount 0
Ammo.BackpackMaxAmount 40
Inventory.Icon SGASA0
Scale 0.2
}