"PCD_SETACTORANGLE",\r
"PCD_GRABINPUT",\r
"PCD_SETMOUSEPOINTER",\r
- "PCD_MOVEMOUSEPOINTER"\r
+ "PCD_MOVEMOUSEPOINTER",\r
"PCD_SPAWNPROJECTILE",\r
"PCD_GETSECTORLIGHTLEVEL",\r
"PCD_GETACTORCEILINGZ",\r
"PCD_CHANGELEVEL",\r
"PCD_SECTORDAMAGE",\r
"PCD_REPLACETEXTURES",\r
- \r
+ "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
};\r
\r
// CODE --------------------------------------------------------------------\r
pc_ScriptCount = 0;\r
ObjectOpened = YES;\r
PC_AppendString("ACS");\r
- PC_SkipLong(); // Script table offset\r
+ PC_SkipInt(); // Script table offset\r
}\r
\r
//==========================================================================\r
int i;\r
\r
STR_WriteStrings();\r
- PC_WriteLong((U_LONG)pc_Address, 4);\r
- PC_AppendLong((U_LONG)pc_ScriptCount);\r
+ PC_WriteInt((U_INT)pc_Address, 4);\r
+ PC_AppendInt((U_INT)pc_ScriptCount);\r
for(i = 0; i < pc_ScriptCount; ++i)\r
{\r
scriptInfo_t *info = &ScriptInfo[i];\r
MS_Message(MSG_DEBUG, "Script %d, address = %d, arg count = %d\n",\r
info->number, info->address, info->argCount);\r
- PC_AppendLong((U_LONG)(info->number + info->type * 1000));\r
- PC_AppendLong((U_LONG)info->address);\r
- PC_AppendLong((U_LONG)info->argCount);\r
+ PC_AppendInt((U_INT)(info->number + info->type * 1000));\r
+ PC_AppendInt((U_INT)info->address);\r
+ PC_AppendInt((U_INT)info->argCount);\r
}\r
STR_WriteList();\r
}\r
if(j > 0)\r
{\r
PC_Append("SPTR", 4);\r
- PC_AppendLong(j * 8);\r
+ PC_AppendInt(j * 8);\r
for(i = 0; i < pc_ScriptCount; i++)\r
{\r
scriptInfo_t *info = &ScriptInfo[i];\r
PC_AppendWord(info->number);\r
PC_AppendByte(info->type);\r
PC_AppendByte(info->argCount);\r
- PC_AppendLong((U_LONG)info->address);\r
+ PC_AppendInt((U_INT)info->address);\r
}\r
}\r
}\r
if(j > 0)\r
{\r
PC_Append("SVCT", 4);\r
- PC_AppendLong(j * 4);\r
+ PC_AppendInt(j * 4);\r
for(i = 0; i < pc_ScriptCount; ++i)\r
{\r
scriptInfo_t *info = &ScriptInfo[i];\r
if (j > 0)\r
{\r
PC_Append("SFLG", 4);\r
- PC_AppendLong(j * 4);\r
+ PC_AppendInt(j * 4);\r
for(i = 0; i < pc_ScriptCount; ++i)\r
{\r
scriptInfo_t *info = &ScriptInfo[i];\r
if(pc_FunctionCount > 0)\r
{\r
PC_Append("FUNC", 4);\r
- PC_AppendLong(pc_FunctionCount * 8);\r
+ PC_AppendInt(pc_FunctionCount * 8);\r
for(i = 0; i < pc_FunctionCount; ++i)\r
{\r
functionInfo_t *info = &FunctionInfo[i];\r
PC_AppendByte(info->localCount);\r
PC_AppendByte((U_BYTE)(info->hasReturnValue?1:0));\r
PC_AppendByte(0);\r
- PC_AppendLong((U_LONG)info->address);\r
+ PC_AppendInt((U_INT)info->address);\r
}\r
STR_WriteListChunk(STRLIST_FUNCTIONS, MAKE4CC('F','N','A','M'), NO);\r
}\r
if (i < j)\r
{\r
PC_Append("MINI", 4);\r
- PC_AppendLong((j-i)*4+4);\r
- PC_AppendLong(i); // First map var defined\r
+ PC_AppendInt((j-i)*4+4);\r
+ PC_AppendInt(i); // First map var defined\r
for(; i < j; ++i)\r
{\r
- PC_AppendLong(MapVariables[i].initializer);\r
+ PC_AppendInt(MapVariables[i].initializer);\r
}\r
}\r
}\r
if(count > 0)\r
{\r
PC_Append("MSTR", 4);\r
- PC_AppendLong(count*4);\r
+ PC_AppendInt(count*4);\r
for(i = 0; i < pa_MapVarCount; ++i)\r
{\r
if(MapVariables[i].isString)\r
{\r
- PC_AppendLong(i);\r
+ PC_AppendInt(i);\r
}\r
}\r
}\r
if(count > 0)\r
{\r
PC_Append("ASTR", 4);\r
- PC_AppendLong(count*4);\r
+ PC_AppendInt(count*4);\r
for(i = 0; i < pa_MapVarCount; ++i)\r
{\r
if(ArrayOfStrings[i])\r
{\r
- PC_AppendLong(i);\r
+ PC_AppendInt(i);\r
}\r
}\r
}\r
if(count > 0)\r
{\r
PC_Append("MIMP", 4);\r
- PC_AppendLong(count);\r
+ PC_AppendInt(count);\r
for(i = 0; i < pa_MapVarCount; ++i)\r
{\r
if(MapVariables[i].imported && !ArraySizes[i])\r
{\r
- PC_AppendLong(i);\r
+ PC_AppendInt(i);\r
PC_AppendString(MapVariables[i].name);\r
}\r
}\r
if(count)\r
{\r
PC_Append("ARAY", 4);\r
- PC_AppendLong(count*8);\r
+ PC_AppendInt(count*8);\r
for(i = 0; i < pa_MapVarCount; ++i)\r
{\r
if(ArraySizes[i] && !MapVariables[i].imported)\r
{\r
- PC_AppendLong(i);\r
- PC_AppendLong(ArraySizes[i]);\r
+ PC_AppendInt(i);\r
+ PC_AppendInt(ArraySizes[i]);\r
}\r
}\r
for(i = 0; i < pa_MapVarCount; ++i)\r
int j;\r
\r
PC_Append("AINI", 4);\r
- PC_AppendLong(ArraySizes[i]*4+4);\r
- PC_AppendLong((U_LONG)i);\r
+ PC_AppendInt(ArraySizes[i]*4+4);\r
+ PC_AppendInt((U_INT)i);\r
+ MS_Message(MSG_DEBUG, "Writing array initializers for array %d (size %d)\n", i, ArraySizes[i]);\r
for(j = 0; j < ArraySizes[i]; ++j)\r
{\r
- PC_AppendLong((U_LONG)ArrayInits[i][j]);\r
+ PC_AppendInt((U_INT)ArrayInits[i][j]);\r
}\r
}\r
}\r
if(count)\r
{\r
PC_Append("AIMP", 4);\r
- PC_AppendLong(count+4);\r
- PC_AppendLong(j);\r
+ PC_AppendInt(count+4);\r
+ PC_AppendInt(j);\r
for(i = 0; i < pa_MapVarCount; ++i)\r
{\r
if(ArraySizes[i] && MapVariables[i].imported)\r
{\r
- PC_AppendLong(i);\r
- PC_AppendLong(ArraySizes[i]);\r
+ PC_AppendInt(i);\r
+ PC_AppendInt(ArraySizes[i]);\r
PC_AppendString(MapVariables[i].name);\r
}\r
}\r
if(ImportMode == IMPORT_Exporting)\r
{\r
PC_Append("ALIB", 4);\r
- PC_AppendLong(0);\r
+ PC_AppendInt(0);\r
}\r
\r
// Record libraries imported by this object.\r
if(count > 0)\r
{\r
PC_Append("LOAD", 4);\r
- PC_AppendLong(count);\r
+ PC_AppendInt(count);\r
for(i = 0; i < NumImports; ++i)\r
{\r
PC_AppendString(Imports[i]);\r
}\r
}\r
\r
- PC_AppendLong((U_LONG)chunkStart);\r
+ PC_AppendInt((U_INT)chunkStart);\r
if(pc_NoShrink)\r
{\r
PC_Append("ACSE", 4);\r
{\r
PC_Append("ACSe", 4);\r
}\r
- PC_WriteLong((U_LONG)pc_Address, 4);\r
+ PC_WriteInt((U_INT)pc_Address, 4);\r
\r
// WadAuthor compatibility when creating a library is pointless, because\r
// that editor does not know anything about libraries and will never\r
}\r
else\r
{\r
- PC_AppendLong(0);\r
+ PC_AppendInt(0);\r
}\r
- PC_AppendLong(0);\r
+ PC_AppendInt(0);\r
}\r
\r
//==========================================================================\r
MS_Message(MSG_DEBUG, "Creating dummy scripts to make WadAuthor happy.\n");\r
if(pc_Address%4 != 0)\r
{ // Need to align\r
- U_LONG pad = 0;\r
+ U_INT pad = 0;\r
PC_Append((void *)&pad, 4-(pc_Address%4));\r
}\r
pc_DummyAddress = pc_Address;\r
++count;\r
}\r
}\r
- PC_AppendLong((U_LONG)count);\r
+ PC_AppendInt((U_INT)count);\r
for(i = 0; i < pc_ScriptCount; ++i)\r
{\r
scriptInfo_t *info = &ScriptInfo[i];\r
{\r
MS_Message(MSG_DEBUG, "Dummy script %d, address = %d, arg count = %d\n",\r
info->number, info->address, info->argCount);\r
- PC_AppendLong((U_LONG)info->number);\r
- PC_AppendLong((U_LONG)pc_DummyAddress + i*4);\r
- PC_AppendLong((U_LONG)info->argCount);\r
+ PC_AppendInt((U_INT)info->number);\r
+ PC_AppendInt((U_INT)pc_DummyAddress + i*4);\r
+ PC_AppendInt((U_INT)info->argCount);\r
}\r
}\r
}\r
}\r
}\r
\r
-void PC_AppendLong(U_LONG val)\r
+void PC_AppendInt(U_INT val)\r
{\r
if (ImportMode != IMPORT_Importing)\r
{\r
MS_Message(MSG_DEBUG, "AL> %06d = %d\n", pc_Address, val);\r
- val = MS_LittleULONG(val);\r
- Append(&val, sizeof(U_LONG));\r
+ val = MS_LittleUINT(val);\r
+ Append(&val, sizeof(U_INT));\r
}\r
}\r
\r
{\r
MS_Message(MSG_DEBUG, "AC> %06d = #%d:%s\n", pc_Address,\r
command, PCDNames[command]);\r
- command = MS_LittleULONG(command);\r
- Append(&command, sizeof(U_LONG));\r
+ command = MS_LittleUINT(command);\r
+ Append(&command, sizeof(U_INT));\r
}\r
else\r
{\r
{\r
if(pc_NoShrink)\r
{\r
- PC_AppendLong(val);\r
+ PC_AppendInt(val);\r
}\r
else\r
{\r
//\r
//==========================================================================\r
\r
-void PC_AppendPushVal(U_LONG val)\r
+void PC_AppendPushVal(U_INT val)\r
{\r
if(pc_NoShrink || val > 255)\r
{\r
PC_AppendCmd(PCD_PUSHNUMBER);\r
- PC_AppendLong(val);\r
+ PC_AppendInt(val);\r
}\r
else\r
{\r
}\r
*/\r
\r
-void PC_WriteLong(U_LONG val, int address)\r
+void PC_WriteInt(U_INT val, int address)\r
{\r
if (ImportMode != IMPORT_Importing)\r
{\r
MS_Message(MSG_DEBUG, "WL> %06d = %d\n", address, val);\r
- val = MS_LittleULONG(val);\r
- Write(&val, sizeof(U_LONG), address);\r
+ val = MS_LittleUINT(val);\r
+ Write(&val, sizeof(U_INT), address);\r
}\r
pc_LastAppendedCommand = PCD_NOP;\r
}\r
{\r
MS_Message(MSG_DEBUG, "WC> %06d = #%d:%s\n", address,\r
command, PCDNames[command]);\r
- command = MS_LittleULONG(command);\r
- Write(&command, sizeof(U_LONG), address);\r
+ command = MS_LittleUINT(command);\r
+ Write(&command, sizeof(U_INT), address);\r
}\r
}\r
\r
}\r
*/\r
\r
-void PC_SkipLong(void)\r
+void PC_SkipInt(void)\r
{\r
if (ImportMode != IMPORT_Importing)\r
{\r
- MS_Message(MSG_DEBUG, "SL> %06d (skip long)\n", pc_Address);\r
- Skip(sizeof(U_LONG));\r
+ MS_Message(MSG_DEBUG, "SL> %06d (skip int)\n", pc_Address);\r
+ Skip(sizeof(U_INT));\r
}\r
}\r
\r