OSDN Git Service

- Added PlayActorSound identifiers to zdefs.acs.
[zandronum/zandronum-acc.git] / pcode.h
diff --git a/pcode.h b/pcode.h
index b84dfbd..fdad84e 100644 (file)
--- a/pcode.h
+++ b/pcode.h
 \r
 // MACROS ------------------------------------------------------------------\r
 \r
-// Values added to script number to indicate its type\r
+// Values to indicate a script's type\r
 enum\r
 {\r
-       OPEN_SCRIPTS_BASE                       = 1000,\r
-       RESPAWN_SCRIPTS_BASE            = 2000, // [BC]\r
-       DEATH_SCRIPTS_BASE                      = 3000, // [BC]\r
-       ENTER_SCRIPTS_BASE                      = 4000, // [BC]\r
-       PICKUP_SCRIPTS_BASE                     = 5000, // [BC]\r
-       BLUE_RETURN_SCRIPTS_BASE        = 6000, // [BC]\r
-       RED_RETURN_SCRIPTS_BASE         = 7000, // [BC]\r
-       WHITE_RETURN_SCRIPTS_BASE       = 8000, // [BC]\r
-       LIGHTNING_SCRIPTS_BASE          = 12000,\r
-       UNLOADING_SCRIPTS_BASE          = 13000,\r
-       DISCONNECT_SCRIPTS_BASE         = 14000\r
+       OPEN_SCRIPTS_BASE                       = 1,\r
+       RESPAWN_SCRIPTS_BASE            = 2,    // [BC]\r
+       DEATH_SCRIPTS_BASE                      = 3,    // [BC]\r
+       ENTER_SCRIPTS_BASE                      = 4,    // [BC]\r
+       PICKUP_SCRIPTS_BASE                     = 5,    // [BC]\r
+       BLUE_RETURN_SCRIPTS_BASE        = 6,    // [BC]\r
+       RED_RETURN_SCRIPTS_BASE         = 7,    // [BC]\r
+       WHITE_RETURN_SCRIPTS_BASE       = 8,    // [BC]\r
+       LIGHTNING_SCRIPTS_BASE          = 12,\r
+       UNLOADING_SCRIPTS_BASE          = 13,\r
+       DISCONNECT_SCRIPTS_BASE         = 14,\r
+       RETURN_SCRIPTS_BASE                     = 15,\r
 };\r
 \r
-// Values added to script number to indicate flags (requires new-style .o)\r
+// Values to indicate script flags (requires new-style .o)\r
 enum\r
 {\r
-       NET_SCRIPT_FLAG                 = 0x00010000\r
+       NET_SCRIPT_FLAG                 = 0x0001,\r
+       CLIENTSIDE_SCRIPT_FLAG  = 0x0002, // [BB]\r
 };\r
 \r
 // Or'ed with variable index when passing variables of type "out"\r
@@ -184,8 +186,8 @@ typedef enum
        PCD_BLUETEAMSCORE,\r
        PCD_REDTEAMSCORE,\r
        PCD_ISONEFLAGCTF,\r
-       PCD_LSPEC6,                             // [RH] LSPEC6 is never actually used.\r
-       PCD_LSPEC6DIRECT,               // Should these be removed?\r
+       PCD_GETINVASIONWAVE,\r
+       PCD_GETINVASIONSTATE,\r
        PCD_PRINTNAME,\r
        PCD_MUSICCHANGE,\r
        PCD_CONSOLECOMMANDDIRECT,\r
@@ -393,6 +395,36 @@ typedef enum
        PCD_NEGATEBINARY,\r
        PCD_GETACTORPITCH,\r
        PCD_SETACTORPITCH,\r
+       PCD_PRINTBIND,\r
+       PCD_SETACTORSTATE,\r
+       PCD_THINGDAMAGE2,\r
+       PCD_USEINVENTORY,\r
+       PCD_USEACTORINVENTORY,\r
+       PCD_CHECKACTORCEILINGTEXTURE,\r
+       PCD_CHECKACTORFLOORTEXTURE,\r
+       PCD_GETACTORLIGHTLEVEL,\r
+       PCD_SETMUGSHOTSTATE,\r
+       PCD_THINGCOUNTSECTOR,\r
+       PCD_THINGCOUNTNAMESECTOR,\r
+       PCD_CHECKPLAYERCAMERA,\r
+       PCD_MORPHACTOR,\r
+       PCD_UNMORPHACTOR,\r
+       PCD_GETPLAYERINPUT,\r
+       PCD_CLASSIFYACTOR,\r
+       PCD_PRINTBINARY,\r
+       PCD_PRINTHEX,\r
+       PCD_CALLFUNC,\r
+       PCD_SAVESTRING,         // [FDARI]\r
+       PCD_PRINTMAPCHRANGE,    // [FDARI] output range\r
+       PCD_PRINTWORLDCHRANGE,\r
+       PCD_PRINTGLOBALCHRANGE,\r
+       PCD_STRCPYTOMAPCHRANGE, // [FDARI] input range\r
+       PCD_STRCPYTOWORLDCHRANGE,\r
+       PCD_STRCPYTOGLOBALCHRANGE,\r
+       PCD_PUSHFUNCTION,               // from Eternity\r
+       PCD_CALLSTACK,                  // from Eternity\r
+       PCD_SCRIPTWAITNAMED,\r
+       PCD_TRANSLATIONRANGE3,\r
 \r
        PCODE_COMMAND_COUNT\r
 } pcd_t;\r
@@ -404,23 +436,23 @@ void PC_CloseObject(void);
 void PC_Append(void *buffer, size_t size);\r
 void PC_AppendByte(U_BYTE val);\r
 void PC_AppendWord(U_WORD val);\r
-void PC_AppendLong(U_LONG val);\r
+void PC_AppendInt(U_INT val);\r
 void PC_AppendString(char *string);\r
 void PC_AppendCmd(pcd_t command);\r
-void PC_AppendPushVal(U_LONG val);\r
+void PC_AppendPushVal(U_INT val);\r
 void PC_AppendShrink(U_BYTE val);\r
 void PC_Write(void *buffer, size_t size, int address);\r
 void PC_WriteByte(U_BYTE val, int address);\r
 //void PC_WriteWord(U_WORD val, int address);\r
-void PC_WriteLong(U_LONG val, int address);\r
+void PC_WriteInt(U_INT val, int address);\r
 void PC_WriteString(char *string, int address);\r
 void PC_WriteCmd(pcd_t command, int address);\r
 void PC_Skip(size_t size);\r
 //void PC_SkipByte(void);\r
 //void PC_SkipWord(void);\r
-void PC_SkipLong(void);\r
-void PC_AddScript(int number, int argCount);\r
-void PC_SetScriptVarCount(int number, int varCount);\r
+void PC_SkipInt(void);\r
+void PC_AddScript(int number, int type, int flags, int argCount);\r
+void PC_SetScriptVarCount(int number, int type, int varCount);\r
 void PC_AddFunction(struct symbolNode_s *sym);\r
 void PC_PutMapVariable(int index, int value);\r
 void PC_NameMapVariable(int index, struct symbolNode_s *sym);\r
@@ -437,6 +469,8 @@ extern int pc_ScriptCount;
 extern int pc_FunctionCount;\r
 extern boolean pc_NoShrink;\r
 extern boolean pc_HexenCase;\r
+extern boolean pc_EnforceHexen;\r
+extern boolean pc_WarnNotHexen;\r
 extern boolean pc_WadAuthor;\r
 extern boolean pc_EncryptStrings;\r
 extern int pc_LastAppendedCommand;\r