Forum rules
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. If you still don't understand how to use a feature, then ask here.
Please bear in mind that the people helping you do not automatically know how much you know. You may be asked to upload your project file to look at. Don't be afraid to ask questions about what things mean, but also please be patient with the people trying to help you. (And helpers, please be patient with the person you're trying to help!)
Trying to transfer a decorate actor over to ZSCript as cheaply as possible (for the sake of future rewrites with a wider array of options), and I keep getting this error:
zactors/doom/player.zscript" line 36:
Unexpected '}'
Expecting ';' or ','
Here is the actor responsible:
Line 36 has a note next to it.
Spoiler:
Class DoomMarine : PlayerPawn
{
Default
{
Health 100;
Player.Maxhealth 100;
Mass 200;
Height 56;
Radius 20;
Speed 0.9;
PainChance 255;
//CaptureWeight 12;
Scale 1.0;
int user_nextOrder;
int user_lastOrder;
int user_deathCount;
int user_simultaneousCaptures;
Player.Jumpz 12;
Player.Soundclass "DoomPlayer";
Player.GruntSpeed 20.0;
Player.ColorRange 112, 127;
Player.DisplayName "Doom";
//Player.CrouchSprite "";
Player.StartItem "FormerHumanSummoner", 1;
Player.StartItem "Mana", 0;
Player.StartItem "Favor", 10;
Player.Runhealth 50;
Player.Forwardmove 0.65, 0.55;
Player.Sidemove 0.6, 0.5;
Player.Weaponslot 1, "FormerHumanSummoner", "ImpSummoner", "LostSoulSummoner"
Player.Weaponslot 2, "PinkyDemonSummoner", "CacodemonSummoner", "ChaingunnerSummoner"
Player.Weaponslot 3, "HellNobleSummoner", "revenantsummoner", "mancubussummoner"
Player.Weaponslot 4, "arachnotronsummoner", "painelementalsummoner", "archvilesummoner"
Player.Weaponslot 5, "spidermastermindsummoner", "cyberdemonsummoner"
}
States
{ // This is line 36
Spawn:
PLAY A 0 A_JumpIfInventory("Spawned", 1, 4);
PLAY A 0 A_GiveInventory("Spawned", 1);
PLAY A 0 ACS_NamedExecuteAlways("DoomT1Cooldown", 0);
PLAY A -1;
Goto Spawn;
See:
PLAY A 6;
PLAY A 0 A_CheckFloor(2);
PLAY A 0 A_Jump(256, 2);
PLAY B 0 A_PlaySound("gibbage/xpstep");
PLAY B 6;
PLAY A 0 ;//ACS_NamedExecuteAlways("PlayerReveal",0)
PLAY C 6;
PLAY C 0 A_CheckFloor(2);
PLAY C 0 A_Jump(256, 2);
PLAY D 0 A_PlaySound("gibbage/xpstep");
PLAY D 6;
goto Spawn;
Missile:
PLAY F 0 A_AlertMonsters;
PLAY E 12 ;
Goto Spawn;
Melee:
PLAY F 0 A_AlertMonsters;
PLAY F 6 BRIGHT;
Goto Missile;
Pain:
PLAY G 4 ;
PLAY G 4 A_Pain ;
Goto Spawn;
Death:
PLAY H 0 A_GiveToChildren("Fear3", 1);
PLAY H 0 A_Jump (128, 10);
PLAY H 5 ;
PLAY I 5 A_PlayerScream;
PLAY J 5 A_NoBlocking;
PLAY K 5;
PLAY L 1 A_SpawnItem("Bodythud", 0, 0, 0, 0);
PLAY LMN 5 ;
PLAY N -1;
Stop;
PLAY P 5 ;
PLAY Q 5 A_PlayerScream;
PLAY R 5 A_NoBlocking;
PLAY S 5;
PLAY T 1 A_SpawnItem("Bodythud", 0, 0, 0, 0);
PLAY U 5 ;
PLAY V -1;
XDeath:
TNT1 A 0 A_PlaySound("gibbage/xsplat");
TNT1 A 0 A_PlaySound("gibbage/playergib") ;
TNT1 A 0 A_NoBlocking;
TNT1 A 0 A_CustomMissile("PLAYERBOOT", 11, 0, 33, 2, 45);
TNT1 A 1 A_CustomMissile("PLAYERBOOT", 11, 0, -33, 2, 27);
TNT1 A 0 A_CustomMissile("SHOTgunGUYARM", 25, 0, random(0,360), 2, 50);
TNT1 A 1 A_CustomMissile("SHOTgunGUYARM", 36, 0, random(0,360), 2, 32);
TNT1 A 1 A_SkullPop("Custom_BloodySkull");
TNT1 A 1 A_SpawnItem("GIBBER");
TNT1 A -1;
}
}
I guarantee it's something simple since I've never messed with ZScript before, but I've stared at it long enough that I can't figure it out.