mirror of
https://github.com/ZDoom/acc.git
synced 2025-03-13 03:42:17 +00:00
- added new PCodes to handle action specials > 255.
- added some new specials and parameters from EE.
This commit is contained in:
parent
d5442ef4e6
commit
ab65e882d0
4 changed files with 41 additions and 17 deletions
20
parse.c
20
parse.c
|
@ -1624,7 +1624,21 @@ static void LeadingLineSpecial(boolean executewait)
|
|||
}
|
||||
TK_TokenMustBe(TK_RPAREN, ERR_MISSING_RPAREN);
|
||||
TK_NextTokenMustBe(TK_SEMICOLON, ERR_MISSING_SEMICOLON);
|
||||
if(direct == NO)
|
||||
if (specialValue > 255)
|
||||
{
|
||||
for(; argCount < 5; ++argCount)
|
||||
{
|
||||
PC_AppendPushVal(0);
|
||||
}
|
||||
PC_AppendCmd(PCD_LSPEC5EX);
|
||||
PC_AppendInt(specialValue);
|
||||
if(executewait)
|
||||
{
|
||||
PC_AppendCmd(PCD_SCRIPTWAITDIRECT);
|
||||
PC_AppendInt(argSave[0]);
|
||||
}
|
||||
}
|
||||
else if(direct == NO)
|
||||
{
|
||||
PC_AppendCmd(PCD_LSPEC1+(argCount-1));
|
||||
if(pc_NoShrink)
|
||||
|
@ -3502,8 +3516,8 @@ static void ExprLineSpecial(void)
|
|||
}
|
||||
TK_TokenMustBe(TK_RPAREN, ERR_MISSING_RPAREN);
|
||||
TK_NextToken();
|
||||
PC_AppendCmd(PCD_LSPEC5RESULT);
|
||||
if(pc_NoShrink)
|
||||
PC_AppendCmd(specialValue <= 255? PCD_LSPEC5RESULT : PCD_LSPEC5EXRESULT);
|
||||
if(pc_NoShrink || specialValue > 255)
|
||||
{
|
||||
PC_AppendInt(specialValue);
|
||||
}
|
||||
|
|
2
pcode.c
2
pcode.c
|
@ -499,6 +499,8 @@ static char *PCDNames[PCODE_COMMAND_COUNT] =
|
|||
"PCD_PRINTSCRIPTCHARARRAY",
|
||||
"PCD_PRINTSCRIPTCHRANGE",
|
||||
"PCD_STRCPYTOSCRIPTCHRANGE",
|
||||
"PCD_LSPEC5EX",
|
||||
"PCD_LSPEC5EXRESULT",
|
||||
};
|
||||
|
||||
// CODE --------------------------------------------------------------------
|
||||
|
|
2
pcode.h
2
pcode.h
|
@ -444,6 +444,8 @@ typedef enum
|
|||
PCD_PRINTSCRIPTCHARARRAY,
|
||||
PCD_PRINTSCRIPTCHRANGE,
|
||||
PCD_STRCPYTOSCRIPTCHRANGE,
|
||||
PCD_LSPEC5EX,
|
||||
PCD_LSPEC5EXRESULT,
|
||||
|
||||
PCODE_COMMAND_COUNT
|
||||
} pcd_t;
|
||||
|
|
34
zspecial.acs
34
zspecial.acs
|
@ -24,12 +24,12 @@ special
|
|||
17:Thing_Raise(1),
|
||||
18:StartConversation(1,2),
|
||||
19:Thing_Stop(1),
|
||||
20:Floor_LowerByValue(3),
|
||||
21:Floor_LowerToLowest(2),
|
||||
22:Floor_LowerToNearest(2),
|
||||
23:Floor_RaiseByValue(3),
|
||||
24:Floor_RaiseToHighest(2),
|
||||
25:Floor_RaiseToNearest(2),
|
||||
20:Floor_LowerByValue(3,4),
|
||||
21:Floor_LowerToLowest(2,3),
|
||||
22:Floor_LowerToNearest(2,3),
|
||||
23:Floor_RaiseByValue(3,5),
|
||||
24:Floor_RaiseToHighest(2,5),
|
||||
25:Floor_RaiseToNearest(2,4),
|
||||
26:Stairs_BuildDown(5),
|
||||
27:Stairs_BuildUp(5),
|
||||
28:Floor_RaiseAndCrush(3,4),
|
||||
|
@ -39,9 +39,9 @@ special
|
|||
32:Stairs_BuildUpSync(4),
|
||||
33:ForceField(0),
|
||||
34:ClearForceField(1),
|
||||
35:Floor_RaiseByValueTimes8(3),
|
||||
36:Floor_LowerByValueTimes8(3),
|
||||
37:Floor_MoveToValue(3,4),
|
||||
35:Floor_RaiseByValueTimes8(3,5),
|
||||
36:Floor_LowerByValueTimes8(3,4),
|
||||
37:Floor_MoveToValue(3,5),
|
||||
38:Ceiling_Waggle(5),
|
||||
39:Teleport_ZombieChanger(2),
|
||||
40:Ceiling_LowerByValue(3),
|
||||
|
@ -70,9 +70,9 @@ special
|
|||
63:Plat_DownByValue(4),
|
||||
64:Plat_UpWaitDownStay(3),
|
||||
65:Plat_UpByValue(4),
|
||||
66:Floor_LowerInstant(3),
|
||||
67:Floor_RaiseInstant(3),
|
||||
68:Floor_MoveToValueTimes8(4),
|
||||
66:Floor_LowerInstant(3,4),
|
||||
67:Floor_RaiseInstant(3,5),
|
||||
68:Floor_MoveToValueTimes8(4,5),
|
||||
69:Ceiling_MoveToValueTimes8(4),
|
||||
70:Teleport(1,3),
|
||||
71:Teleport_NoFog(1,4),
|
||||
|
@ -109,6 +109,9 @@ special
|
|||
// 102:Scroll_Texture_Up
|
||||
// 103:Scroll_Texture_Down
|
||||
104:Ceiling_CrushAndRaiseSilentDist(4,5),
|
||||
105:Door_WaitRaise(4,5),
|
||||
106:Door_WaitClose(3,4),
|
||||
107:Floor_LowerToLowestCeiling(2,3),
|
||||
|
||||
109:Light_ForceLightning(1),
|
||||
110:Light_RaiseByValue(2),
|
||||
|
@ -223,9 +226,9 @@ special
|
|||
235:Floor_TransferTrigger(1),
|
||||
236:Floor_TransferNumeric(1),
|
||||
237:ChangeCamera(3),
|
||||
238:Floor_RaiseToLowestCeiling(2),
|
||||
238:Floor_RaiseToLowestCeiling(2,4),
|
||||
239:Floor_RaiseByValueTxTy(3),
|
||||
240:Floor_RaiseByTexture(2),
|
||||
240:Floor_RaiseByTexture(2,4),
|
||||
241:Floor_LowerToLowestTxTy(2),
|
||||
242:Floor_LowerToHighest(3,4),
|
||||
243:Exit_Normal(1),
|
||||
|
@ -242,6 +245,9 @@ special
|
|||
254:Ceiling_LowerToFloor(2),
|
||||
255:Ceiling_CrushRaiseAndStaySilA(4,5),
|
||||
|
||||
256:Floor_LowerToHighestEE(2, 3),
|
||||
257:Floor_RaiseToLowest(2, 3),
|
||||
|
||||
// internal functions have negative values
|
||||
-1:GetLineUDMFInt(2),
|
||||
-2:GetLineUDMFFixed(2),
|
||||
|
|
Loading…
Reference in a new issue