I for one do not wish to program like the notorious Java syntax, so I would appreciate if C-style was allowed.
(Yes I'm aware there's things like Goto statements not allowed. I'm just doing a favor by ensuring it's actually throwing an error.)
Gives an error, about needing 4 sprite characters.
Code: Select all
Actor ShrapExplosion
{
var int user_smokecount;
var int user_ringcount;
+NOINTERACTION
States
{
Spawn:
TNT1 A 0
TNT1 A 0
{ //<-------------------------------------------------Right here, it fails to load.
A_SetUserVar("user_smokecount",0);
A_SetUserVar("user_ringcount",0);
A_CheckFloor("FloorLand");
A_CheckCeiling("CeilingLand");
}
Air:
TNT1 AAA 0 A_SpawnItemEx("ShrapBack1",frandom(2,4),0,frandom(-2,2),frandom(0,0.6),0,frandom(-0.2,0.2),frandom(0,359.9),32)
TNT1 AAAAA 0 A_SpawnItemEx("ShrapBack1",frandom(2,4),0,frandom(-2,2),frandom(0,0.6),0,frandom(-0.2,0.2),frandom(0,359.9),32,128)
AirSmokeLoop:
TNT1 A 1 {
if (user_smokecount < 50)
{
A_SpawnItemEx("ShrapSmoke1",frandom(0,1),0,frandom(-1,1),frandom(2,3),0,frandom(-3,3),frandom(0,359.9),32);
A_SetUserVar("user_smokecount",user_smokecount+1);
}
else
{ Goto AirRingLoop }}
//TNT1 A 0 A_JumpIf(user_smokecount >= 50,1)
Loop
AirRingLoop:
TNT1 A 0 A_SpawnItemEx("ShrapSmoke2",frandom(0,1),0,0,frandom(3,5),0,0,frandom(0,359.9),32)
TNT1 A 0 A_SetUserVar("user_ringcount",user_ringcount+1)
TNT1 A 0 A_JumpIf(user_ringcount>=35,1)
Loop
TNT1 A 1
Stop
FloorLand:
TNT1 AAA 0 A_SpawnItemEx("ShrapBack1",frandom(0,4),0,frandom(0,2),frandom(0,0.6),0,frandom(0,0.6),frandom(0,359.9),32)
TNT1 AAAAA 0 A_SpawnItemEx("ShrapBack1",frandom(0,4),0,frandom(0,2),frandom(0,0.6),0,frandom(0,0.6),frandom(0,359.9),32,128)
FloorSmokeLoop:
TNT1 A 0 A_SpawnItemEx("ShrapSmoke1",frandom(0,1),0,frandom(0,1),frandom(2,3),0,frandom(0,3),frandom(0,359.9),32)
TNT1 A 0 A_SetUserVar("user_smokecount",user_smokecount+1)
TNT1 A 0 A_JumpIf(user_smokecount>=50,1)
Loop
FloorRingLoop:
TNT1 A 0 A_SpawnItemEx("ShrapSmoke2",frandom(0,1),0,3,frandom(3,5),0,0,frandom(0,359.9),32)
TNT1 A 0 A_SetUserVar("user_ringcount",user_ringcount+1)
TNT1 A 0 A_JumpIf(user_ringcount>=35,1)
Loop
TNT1 A 1
Stop
CeilingLand:
TNT1 AAA 0 A_SpawnItemEx("ShrapBack1",frandom(0,4),0,frandom(-2,0),frandom(0,0.6),0,frandom(-0.6,0),frandom(0,359.9),32)
TNT1 AAAAA 0 A_SpawnItemEx("ShrapBack1",frandom(0,4),0,frandom(-2,0),frandom(0,0.6),0,frandom(-0.6,0),frandom(0,359.9),32,128)
CeilingSmokeLoop:
TNT1 A 0 A_SpawnItemEx("ShrapSmoke1",frandom(0,1),0,frandom(-1,0),frandom(2,3),0,frandom(-3,0),frandom(0,359.9),32)
TNT1 A 0 A_SetUserVar("user_smokecount",user_smokecount+1)
TNT1 A 0 A_JumpIf(user_smokecount>=50,1)
Loop
CeilingRingLoop:
TNT1 A 0 A_SpawnItemEx("ShrapSmoke2",frandom(0,1),0,-3,frandom(3,5),0,0,frandom(0,359.9),32)
TNT1 A 0 A_SetUserVar("user_ringcount",user_ringcount+1)
TNT1 A 0 A_JumpIf(user_ringcount>=35,1)
Loop
TNT1 A 1
Stop
}
}