mirror of
https://github.com/electronicarts/CnC_Renegade.git
synced 2025-12-16 15:41:39 -05:00
Initial commit of Command & Conquer Renegade source code.
This commit is contained in:
65
Code/Scripts/Common.cpp
Normal file
65
Code/Scripts/Common.cpp
Normal file
@@ -0,0 +1,65 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Common.cpp
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Programmer Inserted Common Scripting Functions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Programming Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Rich_d $
|
||||
* $Revision: 14 $
|
||||
* $Modtime: 6/13/00 11:46a $
|
||||
* $Archive: /Commando/Code/Scripts/Common.cpp $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#include "common.h"
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* RandomVector3
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Generate a random vector.
|
||||
*
|
||||
* INPUTS
|
||||
* xRange - Maximum X extent.
|
||||
* yRange - Maximum Y extent.
|
||||
* zRange - Maximum Z extent.
|
||||
*
|
||||
* RESULTS
|
||||
* Vector - Randomized vector
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
Vector3 RandomVector3(float xRange, float yRange, float zRange)
|
||||
{
|
||||
float x = Commands->Get_Random(-xRange, xRange);
|
||||
float y = Commands->Get_Random(-yRange, yRange);
|
||||
float z = Commands->Get_Random(-zRange, zRange);
|
||||
|
||||
return Vector3(x, y, z);
|
||||
}
|
||||
55
Code/Scripts/Common.h
Normal file
55
Code/Scripts/Common.h
Normal file
@@ -0,0 +1,55 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Common.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Common scripting functions and definitions.
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Denzil E. Long, Jr.
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Rich_d $
|
||||
* $Revision: 12 $
|
||||
* $Modtime: 6/13/00 11:57a $
|
||||
* $Archive: /Commando/Code/Scripts/Common.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _COMMON_H_
|
||||
#define _COMMON_H_
|
||||
|
||||
#include "customevents.h"
|
||||
#include "scripts.h"
|
||||
#include "dprint.h"
|
||||
#include "groupcontrol.h"
|
||||
#include "group.h"
|
||||
#include "vector3.h"
|
||||
#include "wwmath.h"
|
||||
#include <string.h>
|
||||
#include <assert.h>
|
||||
|
||||
class Vector3;
|
||||
|
||||
Vector3 RandomVector3(float xRange, float yRange, float zRange);
|
||||
|
||||
#endif // _COMMON_H_
|
||||
173
Code/Scripts/CustomEvents.h
Normal file
173
Code/Scripts/CustomEvents.h
Normal file
@@ -0,0 +1,173 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
*
|
||||
* DESCRIPTION
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Denzil E. Long, Jr.
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Patrick $
|
||||
* $Revision: 7 $
|
||||
* $Modtime: 11/29/00 5:14p $
|
||||
* $Archive: /Commando/Code/Scripts/CustomEvents.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _CUSTOMEVENTS_H_
|
||||
#define _CUSTOMEVENTS_H_
|
||||
|
||||
// Custom script events
|
||||
typedef enum {
|
||||
// Global events 0-999
|
||||
SCMD_GLOBAL = 0,
|
||||
|
||||
// Sent by subscribers to publishers to request subscription to published events.
|
||||
// Note: Not all scripts support subscription, if a script subscribes to an object
|
||||
// that does not publish then it will never receive messages from it.
|
||||
//
|
||||
// Param = Subscriber
|
||||
SCMD_SUBSCRIBE,
|
||||
|
||||
// Sent by subscribers to publishers to request removal from subscriber list.
|
||||
//
|
||||
// Param = Subscriber
|
||||
SCMD_UNSUBSCRIBE,
|
||||
|
||||
// Sent by the mission controller when an objective has failed to be satisfied.
|
||||
// (An example of a failed objective would be when an object that was to be
|
||||
// protected was destroyed or when a timed objective expired.)
|
||||
//
|
||||
// Param = Objective Number
|
||||
SCMD_OBJECTIVE_FAILED,
|
||||
|
||||
// Sent by mission controller when an objective has been completed.
|
||||
//
|
||||
// Param: Objective Number
|
||||
SCMD_OBJECTIVE_COMPLETE,
|
||||
|
||||
// Sent by mission controller when the mission is lost.
|
||||
SCMD_MISSION_FAILED,
|
||||
|
||||
// Send by mission controller when the mission is accomplished.
|
||||
SCMD_MISSION_ACCOMPLISHED,
|
||||
|
||||
// Refer to Group definition for description of group events.
|
||||
SCMD_GROUP_EVENT,
|
||||
|
||||
// Mission 1 events 1000-1999
|
||||
SCMD_MISSION1 = 1000,
|
||||
|
||||
// Mission 2 events 2000-2999
|
||||
SCMD_MISSION2 = 2000,
|
||||
|
||||
// Mission 3 events 3000-3999
|
||||
SCMD_MISSION3 = 3000,
|
||||
|
||||
// Mission 4 events 4000-4999
|
||||
SCMD_MISSION4 = 4000,
|
||||
|
||||
// Mission 5 events 5000-5999
|
||||
SCMD_MISSION5 = 5000,
|
||||
|
||||
// Mission 6 events 6000-6999
|
||||
SCMD_MISSION6 = 6000,
|
||||
|
||||
// Mission 7 events 7000-7999
|
||||
SCMD_MISSION7 = 7000,
|
||||
|
||||
// Mission 8 events 8000-8999
|
||||
SCMD_MISSION8 = 8000,
|
||||
|
||||
// Mission 9 events 9000-9999
|
||||
SCMD_MISSION9 = 9000,
|
||||
|
||||
// Mission 10 events 10000-10999
|
||||
SCMD_MISSION10 = 10000,
|
||||
|
||||
// Mission 11 events 11000-11999
|
||||
SCMD_MISSION11 = 11000,
|
||||
|
||||
// Mission 12 events 12000-12999
|
||||
SCMD_MISSION12 = 12000,
|
||||
|
||||
// PR Demo events 99000-99999
|
||||
SCMD_PRDEMO = 99000,
|
||||
|
||||
// Programmer generated events begin at 1000000000
|
||||
|
||||
} SCRIPT_CUSTOMEVENT;
|
||||
|
||||
|
||||
// Script timer IDs
|
||||
typedef enum {
|
||||
// Global timers 0-99
|
||||
STIMER_GLOBAL = 0,
|
||||
|
||||
STIMER_BEAT,
|
||||
STIMER_SURVIVE,
|
||||
|
||||
// Mission 1 timers 100-199
|
||||
STIMER_MISSION1 = 100,
|
||||
|
||||
// Mission 2 timers 200-299
|
||||
STIMER_MISSION2 = 200,
|
||||
|
||||
// Mission 3 timers 300-399
|
||||
STIMER_MISSION3 = 300,
|
||||
|
||||
// Mission 4 timers 400-499
|
||||
STIMER_MISSION4 = 400,
|
||||
|
||||
// Mission 5 timers 500-599
|
||||
STIMER_MISSION5 = 500,
|
||||
|
||||
// Mission 6 timers 600-699
|
||||
STIMER_MISSION6 = 600,
|
||||
|
||||
// Mission 7 timers 700-799
|
||||
STIMER_MISSION7 = 700,
|
||||
|
||||
// Mission 8 timers 800-899
|
||||
STIMER_MISSION8 = 800,
|
||||
|
||||
// Mission 9 timers 900-999
|
||||
STIMER_MISSION9 = 900,
|
||||
|
||||
// Mission 10 timers 1000-1099
|
||||
STIMER_MISSION10 = 1000,
|
||||
|
||||
// Mission 11 timers 1100-1199
|
||||
STIMER_MISSION11 = 1100,
|
||||
|
||||
// Mission 12 timers 1200-1299
|
||||
STIMER_MISSION12 = 1200,
|
||||
|
||||
// PR Demo timers 1300-1399
|
||||
STIMER_PRDEMO = 1300,
|
||||
|
||||
// Toolkit timers 9900 - 9999
|
||||
STIMER_TOOLKIT = 9900,
|
||||
|
||||
} SCRIPT_TIMER;
|
||||
|
||||
#endif // _CUSTOMEVENTS_H_
|
||||
257
Code/Scripts/DLLmain.cpp
Normal file
257
Code/Scripts/DLLmain.cpp
Normal file
@@ -0,0 +1,257 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
*
|
||||
* DESCRIPTION
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Denzil E. Long, Jr.
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Patrick $
|
||||
* $Revision: 10 $
|
||||
* $Modtime: 8/29/01 4:04p $
|
||||
* $Archive: /Commando/Code/Scripts/DLLmain.cpp $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#include "Windows.H"
|
||||
#include "scripts.h"
|
||||
#include "scriptregistrar.h"
|
||||
//#include "missioncontrol.h"
|
||||
#include "dprint.h"
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* DllMain
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Main DLL entry point
|
||||
*
|
||||
* INPUTS
|
||||
* HINSTANCE hinst
|
||||
* DWORD reason
|
||||
* LPVOID
|
||||
*
|
||||
* RESULTS
|
||||
* BOOL APIENTRY
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
__declspec(dllexport)
|
||||
BOOL APIENTRY DllMain(HINSTANCE hinst, DWORD reason, LPVOID)
|
||||
{
|
||||
if (reason == DLL_PROCESS_ATTACH) {
|
||||
// DebugPrint("\n========== Script.dll loaded ==========\n");
|
||||
DebugPrint("Total registered scripts: %d\n", ScriptRegistrar::Count());
|
||||
|
||||
} else if (reason == DLL_PROCESS_DETACH) {
|
||||
// DebugPrint("\n========== Script.dll Unloaded ==========\n");
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Create_Script
|
||||
*
|
||||
* DESCRIPTION
|
||||
* DLL entry to create a script instance.
|
||||
*
|
||||
* INPUTS
|
||||
* const char* name
|
||||
*
|
||||
* RESULTS
|
||||
* ScriptClass*
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
ScriptClass* Create_Script(const char* name)
|
||||
{
|
||||
return ScriptRegistrar::CreateScript(name);
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Destroy_Script
|
||||
*
|
||||
* DESCRIPTION
|
||||
* DLL entry to destroy a script instance
|
||||
*
|
||||
* INPUTS
|
||||
* ScriptClass* script
|
||||
*
|
||||
* RESULTS
|
||||
* NONE
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
void Destroy_Script(ScriptClass* script)
|
||||
{
|
||||
assert(script != NULL);
|
||||
delete script;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Get_Script_Count
|
||||
*
|
||||
* DESCRIPTION
|
||||
* DLL entry to count the number of registered scripts
|
||||
*
|
||||
* INPUTS
|
||||
* NONE
|
||||
*
|
||||
* RESULTS
|
||||
* Count
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
int Get_Script_Count(void)
|
||||
{
|
||||
return ScriptRegistrar::Count();
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Get_Script_Name
|
||||
*
|
||||
* DESCRIPTION
|
||||
* DLL entry to retrieve script name.
|
||||
*
|
||||
* INPUTS
|
||||
* int index
|
||||
*
|
||||
* RESULTS
|
||||
* const char*
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
const char* Get_Script_Name(int index)
|
||||
{
|
||||
ScriptFactory* factory = ScriptRegistrar::GetScriptFactory(index);
|
||||
|
||||
if (factory != NULL) {
|
||||
return factory->GetName();
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Get_Script_Param_Description
|
||||
*
|
||||
* DESCRIPTION
|
||||
* DLL entry to retrieve Script parameter description.
|
||||
*
|
||||
* INPUTS
|
||||
* int index
|
||||
*
|
||||
* RESULTS
|
||||
* const char*
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
const char* Get_Script_Param_Description(int index)
|
||||
{
|
||||
ScriptFactory* factory = ScriptRegistrar::GetScriptFactory(index);
|
||||
|
||||
if (factory != NULL) {
|
||||
return factory->GetParamDescription();
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Set_Script_Commands
|
||||
*
|
||||
* DESCRIPTION
|
||||
* DLL entry to initialize script commands hooks.
|
||||
*
|
||||
* INPUTS
|
||||
* ScriptCommandsClass* commands
|
||||
*
|
||||
* RESULTS
|
||||
* Success - True if successful; otherwise false.
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
bool Set_Script_Commands(ScriptCommandsClass* commands)
|
||||
{
|
||||
assert(commands != NULL);
|
||||
|
||||
// Save the commands list
|
||||
Commands = commands->Commands;
|
||||
|
||||
DebugPrint("Setting script commands (Version %d, Size %d)\n",
|
||||
Commands->Version, Commands->Size);
|
||||
|
||||
// Check the commands version number
|
||||
if ((Commands->Size != sizeof(ScriptCommands))
|
||||
|| (Commands->Version != SCRIPT_COMMANDS_VERSION)) {
|
||||
|
||||
DebugPrint("***** Invalid script commands (Expected Version %d, Size %d)\n",
|
||||
SCRIPT_COMMANDS_VERSION, sizeof(ScriptCommands));
|
||||
Commands->Debug_Message("******** Incorrect Script Commands Version\n");
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Set_Request_Destroy_Func
|
||||
*
|
||||
* DESCRIPTION
|
||||
*
|
||||
* INPUTS
|
||||
* Function
|
||||
*
|
||||
* RESULTS
|
||||
* NONE
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
void Set_Request_Destroy_Func(void (*function)(ScriptClass*))
|
||||
{
|
||||
assert(function != NULL);
|
||||
ScriptImpClass::Set_Request_Destroy_Func(function);
|
||||
}
|
||||
152
Code/Scripts/DPrint.cpp
Normal file
152
Code/Scripts/DPrint.cpp
Normal file
@@ -0,0 +1,152 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* DPrint.cpp
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Debug printing mechanism
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Denzil E. Long, Jr.
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Byon_g $
|
||||
* $Revision: 2 $
|
||||
* $Modtime: 2/13/01 11:02a $
|
||||
* $Archive: /Commando/Code/Scripts/DPrint.cpp $
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef _DEBUG
|
||||
|
||||
#include "dprint.h"
|
||||
#include <windows.h>
|
||||
#include <stdio.h>
|
||||
#include <stdarg.h>
|
||||
#include <assert.h>
|
||||
|
||||
#include "scriptcommands.h"
|
||||
extern ScriptCommands* Commands;
|
||||
|
||||
#define LOGFILE_NAME "ScriptLog"
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* DPrint(String, ArgList...)
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Ouput debug print messages to the debugger and log file.
|
||||
*
|
||||
* INPUTS
|
||||
* String - String to output.
|
||||
* ArgList - Argument list
|
||||
*
|
||||
* RESULT
|
||||
* NONE
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
void __cdecl DebugPrint(const char* string, ...)
|
||||
{
|
||||
static char _buffer[1024];
|
||||
static char _filename[512] = "";
|
||||
|
||||
if (string != NULL)
|
||||
{
|
||||
va_list va;
|
||||
|
||||
// Format string
|
||||
va_start(va, string);
|
||||
vsprintf(&_buffer[0], string, va);
|
||||
va_end(va);
|
||||
|
||||
if (Commands != NULL)
|
||||
{
|
||||
// Send string to commando executable
|
||||
Commands->Debug_Message(_buffer);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Send string to debugger
|
||||
OutputDebugString(_buffer);
|
||||
}
|
||||
|
||||
#if 0
|
||||
HANDLE file = INVALID_HANDLE_VALUE;
|
||||
|
||||
// Open log file
|
||||
if (strlen(_filename) == 0)
|
||||
{
|
||||
char path[_MAX_PATH];
|
||||
char drive[_MAX_DRIVE];
|
||||
char dir[_MAX_DIR];
|
||||
|
||||
GetModuleFileName(GetModuleHandle(NULL), &path[0], sizeof(path));
|
||||
_splitpath(path, drive, dir, NULL, NULL);
|
||||
_makepath(_filename, drive, dir, LOGFILE_NAME, "txt");
|
||||
|
||||
file = CreateFile(_filename, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS,
|
||||
FILE_ATTRIBUTE_NORMAL, NULL);
|
||||
}
|
||||
else
|
||||
{
|
||||
file = CreateFile(_filename, GENERIC_WRITE, 0, NULL, OPEN_ALWAYS,
|
||||
FILE_ATTRIBUTE_NORMAL, NULL);
|
||||
}
|
||||
|
||||
// Insert carriage return after newlines
|
||||
int i = 0;
|
||||
|
||||
while (_buffer[i] != '\0')
|
||||
{
|
||||
if (_buffer[i] == '\n')
|
||||
{
|
||||
int end = strlen(_buffer);
|
||||
assert((end + 1) <= sizeof(_buffer));
|
||||
|
||||
while (end >= i)
|
||||
{
|
||||
_buffer[end + 1] = _buffer[end];
|
||||
end--;
|
||||
}
|
||||
|
||||
_buffer[i] = '\r';
|
||||
i++;
|
||||
}
|
||||
|
||||
i++;
|
||||
}
|
||||
|
||||
// Send string to log file
|
||||
if (file != INVALID_HANDLE_VALUE)
|
||||
{
|
||||
DWORD written;
|
||||
|
||||
SetFilePointer(file, 0, NULL, FILE_END);
|
||||
WriteFile(file, &_buffer[0], strlen(_buffer), &written, NULL);
|
||||
CloseHandle(file);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
#endif // _DEBUG
|
||||
58
Code/Scripts/DPrint.h
Normal file
58
Code/Scripts/DPrint.h
Normal file
@@ -0,0 +1,58 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* DPrint.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Debug printing mechanism
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Denzil E. Long, Jr.
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Denzil_l $
|
||||
* $Revision: 1 $
|
||||
* $Modtime: 3/24/00 1:27p $
|
||||
* $Archive: /Commando/Code/Scripts/DPrint.h $
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef _DPRINT_H_
|
||||
#define _DPRINT_H_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#ifdef _DEBUG
|
||||
//! Ouput debug print messages to the debugger and log file.
|
||||
void __cdecl DebugPrint(const char* string, ...);
|
||||
#else
|
||||
#define DebugPrint
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif // _DPRINT_H_
|
||||
BIN
Code/Scripts/Debug/DLLmain.sbr
Normal file
BIN
Code/Scripts/Debug/DLLmain.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/DPrint.sbr
Normal file
BIN
Code/Scripts/Debug/DPrint.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/DrMobius.sbr
Normal file
BIN
Code/Scripts/Debug/DrMobius.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Mission00.sbr
Normal file
BIN
Code/Scripts/Debug/Mission00.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Mission01.sbr
Normal file
BIN
Code/Scripts/Debug/Mission01.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Mission02.sbr
Normal file
BIN
Code/Scripts/Debug/Mission02.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Mission03.sbr
Normal file
BIN
Code/Scripts/Debug/Mission03.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Mission04.sbr
Normal file
BIN
Code/Scripts/Debug/Mission04.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Mission05.sbr
Normal file
BIN
Code/Scripts/Debug/Mission05.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Mission06.sbr
Normal file
BIN
Code/Scripts/Debug/Mission06.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Mission07.sbr
Normal file
BIN
Code/Scripts/Debug/Mission07.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Mission09.sbr
Normal file
BIN
Code/Scripts/Debug/Mission09.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Mission10.sbr
Normal file
BIN
Code/Scripts/Debug/Mission10.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Mission11.sbr
Normal file
BIN
Code/Scripts/Debug/Mission11.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/MissionDemo.sbr
Normal file
BIN
Code/Scripts/Debug/MissionDemo.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/MissionX0.sbr
Normal file
BIN
Code/Scripts/Debug/MissionX0.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/ScriptFactory.sbr
Normal file
BIN
Code/Scripts/Debug/ScriptFactory.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/ScriptRegistrar.sbr
Normal file
BIN
Code/Scripts/Debug/ScriptRegistrar.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Scripts.exp
Normal file
BIN
Code/Scripts/Debug/Scripts.exp
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Scripts.lib
Normal file
BIN
Code/Scripts/Debug/Scripts.lib
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Scripts.pch
Normal file
BIN
Code/Scripts/Debug/Scripts.pch
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Test_BMG.sbr
Normal file
BIN
Code/Scripts/Debug/Test_BMG.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Test_Cinematic.sbr
Normal file
BIN
Code/Scripts/Debug/Test_Cinematic.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Test_DAK.sbr
Normal file
BIN
Code/Scripts/Debug/Test_DAK.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Test_DAY.sbr
Normal file
BIN
Code/Scripts/Debug/Test_DAY.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Test_DLS.sbr
Normal file
BIN
Code/Scripts/Debug/Test_DLS.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Test_DME.sbr
Normal file
BIN
Code/Scripts/Debug/Test_DME.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Test_GTH.sbr
Normal file
BIN
Code/Scripts/Debug/Test_GTH.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Test_JDG_EVA.sbr
Normal file
BIN
Code/Scripts/Debug/Test_JDG_EVA.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Test_PDS.sbr
Normal file
BIN
Code/Scripts/Debug/Test_PDS.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Test_RAD.sbr
Normal file
BIN
Code/Scripts/Debug/Test_RAD.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Test_RMV.sbr
Normal file
BIN
Code/Scripts/Debug/Test_RMV.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Test_RMV_Toolkit.sbr
Normal file
BIN
Code/Scripts/Debug/Test_RMV_Toolkit.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Toolkit.sbr
Normal file
BIN
Code/Scripts/Debug/Toolkit.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Toolkit_Actions.sbr
Normal file
BIN
Code/Scripts/Debug/Toolkit_Actions.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Toolkit_Animations.sbr
Normal file
BIN
Code/Scripts/Debug/Toolkit_Animations.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Toolkit_Broadcaster.sbr
Normal file
BIN
Code/Scripts/Debug/Toolkit_Broadcaster.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Toolkit_Explosions.sbr
Normal file
BIN
Code/Scripts/Debug/Toolkit_Explosions.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Toolkit_Objectives.sbr
Normal file
BIN
Code/Scripts/Debug/Toolkit_Objectives.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Toolkit_Objects.sbr
Normal file
BIN
Code/Scripts/Debug/Toolkit_Objects.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Toolkit_Powerup.sbr
Normal file
BIN
Code/Scripts/Debug/Toolkit_Powerup.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Toolkit_Siege.sbr
Normal file
BIN
Code/Scripts/Debug/Toolkit_Siege.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Toolkit_Sounds.sbr
Normal file
BIN
Code/Scripts/Debug/Toolkit_Sounds.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Toolkit_Spawners.sbr
Normal file
BIN
Code/Scripts/Debug/Toolkit_Spawners.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/Toolkit_Triggers.sbr
Normal file
BIN
Code/Scripts/Debug/Toolkit_Triggers.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/mission08.sbr
Normal file
BIN
Code/Scripts/Debug/mission08.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/scripts.sbr
Normal file
BIN
Code/Scripts/Debug/scripts.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Debug/strtrim.sbr
Normal file
BIN
Code/Scripts/Debug/strtrim.sbr
Normal file
Binary file not shown.
78
Code/Scripts/DrMobius.cpp
Normal file
78
Code/Scripts/DrMobius.cpp
Normal file
@@ -0,0 +1,78 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
*
|
||||
* DESCRIPTION
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Patrick Smith
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Patrick $
|
||||
* $Revision: 6 $
|
||||
* $Modtime: 10/30/00 6:53p $
|
||||
* $Archive: /Commando/Code/Scripts/DrMobius.cpp $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#include "scripts.h"
|
||||
#include "dprint.h"
|
||||
|
||||
|
||||
DECLARE_SCRIPT(Dr_Mobius_Script, "")
|
||||
{
|
||||
GameObject *CurrentLeader;
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Created
|
||||
////////////////////////////////////////////////////////////////////
|
||||
void Created (GameObject *game_obj)
|
||||
{
|
||||
CurrentLeader = NULL;
|
||||
Commands->Start_Timer (game_obj, this, 0.5F, 777);
|
||||
return ;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Timer_Expired
|
||||
////////////////////////////////////////////////////////////////////
|
||||
void Timer_Expired (GameObject *game_obj, int timer_id)
|
||||
{
|
||||
if (timer_id == 777) {
|
||||
Commands->Innate_Disable (game_obj);
|
||||
|
||||
Vector3 pos = Commands->Get_Position(game_obj);
|
||||
GameObject * p_leader = Commands->Find_Closest_Soldier(pos, 0.1f, 2.0f, true);
|
||||
if (p_leader != NULL && p_leader != CurrentLeader) {
|
||||
ActionParamsStruct params;
|
||||
params.Set_Basic(this, 100, 100);
|
||||
params.Set_Movement(p_leader, 1.0f, 1.0f);
|
||||
params.MoveFollow = true;
|
||||
Commands->Action_Goto(game_obj, params);
|
||||
CurrentLeader = p_leader;
|
||||
}
|
||||
|
||||
Commands->Start_Timer (game_obj, this, 0.5F, 777);
|
||||
}
|
||||
return ;
|
||||
}
|
||||
};
|
||||
|
||||
269
Code/Scripts/Group.cpp
Normal file
269
Code/Scripts/Group.cpp
Normal file
@@ -0,0 +1,269 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Group.cpp
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Group manager for GameObjects
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Denzil E. Long, Jr.
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Denzil_l $
|
||||
* $Revision: 1 $
|
||||
* $Modtime: 4/17/00 9:47a $
|
||||
* $Archive: /Commando/Code/Scripts/Group.cpp $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#include "group.h"
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Group::Group
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Group Constructor
|
||||
*
|
||||
* INPUTS
|
||||
* Name - Name of team.
|
||||
*
|
||||
* RESULTS
|
||||
* NONE
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
Group::Group(const char* name)
|
||||
{
|
||||
mName[0] = '\0';
|
||||
|
||||
// Make copy of team name
|
||||
assert(name != NULL);
|
||||
|
||||
if (name != NULL)
|
||||
{
|
||||
strncpy(mName, name, sizeof(mName));
|
||||
mName[sizeof(mName) - 1] = '\0';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Group::~Group
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Group Destructor
|
||||
*
|
||||
* INPUTS
|
||||
* NONE
|
||||
*
|
||||
* RESULTS
|
||||
* NONE
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
Group::~Group()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Group::GetName
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Retrieve name of Group.
|
||||
*
|
||||
* INPUTS
|
||||
* NONE
|
||||
*
|
||||
* RESULTS
|
||||
* Name - Name of team
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
const char* Group::GetName(void) const
|
||||
{
|
||||
return mName;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Group::AddMember
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Add a game object to the Group.
|
||||
*
|
||||
* INPUTS
|
||||
* GameObject - Pointer to game object to add.
|
||||
*
|
||||
* RESULTS
|
||||
* NONE
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
void Group::AddMember(GameObject* object)
|
||||
{
|
||||
assert(object != NULL);
|
||||
|
||||
// Add the object if it is not already a member of the team.
|
||||
if (IsMember(object) == false)
|
||||
{
|
||||
mMembers.Add(object);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Group::RemoveMember
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Remove a game object from the Group.
|
||||
*
|
||||
* INPUTS
|
||||
* GameObject - Pointer to game object to remove.
|
||||
*
|
||||
* RESULTS
|
||||
* NONE
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
void Group::RemoveMember(GameObject* object)
|
||||
{
|
||||
assert(object != NULL);
|
||||
mMembers.Delete(object);
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Group::IsMember
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Check if a game object is member of the Group.
|
||||
*
|
||||
* INPUTS
|
||||
* GameObjectID objectID
|
||||
*
|
||||
* RESULTS
|
||||
* bool
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
bool Group::IsMember(GameObject* object) const
|
||||
{
|
||||
assert(object != NULL);
|
||||
|
||||
for (int index = 0; index < mMembers.Count(); index++)
|
||||
{
|
||||
if (mMembers[index] == object)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* MemberCount
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Get the number of members in the Group.
|
||||
*
|
||||
* INPUTS
|
||||
* NONE
|
||||
*
|
||||
* RESULTS
|
||||
* Count - Member count
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
int Group::MemberCount(void) const
|
||||
{
|
||||
return mMembers.Count();
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Group::GetMember
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Get a Group member.
|
||||
*
|
||||
* INPUTS
|
||||
* int index
|
||||
*
|
||||
* RESULTS
|
||||
* GameObject*
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
GameObject* Group::GetMember(int index)
|
||||
{
|
||||
assert(index >= 0);
|
||||
assert(index < MemberCount());
|
||||
|
||||
return mMembers[index];
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* Group::SendCommand
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Send a command to all the members of the Group.
|
||||
*
|
||||
* INPUTS
|
||||
* Command - Command to send to Group members.
|
||||
* Data - Command specific data parameter.
|
||||
*
|
||||
* RESULTS
|
||||
* NONE
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
void Group::SendCustomEvent(GameObject* from, int event, int data)
|
||||
{
|
||||
for (int index = 0; index < mMembers.Count(); index++)
|
||||
{
|
||||
GameObject* object = mMembers[index];
|
||||
assert(object != NULL);
|
||||
Commands->Send_Custom_Event(from, object, event, data);
|
||||
}
|
||||
}
|
||||
109
Code/Scripts/Group.h
Normal file
109
Code/Scripts/Group.h
Normal file
@@ -0,0 +1,109 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Group.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Group definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Denzil E. Long, Jr.
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Denzil_l $
|
||||
* $Revision: 1 $
|
||||
* $Modtime: 4/17/00 9:42a $
|
||||
* $Archive: /Commando/Code/Scripts/Group.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _GROUP_H_
|
||||
#define _GROUP_H_
|
||||
|
||||
#include "scripts.h"
|
||||
#include "vector.h"
|
||||
|
||||
|
||||
// Group event identifiers
|
||||
typedef enum
|
||||
{
|
||||
GROUP_MEMBER_DAMAGED = 1,
|
||||
GROUP_MEMBER_KILLED,
|
||||
GROUP_MEMBER_HEARD,
|
||||
GROUP_MEMBER_SAW,
|
||||
} GroupEvent;
|
||||
|
||||
|
||||
// Group event information.
|
||||
//
|
||||
// A pointer to this structure is sent as a data parameter when the custom
|
||||
// event SCMD_GROUP_EVENT is sent to an object.
|
||||
typedef struct GroupEventInfoTag
|
||||
{
|
||||
const char* GroupName;
|
||||
GroupEvent Event;
|
||||
|
||||
union
|
||||
{
|
||||
GameObject* Object;
|
||||
const CombatSound* Sound;
|
||||
};
|
||||
} GroupEventInfo;
|
||||
|
||||
|
||||
class GroupController;
|
||||
|
||||
class Group
|
||||
{
|
||||
public:
|
||||
// Retrieve Team name
|
||||
const char* GetName(void) const;
|
||||
|
||||
// Add a GameObject to the team.
|
||||
void AddMember(GameObject* object);
|
||||
|
||||
// Remove a GameObject from the team.
|
||||
void RemoveMember(GameObject* object);
|
||||
|
||||
// Check if a GameObject is a member of the team.
|
||||
bool IsMember(GameObject* object) const;
|
||||
|
||||
// Get the number of members in the team.
|
||||
int MemberCount(void) const;
|
||||
|
||||
// Get a team member.
|
||||
GameObject* GetMember(int index);
|
||||
|
||||
// Send a command to all the members of the team.
|
||||
void SendCustomEvent(GameObject* from, int event, int data);
|
||||
|
||||
protected:
|
||||
// Only the TeamController can create and delete Teams
|
||||
friend class GroupController;
|
||||
Group(const char* name);
|
||||
~Group();
|
||||
|
||||
private:
|
||||
char mName[64];
|
||||
DynamicVectorClass<GameObject*> mMembers;
|
||||
};
|
||||
|
||||
#endif // _GROUP_H_
|
||||
289
Code/Scripts/GroupControl.cpp
Normal file
289
Code/Scripts/GroupControl.cpp
Normal file
@@ -0,0 +1,289 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* GroupControl.cpp
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Group controller
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Denzil E. Long, Jr.
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Pat_p $
|
||||
* $Revision: 2 $
|
||||
* $Modtime: 4/26/00 10:31a $
|
||||
* $Archive: /Commando/Code/Scripts/GroupControl.cpp $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#include "groupcontrol.h"
|
||||
#include "group.h"
|
||||
#include "scripts.h"
|
||||
#include <assert.h>
|
||||
|
||||
GroupController _GroupController;
|
||||
GroupController* GroupController::_mInstance = NULL;
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* GroupController::Instance
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Retrieve GroupController instance.
|
||||
*
|
||||
* INPUTS
|
||||
* NONE
|
||||
*
|
||||
* RESULTS
|
||||
* GroupController - GroupController instance pointer.
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
GroupController* GroupController::Instance(void)
|
||||
{
|
||||
assert(_mInstance != NULL);
|
||||
return _mInstance;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* GroupController::GroupController
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Construct GroupController
|
||||
*
|
||||
* INPUTS
|
||||
* NONE
|
||||
*
|
||||
* RESULTS
|
||||
* NONE
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
GroupController::GroupController()
|
||||
{
|
||||
_mInstance = this;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* GroupController::~GroupController
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Destruct GroupController
|
||||
*
|
||||
* INPUTS
|
||||
* NONE
|
||||
*
|
||||
* RESULTS
|
||||
* NONE
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
GroupController::~GroupController()
|
||||
{
|
||||
mGroups.Remove_All();
|
||||
_mInstance = NULL;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* GroupController::AddToGroup
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Add a game object to the specified Group.
|
||||
*
|
||||
* INPUTS
|
||||
* GroupName - Name of the team to object to.
|
||||
* GameObject - Object to add.
|
||||
*
|
||||
* RESULTS
|
||||
* Success - Success / Failure condition
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
bool GroupController::AddToGroup(const char* groupName, GameObject* object)
|
||||
{
|
||||
assert(groupName != NULL);
|
||||
assert(object != NULL);
|
||||
|
||||
if ((groupName != NULL) && (object != NULL))
|
||||
{
|
||||
// Find the team to add the GameObject to.
|
||||
Group* group = FindOrCreateGroup(groupName);
|
||||
|
||||
if (group != NULL)
|
||||
{
|
||||
group->AddMember(object);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* GroupController::RemoveFromGroup
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Remove a game object from the specified Group.
|
||||
*
|
||||
* INPUTS
|
||||
* GroupName - Name of group to remove object from.
|
||||
* GameObject - Object to remove.
|
||||
*
|
||||
* RESULTS
|
||||
* NONE
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
void GroupController::RemoveFromGroup(const char* groupName, GameObject* object)
|
||||
{
|
||||
assert(groupName != NULL);
|
||||
assert(object != NULL);
|
||||
|
||||
Group* group = FindGroup(groupName);
|
||||
|
||||
if (group != NULL)
|
||||
{
|
||||
group->RemoveMember(object);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* GroupController::FindGroup
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Find a group by name,
|
||||
*
|
||||
* INPUTS
|
||||
* GroupName - Name of group to find.
|
||||
*
|
||||
* RESULTS
|
||||
* Group - Pointer to Group; NULL if not found.
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
Group* GroupController::FindGroup(const char* groupName)
|
||||
{
|
||||
SLNode<Group>* node = mGroups.Head();
|
||||
|
||||
// Go through all the Groups
|
||||
while (node != NULL)
|
||||
{
|
||||
Group* group = node->Data();
|
||||
assert(group != NULL);
|
||||
|
||||
// If there is a group with a matching name then return with that group.
|
||||
const char* name = group->GetName();
|
||||
|
||||
if (stricmp(groupName, name) == 0)
|
||||
{
|
||||
return group;
|
||||
}
|
||||
|
||||
node = node->Next();
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* GroupController::FindOrCreateGroup
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Create a new group with the specified name. If the group already exists
|
||||
* then the existing group will be returned.
|
||||
*
|
||||
* INPUTS
|
||||
* GroupName - Name of group to find or create.
|
||||
*
|
||||
* RESULTS
|
||||
* Group - Pointer to Group; NULL if failure to create group.
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
Group* GroupController::FindOrCreateGroup(const char* groupName)
|
||||
{
|
||||
Group* group = FindGroup(groupName);
|
||||
|
||||
// Create the group only if it doesn't already exist.
|
||||
if (group == NULL)
|
||||
{
|
||||
Group* group = new Group(groupName);
|
||||
assert(group != NULL);
|
||||
|
||||
if (group != NULL)
|
||||
{
|
||||
mGroups.Add_Tail(group);
|
||||
}
|
||||
}
|
||||
|
||||
return group;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* NAME
|
||||
* GroupController::SendGroupCustomEvent
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Send a Group a custom event.
|
||||
*
|
||||
* INPUTS
|
||||
* GroupName - Name of group to send event to.
|
||||
* GameObject - Object event is from.
|
||||
* Event - Event to send to Group.
|
||||
* Data - Event specific data parameter.
|
||||
*
|
||||
* RESULTS
|
||||
* NONE
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
void GroupController::SendGroupCustomEvent(const char* groupName, GameObject* from,
|
||||
int event, int data)
|
||||
{
|
||||
Group* group = FindGroup(groupName);
|
||||
|
||||
if (group != NULL)
|
||||
{
|
||||
group->SendCustomEvent(from, event, data);
|
||||
}
|
||||
}
|
||||
80
Code/Scripts/GroupControl.h
Normal file
80
Code/Scripts/GroupControl.h
Normal file
@@ -0,0 +1,80 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* GroupControl.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Group controller definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Denzil E. Long, Jr.
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Pat_p $
|
||||
* $Revision: 2 $
|
||||
* $Modtime: 4/26/00 10:32a $
|
||||
* $Archive: /Commando/Code/Scripts/GroupControl.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _GROUPCONTROL_H_
|
||||
#define _GROUPCONTROL_H_
|
||||
|
||||
#include "scripts.h"
|
||||
#include "slist.h"
|
||||
|
||||
class Group;
|
||||
|
||||
class GroupController
|
||||
{
|
||||
public:
|
||||
// Retrieve pointer to the GroupController
|
||||
static GroupController* Instance(void);
|
||||
|
||||
GroupController();
|
||||
~GroupController();
|
||||
|
||||
// Find a Group with the specified name.
|
||||
Group* FindGroup(const char* groupName);
|
||||
|
||||
// Add a GameObject to the specified Group.
|
||||
bool AddToGroup(const char* groupName, GameObject* object);
|
||||
|
||||
// Remove a GameObject from the specified Group,
|
||||
void RemoveFromGroup(const char* groupName, GameObject* object);
|
||||
|
||||
// Send a Group a custom event.
|
||||
void SendGroupCustomEvent(const char* groupName, GameObject* from,
|
||||
int command, int data);
|
||||
|
||||
protected:
|
||||
// Create a Group with the specified name.
|
||||
Group* FindOrCreateGroup(const char* groupName);
|
||||
|
||||
private:
|
||||
// Instance pointer to GroupController
|
||||
static GroupController* _mInstance;
|
||||
|
||||
// List of groups
|
||||
SList<Group> mGroups;
|
||||
};
|
||||
|
||||
#endif // _GROUPCONTROL_H_
|
||||
181
Code/Scripts/GroupScript.cpp
Normal file
181
Code/Scripts/GroupScript.cpp
Normal file
@@ -0,0 +1,181 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* GroupScript.cpp
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Group script
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Denzil E. Long, Jr.
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Rich_d $
|
||||
* $Revision: 2 $
|
||||
* $Modtime: 6/14/00 12:55p $
|
||||
* $Archive: /Commando/Code/Scripts/GroupScript.cpp $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#include "scripts.h"
|
||||
#include "groupcontrol.h"
|
||||
#include "group.h"
|
||||
#include "customevents.h"
|
||||
#include "dprint.h"
|
||||
|
||||
|
||||
DECLARE_SCRIPT(MXX_Group_Member_DEL, "GroupName:string")
|
||||
{
|
||||
const char* mGroupName;
|
||||
|
||||
// Add the object to the group when it is created.
|
||||
void Created(GameObject* owner)
|
||||
{
|
||||
mGroupName = Get_Parameter("GroupName");
|
||||
assert(mGroupName != NULL);
|
||||
|
||||
GroupController* controller = GroupController::Instance();
|
||||
assert(controller != NULL);
|
||||
controller->AddToGroup(mGroupName, owner);
|
||||
}
|
||||
|
||||
|
||||
// Remove the object from the group when it is destroyed.
|
||||
void Destroyed(GameObject* owner)
|
||||
{
|
||||
GroupController* controller = GroupController::Instance();
|
||||
assert(controller != NULL);
|
||||
controller->RemoveFromGroup(mGroupName, owner);
|
||||
}
|
||||
|
||||
|
||||
// Notify group that a member was killed.
|
||||
void Killed(GameObject* owner, GameObject* killer)
|
||||
{
|
||||
GroupController* controller = GroupController::Instance();
|
||||
assert(controller != NULL);
|
||||
|
||||
GroupEventInfo info;
|
||||
info.GroupName = mGroupName;
|
||||
info.Event = GROUP_MEMBER_KILLED;
|
||||
info.Object = killer;
|
||||
|
||||
Group* group = controller->FindGroup(mGroupName);
|
||||
assert(group != NULL);
|
||||
group->SendCustomEvent(owner, SCMD_GROUP_EVENT, (int)&info);
|
||||
}
|
||||
|
||||
|
||||
// Notify group that a member was damaged.
|
||||
void Damaged(GameObject* owner, GameObject* damager)
|
||||
{
|
||||
GroupController* controller = GroupController::Instance();
|
||||
assert(controller != NULL);
|
||||
|
||||
GroupEventInfo info;
|
||||
info.GroupName = mGroupName;
|
||||
info.Event = GROUP_MEMBER_DAMAGED;
|
||||
info.Object = damager;
|
||||
|
||||
Group* group = controller->FindGroup(mGroupName);
|
||||
assert(group != NULL);
|
||||
group->SendCustomEvent(owner, SCMD_GROUP_EVENT, (int)&info);
|
||||
}
|
||||
|
||||
|
||||
// Notify group that a member heard a sound.
|
||||
void Sound_Heard(GameObject* owner, const CombatSound& sound)
|
||||
{
|
||||
GroupController* controller = GroupController::Instance();
|
||||
assert(controller != NULL);
|
||||
|
||||
GroupEventInfo info;
|
||||
info.GroupName = mGroupName;
|
||||
info.Event = GROUP_MEMBER_HEARD;
|
||||
info.Sound = &sound;
|
||||
|
||||
Group* group = controller->FindGroup(mGroupName);
|
||||
assert(group != NULL);
|
||||
group->SendCustomEvent(owner, SCMD_GROUP_EVENT, (int)&info);
|
||||
}
|
||||
|
||||
|
||||
// Notify group that a member saw the enemy.
|
||||
void Enemy_Seen(GameObject* owner, GameObject* enemy)
|
||||
{
|
||||
GroupController* controller = GroupController::Instance();
|
||||
assert(controller != NULL);
|
||||
|
||||
GroupEventInfo info;
|
||||
info.GroupName = mGroupName;
|
||||
info.Event = GROUP_MEMBER_SAW;
|
||||
info.Object = enemy;
|
||||
|
||||
Group* group = controller->FindGroup(mGroupName);
|
||||
assert(group != NULL);
|
||||
group->SendCustomEvent(owner, SCMD_GROUP_EVENT, (int)&info);
|
||||
}
|
||||
|
||||
|
||||
#ifdef _DEBUG
|
||||
void Custom(GameObject* owner, int event, int data, GameObject* sender)
|
||||
{
|
||||
if (SCMD_GROUP_EVENT == event)
|
||||
{
|
||||
GroupEventInfo* info = (GroupEventInfo*)data;
|
||||
assert(info != NULL);
|
||||
|
||||
int senderID = Commands->Get_ID(sender);
|
||||
int objectID = Commands->Get_ID(info->Object);
|
||||
|
||||
switch (info->Event)
|
||||
{
|
||||
case GROUP_MEMBER_DAMAGED:
|
||||
DebugPrint("Group %s member %d damaged by object %d\n",
|
||||
info->GroupName, senderID, objectID);
|
||||
break;
|
||||
|
||||
case GROUP_MEMBER_KILLED:
|
||||
DebugPrint("Group %s member %d killed by object %d\n",
|
||||
info->GroupName, senderID, objectID);
|
||||
break;
|
||||
|
||||
case GROUP_MEMBER_HEARD:
|
||||
{
|
||||
const CombatSound* sound = info->Sound;
|
||||
objectID = Commands->Get_ID(sound->Creator);
|
||||
DebugPrint("Group %s member %d heard a sound from object %d\n",
|
||||
info->GroupName, senderID, objectID);
|
||||
}
|
||||
break;
|
||||
|
||||
case GROUP_MEMBER_SAW:
|
||||
DebugPrint("Group %s member %d saw object %d\n",
|
||||
info->GroupName, senderID, objectID);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
};
|
||||
4826
Code/Scripts/Mission00.cpp
Normal file
4826
Code/Scripts/Mission00.cpp
Normal file
File diff suppressed because it is too large
Load Diff
437
Code/Scripts/Mission00.h
Normal file
437
Code/Scripts/Mission00.h
Normal file
@@ -0,0 +1,437 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission00.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 0 definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Rich_d $
|
||||
* $Revision: 45 $
|
||||
* $Modtime: 11/28/01 10:47a $
|
||||
* $Archive: /Commando/Code/Scripts/Mission00.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSION0_H_
|
||||
#define _MISSION0_H_
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
// Available Characters
|
||||
|
||||
#define MTU_CONTROLLER 400099
|
||||
#define MTU_LOGAN 400005
|
||||
#define MTU_GATE_GUARD 400006
|
||||
#define MTU_SYDNEY 400007
|
||||
#define MTU_GUNNER 400008
|
||||
#define MTU_HOTWIRE 400009
|
||||
#define MTU_MOBIUS 400010
|
||||
#define MTU_PETROVA 400011
|
||||
#define MTU_GDI_01 400012
|
||||
#define MTU_GDI_02 400013
|
||||
#define MTU_BARRACKS 450938
|
||||
#define MTU_POWERPLANT 450937
|
||||
#define MTU_TOWER 450939
|
||||
#define MTU_SPAWN_01 400157
|
||||
#define MTU_SPAWN_02 400158
|
||||
#define MTU_SPAWN_03 400159
|
||||
|
||||
// Available Zones
|
||||
|
||||
#define MTU_ZONE_JUMP_HUD_INFO 300001
|
||||
#define MTU_ZONE_TRIGGER_SNEAK_TRAINING 400014
|
||||
#define MTU_ZONE_TRIGGER_JUMP_TRAINING 400015
|
||||
#define MTU_ZONE_TRIGGER_EVA_TRAINING 400016
|
||||
#define MTU_ZONE_TRIGGER_MOVE_TO_AGT 400017
|
||||
#define MTU_ZONE_TRIGGER_KEYCARD_TRAINING 400018
|
||||
#define MTU_ZONE_RESET_SYDNEY 400019
|
||||
#define MTU_ZONE_START_SYDNEY 400020
|
||||
#define MTU_ZONE_INTRODUCE_BARRACKS 400021
|
||||
#define MTU_ZONE_RESET_GUNNER 400022
|
||||
#define MTU_ZONE_START_GUNNER 400023
|
||||
#define MTU_ZONE_SETUP_RANGE 400024
|
||||
#define MTU_ZONE_RESET_RANGE 400025
|
||||
#define MTU_ZONE_GUNNER_NEXT_WEAPON 400026
|
||||
#define MTU_ZONE_BEACON_PLACEMENT 400027
|
||||
#define MTU_ZONE_INTRODUCE_WEAPONS_FACTORY 400028
|
||||
#define MTU_ZONE_RESET_HOTWIRE_01 400029
|
||||
#define MTU_ZONE_RESET_HOTWIRE_02 400030
|
||||
#define MTU_ZONE_START_HOTWIRE 400031
|
||||
#define MTU_ZONE_VEHICLE_APPROACHED 400032
|
||||
#define MTU_ZONE_CHECKPOINT_01 400033
|
||||
#define MTU_ZONE_CHECKPOINT_02 400034
|
||||
#define MTU_ZONE_CHECKPOINT_03 400035
|
||||
#define MTU_ZONE_CHECKPOINT_04 400036
|
||||
#define MTU_ZONE_INTRODUCE_REFINERY 400037
|
||||
#define MTU_ZONE_RESET_IGNATIO 400038
|
||||
#define MTU_ZONE_START_IGNATIO 400039
|
||||
#define MTU_ZONE_INTRODUCE_POWER_PLANT 400040
|
||||
#define MTU_ZONE_RESET_PETROVA 400041
|
||||
#define MTU_ZONE_START_PETROVA 400042
|
||||
#define MTU_ZONE_START_INVASION_01 400043
|
||||
#define MTU_ZONE_START_INVASION_02 400044
|
||||
|
||||
// Available Waypath IDs
|
||||
|
||||
#define MTU_WAYPATH_LOGAN_JUMP_TRAINING 400049
|
||||
#define MTU_WAYPATH_LOGAN_EVA_TRAINING 400067
|
||||
#define MTU_WAYPATH_GDI_SOLDIER_PATROL 400083
|
||||
#define MTU_WAYPATH_LOGAN_COURSE_EXTERIOR 400074
|
||||
#define MTU_WAYPATH_APACHE_FLYOVER 400100
|
||||
|
||||
// Obstacle Course Gates
|
||||
|
||||
#define MTU_GATE_01 400142
|
||||
#define MTU_GATE_02 400143
|
||||
#define MTU_GATE_03 400144
|
||||
#define MTU_GATE_04 400146
|
||||
|
||||
// Enumated Constant Custom Types
|
||||
|
||||
enum
|
||||
{
|
||||
MTU_TYPE_DEFAULT,
|
||||
MTU_TYPE_STAR,
|
||||
MTU_TYPE_LOGAN,
|
||||
MTU_TYPE_SYDNEY,
|
||||
MTU_TYPE_HEALTH_POWERUP_ADD,
|
||||
MTU_TYPE_HEALTH_POWERUP_SUBTRACT,
|
||||
MTU_TYPE_ALL_POWERUPS_RESET,
|
||||
MTU_TYPE_ARMOR_POWERUP_ADD,
|
||||
MTU_TYPE_ARMOR_POWERUP_SUBTRACT,
|
||||
MTU_TYPE_GUNNER,
|
||||
MTU_TYPE_RANGE_CLEANUP_TARGETS,
|
||||
MTU_TYPE_RANGE_CHECK_TARGETS,
|
||||
MTU_TYPE_RANGE_SETUP_HANDGUN,
|
||||
MTU_TYPE_RANGE_TARGET_DESTROYED,
|
||||
MTU_TYPE_RANGE_SETUP_SNIPER_RIFLE,
|
||||
MTU_TYPE_RANGE_POWERUP_RETRIEVED,
|
||||
MTU_TYPE_RANGE_SETUP_AUTORIFLE,
|
||||
MTU_TYPE_RANGE_SETUP_GRENADE,
|
||||
MTU_TYPE_RANGE_SETUP_CHAINGUN,
|
||||
MTU_TYPE_RANGE_SETUP_FLAMETHROWER,
|
||||
MTU_TYPE_RANGE_SETUP_ROCKET,
|
||||
MTU_TYPE_RANGE_SETUP_C4,
|
||||
MTU_TYPE_RANGE_SETUP_ION,
|
||||
MTU_TYPE_SYDNEY_RESET,
|
||||
MTU_TYPE_SYDNEY_CHECK_RESET,
|
||||
MTU_TYPE_SYDNEY_IS_RESET,
|
||||
MTU_TYPE_WEAP_FACTORY_CLEANUP,
|
||||
MTU_TYPE_WEAP_ATTEMPT_RESET,
|
||||
MTU_TYPE_WEAP_FORCE_RESET,
|
||||
MTU_TYPE_HOTWIRE_START,
|
||||
MTU_TYPE_HOTWIRE,
|
||||
MTU_TYPE_WEAP_CREATE_HUMMVEE,
|
||||
MTU_TYPE_RESET_TRIGGER_ONCE,
|
||||
MTU_TYPE_RESET_CHECKPOINT_COUNT,
|
||||
MTU_TYPE_ADD_CHECKPOINT,
|
||||
MTU_TYPE_WEAP_CREATE_MEDTANK,
|
||||
MTU_TYPE_WEAP_CREATE_SQUISHIES,
|
||||
MTU_TYPE_BUILDING_DAMAGEABLE,
|
||||
MTU_TYPE_MOBIUS_RESET,
|
||||
MTU_TYPE_MOBIUS_CHECK_RESET,
|
||||
MTU_TYPE_MOBIUS,
|
||||
MTU_TYPE_RESET_PETROVA,
|
||||
MTU_TYPE_PETROVA_CHECK_RESET,
|
||||
MTU_TYPE_PETROVA,
|
||||
MTU_TYPE_ACTIVATE_FINALE,
|
||||
MTU_TYPE_CHECK_FINALE_START,
|
||||
MTU_TYPE_LIEUTENANT,
|
||||
MTU_TYPE_LIEUTENANT_START,
|
||||
MTU_TYPE_BUILDING_POWER_OFF,
|
||||
MTU_TYPE_BUILDING_POWER_ON,
|
||||
MTU_TYPE_BUILDING_DESTROY,
|
||||
MTU_TYPE_MOCK_INVASION,
|
||||
MTU_TYPE_GDI_SOLDIER_PATROL,
|
||||
MTU_TYPE_TRIGGER_SPAWNER,
|
||||
MTU_TYPE_COUNT_OFFICERS,
|
||||
MTU_TYPE_STAR_FACING,
|
||||
MTU_TYPE_REMOVE_OBJECTIVES
|
||||
};
|
||||
|
||||
// Enumerated Constant Custom Parameters
|
||||
|
||||
enum
|
||||
{
|
||||
MTU_PARAM_DEFAULT,
|
||||
MTU_PARAM_CONTROL_ENABLE,
|
||||
MTU_PARAM_CONTROL_DISABLE,
|
||||
MTU_PARAM_SPEECH_INTRO,
|
||||
MTU_PARAM_SPEECH_CROUCH,
|
||||
MTU_PARAM_SPEECH_JUMP,
|
||||
MTU_PARAM_SPEECH_EVA,
|
||||
MTU_PARAM_SPEECH_COURSE_DONE,
|
||||
MTU_PARAM_ACTION_KEYCARD_TRAIN,
|
||||
MTU_PARAM_ACTION_GOTO_AGT_RESET,
|
||||
MTU_PARAM_SPEECH_SYDNEY_START,
|
||||
MTU_PARAM_SPEECH_HEALTH,
|
||||
MTU_PARAM_SPEECH_PICKUP,
|
||||
MTU_PARAM_SPEECH_SHOOT_AGAIN,
|
||||
MTU_PARAM_SYDNEY_SHOT_RESET,
|
||||
MTU_PARAM_SPEECH_LAST_TIME,
|
||||
MTU_PARAM_SPEECH_RADAR,
|
||||
MTU_PARAM_ACTION_GOTO_INFANTRY,
|
||||
MTU_PARAM_GUNNER_RESET,
|
||||
MTU_PARAM_CHECK_TARGETS,
|
||||
MTU_PARAM_SPEECH_MORE_TARGETS,
|
||||
MTU_PARAM_TARGETS_ELIMINATED,
|
||||
MTU_PARAM_ACTION_GOTO_WEAPONS,
|
||||
MTU_PARAM_SPEECH_WEAP_INTRO,
|
||||
MTU_PARAM_SPEECH_WEAP_MOVEOUT,
|
||||
MTU_PARAM_SPEECH_WEAP_ACTION,
|
||||
MTU_PARAM_SPEECH_WEAP_MEDTANK,
|
||||
MTU_PARAM_SPEECH_WEAP_UNFINISHED,
|
||||
MTU_PARAM_SPEECH_WEAP_SQUISH,
|
||||
MTU_PARAM_SPEECH_WEAP_BIKE,
|
||||
MTU_PARAM_ACTION_PREPARE_REFINERY,
|
||||
MTU_PARAM_SPEECH_MOBIUS_REFINERY,
|
||||
MTU_PARAM_ACTION_PREPARE_POWER,
|
||||
MTU_PARAM_SPEECH_INTRO_POWER,
|
||||
MTU_PARAM_SPEECH_PETROVA_POWER,
|
||||
MTU_PARAM_ACTION_PREPARE_FINALE,
|
||||
MTU_PARAM_SPEECH_LIEUTENANT_START,
|
||||
MTU_PARAM_ACTION_GOTO_REFINERY,
|
||||
MTU_PARAM_SPEECH_INTRO_INFANTRY,
|
||||
MTU_PARAM_ACTION_PREPARE_INFANTRY,
|
||||
MTU_PARAM_SPEECH_INTRO_REFINERY,
|
||||
MTU_PARAM_ACTION_GOTO_POWER,
|
||||
MTU_PARAM_ACTION_PREPARE_WEAPONS,
|
||||
MTU_PARAM_ACTION_GOTO_HAVOC,
|
||||
MTU_PARAM_SPEECH_RETICULE
|
||||
};
|
||||
|
||||
// Enumerated Constant Timers
|
||||
|
||||
enum
|
||||
{
|
||||
MTU_TIMER_DEFAULT,
|
||||
MTU_TIMER_MISSION_START,
|
||||
MTU_TIMER_APACHE_DESTROY,
|
||||
MTU_TIMER_SYDNEY_CONTINUE,
|
||||
MTU_TIMER_GUNNER_DELAY_SPEECH,
|
||||
MTU_TIMER_GUNNER_SNIPER_AMMO,
|
||||
MTU_TIMER_GUNNER_AUTORIFLE_AMMO,
|
||||
MTU_TIMER_GUNNER_GRENADE_AMMO,
|
||||
MTU_TIMER_GUNNER_CHAINGUN_AMMO,
|
||||
MTU_TIMER_GUNNER_FLAMETHROWER_AMMO,
|
||||
MTU_TIMER_GUNNER_ROCKET_AMMO,
|
||||
MTU_TIMER_GUNNER_C4_AMMO,
|
||||
MTU_TIMER_GUNNER_ION_AMMO,
|
||||
MTU_TIMER_LOGAN_WAIT_FOR_HAVOC,
|
||||
MTU_TIMER_LOGAN_WAIT_REFINERY,
|
||||
MTU_TIMER_LOGAN_WAIT_POWER,
|
||||
MTU_TIMER_LOGAN_WAIT_POWER_02,
|
||||
MTU_TIMER_LOGAN_WAIT_AGT,
|
||||
MTU_TIMER_LOGAN_WAIT_INFANTRY,
|
||||
MTU_TIMER_LIEUTENANT_WAIT,
|
||||
MTU_TIMER_GDI_CONVERSATION,
|
||||
MTU_TIMER_ENDGAME,
|
||||
MTU_TIMER_FLYOVERS,
|
||||
MTU_TIMER_COMMANDO_CAMERA_01,
|
||||
MTU_TIMER_COMMANDO_CAMERA_02,
|
||||
MTU_TIMER_ANOTHER_APACHE,
|
||||
MTU_TIMER_MCT_ATTACK,
|
||||
MTU_TIMER_POKE_DELAY,
|
||||
MTU_TIMER_NOD_SOLDIER_REMOVAL
|
||||
};
|
||||
|
||||
// Enumerated Constant Action and Conversation Identifiers
|
||||
|
||||
enum
|
||||
{
|
||||
MTU_ACTION_DEFAULT,
|
||||
MTU_ACTION_LOGAN_JUMP_TEST,
|
||||
MTU_ACTION_LOGAN_EVA_TRAIN,
|
||||
MTU_ACTION_LOGAN_COURSE_DONE,
|
||||
MTU_ACTION_LOGAN_GOTO_AGT,
|
||||
MTU_SPEECH_LOGAN_START,
|
||||
MTU_SPEECH_LOGAN_CROUCH,
|
||||
MTU_SPEECH_LOGAN_CROUCH_TEST,
|
||||
MTU_SPEECH_LOGAN_HEARD,
|
||||
MTU_SPEECH_LOGAN_SNEAK_WIN,
|
||||
MTU_SPEECH_LOGAN_SNEAK_LOSE,
|
||||
MTU_SPEECH_LOGAN_JUMP_TEST,
|
||||
MTU_SPEECH_LOGAN_EVA,
|
||||
MTU_SPEECH_LOGAN_POKE,
|
||||
MTU_SPEECH_GATEGUARD_POKE,
|
||||
MTU_SPEECH_LOGAN_COURSE_DONE,
|
||||
MTU_SPEECH_LOGAN_KEYCARDS,
|
||||
MTU_SPEECH_LOGAN_GO_INSIDE,
|
||||
MTU_ACTION_GATEGUARD_OUTSIDE,
|
||||
MTU_ACTION_GATEGUARD_PATROL,
|
||||
MTU_SPEECH_SYDNEY_START,
|
||||
MTU_SPEECH_SYDNEY_HEALTH,
|
||||
MTU_SPEECH_SYDNEY_PICKUP,
|
||||
MTU_SPEECH_SYDNEY_ARMOR,
|
||||
MTU_SPEECH_SYDNEY_SHOOT_AGAIN,
|
||||
MTU_SPEECH_SYDNEY_LAST_TIME,
|
||||
MTU_SPEECH_SYDNEY_RADAR,
|
||||
MTU_SPEECH_INTRODUCE_BARRACKS,
|
||||
MTU_SPEECH_GUNNER_START,
|
||||
MTU_SPEECH_GUNNER_RETICULE,
|
||||
MTU_SPEECH_GUNNER_SNIPER_RIFLE,
|
||||
MTU_SPEECH_GUNNER_AUTORIFLE,
|
||||
MTU_SPEECH_GUNNER_GRENADE,
|
||||
MTU_SPEECH_GUNNER_CHAINGUN,
|
||||
MTU_SPEECH_GUNNER_FLAMETHROWER,
|
||||
MTU_SPEECH_GUNNER_ROCKET,
|
||||
MTU_SPEECH_GUNNER_C4,
|
||||
MTU_SPEECH_GUNNER_ION,
|
||||
MTU_SPEECH_GUNNER_MORE_TARGETS,
|
||||
MTU_SPEECH_GUNNER_ENDING,
|
||||
MTU_SPEECH_INTRODUCE_WEAP_FACTORY,
|
||||
MTU_SPEECH_HOTWIRE_INTRO,
|
||||
MTU_SPEECH_HOTWIRE_GO_OUT,
|
||||
MTU_SPEECH_HOTWIRE_MOVEOUT,
|
||||
MTU_SPEECH_HOTWIRE_ACTION,
|
||||
MTU_SPEECH_HOTWIRE_MEDTANK,
|
||||
MTU_SPEECH_HOTWIRE_UNFINISHED,
|
||||
MTU_SPEECH_HOTWIRE_SQUISH,
|
||||
MTU_SPEECH_HOTWIRE_BIKE,
|
||||
MTU_SPEECH_LOGAN_WHATSNEXT,
|
||||
MTU_SPEECH_INTRODUCE_REFINERY,
|
||||
MTU_SPEECH_MOBIUS_REFINERY,
|
||||
MTU_SPEECH_LOGAN_PREPARE_POWER,
|
||||
MTU_SPEECH_INTRODUCE_POWER,
|
||||
MTU_SPEECH_PETROVA_POWER,
|
||||
MTU_SPEECH_PETROVA_POWER_END,
|
||||
MTU_SPEECH_LOGAN_PREPARE_FINALE,
|
||||
MTU_SPEECH_LIEUTENANT_START,
|
||||
MTU_SPEECH_LIEUTENANT_LETIN,
|
||||
MTU_SPEECH_LIEUTENANT_MCT,
|
||||
MTU_SPEECH_LIEUTENANT_AFTER,
|
||||
MTU_ACTION_MOVE_LOGAN_WEAPONS,
|
||||
MTU_SPEECH_LOGAN_PREPARE_INFANTRY,
|
||||
MTU_ACTION_MOVE_LOGAN_EXIT,
|
||||
MTU_ACTION_MOVE_LIEUTENANT_HAVOC,
|
||||
MTU_ACTION_LIEUTENANT_LEAVE
|
||||
};
|
||||
|
||||
// Movement Destination Identifiers
|
||||
|
||||
enum
|
||||
{
|
||||
MTU_MOVE_DEFAULT,
|
||||
MTU_MOVE_LOGAN_JUMP_TRAINING,
|
||||
MTU_MOVE_LOGAN_EVA_TRAINING,
|
||||
MTU_MOVE_LOGAN_COURSE_EXTERIOR,
|
||||
MTU_MOVE_LOGAN_AGT,
|
||||
MTU_MOVE_LOGAN_INFANTRY,
|
||||
MTU_MOVE_LOGAN_WEAPONS,
|
||||
MTU_MOVE_LOGAN_REFINERY,
|
||||
MTU_MOVE_LOGAN_POWER,
|
||||
MTU_MOVE_LOGAN_EXIT,
|
||||
MTU_MOVE_LIEUTENANT_HAVOC
|
||||
};
|
||||
|
||||
// Gunner Range State Identifiers
|
||||
|
||||
enum
|
||||
{
|
||||
MTU_RANGE_STATE_DEFAULT
|
||||
};
|
||||
|
||||
// Objective Identifiers
|
||||
|
||||
enum
|
||||
{
|
||||
MTU_OBJECTIVE_01 = 1,
|
||||
MTU_OBJECTIVE_02,
|
||||
MTU_OBJECTIVE_03,
|
||||
MTU_OBJECTIVE_04,
|
||||
MTU_OBJECTIVE_05,
|
||||
MTU_OBJECTIVE_06,
|
||||
MTU_RADAR_GUNNER,
|
||||
MTU_RADAR_COURSE_01,
|
||||
MTU_RADAR_COURSE_02,
|
||||
MTU_RADAR_COURSE_03,
|
||||
MTU_RADAR_COURSE_04,
|
||||
MTU_RADAR_MCT_01,
|
||||
MTU_RADAR_MCT_02,
|
||||
MTU_RADAR_MCT_03,
|
||||
MTU_RADAR_MCT_04,
|
||||
MTU_RADAR_MCT_05
|
||||
};
|
||||
|
||||
inline float Get_Obj_Distance (GameObject * obj1, GameObject * obj2)
|
||||
{
|
||||
Vector3 loc1 = Vector3 (0,0,0);
|
||||
Vector3 loc2 = Vector3 (0,0,0);
|
||||
|
||||
if (obj1)
|
||||
{
|
||||
loc1 = Commands->Get_Position (obj1);
|
||||
}
|
||||
if (obj2)
|
||||
{
|
||||
loc2 = Commands->Get_Position (obj2);
|
||||
}
|
||||
return Commands->Get_Distance (loc1, loc2);
|
||||
};
|
||||
|
||||
// THESE DEFINES ARE FOR THE SKIRMISH MODE IN MULTIPLAYER
|
||||
|
||||
#define MSK_CONTROLLER 300203
|
||||
|
||||
#define MSK_GDI_DEF_01 300052
|
||||
#define MSK_GDI_DEF_02 300064
|
||||
#define MSK_GDI_DEF_03 300072
|
||||
#define MSK_GDI_DEF_04 300081
|
||||
#define MSK_GDI_ATK_01 300091
|
||||
#define MSK_GDI_ATK_02 300092
|
||||
#define MSK_GDI_ATK_03 300093
|
||||
|
||||
#define MSK_NOD_DEF_01 300001
|
||||
#define MSK_NOD_DEF_02 300016
|
||||
#define MSK_NOD_DEF_03 300028
|
||||
#define MSK_NOD_DEF_04 300042
|
||||
#define MSK_NOD_ATK_01 300150
|
||||
#define MSK_NOD_ATK_02 300151
|
||||
#define MSK_NOD_ATK_03 300152
|
||||
|
||||
#define MSK_GDI_DEF_PATH_01 300053
|
||||
#define MSK_GDI_DEF_PATH_02 300065
|
||||
#define MSK_GDI_DEF_PATH_03 300073
|
||||
#define MSK_GDI_DEF_PATH_04 300082
|
||||
#define MSK_GDI_ATK_PATH_01 300094
|
||||
#define MSK_GDI_ATK_PATH_02 300111
|
||||
#define MSK_GDI_ATK_PATH_03 300126
|
||||
|
||||
#define MSK_NOD_DEF_PATH_01 300002
|
||||
#define MSK_NOD_DEF_PATH_02 300017
|
||||
#define MSK_NOD_DEF_PATH_03 300029
|
||||
#define MSK_NOD_DEF_PATH_04 300043
|
||||
#define MSK_NOD_ATK_PATH_01 300153
|
||||
#define MSK_NOD_ATK_PATH_02 300166
|
||||
#define MSK_NOD_ATK_PATH_03 300178
|
||||
|
||||
#define MSK_SOLDIER_DEAD 100
|
||||
#define MSK_TIMER 101
|
||||
#define MSK_TIMER_02 102
|
||||
|
||||
#endif // _MISSION2_H_
|
||||
22059
Code/Scripts/Mission01.cpp
Normal file
22059
Code/Scripts/Mission01.cpp
Normal file
File diff suppressed because it is too large
Load Diff
5380
Code/Scripts/Mission02.cpp
Normal file
5380
Code/Scripts/Mission02.cpp
Normal file
File diff suppressed because it is too large
Load Diff
7144
Code/Scripts/Mission03.cpp
Normal file
7144
Code/Scripts/Mission03.cpp
Normal file
File diff suppressed because it is too large
Load Diff
10518
Code/Scripts/Mission04.cpp
Normal file
10518
Code/Scripts/Mission04.cpp
Normal file
File diff suppressed because it is too large
Load Diff
7859
Code/Scripts/Mission05.cpp
Normal file
7859
Code/Scripts/Mission05.cpp
Normal file
File diff suppressed because it is too large
Load Diff
5710
Code/Scripts/Mission06.cpp
Normal file
5710
Code/Scripts/Mission06.cpp
Normal file
File diff suppressed because it is too large
Load Diff
6733
Code/Scripts/Mission07.cpp
Normal file
6733
Code/Scripts/Mission07.cpp
Normal file
File diff suppressed because it is too large
Load Diff
4706
Code/Scripts/Mission09.cpp
Normal file
4706
Code/Scripts/Mission09.cpp
Normal file
File diff suppressed because it is too large
Load Diff
806
Code/Scripts/Mission1.h
Normal file
806
Code/Scripts/Mission1.h
Normal file
@@ -0,0 +1,806 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission1.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 1 definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Joe_g $
|
||||
* $Revision: 124 $
|
||||
* $Modtime: 1/14/02 10:14a $
|
||||
* $Archive: /Commando/Code/Scripts/Mission1.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSION1_H_
|
||||
#define _MISSION1_H_
|
||||
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
|
||||
// Predefined Constants
|
||||
#define M01_CHURCH_OBJECTIVE_JDG 100
|
||||
#define M01_HARVESTER_OBJECTIVE_JDG 101
|
||||
#define M01_GDI_BASE_COMMANDER_OBJECTIVE_JDG 102
|
||||
#define M01_HON_OBJECTIVE_JDG 103
|
||||
#define M01_FIRST_NOD_COMMANDER_OBJECTIVE_JDG 104
|
||||
#define M01_HON_SAM_OBJECTIVE_JDG 105
|
||||
#define M01_PRISONER_OBJECTIVE_JDG 106
|
||||
#define M01_UNLOCK_GATE_OBJECTIVE_JDG 107
|
||||
#define M01_COMM_SAM_OBJECTIVE_JDG 108
|
||||
#define M01_TURRETS_OBJECTIVE_JDG 109
|
||||
#define M01_BARN_OBJECTIVE_JDG 110
|
||||
//#define M01_SNIPER_OBJECTIVE_JDG 111
|
||||
#define M01_BARN_ROUNDUP_OBJECTIVE_JGD 112
|
||||
#define M01_OPEN_THE_GATE_JDG 113
|
||||
#define M01_GDI_BASE_POW_OBJECTIVE_JDG 114
|
||||
#define M01_MISSION_POG_CONTROLLER_JDG 105828
|
||||
|
||||
#define M01_MISSION_CONTROLLER_JDG 100376
|
||||
#define M01_MISSION_POG_CONTROLLER_JDG 105828
|
||||
#define M01_AMBIENT_SOUND_CONTROLLER_JDG 100253
|
||||
#define M01_NOD_BUGGY_01_JDG 102471
|
||||
#define M01_NOD_BUGGY_02_JDG 102472
|
||||
#define M01_EVAC_PRIORITY_JDG 90
|
||||
#define M01_EASY_DIFFICULTY_HOMERANGE_JDG 5
|
||||
#define M01_MEDIUM_DIFFICULTY_HOMERANGE_JDG 20
|
||||
#define M01_HARD_DIFFICULTY_HOMERANGE_JDG 45
|
||||
#define M01_EASY_DIFFICULTY_AGGRESSION_JDG 0.25f
|
||||
#define M01_MEDIUM_DIFFICULTY_AGGRESSION_JDG 0.5f
|
||||
#define M01_HARD_DIFFICULTY_AGGRESSION_JDG 1
|
||||
#define M01_EASY_DIFFICULTY_TAKECOVER_JDG 1
|
||||
#define M01_MEDIUM_DIFFICULTY_TAKECOVER_JDG 0.5f
|
||||
#define M01_HARD_DIFFICULTY_TAKECOVER_JDG 0
|
||||
|
||||
#define M01_GDI_CONYARD_JDG 157976
|
||||
#define M01_GDI_POWERPLANT_JDG 157977
|
||||
#define M01_GDIBASE_GT1_NOD_LEADER_JDG 103303
|
||||
#define M01_GDIBASE_GT1_NOD_HIDER_JDG 103302
|
||||
#define M01_GDIBASE_GT1_NOD_BEACHGUY_JDG 103304
|
||||
#define M01_GDIBASE_GT1_GDI01_JDG 103306
|
||||
#define M01_GDIBASE_GT1_GDI02_JDG 103325
|
||||
#define M01_GDIBASE_GT1_MONITOR_JDG 103326
|
||||
|
||||
#define M01_GDIBASE_POWSCENE02_MONITOR_JDG 103331
|
||||
#define M01_GDIBASE_POWSCENE02_NODGUY01_JDG 103329
|
||||
#define M01_GDIBASE_POWSCENE02_NODGUY02_JDG 103330
|
||||
#define M01_GDIBASE_POWSCENE02_POWGUY01_JDG 116386
|
||||
#define M01_GDIBASE_POWSCENE02_POWGUY02_JDG 116385
|
||||
|
||||
#define M01_GDIBASE_ARTILLERY_CONTROLLER_ID 102294
|
||||
|
||||
#define M01_GDIBASE_EVAC_MONITOR_JDG 103419
|
||||
#define M01_BARNAREA_EVAC_MONITOR_JDG 103420
|
||||
#define M01_CHURCHAREA_EVAC_MONITOR_JDG 103421
|
||||
|
||||
#define M01_GDIBASE_SPAWNER_CONTROLLER_JDG 102335
|
||||
#define M01_GDIBASE_SPAWNER_A_JDG 102332
|
||||
#define M01_GDIBASE_SPAWNER_B_JDG 102333
|
||||
#define M01_GDIBASE_SPAWNER_C_JDG 102334
|
||||
#define M01_BARNAREA_NOD_COMMANDER_JDG 102360
|
||||
#define M01_BARNAREA_NOD_COMMANDER_02_JDG 102476
|
||||
#define M01_TAILGUNAREA_NOD_COMMANDER_JDG 102358
|
||||
#define M01_CHURCHAREA_NOD_COMMANDER_JDG 102357
|
||||
|
||||
#define M01_TAILGUNRUN_SPAWNER_CONTROLLER_JDG 102346
|
||||
#define M01_TAILGUNRUN_SPAWNER_A_JDG 102343
|
||||
#define M01_TAILGUNRUN_SPAWNER_B_JDG 102344
|
||||
#define M01_TAILGUNRUN_SPAWNER_C_JDG 102345
|
||||
|
||||
#define M01_CHURCHAREA_SPAWNER_CONTROLLER_JDG 102350
|
||||
#define M01_CHURCHAREA_SPAWNER_A_JDG 102347
|
||||
#define M01_CHURCHAREA_SPAWNER_B_JDG 102348
|
||||
#define M01_CHURCHAREA_SPAWNER_C_JDG 102349
|
||||
|
||||
#define M01_HAND_OF_NOD_JDG 153909
|
||||
#define M01_HON_SAM_SITE_JDG 100031
|
||||
#define M01_HON_CAFETERIA_EATING_GUY_ID 101293
|
||||
#define M01_HON_CAFETERIA_WALKING_GUY_ID 101294
|
||||
#define M01_HON_CAFETERIA_JUDO_GUY_ID 101295
|
||||
#define M01_HON_DORMROOM_MINIGUNNER_ID 101296
|
||||
#define M01_HON_DORMROOM_ROCKET_GUY_ID 101297
|
||||
#define M01_HON_DORMROOM_CHEM_GUY_ID 101298
|
||||
#define M01_HON_DORMROOM_FLAME_GUY_ID 101299
|
||||
#define M01_HON_DORMROOM_CRAPPER_ID 101301
|
||||
#define M01_HON_INTERROGATION_ROOM_GUY_ID 101357
|
||||
#define M01_HON_REPAIR_ENGINEER_ID 101948
|
||||
#define M01_HON_FRONTDOOR_DESTROYED_SPAWNER_JDG 100712
|
||||
#define M01_HON_BACKDOOR_DESTROYED_SPAWNER_JDG 100713
|
||||
#define M01_HON_DOJO_CIV_01_JDG 102048
|
||||
#define M01_HON_DOJO_CIV_02_JDG 102049
|
||||
#define M01_HON_DOJO_CIV_03_JDG 102050
|
||||
#define M01_HON_DOJO_SENSEI_JDG 102051
|
||||
|
||||
#define M01_REFINERY_JDG 153908
|
||||
#define M01_REFINERY_SAM_JDG 100032
|
||||
#define M01_REFINERY_MAIN_CONSOLE_TECH_ID 101302
|
||||
#define M01_REFINERY_SECONDARY_TECH_ID 101303
|
||||
#define M01_REFINERY_ENGINEER_ID 101304
|
||||
#define M01_REFINERY_DESTROYED_SPAWNER_JDG 100726
|
||||
|
||||
#define M01_COMM_CENTER_JDG 153910
|
||||
#define M01_COMMCENTER_SAM_JDG 100034
|
||||
#define M01_COMM_CENTER_ENGINEER_ID 101949
|
||||
#define M01_COMMCENTER_DESTROYED_SPAWNER_JDG 100727
|
||||
#define M01_COMMCENTER_BASE_COMMANDER_JDG 101936
|
||||
#define M01_COMMCENTER_BASE_SCAPEGOAT_JDG 101938
|
||||
#define M01_COMMCENTER_CEILING_CAMERA_JDG 101937
|
||||
#define M01_COMMCENTER_UPSTAIRS_TECH_JDG 101168
|
||||
#define M01_COMMCENTER_WAROOM_TECH_01_JDG 101170
|
||||
#define M01_COMMCENTER_WAROOM_TECH_02_JDG 101171
|
||||
#define M01_COMMCENTER_COMPUTERROOM_TECH_JDG 101172
|
||||
#define M01_COMMCENTER_UPSTAIRS_GUARD_JDG 101946
|
||||
|
||||
#define M01_COMMCENTER_LIGHTTANK_ZONE_JDG 102225
|
||||
|
||||
#define M01_HARVESTER_ESCORT01_JDG 100251
|
||||
#define M01_HARVESTER_ESCORT02_JDG 100252
|
||||
#define M01_HARVESTER_JDG 100033
|
||||
|
||||
#define M01_CHURCH_LOVESHACK_MINIGUNNER_ID 101305
|
||||
#define M01_CHURCH_LOVESHACK_NUN_ID 101310
|
||||
#define M01_CHURCH_EXTERIOR_MINIGUNNER_ID 101311
|
||||
#define M01_CHURCH_BALCONY_MINIGUNNER_ID 101312
|
||||
#define M01_CHURCH_GUARD_MINIGUNNER_ID 101313
|
||||
#define M01_CHURCH_INTERIOR_NUN_ID 101314
|
||||
#define M01_CHURCH_PRIEST_ID 101315
|
||||
|
||||
#define M01_BRIDGE_DRIVEBY_MINIGUNNER_01_ID 101316
|
||||
#define M01_BRIDGE_DRIVEBY_MINIGUNNER_02_ID 101317
|
||||
#define M01_BRIDGE_DRIVEBY_MINIGUNNER_03_ID 101318
|
||||
|
||||
#define M01_TURRETBEACH_TURRET_01_ID 101434
|
||||
#define M01_TURRETBEACH_TURRET_02_ID 101435
|
||||
#define M01_TURRETBEACH_GUNBOAT_ID 101477
|
||||
#define M01_TURRETBEACH_ENGINEER_ID 101654
|
||||
#define M01_TURRETBEACH_CONTROLLER_ID 113325
|
||||
|
||||
#define M01_BARN_DOOR_GUARD_ID 101512
|
||||
#define M01_BARN_TALK_GUARD_01_ID 103318
|
||||
//#define M01_BARN_TALK_GUARD_02_ID 101441
|
||||
#define M01_BARN_PRISONER_01_ID 101442
|
||||
#define M01_BARN_PRISONER_02_ID 101444
|
||||
#define M01_BARN_PRISONER_03_ID 101443
|
||||
#define M01_BARN_OBJECTIVE_ZONE_ID 101540
|
||||
#define M01_BARNAREA_LIGHTTANK_ID 103012
|
||||
|
||||
#define M01_TANK_TUNNEL_ZONE_ID 101679
|
||||
#define M01_TANK_TUNNEL_SQUISH_GUY_01_ID 101682
|
||||
#define M01_TANK_TUNNEL_SQUISH_GUY_02_ID 101683
|
||||
#define M01_TANK_TUNNEL_SQUISH_GUY_03_ID 101684
|
||||
#define M01_KILL_JUMPING_BUGGY_ZONE_JDG 100933
|
||||
#define M01_JUMPING_BUGGY_LOOKOUT_ZONE_JDG 100936
|
||||
#define M01_TIB_TUNNEL_HELICOPTER_ZONE_JDG 100955
|
||||
|
||||
#define M01_TAILGUN_01_ID 108707
|
||||
#define M01_TAILGUN_02_ID 108708
|
||||
#define M01_TAILGUN_03_ID 108709
|
||||
#define M01_TAILGUNNER_01_ID 101470
|
||||
#define M01_TAILGUNNER_02_ID 101471
|
||||
#define M01_TAILGUNNER_03_ID 101472
|
||||
#define M01_TAILGUNAREA_NOD_LIGHTTANK_JDG 102435
|
||||
|
||||
#define M01_DETENTION_GDI_GUY_01_JDG 101926
|
||||
#define M01_DETENTION_GDI_GUY_02_JDG 101927
|
||||
#define M01_DETENTION_GDI_GUY_03_JDG 101928
|
||||
#define M01_DETENTION_CIVILIAN_01_JDG 101929//BABUSHKA
|
||||
#define M01_DETENTION_CIVILIAN_02_JDG 101930//PIERRE
|
||||
#define M01_DETENTION_CIVILIAN_03_JDG 101931//FARMER JOHN
|
||||
#define M01_COMMCENTER_DETENTION_GATE_JDG 157984
|
||||
|
||||
//Logical Sounds
|
||||
#define M01_HON_ESCORTS_FORM_UP_JDG 400000
|
||||
|
||||
#define M01_DETENTION_GUY_HAS_SEEN_HAVOC_JDG 400003
|
||||
#define M01_DETENTION_GATE_IS_DOWN_JDG 400004
|
||||
#define M01_DETENTION_GATE_DOWN_SAM_DEAD_JDG 400005
|
||||
|
||||
|
||||
/*****************************************************************************************************
|
||||
Starting level 04 defines here
|
||||
******************************************************************************************************/
|
||||
|
||||
#define M04_TEST_APACHE_JDG 100397
|
||||
|
||||
#define M04_SHIPS_CAPTAIN_JDG 100401
|
||||
#define M04_SHIPS_FIRST_MATE_JDG 100400
|
||||
#define M04_PRISON_WARDEN_JDG 100399
|
||||
#define M04_MEDLAB_TECHNICIAN_JDG 101202
|
||||
|
||||
#define M04_CARGO_TALKGUY_01_JDG 101463
|
||||
#define M04_CARGO_TALKGUY_02_JDG 101464
|
||||
#define M04_CARGO_TALKGUY_03_JDG 101465
|
||||
#define M04_CARGO_BLACKHAND_01_JDG 101534
|
||||
|
||||
#define M04_OBJECTIVE_CONTROLLER_JDG 100424
|
||||
#define M04_CARGOHOLD_CONTROLLER_JDG 100558
|
||||
//#define M04_ENGINEROOM_CONTROLLER_JDG 100750
|
||||
#define M04_AFT_DECK_CONTROLLER_JDG 100624
|
||||
#define M04_FORE_DECK_CONTROLLER_JDG 100790
|
||||
//#define M04_SNIPER_ENCOUNTER_CONTROLLER_JDG 100264
|
||||
#define M04_TIBERIUM_HOLD_CONTROLLER_JDG 100572
|
||||
#define M04_APACHE_CONTROLLER_JDG 200586
|
||||
#define M04_END_FIREFIGHT_CONTROLLER_JDG 100948
|
||||
|
||||
#define M04_PRISON_PRISONER_01_JDG 100011
|
||||
#define M04_PRISON_PRISONER_02_JDG 101196
|
||||
#define M04_PRISON_PRISONER_03_JDG 100013
|
||||
#define M04_PRISON_DOOR_JDG 201089
|
||||
|
||||
//#define M04_ENGINEROOM_ALARMBOX_JDG 101120
|
||||
#define M04_MISSILE_ROOM_TARGET_01_JDG 100421
|
||||
#define M04_MISSILE_ROOM_TARGET_02_JDG 100422
|
||||
#define M04_MISSILE_ROOM_TARGET_03_JDG 100423
|
||||
#define M04_MISSILE_ROOM_TARGET_04_JDG 100420
|
||||
|
||||
#define M04_ENGINEROOM_TARGET_01_JDG 100419
|
||||
#define M04_ENGINEROOM_TARGET_02_JDG 100416
|
||||
#define M04_ENGINEROOM_TARGET_03_JDG 100418
|
||||
#define M04_ENGINEROOM_TARGET_04_JDG 100417
|
||||
|
||||
#define M04_ROCKET_EMPLACEMENT_01_JDG 103461
|
||||
#define M04_ROCKET_EMPLACEMENT_02_JDG 103462
|
||||
|
||||
#define M04_ENGINEROOM_PRISONGUARD_01_JDG 101988
|
||||
#define M04_ENGINEROOM_PRISONGUARD_02_JDG 101989
|
||||
|
||||
#define M04_ENGINEROOM_CHIEF_ENGINEER_JDG 101762
|
||||
#define M04_ENGINEROOM_TECH_01_JDG 101691
|
||||
#define M04_ENGINEROOM_TECH_02_JDG 101692
|
||||
#define M04_ENGINEROOM_TECH_03_JDG 101690
|
||||
#define M04_ENGINEROOM_TECH_04_JDG 101693
|
||||
#define M04_ENGINEROOM_SPAWNER_01_JDG 101942
|
||||
#define M04_ENGINEROOM_SPAWNER_02_JDG 101943
|
||||
|
||||
#define M04_ENGINEROOM_BUILDING_CONTROLLER_JDG 150001
|
||||
#define M04_ENGINEROOM_HUNTING_CONTROLLER_JDG 103390
|
||||
|
||||
#define M04_TIBERIUM_HOLD_TECH01_JDG 102147
|
||||
#define M04_TIBERIUM_HOLD_TECH02_JDG 102148
|
||||
#define M04_TIBERIUM_CRYOCHAMBER_JDG 102243
|
||||
#define M04_TIBERIUM_SIMPLEMUTANT_JDG 102240
|
||||
#define M04_TIBERIUM_CHAMBERCONTROLLER_JDG 104113
|
||||
|
||||
|
||||
|
||||
// Public Variables
|
||||
|
||||
// Enumerations
|
||||
enum
|
||||
{
|
||||
M01_CAPT_DUNCAN_HAS_BEEN_FOUND_JDG,
|
||||
M01_GDI_BASE_POWS_RESCUED_JDG,
|
||||
M01_GDI_BASE_POWS_OVER_JDG,
|
||||
|
||||
|
||||
M01_START_GDIBASE_FRONT_CONVERSATION,
|
||||
//M01_ANNOUNCE_LIGHTHOUSE_SNIPER_JDG,
|
||||
//M01_SNIPERS_BEEN_KILLED_JDG,
|
||||
M01_DO_END_MISSION_CHECK_JDG,
|
||||
M01_END_MISSION_PASS_JDG,
|
||||
M01_ADD_OBJECTIVE_POG_JDG,
|
||||
M01_CHANGE_OBJECTIVE_POG_JDG,
|
||||
M01_REMOVE_OBJECTIVE_POG_JDG,
|
||||
|
||||
M01_GOTO_YOUR_EVAC_SPOT_JDG,
|
||||
M01_GIVE_ME_A_ROPE_JDG,
|
||||
M01_TAKE_AWAY_ROPE_JDG,
|
||||
M01_ROPE_IS_SENDING_ID_JDG,
|
||||
M01_WAYPATH_IS_SENDING_ID_JDG,
|
||||
M01_CHOPPER_IS_SENDING_ID_JDG,
|
||||
M01_EVERYONES_ON_BOARD_JDG,
|
||||
|
||||
M01_START_ACTING_JDG,
|
||||
M01_START_ATTACKING_01_JDG,
|
||||
M01_START_ATTACKING_02_JDG,
|
||||
M01_START_ATTACKING_03_JDG,
|
||||
M01_START_ATTACKING_04_JDG,
|
||||
M01_START_ATTACKING_05_JDG,
|
||||
M01_IVE_BEEN_KILLED_JDG,
|
||||
M01_HOLD_YOUR_POSITION_JDG,
|
||||
|
||||
M01_GOTO_IDLE_JDG,
|
||||
M01_GOTO_INNATE_JDG,
|
||||
M01_DO_DAMAGE_CHECK_JDG,
|
||||
M01_MODIFY_YOUR_ACTION_JDG,
|
||||
M01_MODIFY_YOUR_ACTION_02_JDG,
|
||||
M01_MODIFY_YOUR_ACTION_03_JDG,
|
||||
M01_MODIFY_YOUR_ACTION_04_JDG,
|
||||
M01_MODIFY_YOUR_ACTION_05_JDG,
|
||||
M01_MODIFY_YOUR_ACTION_06_JDG,
|
||||
M01_MODIFY_YOUR_ACTION_07_JDG,
|
||||
M01_MODIFY_YOUR_ACTION_08_JDG,
|
||||
M01_MODIFY_YOUR_ACTION_09_JDG,
|
||||
M01_MODIFY_YOUR_ACTION_10_JDG,
|
||||
M01_MODIFY_YOUR_ACTION_11_JDG,
|
||||
|
||||
M01_WALKING_WAYPATH_01_JDG,
|
||||
M01_WALKING_WAYPATH_02_JDG,
|
||||
M01_WALKING_WAYPATH_03_JDG,
|
||||
M01_WALKING_WAYPATH_04_JDG,
|
||||
M01_WALKING_WAYPATH_05_JDG,
|
||||
M01_WALKING_WAYPATH_06_JDG,
|
||||
M01_WALKING_WAYPATH_07_JDG,
|
||||
M01_GOING_TO_HAVOC_JDG,
|
||||
|
||||
M01_DOING_ANIMATION_01_JDG,
|
||||
M01_DOING_ANIMATION_02_JDG,
|
||||
M01_DOING_ANIMATION_03_JDG,
|
||||
M01_DOING_ANIMATION_04_JDG,
|
||||
M01_DOING_ANIMATION_05_JDG,
|
||||
M01_DOING_ANIMATION_06_JDG,
|
||||
M01_DOING_ANIMATION_07_JDG,
|
||||
M01_DOING_ANIMATION_08_JDG,
|
||||
M01_DOING_ANIMATION_09_JDG,
|
||||
M01_DOING_ANIMATION_10_JDG,
|
||||
M01_DOING_ANIMATION_11_JDG,
|
||||
|
||||
M01_TECH_IS_AT_WORKSPOT_01_JDG,
|
||||
M01_TECH_IS_AT_WORKSPOT_02_JDG,
|
||||
M01_TECH_IS_AT_WORKSPOT_03_JDG,
|
||||
M01_TECH_IS_FACING_WORKSPOT_JDG,
|
||||
M01_TECH_IS_DOING_WORK_ANIMATION_JDG,
|
||||
|
||||
M01_DOING_ENTER_ANIMATION_JDG,
|
||||
M01_FACING_SPECIFIED_DIRECTION_01_JDG,
|
||||
M01_FACING_SPECIFIED_DIRECTION_02_JDG,
|
||||
M01_HUNT_THE_PLAYER_JDG,
|
||||
M01_CALL_IN_REINFORCEMENTS_JDG,
|
||||
M01_PICK_A_NEW_LOCATION_JDG,
|
||||
|
||||
//E3 radar markers
|
||||
// M01_E3_WARP_MARKER_01_JDG,
|
||||
// M01_E3_WARP_MARKER_02_JDG,
|
||||
// M01_E3_WARP_MARKER_03_JDG,
|
||||
|
||||
//spawners
|
||||
M01_SPAWNER_SPAWN_PLEASE_JDG,
|
||||
M01_SPAWNER_IS_DEAD_JDG,
|
||||
M01_QUIT_SPAWNING_PLEASE_JDG,
|
||||
|
||||
M01_SEND_GUARD_TOWER_CHINOOK_JDG,
|
||||
M01_SEND_BARN_CHINOOK_JDG,
|
||||
M01_SEND_TAILGUN_CHINOOK_JDG,
|
||||
M01_SEND_CHURCH_CHINOOK_JDG,
|
||||
M01_SEND_BARN_CIVILIANS_RESCUE_CHINOOK_JDG,
|
||||
|
||||
M01_RESPAWN_SHED01_POWERUP_JDG,
|
||||
M01_RESPAWN_ARMORY_POWERUP_JDG,
|
||||
M01_RESPAWN_TIBCAVE_POWERUP_JDG,
|
||||
|
||||
M01_HAVOC_GOTO_START_SPOT_JDG,
|
||||
M01_ATTACH_HAVOCS_SCRIPT_JDG,
|
||||
M01_CHECK_HAVOCS_HEALTH_JDG,
|
||||
M01_RESET_HAVOCS_HEALTH_WARNING_JDG,
|
||||
|
||||
M01_ADD_CHURCH_OBJECTIVE_JDG,
|
||||
//M01_ADD_HON_SAM_OBJECTIVE_JDG,
|
||||
M01_ADD_HARVESTER_OBJECTIVE_JDG,
|
||||
M01_ADD_REFINERY_OBJECTIVE_JDG,
|
||||
M01_ADD_REFINERY_SAM_OBJECTIVE_JDG,
|
||||
M01_ADD_PRISONER_OBJECTIVE_JDG,
|
||||
M01_ADD_UNLOCK_GATE_OBJECTIVE_JDG,
|
||||
M01_ADD_COMM_SAM_OBJECTIVE_JDG,
|
||||
M01_ADD_BARN_OBJECTIVE_JDG,
|
||||
M01_ADD_HON_OBJECTIVE_JDG,
|
||||
M01_ADD_TURRETS_OBJECTIVE_JDG,
|
||||
M01_ADD_BARN_COMMANDER_OBJECTIVE_JDG,
|
||||
|
||||
M01_CLEAR_CHURCH_OBJECTIVE_PASS_JDG,
|
||||
M01_CLEAR_CHURCH_OBJECTIVE_FAIL_JDG,
|
||||
M01_CLEAR_HARVESTER_OBJECTIVE_PASS_JDG,
|
||||
M01_CLEAR_REFINERY_OBJECTIVE_PASS_JDG,
|
||||
M01_CLEAR_HON_OBJECTIVE_PASS_JDG,
|
||||
M01_CLEAR_UNLOCK_GATE_OBJECTIVE_JDG,
|
||||
M01_CLEAR_PRISONERS_PASS_JDG,
|
||||
M01_CLEAR_FIRST_NOD_COMMANDER_PASS_JDG,
|
||||
|
||||
M01_ANNOUNCE_HARVESTER_OBJECTIVE_JDG,
|
||||
M01_ANNOUNCE_HON_OBJECTIVE_JDG,
|
||||
M01_ANNOUNCE_HON_SAM_OBJECTIVE_JDG,
|
||||
M01_ANNOUNCE_PRISONER_OBJECTIVE_JDG,
|
||||
M01_ANNOUNCE_UNLOCK_GATE_OBJECTIVE_JDG,
|
||||
M01_ANNOUNCE_COMMCENTER_SAM_OBJECTIVE_JDG,
|
||||
M01_ANNOUNCE_BARN_OBJECTIVE_JDG,
|
||||
M01_ANNOUNCE_REFINERY_SAM_OBJECTIVE_JDG,
|
||||
M01_ANNOUNCE_TURRETS_OBJECTIVE_JDG,
|
||||
|
||||
M01_START_BARN_OBJECTIVE_JDG,
|
||||
|
||||
M01_END_TURRETS_OBJECTIVE_PASS_JDG,
|
||||
M01_END_TURRETS_OBJECTIVE_FAIL_JDG,
|
||||
M01_END_BARN_OBJECTIVE_JDG,
|
||||
M01_END_BARN_ROUNDUP_OBJECTIVE_JDG,
|
||||
M01_CHANGE_BARN_OBJECTIVE_JDG,
|
||||
|
||||
M01_PASS_TURRETS_OBJECTIVE_JDG,
|
||||
M01_PASS_UNLOCK_GATE_OBJECTIVE_JDG,
|
||||
M01_PASS_COMM_SAM_OBJECTIVE_JDG,
|
||||
|
||||
//M01_SEND_HON_AIRSTRIKE_JDG,
|
||||
//M01_SEND_COMM_AIRSTRIKE_JDG,
|
||||
M01_SEND_COMMCENTER_REINFORCEMENTS_JDG,
|
||||
|
||||
M01_SPAWN_REFINERY_AIRSTRIKE_JDG,
|
||||
|
||||
//M01_CHURCH_OBJECTIVE_JDG,
|
||||
M01_HON_HAS_BEEN_DESTROYED_JDG,
|
||||
M01_HON_SAMSITE_HAS_BEEN_DESTROYED_JDG,
|
||||
M01_COMM_CENTER_HAS_BEEN_DESTROYED_JDG,
|
||||
M01_COMMCENTER_SAMSITE_HAS_BEEN_DESTROYED_JDG,
|
||||
M01_REFINERY_HAS_BEEN_DESTROYED_JDG,
|
||||
M01_REFINERY_SAMSITE_HAS_BEEN_DESTROYED_JDG,
|
||||
|
||||
M01_PLAYER_APPROACHING_BARN_AREA_JDG,
|
||||
M01_PLAYER_APPROACHING_GDI_BASE_AREA_JDG,
|
||||
M01_PLAYER_IS_INSIDE_GDI_CON_JDG,
|
||||
M01_PLAYER_IS_OUTSIDE_GDI_CON_JDG,
|
||||
M01_PLAYER_IS_INSIDE_GDI_POWERPLANT_JDG,
|
||||
M01_PLAYER_IS_OUTSIDE_GDI_POWERPLANT_JDG,
|
||||
M01_PLAYER_IS_APPROACHING_TAILGUN_ALLEY_JDG,
|
||||
M01_PLAYER_IS_INSIDE_HON_JDG,
|
||||
M01_PLAYER_IS_IN_HON_GRUNT_LEVEL_JDG,
|
||||
M01_PLAYER_IS_IN_HON_DOJO_JDG,
|
||||
M01_PLAYER_IS_OUTSIDE_HON_JDG,
|
||||
M01_PLAYER_IS_INSIDE_REFINERY_JDG,
|
||||
M01_PLAYER_IS_OUTSIDE_REFINERY_JDG,
|
||||
M01_PLAYER_IS_INSIDE_COMM_CENTER_JDG,
|
||||
M01_PLAYER_IS_OUTSIDE_COMM_CENTER_JDG,
|
||||
M01_PLAYER_IS_INSIDE_TUNNEL_JDG,
|
||||
M01_PLAYER_IS_OUTSIDE_TUNNEL_JDG,
|
||||
M01_PLAYER_IS_INSIDE_WATERFALL_JDG,
|
||||
M01_PLAYER_IS_OUTSIDE_WATERFALL_JDG,
|
||||
M01_PLAYER_IS_AT_SNIPER_SCENARIO_JDG,
|
||||
M01_PLAYER_IS_APPROACHING_CHURCH_JDG,
|
||||
M01_PLAYER_IS_LEAVING_CHURCH_01_JDG,
|
||||
M01_PLAYER_IS_LEAVING_CHURCH_02_JDG,
|
||||
M01_PLAYER_IS_LEAVING_HON_01_JDG,
|
||||
M01_PLAYER_IS_LEAVING_HON_02_JDG,
|
||||
M01_PLAYER_IS_CROSSING_THE_BRIDGE_JDG,
|
||||
M01_PLAYER_IS_CROSSING_THE_BRIDGE_VIA_CAVE_JDG,
|
||||
M01_PLAYER_ENTERING_LEFT_INTEROG_ROOM_JDG,
|
||||
M01_PLAYER_ENTERING_RIGHT_INTEROG_ROOM_JDG,
|
||||
M01_PLAYER_ENTERING_CENTER_INTEROG_ROOM_JDG,
|
||||
|
||||
M01_TURN_ON_OUTSIDE_AMBIENTS_JDG,
|
||||
M01_TURN_OFF_OUTSIDE_AMBIENTS_JDG,
|
||||
|
||||
//M01_CUE_THE_SNIPER_SCENARIO_JDG,
|
||||
M01_HON_CUE_WARROOM_LEVEL_ACTORS_JDG,
|
||||
M01_REFINERY_CUE_PRIMARY_ACTORS_JDG,
|
||||
|
||||
M01_GUARD_TIBERIUM_FIELD_JDG,
|
||||
M01_GUARD_REFINERY_JDG,
|
||||
M01_ESCORT_HARVESTER_JDG,
|
||||
|
||||
M01_YOUR_BUILDING_HAS_BEEN_DESTROYED_JDG,
|
||||
|
||||
M01_ANNOUNCE_AIRSTRIKE_JDG,
|
||||
M01_ANNOUNCE_REINFORCEMENTS_JDG,
|
||||
|
||||
M01_SEND_HON_REINFORCEMENTS_A_JDG,
|
||||
M01_SEND_HON_REINFORCEMENTS_B_JDG,
|
||||
M01_SEND_HON_REINFORCEMENTS_C_JDG,
|
||||
M01_SEND_CHURCH_REINFORCEMENTS_JDG,
|
||||
|
||||
M01_HON_CHINOOK_GUY_HAS_BEEN_KILLED_JDG,
|
||||
M01_CHURCH_GUARD_IS_DEAD_JDG,
|
||||
M01_LOVESHACK_GUARD_IS_DEAD_JDG,
|
||||
M01_CUE_CHURCH_PICKUP_CHINOOK_JDG,
|
||||
M01_CHURCH_CHINOOK_HAS_LANDED_JDG,
|
||||
M01_CHURCH_CLERGY_HAS_BOARDED_JDG,
|
||||
M01_CARD_CARRIER_HAS_BEEN_KILLED_JDG,
|
||||
M01_GDI_GUY_HAS_BEEN_POKED_JDG,
|
||||
M01_PLEASE_START_ESCORTING_PLAYER_JDG,
|
||||
M01_PLEASE_STOP_ESCORTING_PLAYER_JDG,
|
||||
M01_PLAYERS_ESCORT_HAS_BEEN_KILLED_JDG,
|
||||
|
||||
M01_PLAYER_HAS_PICKED_UP_CHEMSPRAYER_JDG,
|
||||
M01_PLAYER_HAS_PICKED_UP_MINIGUN_JDG,
|
||||
M01_PLAYER_HAS_PICKED_UP_FLAMETHROWER_JDG,
|
||||
M01_PLAYER_HAS_PICKED_UP_SHOTGUN_JDG,
|
||||
M01_PLAYER_HAS_PICKED_UP_ROCKETLAUNCHER_JDG,
|
||||
M01_PLAYER_HAS_PICKED_UP_SNIPERRIFLE_JDG,
|
||||
|
||||
M01_PLAYER_IS_ATTACKING_ME_JDG,
|
||||
M01_DO_ESCORT_ANIMATION_JDG,
|
||||
M01_ESCORT_IS_ATTACKING_TARGET_JDG,
|
||||
M01_ESCORT_IS_HOLDING_POSITION_JDG,
|
||||
M01_DRIVEBYGUY_SAYS_SORRY_JDG,
|
||||
M01_LOOK_AT_SPEEDRACER_JDG,
|
||||
M01_SPAWN_TIB_CAVE_HELICOPTER_JDG,
|
||||
|
||||
M01_KILL_THE_HON_JDG,
|
||||
M01_KILL_THE_COMM_JDG,
|
||||
M01_KILL_THE_GDI_POWER_PLANT_JDG,
|
||||
M01_PLAYER_HAS_POKED_COMM_CENTER_PCT_JDG,
|
||||
M01_PLAYER_HAS_POKED_PEN_GATE_JDG,
|
||||
M01_SCRAMBLE_THE_RADAR_JDG,
|
||||
M01_UNSCRAMBLE_THE_RADAR_JDG,
|
||||
|
||||
M01_SPAWN_WHACK_A_MOLE_GUY_JDG,
|
||||
M01_CHANGE_WHACK_A_MOLE_GUY_JDG,
|
||||
|
||||
M01_HON_SPAWNS_MINIGUNNER_JDG,
|
||||
M01_HON_SPAWNER_IN_POSITION_JDG,
|
||||
M01_HON_SPAWNER_IS_DEAD_JDG,
|
||||
M01_HON_SPAWNER_01_IS_DEAD_JDG,
|
||||
M01_HON_SPAWNER_02_IS_DEAD_JDG,
|
||||
M01_HON_SPAWNER_03_IS_DEAD_JDG,
|
||||
|
||||
M01_CUE_INTERIOR_NUN_CONVERSATION_JDG,
|
||||
M01_CUE_LOVESHACK_NUN_CONVERSATION_JDG,
|
||||
M01_CUE_PRIEST_CONVERSATION_JDG,
|
||||
M01_CUE_KANE_AND_NUMBER2_CONVERSATION_JDG,
|
||||
M01_CUE_KANE_AND_NUMBER2_CONVERSATION_02_JDG,
|
||||
M01_CUE_KANE_AND_HAVOC_CONVERSATION_JDG,
|
||||
//M01_CUE_LOCKES_HON_MCT_CONVERSATION_JDG,
|
||||
M01_TURRET_HAS_BEEN_DESTROYED_JDG,
|
||||
//M01_TURRET_02_HAS_BEEN_DESTROYED_JDG,
|
||||
M01_FODDER_HOVERCRAFT_IS_HERE,
|
||||
M01_SPAWN_THE_MEDIUM_TANK_JDG,
|
||||
M01_BARN_APC_HAS_ARRIVED_JDG,
|
||||
M01_BUSY_TRY_AGAIN_JDG,
|
||||
M01_TURRET_BEACH_ENGINEER_IS_DEAD_JDG,
|
||||
M01_NEW_TURRET_BEACH_ENGINEER_IS_HERE_JDG,
|
||||
M01_CHECK_TURRETS_HEALTH_JDG,
|
||||
M01_CUE_BILLYS_CONVERSATION_JDG,
|
||||
M01_CUE_BABUSHKA_CONVERSATION_JDG,
|
||||
M01_BARN_GUARD_IS_DEAD_JDG,
|
||||
M01_MEDIUM_TANK_IS_HERE_JDG,
|
||||
M01_CIVILIAN_KILLED_JDG,
|
||||
M01_YOUR_OPERATOR_IS_DEAD_JDG,
|
||||
|
||||
M01_START_FLYOVERS_JDG,
|
||||
M01_STOP_FLYOVERS_JDG,
|
||||
|
||||
M01_KILL_THE_REFINERY_JDG = 4000,
|
||||
M01_GOING_TO_EVAC_SPOT_JDG,
|
||||
M01_GOING_TO_EVAC_SPOT02_JDG,
|
||||
};
|
||||
|
||||
// Timer Enumerations
|
||||
|
||||
typedef enum
|
||||
{
|
||||
M1TIMER_START = STIMER_MISSION1,
|
||||
} M1TIMER;
|
||||
//mission functions
|
||||
inline char *M01_Choose_Cheer_Animation ( )
|
||||
{
|
||||
char *animationList[4] =
|
||||
{
|
||||
"H_A_J01C",
|
||||
"H_A_J18C",
|
||||
"H_A_J24C",
|
||||
"H_A_J26C",
|
||||
};
|
||||
int random = Commands->Get_Random_Int(0, 4);
|
||||
|
||||
|
||||
return animationList[random];
|
||||
};
|
||||
|
||||
inline char *M01_Choose_Duck_Animation ( )
|
||||
{
|
||||
char *animationList[5] =
|
||||
{
|
||||
"H_A_A0A0_L20",
|
||||
"H_A_A0A0_L21",
|
||||
"H_A_A0A0_L36",
|
||||
"H_A_A0A0_L52",
|
||||
"H_A_J21C",
|
||||
};
|
||||
int random = Commands->Get_Random_Int(0, 5);
|
||||
|
||||
|
||||
return animationList[random];
|
||||
};
|
||||
|
||||
inline char *M01_Choose_Search_Animation ( )
|
||||
{
|
||||
char *animationList[4] =
|
||||
{
|
||||
"H_A_J01C",
|
||||
//"H_A_J18C",
|
||||
"H_A_J11C",
|
||||
"H_A_J23C",
|
||||
"H_A_J27C",
|
||||
};
|
||||
int random = Commands->Get_Random_Int(0, 4);
|
||||
|
||||
|
||||
return animationList[random];
|
||||
};
|
||||
|
||||
inline char *M01_Choose_Idle_Animation ( )
|
||||
{
|
||||
char *animationList[14] =
|
||||
{
|
||||
"H_A_A0A0_L01",
|
||||
"H_A_A0A0_L02",
|
||||
"H_A_A0A0_L03",
|
||||
"H_A_A0A0_L04",
|
||||
"H_A_A0A0_L05",
|
||||
"H_A_A0A0_L13",
|
||||
"H_A_X33C",
|
||||
"H_A_J33C",
|
||||
"H_A_J24C",
|
||||
"H_A_J22C",
|
||||
"H_A_J17C",
|
||||
"H_A_J15C",
|
||||
"H_A_J14C",
|
||||
"H_A_J11C",
|
||||
};
|
||||
int random = Commands->Get_Random_Int(0, 14);
|
||||
|
||||
return animationList[random];
|
||||
};
|
||||
|
||||
/*inline char *M01_Choose_Cheer_Animation ( )
|
||||
{
|
||||
char *animationName;
|
||||
float animationNumber = Commands->Get_Random ( 0.5f, 4.5f);
|
||||
|
||||
if ((animationNumber >= 0.5) && (animationNumber < 1.5))
|
||||
{
|
||||
animationName = "H_A_J01C";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 1.5) && (animationNumber < 2.5))
|
||||
{
|
||||
animationName = "H_A_J18C";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 2.5) && (animationNumber < 3.5))
|
||||
{
|
||||
animationName = "H_A_J24C";
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
animationName = "H_A_J26C";
|
||||
}
|
||||
|
||||
return animationName;
|
||||
};*/
|
||||
|
||||
/*inline char *M01_Choose_Search_Animation ( )
|
||||
{
|
||||
char *animationName;
|
||||
float animationNumber = Commands->Get_Random ( 0.5f, 5.5f);
|
||||
|
||||
if ((animationNumber >= 0.5) && (animationNumber < 1.5))
|
||||
{
|
||||
animationName = "H_A_J01C";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 1.5) && (animationNumber < 2.5))
|
||||
{
|
||||
animationName = "H_A_J11C";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 2.5) && (animationNumber < 3.5))
|
||||
{
|
||||
animationName = "H_A_J18C";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 3.5) && (animationNumber < 4.5))
|
||||
{
|
||||
animationName = "H_A_J23C";
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
animationName = "H_A_J27C";
|
||||
}
|
||||
|
||||
return animationName;
|
||||
};*/
|
||||
|
||||
/*inline char *M01_Choose_Idle_Animation ( )
|
||||
{
|
||||
char *animationName;
|
||||
|
||||
float animationNumber = Commands->Get_Random ( 0.5f, 14.5f);
|
||||
|
||||
if ((animationNumber >= 0.5) && (animationNumber < 1.5))
|
||||
{
|
||||
animationName = "H_A_A0A0_L01";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 1.5) && (animationNumber < 2.5))
|
||||
{
|
||||
animationName = "H_A_A0A0_L02";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 2.5) && (animationNumber < 3.5))
|
||||
{
|
||||
animationName = "H_A_A0A0_L03";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 3.5) && (animationNumber < 4.5))
|
||||
{
|
||||
animationName = "H_A_A0A0_L04";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 4.5) && (animationNumber < 5.5))
|
||||
{
|
||||
animationName = "H_A_A0A0_L05";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 5.5) && (animationNumber < 6.5))
|
||||
{
|
||||
animationName = "H_A_A0A0_L13";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 6.5) && (animationNumber < 7.5))
|
||||
{
|
||||
animationName = "H_A_X33C";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 7.5) && (animationNumber < 8.5))
|
||||
{
|
||||
animationName = "H_A_J33C";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 8.5) && (animationNumber < 9.5))
|
||||
{
|
||||
animationName = "H_A_J24C";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 9.5) && (animationNumber < 10.5))
|
||||
{
|
||||
animationName = "H_A_J22C";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 10.5) && (animationNumber < 11.5))
|
||||
{
|
||||
animationName = "H_A_J17C";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 11.5) && (animationNumber < 12.5))
|
||||
{
|
||||
animationName = "H_A_J15C";
|
||||
}
|
||||
|
||||
else if ((animationNumber >= 12.5) && (animationNumber < 13.5))
|
||||
{
|
||||
animationName = "H_A_J14C";
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
animationName = "H_A_J11C";
|
||||
}
|
||||
|
||||
return animationName;
|
||||
};*/
|
||||
|
||||
#endif // _MISSION1_H_
|
||||
4779
Code/Scripts/Mission10.cpp
Normal file
4779
Code/Scripts/Mission10.cpp
Normal file
File diff suppressed because it is too large
Load Diff
89
Code/Scripts/Mission10.h
Normal file
89
Code/Scripts/Mission10.h
Normal file
@@ -0,0 +1,89 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission10.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 10 definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Dan_e $
|
||||
* $Revision: 23 $
|
||||
* $Modtime: 12/06/01 11:43a $
|
||||
* $Archive: /Commando/Code/Scripts/Mission10.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSION10_H_
|
||||
#define _MISSION10_H_
|
||||
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
|
||||
// Predefined Constants
|
||||
|
||||
// Public Variables
|
||||
|
||||
// Enumerations
|
||||
#define MAMMOTH 40000
|
||||
#define ATTACK 40001
|
||||
#define KILLED 40002
|
||||
#define TARGET 40003
|
||||
#define HON 40004
|
||||
#define GRANT 40005
|
||||
#define HELIPAD 40006
|
||||
#define GOTO_LOC 40007
|
||||
#define FAKE_TIMER 40008
|
||||
#define HAVOCS_SCRIPT 40009
|
||||
#define MISSION_COMPLETE 40010
|
||||
#define REBUILD 40011
|
||||
#define M10_PLAYERTYPE_CHANGE_OBELISK 40012
|
||||
#define FLYOVER 40013
|
||||
#define REMOVE_SECONDARY_POG 40014
|
||||
#define ENTERED 40015
|
||||
#define CLEAR1 40016
|
||||
#define CLEAR2 40017
|
||||
#define GRANT_MRLS 40018
|
||||
#define OCCUPIED 40019
|
||||
#define TANK_KILLED 40020
|
||||
#define CARGO_DROP 40021
|
||||
#define REINFORCE 40022
|
||||
#define NO_DROP 40023
|
||||
#define KEY_OBJ 40024
|
||||
#define DAMAGED 40025
|
||||
#define RESET 40026
|
||||
#define KANE_CONV 40027
|
||||
#define MAMMY 40028
|
||||
|
||||
// Timer Enumerations
|
||||
|
||||
typedef enum
|
||||
{
|
||||
M10TIMER_START = STIMER_MISSION10,
|
||||
} M10TIMER;
|
||||
|
||||
#endif // _MISSION10_H_
|
||||
11267
Code/Scripts/Mission11.cpp
Normal file
11267
Code/Scripts/Mission11.cpp
Normal file
File diff suppressed because it is too large
Load Diff
281
Code/Scripts/Mission11.h
Normal file
281
Code/Scripts/Mission11.h
Normal file
@@ -0,0 +1,281 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission11.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 11 definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Joe_g $
|
||||
* $Revision: 41 $
|
||||
* $Modtime: 1/12/02 8:05p $
|
||||
* $Archive: /Commando/Code/Scripts/Mission11.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSION11_H_
|
||||
#define _MISSION11_H_
|
||||
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
|
||||
// Predefined Constants
|
||||
//CHARACTERS
|
||||
#define M11_SIMPLE_SYDNEY_MOBIUS_JDG 100697
|
||||
#define M11_REAL_SYDNEY_MOBIUS_JDG 100644
|
||||
#define M11_MUTANT_PETROVA_JDG 300303
|
||||
#define M11_C130_EASY_SPAWN_CAP_JDG 3
|
||||
#define M11_C130_MEDIUM_SPAWN_CAP_JDG 6
|
||||
#define M11_C130_HARD_SPAWN_CAP_JDG 12
|
||||
|
||||
//CONTROLLERS
|
||||
#define M11_MISSION_CONTROLLER_JDG 100101
|
||||
#define M11_C130_DROPOFF_CONTROLLER_JDG 100221
|
||||
#define M11_FLOOR01_SECURITY_CONTROLLER_JDG 100179
|
||||
#define M11_WETBAR_SPAWNER_CONTROLLER_JDG 100326
|
||||
#define M11_KANESROOM_SECURITY_CONTROLLER_JDG 100351
|
||||
#define M11_FODDER_CONTROLLER_JDG 100588
|
||||
#define M11_FIRSTFLOOR_STUFF_CONTROLLER_JDG 100593
|
||||
#define M11_FIRSTFLOOR_REPELER_CONTROLLER_JDG 101125
|
||||
|
||||
//First floor fodder stuff
|
||||
#define M11_OBELISK_FODDER_SPAWNER01_JDG 100581
|
||||
#define M11_OBELISK_FODDER_SPAWNER02_JDG 100582
|
||||
#define M11_TEMPLEROOF_FODDER_SPAWNER01_JDG 100583
|
||||
#define M11_TEMPLEROOF_FODDER_SPAWNER02_JDG 100586
|
||||
|
||||
//floor 01 security turrets related
|
||||
#define M11_FLOOR01_SECURITY_TURRET_01_JDG 100177
|
||||
#define M11_FLOOR01_SECURITY_TURRET_03_JDG 100175
|
||||
#define M11_FLOOR01_SECURITY_TURRET_05_JDG 100173
|
||||
#define M11_FLOOR01_SECURITY_TURRET_08_JDG 100170
|
||||
#define M11_FLOOR01_SECURITY_TURRET_10_JDG 100168
|
||||
#define M11_FLOOR01_SECURITY_TURRET_12_JDG 100167
|
||||
|
||||
//museum level encounter related
|
||||
#define M11_MUSEUM_GUARD_01_JDG 100256
|
||||
#define M11_MUSEUM_GUARD_02_JDG 100257
|
||||
#define M11_MUSEUM_GUARD_03_JDG 100258
|
||||
#define M11_MUSEUM_GUARD_04_JDG 100259
|
||||
#define M11_MUSEUM_GUARD_05_JDG 100260
|
||||
#define M11_MUSEUM_GUARD_06_JDG 100261
|
||||
#define M11_MUSEUM_SPAWNER_JDG 100323
|
||||
#define M11_WETBAR_SPAWNER_01_JDG 100330
|
||||
#define M11_WETBAR_SPAWNER_02_JDG 100331
|
||||
#define M11_WETBAR_SPAWNER_03_JDG 100332
|
||||
|
||||
//kane's room's security cameras and turrets
|
||||
#define M11_KANESROOM_SECURITY_TURRET_01_JDG 100346
|
||||
#define M11_KANESROOM_SECURITY_TURRET_03_JDG 100349
|
||||
|
||||
//WARROOM's security cameras and turrets
|
||||
#define M11_WARROOM_SECURITY_TURRET_01_JDG 100359
|
||||
#define M11_WARROOM_SECURITY_TURRET_02_JDG 100360
|
||||
#define M11_WARROOM_SECURITY_CONTROLLER_JDG 100361
|
||||
#define M11_WARROOM_SECURITY_SPAWNER_JDG 100362
|
||||
#define M11_WARROOM_SECURITY_SPAWNER_02_JDG 101772
|
||||
#define M11_WARROOM_ENGINEER_JDG 100353
|
||||
|
||||
//all the barrack encounters stuff going here
|
||||
#define M11_BARRACKS_SPAWNER_CONTROLLER_JDG 100430
|
||||
#define M11_BARRACKS_SPAWNER_01_JDG 100427
|
||||
#define M11_BARRACKS_SPAWNER_02_JDG 100428
|
||||
#define M11_BARRACKS_SPAWNER_03_JDG 100429
|
||||
#define M11_BARRACKS_MUTANT_REJECT_JDG 100415
|
||||
#define M11_BARRACKS_SCIENTIST_JDG 100405
|
||||
#define M11_BARRACKS_RAGSESSION_TECH_JDG 100402
|
||||
#define M11_BARRACKS_RAGSESSION_BLACKHAND_JDG 100403
|
||||
#define M11_BARRACKS_STEALTHSOLDIER_JDG 100400
|
||||
#define M11_BARRACKS_MUTANTCONVERSATION_GUY01_JDG 100378
|
||||
#define M11_BARRACKS_MUTANTCONVERSATION_GUY02_JDG 100379
|
||||
#define M11_BARRACKS_TOILET_MUTANT_01_JDG 100374
|
||||
#define M11_BARRACKS_TOILET_MUTANT_02_JDG 100375
|
||||
#define M11_BARRACKS_MUTANTUPRISING_BLACKHAND_JDG 100387
|
||||
#define M11_BARRACKS_MUTANTUPRISING_MUTANT01_JDG 100388
|
||||
#define M11_BARRACKS_MUTANTUPRISING_MUTANT02_JDG 100389
|
||||
|
||||
//LABORATORY related stuff
|
||||
#define M11_LABORATORY_MUTANT_CONTROLLER_JDG 100910
|
||||
|
||||
//Sydney's rally zones and whatnot
|
||||
#define M11_SYDNEY_RALLY_ZONE_01_JDG 100132
|
||||
#define M11_SYDNEY_RALLY_ZONE_02_JDG 100109
|
||||
#define M11_SYDNEY_RALLY_ZONE_03A_JDG 100133
|
||||
#define M11_SYDNEY_RALLY_ZONE_03B_JDG 100134
|
||||
|
||||
//MUTANT CRYPT SPAWNER STUFF
|
||||
#define M11_MUTANT_CRYPT_SPAWNER_01_JDG 100691
|
||||
#define M11_MUTANT_CRYPT_SPAWNER_02_JDG 100692
|
||||
#define M11_MUTANT_CRYPT_SPAWNER_03_JDG 100693
|
||||
#define M11_MUTANT_CRYPT_SPAWNER_04_JDG 100694
|
||||
#define M11_MUTANT_CRYPT_SPAWNER_05_JDG 100695
|
||||
#define M11_MUTANT_CRYPT_SPAWNER_06_JDG 100696
|
||||
#define M11_MUTANT_CRYPT_SPAWNER_CONTROLLER_JDG 100689
|
||||
|
||||
//POWER CORE STUFF
|
||||
#define M11_POWERCORE_INITAL_STEALTHGUY01_JDG 100536
|
||||
#define M11_POWERCORE_INITAL_STEALTHGUY02_JDG 100537
|
||||
#define M11_POWERCORE_INITAL_STEALTHGUY03_JDG 100538
|
||||
|
||||
#define M11_MISSILE_LIFT_01_JDG 167623
|
||||
#define M11_MISSILE_LIFT_02_JDG 167622
|
||||
#define M11_MISSILE_LIFT_03_JDG 167621
|
||||
#define M11_MISSILE_LIFT_04_JDG 167620
|
||||
#define M11_MISSILE_LIFT_CONTROLLER_JDG 101673
|
||||
|
||||
#define M11_PETROVA_STEALTHSPAWNER_01_JDG 105889
|
||||
#define M11_PETROVA_STEALTHSPAWNER_02_JDG 105890
|
||||
#define M11_PETROVA_STEALTHSPAWNER_03_JDG 105891
|
||||
|
||||
//various MISSION11 objects
|
||||
#define M11_END_MISSION_SWITCH_JDG 100106
|
||||
|
||||
//LOGICAL SOUNDS
|
||||
#define M11_MUTANT_IS_NEARBY_JDG 400000
|
||||
//#define M11_STEALTHS_START_ACTING_JDG 400001
|
||||
|
||||
// Public Variables
|
||||
|
||||
// Enumerations
|
||||
enum
|
||||
{
|
||||
//general commands
|
||||
//M11_PICK_A_NEW_WAYPATH_JDG,
|
||||
|
||||
//M11_DOING_ANIMATION_01_JDG,
|
||||
|
||||
|
||||
//mission controller specific commands
|
||||
M11_ATTACH_HAVOCS_SCRIPT_JDG,
|
||||
M11_END_MISSION_PASS_JDG,
|
||||
M11_END_MISSION_FAIL_JDG,
|
||||
M11_ADD_FIRST_OBJECTIVE_JDG,
|
||||
M11_FIRST_OBJECTIVE_JDG,
|
||||
M11_END_FIRST_OBJECTIVE_JDG,
|
||||
M11_ADD_SECOND_OBJECTIVE_JDG,
|
||||
M11_ADD_SECOND_OBJECTIVE_POG_JDG,
|
||||
M11_SECOND_OBJECTIVE_JDG,
|
||||
M11_END_SECOND_OBJECTIVE_JDG,
|
||||
M11_ADD_THIRD_OBJECTIVE_JDG,
|
||||
M11_THIRD_OBJECTIVE_JDG,
|
||||
M11_END_THIRD_OBJECTIVE_JDG,
|
||||
M11_ADD_FORTH_OBJECTIVE_JDG,
|
||||
M11_FORTH_OBJECTIVE_JDG,
|
||||
M11_END_FORTH_OBJECTIVE_JDG,
|
||||
M11_ADD_FIFTH_OBJECTIVE_JDG,
|
||||
M11_FIFTH_OBJECTIVE_JDG,
|
||||
M11_END_FIFTH_OBJECTIVE_JDG,
|
||||
M11_PLAY_SECOND_INTRO_CONVERSATION_JDG,
|
||||
|
||||
M11_PETROVA_START_ACTING_JDG,
|
||||
|
||||
M11_PETROVA_ATTACK_PLAYER_JDG,
|
||||
M11_PETROVA_PICK_NEW_LOCATION_JDG,
|
||||
|
||||
M11_PLAYER_HAS_POKED_LEVEL4_ELEVATOR_SWITCH_JDG,
|
||||
M11_PLAYER_HAS_POKED_LEVEL3_ELEVATOR_SWITCH_JDG,
|
||||
M11_PLAYER_HAS_POKED_LEVEL2_ELEVATOR_SWITCH_JDG,
|
||||
M11_PLAYER_HAS_POKED_LEVEL1_ELEVATOR_SWITCH_JDG,
|
||||
M11_GOTO_IDLE_JDG,
|
||||
M11_START_ACTING_JDG,
|
||||
|
||||
M11_PETROVA_FACE_PLAYER_IML,
|
||||
|
||||
M11_HAVOC_IS_DEAD_JDG = 4000,
|
||||
|
||||
//mutant crypt related
|
||||
//M11_MUTANT_CHOOSES_SOUND_JDG,
|
||||
};
|
||||
|
||||
// Timer Enumerations
|
||||
|
||||
//mission functions
|
||||
inline char *M11_Choose_Mutant_Idle_Sound ( )
|
||||
{
|
||||
char *soundList[4] =
|
||||
{
|
||||
"M00MEIN_CTOA0001I1MEIN_SND",
|
||||
"M00MEIN_CTOR0001I1MEIN_SND",
|
||||
"M00MEIN_STOA0001I1MEIN_SND",
|
||||
"M00MEIN_STOR0001I1MEIN_SND",
|
||||
};
|
||||
int random = Commands->Get_Random_Int(0, 4);
|
||||
|
||||
return soundList[random];
|
||||
};
|
||||
|
||||
inline char *M11_Choose_Mutant_Alerted_Sound ( )
|
||||
{
|
||||
char *soundList[3] =
|
||||
{
|
||||
"M00MEIN_CTOS0001I1MEIN_SND",
|
||||
"M00MEIN_RTOS0001I1MEIN_SND",
|
||||
"M00MEIN_TDFA0001I1MEIN_SND",
|
||||
};
|
||||
int random = Commands->Get_Random_Int(0, 3);
|
||||
|
||||
return soundList[random];
|
||||
};
|
||||
|
||||
inline char *M11_Choose_Mutant_Attack_Sound ( )
|
||||
{
|
||||
char *soundList[3] =
|
||||
{
|
||||
"M00MEIN_ATOS0001I1MEIN_SND",
|
||||
"M00MEIN_CTOS0001I1MEIN_SND",
|
||||
"M00MEIN_STOC0001I1MEIN_SND",
|
||||
};
|
||||
int random = Commands->Get_Random_Int(0, 3);
|
||||
|
||||
return soundList[random];
|
||||
};
|
||||
|
||||
inline char *M11_Choose_Mutant_Attack_Animation ( )
|
||||
{
|
||||
char *animationList[6] =
|
||||
{
|
||||
"S_A_Human.H_A_4243",
|
||||
"S_A_Human.H_A_822A",
|
||||
"S_A_Human.H_A_891A",
|
||||
"S_A_Human.H_A_892A",
|
||||
"S_A_Human.H_A_893A",
|
||||
"S_A_Human.H_A_A0F0",
|
||||
//"S_A_Human.H_A_D11A",
|
||||
};
|
||||
int random = Commands->Get_Random_Int(0, 6);
|
||||
|
||||
|
||||
return animationList[random];
|
||||
};
|
||||
|
||||
typedef enum
|
||||
{
|
||||
M11TIMER_START = STIMER_MISSION11,
|
||||
} M11TIMER;
|
||||
|
||||
#endif // _MISSION11_H_
|
||||
60
Code/Scripts/Mission12.h
Normal file
60
Code/Scripts/Mission12.h
Normal file
@@ -0,0 +1,60 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission12.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 12 definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Rich_d $
|
||||
* $Revision: 2 $
|
||||
* $Modtime: 6/13/00 11:27a $
|
||||
* $Archive: /Commando/Code/Scripts/Mission12.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSION12_H_
|
||||
#define _MISSION12_H_
|
||||
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
|
||||
// Predefined Constants
|
||||
|
||||
// Public Variables
|
||||
|
||||
// Enumerations
|
||||
|
||||
// Timer Enumerations
|
||||
|
||||
typedef enum
|
||||
{
|
||||
M12TIMER_START = STIMER_MISSION12,
|
||||
} M12TIMER;
|
||||
|
||||
#endif // _MISSION12_H_
|
||||
110
Code/Scripts/Mission2.h
Normal file
110
Code/Scripts/Mission2.h
Normal file
@@ -0,0 +1,110 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission2.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 2 definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Rich_d $
|
||||
* $Revision: 18 $
|
||||
* $Modtime: 1/02/02 3:10p $
|
||||
* $Archive: /Commando/Code/Scripts/Mission2.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSION2_H_
|
||||
#define _MISSION2_H_
|
||||
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
// Predefined Constants
|
||||
|
||||
#define M02_OBJCONTROLLER 1111112
|
||||
#define M02_AREACOUNT 26
|
||||
|
||||
// Public Variables
|
||||
|
||||
Vector3 Objective_Radar_Locations [20] =
|
||||
{
|
||||
Vector3 (1113.53f,877.16f,17.47f), // Destroy or Deactivate Obelisk
|
||||
Vector3 (1001.69f,903.86f,0.82f), // Destroy the Dam's MCT
|
||||
Vector3 (1209.60f,571.97f,18.15f), // Destroy the Hand of Nod
|
||||
Vector3 (1163.07f,513.01f,20.52f), // Commandeer the Nod Cargo Plane
|
||||
Vector3 (139.51f,-5.62f,-12.83f), // Destroy the Nod Helipad
|
||||
Vector3 (130.88f,21.10f,-8.49f), // Secure the Nod Guard Tower
|
||||
Vector3 (556.17f,23.18f,-53.88f), // Capture the Second House
|
||||
Vector3 (495.01f,114.70f,-55.84f), // Capture the First House
|
||||
Vector3 (648.77f,300.74f,-59.99f), // Capture the Third House
|
||||
Vector3 (425.43f,840.52f,8.09f), // Secure the Ski Resort
|
||||
Vector3 (468.59f,582.74f,-43.48f), // Destroy the First SAM
|
||||
Vector3 (493.76f,619.03f,-36.62f), // Destroy the Nod Convoy
|
||||
Vector3 (572.80f,873.57f,-2.83f), // Destroy the Second SAM
|
||||
Vector3 (801.57f,1054.95f,22.00f), // Destroy the Third SAM
|
||||
Vector3 (783.25f,945.26f,23.04f), // Destroy the Fourth SAM
|
||||
Vector3 (1062.0f,978.7f,-18.3f), // Destroy the Power Plant
|
||||
Vector3 (1300.2f,614.1f,19.2f), // Eliminate Tiberium Station C
|
||||
Vector3 (1310.1f,696.5f,19.5f), // Eliminate Tiberium Station A
|
||||
Vector3 (1342.2f,655.1f,19.3f), // Eliminate Tiberium Station B
|
||||
Vector3 (570.06f,261.47f,-60.0f) // Commandeer the GDI Mammoth Tank
|
||||
};
|
||||
|
||||
// Enumerations
|
||||
|
||||
// Timer Enumerations
|
||||
|
||||
typedef enum
|
||||
{
|
||||
M2TIMER_START = STIMER_MISSION2,
|
||||
} M2TIMER;
|
||||
|
||||
inline void Send_Custom_To_SAM_Sites (GameObject * obj, int type, int param)
|
||||
{
|
||||
GameObject * sam = Commands->Find_Object(1100085);
|
||||
if (sam)
|
||||
{
|
||||
Commands->Send_Custom_Event(obj, sam, type, param, 0.5f);
|
||||
}
|
||||
sam = Commands->Find_Object(1100094);
|
||||
if (sam)
|
||||
{
|
||||
Commands->Send_Custom_Event(obj, sam, type, param, 0.5f);
|
||||
}
|
||||
sam = Commands->Find_Object(1100120);
|
||||
if (sam)
|
||||
{
|
||||
Commands->Send_Custom_Event(obj, sam, type, param, 0.5f);
|
||||
}
|
||||
sam = Commands->Find_Object(1100130);
|
||||
if (sam)
|
||||
{
|
||||
Commands->Send_Custom_Event(obj, sam, type, param, 0.5f);
|
||||
}
|
||||
}
|
||||
|
||||
#endif // _MISSION2_H_
|
||||
83
Code/Scripts/Mission3.h
Normal file
83
Code/Scripts/Mission3.h
Normal file
@@ -0,0 +1,83 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission3.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 3 Header File
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Dan Etter
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Dan_e $
|
||||
* $Revision: 45 $
|
||||
* $Modtime: 12/03/01 11:46a $
|
||||
* $Archive: /Commando/Code/Scripts/Mission3.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSION3_H_
|
||||
#define _MISSION3_H_
|
||||
|
||||
// Defines and Includes
|
||||
#define GOTO_STAR 20000
|
||||
|
||||
// Predefined Constants
|
||||
|
||||
// Public Variables
|
||||
|
||||
// Enumerations
|
||||
|
||||
#define SAKURA_DOGFIGHT 40000
|
||||
#define DOGFIGHT_ENDED 40001
|
||||
#define MCT_ACCESSED 40002
|
||||
#define COMM_KILLED 40003
|
||||
#define ENTERED 40004
|
||||
#define MESSAGE_DELAY 40005
|
||||
#define REMOVE_SECONDARY_POG 40006
|
||||
#define ANNOUNCEMENT_DELAY 40007
|
||||
#define TROOP_KILLED 40008
|
||||
#define PAST_PILLBOX 40009
|
||||
#define POWER_KILLED 40010
|
||||
#define ENGINEER 40011
|
||||
#define HEAL_ME 40012
|
||||
#define HEALTH_CHECK 40013
|
||||
#define STOP_REPAIR 40014
|
||||
#define MOVE_TO_HEAL 40015
|
||||
#define REPAIRING 40016
|
||||
#define UPDATE 40017
|
||||
#define BASE 40018
|
||||
#define INLET 40019
|
||||
#define BEACH 40020
|
||||
#define LOCATION 40021
|
||||
#define ACTIVATE 40022
|
||||
#define BASE_ENTERED 40023
|
||||
#define ORCA_TIMER 40024
|
||||
#define MISSION_FAIL 40025
|
||||
#define GUNBOAT_KILLED 40026
|
||||
#define CANNON_KILLED 40027
|
||||
|
||||
// Timer Enumerations
|
||||
#define INLET_REINFORCE 60000
|
||||
#define CLOUD_DELAY 60001
|
||||
|
||||
#endif // _MISSION3_H_
|
||||
60
Code/Scripts/Mission4.h
Normal file
60
Code/Scripts/Mission4.h
Normal file
@@ -0,0 +1,60 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission4.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 4 definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Rich_d $
|
||||
* $Revision: 2 $
|
||||
* $Modtime: 6/13/00 11:21a $
|
||||
* $Archive: /Commando/Code/Scripts/Mission4.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSION4_H_
|
||||
#define _MISSION4_H_
|
||||
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
|
||||
// Predefined Constants
|
||||
|
||||
// Public Variables
|
||||
|
||||
// Enumerations
|
||||
|
||||
// Timer Enumerations
|
||||
|
||||
typedef enum
|
||||
{
|
||||
M4TIMER_START = STIMER_MISSION4,
|
||||
} M4TIMER;
|
||||
|
||||
#endif // _MISSION4_H_
|
||||
98
Code/Scripts/Mission5.h
Normal file
98
Code/Scripts/Mission5.h
Normal file
@@ -0,0 +1,98 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission5.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 5 definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Darren_k $
|
||||
* $Revision: 49 $
|
||||
* $Modtime: 11/19/01 2:29p $
|
||||
* $Archive: /Commando/Code/Scripts/Mission5.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSION5_H_
|
||||
#define _MISSION5_H_
|
||||
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
|
||||
|
||||
#define M05_CUSTOM_ACTIVATE 5001
|
||||
#define M05_PARK_ENGINEER_KILLED 5003
|
||||
#define M05_STAR_INN 5004
|
||||
#define M05_REINFORCEMENT_KILLED 5005
|
||||
#define M05_TRIANGLE_REINFORCE 5006
|
||||
#define M05_TOWNSQUARE_REINFORCE 5007
|
||||
#define M05_FREE_OVERLOOK_CAPTIVES 5008
|
||||
#define M05_OVERLOOK_REINFORCE 5009
|
||||
#define M05_CACHE_REINFORCE 5010
|
||||
#define M05_FREE_DUMP_CAPTIVES 5011
|
||||
#define M05_DUMP_REINFORCE 5012
|
||||
#define M05_INN_REINFORCE 5013
|
||||
#define M05_INITIATE_CATHEDRAL 5014
|
||||
#define M05_CATHEDRAL_VEHICLE_KILLED 5015
|
||||
#define M05_CATHEDRAL_REINFORCE 5016
|
||||
#define M05_ROADBLOCK_REINFORCE 5017
|
||||
#define M05_PARK_UNIT_KILLED 5018
|
||||
#define M05_PARK_VEHICLE_KILLED 5019
|
||||
#define M05_BLOW_BUILDING 5020
|
||||
#define M05_CACHE_CIV_KILLED 5021
|
||||
#define M05_CIV_ARRIVED 5022
|
||||
#define M05_PROTECT_HAVOC 5023
|
||||
#define M05_MOVE_DEADEYE 5024
|
||||
#define M05_DESTROY_OBJECT 5025
|
||||
#define M05_DEADEYE_FREED 5026
|
||||
#define M05_HEAL_DEAD6 5027
|
||||
#define M05_RELOCATE 5028
|
||||
#define M05_SWAP_ARTILLERY 5029
|
||||
#define M05_CATHEDRAL_VEHICLE_CREATED 5030
|
||||
|
||||
// Predefined Constants
|
||||
|
||||
// Logical Sound Types
|
||||
#define M05_PARK_ALERT 15500
|
||||
#define M05_CATHEDRAL_FREE 15501
|
||||
|
||||
|
||||
// Public Variables
|
||||
|
||||
// Enumerations
|
||||
|
||||
// Timer Enumerations
|
||||
|
||||
#define M05_DEAD_HAVOC 100500
|
||||
|
||||
typedef enum
|
||||
{
|
||||
M5TIMER_START = STIMER_MISSION5,
|
||||
} M5TIMER;
|
||||
|
||||
#endif // _MISSION5_H_
|
||||
108
Code/Scripts/Mission6.h
Normal file
108
Code/Scripts/Mission6.h
Normal file
@@ -0,0 +1,108 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission6.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 6 definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Dave_s $
|
||||
* $Revision: 36 $
|
||||
* $Modtime: 12/20/01 1:38p $
|
||||
* $Archive: /Commando/Code/Scripts/Mission6.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSION6_H_
|
||||
#define _MISSION6_H_
|
||||
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
#define M06_OBJECTIVE_ACTIVATE 101
|
||||
|
||||
|
||||
// Predefined Constants
|
||||
|
||||
// Customs
|
||||
#define M06_SOUND_ALARM 6000
|
||||
#define M06_MENDOZA_ID 6001
|
||||
#define M06_WR_KCARD_ACQUIRED 6002
|
||||
#define M06_STOP_PICKUP 6003
|
||||
#define M06_CHECK_ALARM 6005
|
||||
#define M06_STAND_DOWN 6006
|
||||
#define M06_START_CONVERSATION 6007
|
||||
#define M06_FIX_ALARM 6008
|
||||
#define M06_DEAD_COURTYARD_EAGLE 6009
|
||||
#define M06_DEAD_HEDGEMAZE_EAGLE 6010
|
||||
#define M06_DEAD_BARRACKS_EAGLE 6011
|
||||
#define M06_DISABLE_ZONE 6012
|
||||
#define M06_DEAD_INTERIOR_PATROL 6013
|
||||
#define M06_ATTACK_HAVOC 6014
|
||||
#define M06_DEAD_HAVOC_ATTACKER 6015
|
||||
#define M06_YOU_ATTACK_HAVOC 6016
|
||||
#define M06_ALARMED 6017
|
||||
#define M06_NEXT_EVAC 6018
|
||||
#define M06_EVAC_ARRIVED 6019
|
||||
#define M06_TO_EVAC 6020
|
||||
#define M06_FLYOVER_COMPLETE 6021
|
||||
#define M06_CUSTOM_ACTIVATE 6023
|
||||
#define M06_ACTIVATE_FLYOVERS 6024
|
||||
#define M06_MOVE_SYDNEY 6025
|
||||
#define M06_CHATEAU_COLLAPSE 6026
|
||||
#define M06_RELOCATE 6027
|
||||
#define M06_MIDTRO_EXPLOSION 6028
|
||||
|
||||
|
||||
// Logical Sound Types
|
||||
#define M06_SOUND_ALARM_ON 16600
|
||||
#define M06_SOUND_ALARM_OFF 16601
|
||||
#define M06_DISABLE_TOWER_SPAWN 16602
|
||||
#define M06_DISABLE_COURTYARD_SPAWN 16603
|
||||
#define M06_DISABLE_HEDGEMAZE_SPAWN 16604
|
||||
#define M06_DISABLE_BARRACKS_SPAWN 16605
|
||||
#define M06_ATTACK_HAVOC_SOUND 16606
|
||||
#define M06_SOLDIER_TO_EVAC 16607
|
||||
#define M06_CHATEAU_DESTRUCTION 16608
|
||||
#define M06_CLEAR_FOR_MENDOZA 16609
|
||||
|
||||
// Timers
|
||||
#define M06_DEAD_HAVOC 100600
|
||||
|
||||
|
||||
// Public Variables
|
||||
|
||||
// Enumerations
|
||||
|
||||
// Timer Enumerations
|
||||
|
||||
typedef enum
|
||||
{
|
||||
M6TIMER_START = STIMER_MISSION6,
|
||||
} M6TIMER;
|
||||
|
||||
#endif // _MISSION6_H_
|
||||
119
Code/Scripts/Mission7.h
Normal file
119
Code/Scripts/Mission7.h
Normal file
@@ -0,0 +1,119 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission7.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 7 definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Dave_s $
|
||||
* $Revision: 17 $
|
||||
* $Modtime: 11/08/01 1:59p $
|
||||
* $Archive: /Commando/Code/Scripts/Mission7.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSION7_H_
|
||||
#define _MISSION7_H_
|
||||
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
// Customs
|
||||
#define M07_GO_EVAC_SITE 7000
|
||||
#define M07_NUKE_BLAST 7001
|
||||
#define M07_CUSTOM_ACTIVATE 7002
|
||||
#define M07_REINFORCEMENT_KILLED 7002
|
||||
#define M07_EVAC_SITE_VEHICLE_KILLED 7003
|
||||
#define M07_CAPTURE_SAM 7004
|
||||
#define M07_HOTWIRE_CAPTURE_SAMS 7005
|
||||
#define M07_CHANGE_SAM_TEAM 7006
|
||||
#define M07_SAM_CONVERTED 7007
|
||||
#define M07_SAM_KILLED 7008
|
||||
#define M07_TOWNSQUARE_CHINOOK 7009
|
||||
#define M07_RADAR_KILLED 7010
|
||||
#define M07_FREE_CIV 7011
|
||||
#define M07_PLAYER_VEHICLE_KILLED 7012
|
||||
#define M07_VEHICLE_DROP_ZONE 7013
|
||||
#define M07_ARTILLERY_KILLED 7014
|
||||
#define M07_PLAYERTYPE_CHANGE_OBELISK 7015
|
||||
#define M07_DEACTIVATE_ENCOUNTER 7016
|
||||
#define M07_REINFORCEMENT_UNIT_KILLED 7017
|
||||
#define M07_REINFORCEMENT_UNIT_CREATED 7018
|
||||
#define M07_ACTIVATE_ENCOUNTER 7019
|
||||
#define M07_WINDOW_ACTIVATE 7020
|
||||
#define M07_WINDOW_REINFORCEMENTS_KILLED 7021
|
||||
#define M07_V01_UNIT_KILLED 7022
|
||||
#define M07_DEACTIVATE_V01 7023
|
||||
#define M07_ACTIVATE_V01 7024
|
||||
#define M07_TRIANGLE_APC_KILLED 7025
|
||||
#define M07_TRIANGLE_UNIT_KILLED 7026
|
||||
#define M07_SPAWN_TRIANGLE_CIV 7027
|
||||
#define M07_PLAYER_VEHICLE_ID 7028
|
||||
#define M07_E10_TANK_CREATED 7029
|
||||
#define M07_PARADROP_UNIT_KILLED 7030
|
||||
#define M07_DEACTIVATE_PARADROP 7031
|
||||
#define M07_GO_ASSEMBLY 7032
|
||||
#define M07_MOVE_HOTWIRE 7033
|
||||
#define M07_V05_OFFICER_KILLED 7034
|
||||
#define M07_EVAC_INN 7035
|
||||
#define M07_INN_HELICOPTER_OUT 7036
|
||||
#define M07_INN_HELO_COLLISIONS 7037
|
||||
#define M07_DEAD6_EVAC 7038
|
||||
#define M07_MOVE_STEALTH_TANK 7039
|
||||
#define M07_SSM_DAMAGED 7040
|
||||
#define M07_SSM_FIXED 7041
|
||||
#define M07_DEACTIVATE_NUKE_BLAST 7042
|
||||
#define M07_SSM_CRATE_KILLED 7043
|
||||
#define M07_FREE_CIV_RESIST 7044
|
||||
#define M07_OBELISK_KILLED 7045
|
||||
|
||||
|
||||
// Logical Sound Types
|
||||
#define M07_NUKE_IMPACT 17000
|
||||
#define M07_RADAR_DAMAGED 17001
|
||||
#define M07_RADAR_FIXED 17002
|
||||
#define M07_EXPLODE_BARRELS 17003
|
||||
#define M07_ENGINEER_DAMAGED 17004
|
||||
#define M07_ENGINEER_FIXED 17005
|
||||
#define M07_RELOCATE_TRIANGLE_APACHE 17006
|
||||
|
||||
// Predefined Constants
|
||||
#define GUNNER (Commands->Find_Object(100661))
|
||||
#define PATCH (Commands->Find_Object(100659))
|
||||
#define DEADEYE (Commands->Find_Object(100660))
|
||||
#define SYDNEY (Commands->Find_Object(100662))
|
||||
#define HOTWIRE (Commands->Find_Object(100658))
|
||||
|
||||
|
||||
|
||||
typedef enum
|
||||
{
|
||||
M7TIMER_START = STIMER_MISSION7,
|
||||
} M7TIMER;
|
||||
|
||||
#endif // _MISSION7_H_
|
||||
129
Code/Scripts/Mission8.h
Normal file
129
Code/Scripts/Mission8.h
Normal file
@@ -0,0 +1,129 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission8.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 8 definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Dave_s $
|
||||
* $Revision: 17 $
|
||||
* $Modtime: 12/10/01 5:20p $
|
||||
* $Archive: /Commando/Code/Scripts/Mission8.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSION8_H_
|
||||
#define _MISSION8_H_
|
||||
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
|
||||
// Predefined Constants
|
||||
|
||||
// Public Variables
|
||||
|
||||
// Enumerations
|
||||
// Customs
|
||||
#define M08_ALARMED 8000
|
||||
#define M08_CHECK_ALARM 8001
|
||||
#define M08_SOUND_ALARM 8002
|
||||
#define M08_YOU_ATTACK_HAVOC 8003
|
||||
#define M08_DEAD_HAVOC_ATTACKER 8004
|
||||
#define M08_DONT_MOVE 8005
|
||||
#define M08_NOD_ATTACKEE_KILLED 8006
|
||||
#define M08_PRISONER_ATTACKER_KILLED 8007
|
||||
#define M08_GDI_FREE_PRISON_KILLED 8008
|
||||
#define M08_CUSTOM_ACTIVATE 8009
|
||||
#define M08_REINFORCEMENT_KILLED 8010
|
||||
#define M08_UNIT_ID 8011
|
||||
#define M08_ARCHAELOGICAL_KILLED 8012
|
||||
#define M08_PETRAA25_KILLED 8013
|
||||
|
||||
#define M08_DEACTIVATE_ENCOUNTER 8014
|
||||
#define M08_INNATE_ON 8015
|
||||
#define M08_BASKETBALL_GUN_EMP_KILLED 8016
|
||||
#define M08_PETRA_A_CREATED 8017
|
||||
#define M08_PETRA_A_KILLED 8018
|
||||
#define M08_PETRA_A_HELO_KILLED 8019
|
||||
#define M08_PETRA_A_ACTIVATE 8020
|
||||
#define M08_PETRA_A_DEACTIVATE 8021
|
||||
#define M08_PETRA_A_DEACTIVATE_LOGICAL 8022
|
||||
#define M08_PETRA_A_UNIT_STATUS 8023
|
||||
|
||||
#define M08_PETRA_B_CREATED 8024
|
||||
#define M08_PETRA_B_KILLED 8025
|
||||
#define M08_PETRA_B_HELO_KILLED 8026
|
||||
#define M08_PETRA_B_ACTIVATE 8027
|
||||
#define M08_PETRA_B_DEACTIVATE 8028
|
||||
#define M08_PETRA_B_DEACTIVATE_LOGICAL 8029
|
||||
#define M08_PETRA_B_UNIT_STATUS 8030
|
||||
|
||||
#define M08_PETRA_C_CREATED 8031
|
||||
#define M08_PETRA_C_KILLED 8032
|
||||
#define M08_PETRA_C_HELO_KILLED 8033
|
||||
#define M08_PETRA_C_ACTIVATE 8034
|
||||
#define M08_PETRA_C_DEACTIVATE 8035
|
||||
#define M08_PETRA_C_DEACTIVATE_LOGICAL 8036
|
||||
#define M08_PETRA_C_UNIT_STATUS 8037
|
||||
|
||||
#define M08_SCIENTIST_KILLED 8038
|
||||
#define M08_REINFORCEMENTS 8039
|
||||
#define M08_CAVERN_ENTRANCE_TRUCK 8040
|
||||
#define M08_PATROL_KILLED 8041
|
||||
#define M08_FREE_PRISONER 8042
|
||||
#define M08_SAKURA_ID 8043
|
||||
#define M08_MOVE_SAKURA 8044
|
||||
#define M08_PLAYER_VEHICLE_ID 8045
|
||||
#define M08_MOBILE_APACHE_FLEE 8046
|
||||
#define M08_RELOCATE 8047
|
||||
#define M08_STAR_IMMORTAL 8048
|
||||
|
||||
|
||||
// Logical Sound Types
|
||||
#define M08_SOUND_ALARM_ON 18000
|
||||
#define M08_SOUND_ALARM_OFF 18001
|
||||
#define M08_ATTACK_HAVOC_SOUND 18002
|
||||
#define M08_ATTACK_HAVOC 18003
|
||||
#define M08_FIX_ALARM 18004
|
||||
#define M08_HELIPAD_DESTROYED 18006
|
||||
|
||||
#define M08_PETRA_A_LOGICAL 18007
|
||||
#define M08_PETRA_B_LOGICAL 18008
|
||||
#define M08_PETRA_C_LOGICAL 18009
|
||||
|
||||
|
||||
// Timer Enumerations
|
||||
#define M08_DEAD_HAVOC 28001
|
||||
|
||||
typedef enum
|
||||
{
|
||||
M8TIMER_START = STIMER_MISSION8,
|
||||
} M8TIMER;
|
||||
|
||||
#endif // _MISSION8_H_
|
||||
146
Code/Scripts/Mission9.h
Normal file
146
Code/Scripts/Mission9.h
Normal file
@@ -0,0 +1,146 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission9.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 9 definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Dan_e $
|
||||
* $Revision: 57 $
|
||||
* $Modtime: 1/02/02 10:11a $
|
||||
* $Archive: /Commando/Code/Scripts/Mission9.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSION9_H_
|
||||
#define _MISSION9_H_
|
||||
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
#define check 10000
|
||||
|
||||
|
||||
// Predefined Constants
|
||||
|
||||
// Public Variables
|
||||
|
||||
// Enumerations
|
||||
|
||||
#define RUN_TO_TANK 40000
|
||||
#define ATTACK 40001
|
||||
#define CHANGE_ATTACK 40002
|
||||
#define CHARGE_COMPLETE 40003
|
||||
#define ACTIVATE 40004
|
||||
#define COUNTER 40005
|
||||
#define CONVERSATION 40006
|
||||
#define TRIGGERED 40007
|
||||
#define CHANGE_PLAYERTYPE 40008
|
||||
#define MUTANT 40009
|
||||
#define ENTERED 40010
|
||||
#define DEACTIVATE 40011
|
||||
#define SPAWN_LOC 40012
|
||||
#define INCREMENT 40013
|
||||
#define KEY_COUNTER 40014
|
||||
#define CHECK 40015
|
||||
#define COUNT 40016
|
||||
#define VERIFY 40017
|
||||
#define GO 40018
|
||||
#define STOP 40019
|
||||
#define WAYPATH 40020
|
||||
#define LOCKBOX 40021
|
||||
#define FOLLOW 40022
|
||||
#define SET_STAR 40023
|
||||
#define SET_MOBIUS 40024
|
||||
#define ENTER 40025
|
||||
#define EXIT 40026
|
||||
#define CHECK_STAR 40027
|
||||
#define CHECK_MOBIUS 40028
|
||||
#define ELEVATOR 40029
|
||||
#define START 40030
|
||||
#define ANIMATION 40031
|
||||
#define RUN_TO_TARGET 40032
|
||||
#define RUN_TO_STAR 40033
|
||||
#define ANIMATION_STAR 40034
|
||||
#define ATTACK_STAR 40035
|
||||
#define MUTANT_ATTACKER 40036
|
||||
#define MUTANT_ATTACKEE 40037
|
||||
#define ATTACKEE_CHECK 40038
|
||||
#define ATTACKER_CHECK 40039
|
||||
#define ELEV_WAYPOINT 40040
|
||||
#define ELEVATOR_DOWN 40041
|
||||
#define ELEV_WAYPOINT2 40042
|
||||
#define ACTIVATEDOWN 40043
|
||||
#define STAR_STATUS 40044
|
||||
#define DEAD_MUTANT 40045
|
||||
#define MOBIUS_GOTO 40046
|
||||
#define GOAL 40047
|
||||
#define DECREMENT 40048
|
||||
#define ENDED 40049
|
||||
#define FLYOVER 40050
|
||||
#define COLLISION 40051
|
||||
#define RESEND_GOTO 40052
|
||||
#define GOTO 40053
|
||||
#define RESET 40054
|
||||
#define MUTANT_GOTO 40055
|
||||
#define DOING_ANIMATION 40056
|
||||
#define M09_INNATE_ENABLE 40057
|
||||
#define ATTACKING 40058
|
||||
#define AMB_SOUND 40059
|
||||
#define NEW_KLAXON 40060
|
||||
#define AMB_EXPLOSION 40061
|
||||
#define ANIM_DELAY 40062
|
||||
#define INITIATION 40063
|
||||
#define CLARK_KENT 40064
|
||||
#define M09_CHECK_IN 40065
|
||||
#define INNATE_RECYCLE 40066
|
||||
#define BAD_PATH 40067
|
||||
#define DIST_CHECK 40068
|
||||
#define ALREADY_ENTERED 40069
|
||||
#define TIMER_RESET 40070
|
||||
#define ELEVATOR_EXIT 40071
|
||||
#define TOO_FAR 40072
|
||||
#define NO_FOLLOW 40073
|
||||
#define ON 40074
|
||||
#define OFF 40075
|
||||
#define MOBIUS_KILLED 40076
|
||||
#define BLOCK_ON 40077
|
||||
#define BLOCK_OFF 40078
|
||||
#define SUIT_ANIMATION 40079
|
||||
|
||||
// Timer Enumerations
|
||||
#define CHECK_DISTANCE 1000
|
||||
#define M09_DEAD_HAVOC 1001
|
||||
#define M09_MISSION_COMPLETE 1002
|
||||
|
||||
typedef enum
|
||||
{
|
||||
M9TIMER_START = STIMER_MISSION9,
|
||||
} M9TIMER;
|
||||
|
||||
#endif // _MISSION9_H_
|
||||
1855
Code/Scripts/MissionDemo.cpp
Normal file
1855
Code/Scripts/MissionDemo.cpp
Normal file
File diff suppressed because it is too large
Load Diff
59
Code/Scripts/MissionS04.cpp
Normal file
59
Code/Scripts/MissionS04.cpp
Normal file
@@ -0,0 +1,59 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* Mission3.cpp
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission 3 script
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Dan_e $
|
||||
* $Revision: 1 $
|
||||
* $Modtime: 5/02/02 4:31p $
|
||||
* $Archive: /Commando/Code/Scripts/MissionS04.cpp $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#include "scripts.h"
|
||||
#include "toolkit.h"
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#include "Mission3.h"
|
||||
|
||||
#ifdef _XBOX
|
||||
#include "wwhack.h"
|
||||
|
||||
#endif
|
||||
|
||||
DECLARE_SCRIPT(MS04_Gunboat_Waypath_Movement, "")
|
||||
{
|
||||
void Created( GameObject * obj )
|
||||
{
|
||||
ActionParamsStruct params;
|
||||
params.Set_Basic( this, 45, 999 );
|
||||
params.Set_Movement( Vector3(0,0,0), 1.0f, 3.0f );
|
||||
params.WaypathID = 100033;
|
||||
Commands->Action_Goto( obj, params );
|
||||
}
|
||||
}
|
||||
3346
Code/Scripts/MissionX0.cpp
Normal file
3346
Code/Scripts/MissionX0.cpp
Normal file
File diff suppressed because it is too large
Load Diff
395
Code/Scripts/MissionX0.h
Normal file
395
Code/Scripts/MissionX0.h
Normal file
@@ -0,0 +1,395 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* MissionX0.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Mission X0 definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Rich_d $
|
||||
* $Revision: 106 $
|
||||
* $Modtime: 12/17/01 1:12p $
|
||||
* $Archive: /Commando/Code/Scripts/MissionX0.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _MISSIONX0_H_
|
||||
#define _MISSIONX0_H_
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
|
||||
// Predefined Constants
|
||||
|
||||
// Public Variables
|
||||
|
||||
// Enumerations
|
||||
|
||||
#define LEAD 100
|
||||
#define ENGINEER_GOTO 101
|
||||
#define COUNTER 102
|
||||
#define SET_ENGINEER 103
|
||||
#define CHECK_ENGINEER 104
|
||||
#define RETURN_ENGINEER1 105
|
||||
#define RETURN_ENGINEER2 106
|
||||
#define AMB_SOUND 107
|
||||
#define COUNT_UP 108
|
||||
#define SNIPE 108
|
||||
#define TROOP_DROP 109
|
||||
#define SEND_EM 110
|
||||
#define KILL_SNIPER 111
|
||||
#define KILL 112
|
||||
#define DOING_ANIMATION 113
|
||||
#define START_SNIPER 114
|
||||
#define RUNNING_CONV 115
|
||||
#define RESEND_GOTO 116
|
||||
#define EQUIP 117
|
||||
#define F1_HELP 118
|
||||
#define INITIAL_CONV 119
|
||||
#define PROMPT_LOOP 120
|
||||
#define STATIONARY 121
|
||||
#define POINT_ANIM 122
|
||||
#define WAVE_ANIM 123
|
||||
#define SNIPER_REMINDER 124
|
||||
#define SNIPER_ANIM 125
|
||||
#define FIRE_HELP 126
|
||||
#define MOUSE_HELP 127
|
||||
#define WSAD_HELP 128
|
||||
#define INITIAL_EQUIP 129
|
||||
#define ENGINEER_RETURN 130
|
||||
#define RUN_AWAY 131
|
||||
#define ENGINEER_CROUCH 132
|
||||
#define SNIPER_CREATE 133
|
||||
#define SNIPER_EXCHANGE 134
|
||||
#define HIT_ANIMATION 135
|
||||
#define CROUCH_WANDER 136
|
||||
#define CROUCH_GOTO 137
|
||||
#define SNIPER1KILLED 138
|
||||
#define SNIPE_CONV 139
|
||||
#define SNIPE_CONV2 140
|
||||
#define SNIPE_CONV_DONE 141
|
||||
#define STAY_HERE 142
|
||||
|
||||
// Rich's Elements
|
||||
|
||||
#define MX0_A02_CONTROLLER_ID 1100000
|
||||
#define MX0_A01_CONTROLLER_ID 1200001
|
||||
|
||||
#define MX0_A02_SPAWNER_01 1100026
|
||||
#define MX0_A02_SPAWNER_02 1100027
|
||||
#define MX0_A02_SPAWNER_03 1100028
|
||||
|
||||
#define MX0_A02_WAYPATH_01 1100029
|
||||
#define MX0_A02_WAYPATH_02 1100034
|
||||
|
||||
#define MX0_A02_MOVE_OBJ_01 1100006
|
||||
#define MX0_A02_MOVE_OBJ_02 1100007
|
||||
#define MX0_A02_MOVE_OBJ_03 1100010
|
||||
#define MX0_A02_MOVE_OBJ_04 1100011
|
||||
#define MX0_A02_MOVE_OBJ_05 1100008
|
||||
#define MX0_A02_MOVE_OBJ_06 1100009
|
||||
#define MX0_A02_MOVE_OBJ_07 1100012
|
||||
#define MX0_A02_MOVE_OBJ_08 1100013
|
||||
#define MX0_A02_MOVE_OBJ_09 1100014
|
||||
#define MX0_A02_MOVE_OBJ_10 1100015
|
||||
#define MX0_A02_MOVE_OBJ_11 1100016
|
||||
#define MX0_A02_MOVE_OBJ_12 1100017
|
||||
#define MX0_A02_MOVE_OBJ_13 1100018
|
||||
#define MX0_A02_MOVE_OBJ_14 1100019
|
||||
#define MX0_A02_MOVE_OBJ_15 1100020
|
||||
#define MX0_A02_MOVE_OBJ_16 1100021
|
||||
#define MX0_A02_MOVE_OBJ_SNIPER_01 1100023
|
||||
#define MX0_A02_MOVE_OBJ_SNIPER_02 1100024
|
||||
|
||||
#define MX0_A02_ACTOR_HEADCOUNT 9
|
||||
#define MX0_A02_ACTOR_NOD_START 5
|
||||
|
||||
#define MX0_A02_PLAYER_RETREAT_DISTANCE 30
|
||||
|
||||
#define MX0_A02_PRE_AMBIENT_MAX 11
|
||||
|
||||
#define MX0_A02_TIMERLENGTH_BASIC_MOVE 4
|
||||
|
||||
#define MX0_A02_APPROACH_DISTANCE 50
|
||||
|
||||
#define MX0_A02_PRIORITY_ENEMY_SEEN_SHOOT 80
|
||||
#define MX0_A02_PRIORITY_DEFAULT_SHOOT 90
|
||||
#define MX0_A02_PRIORITY_DEFAULT_MOVE 95
|
||||
#define MX0_A02_PRIORITY_FORCED_ACTION 100
|
||||
|
||||
// Darren's Stuff
|
||||
#define MX0_A03_CONTROLLER_ID 1400041 // section 3 controler
|
||||
#define MX0_A03_TROOPER_ONE_ID 1400141 // test trooper1 id.
|
||||
#define MX0_A03_NOD_BUGGIE_ID 1400081
|
||||
#define MX0_A03_NOD_HARVESTER_ID 1400001
|
||||
#define MX0_A03_DROP_TROOP_ONE_LOC_ID 1400138
|
||||
#define MX0_A03_DROP_TROOP_TWO_LOC_ID 1400139
|
||||
#define MX0_A03_DROP_TROOP_THREE_LOC_ID 1400140
|
||||
#define MX0_A03_NOD_MINIGUNNER_ONE 1400110
|
||||
#define MX0_A03_NOD_MINIGUNNER_TWO 1400109
|
||||
#define MX0_A03_GDI_HAVOC_TANK_ID 1400080 // test havoc tank id.
|
||||
#define MX0_A03_NOD_TURRET_ONE 1400144
|
||||
#define MX0_A03_NOD_TURRET_TWO 1400146
|
||||
#define MX0_A03_NOD_PLACED_MINIGUNNER_ONE_ID 1400150
|
||||
#define MX0_A03_NOD_PLACED_MINIGUNNER_TWO_ID 1400149
|
||||
|
||||
#define MX0_A03_CUSTOM_TYPE_START_ZONE 401
|
||||
#define MX0_A03_CUSTOM_TYPE_NOD_BUGGIE 402
|
||||
#define MX0_A03_CUSTOM_NOD_TURRET_CREATED 403
|
||||
#define MX0_A03_CUSTOM_NOD_TURRET_DESTROYED 404
|
||||
#define MX0_A03_CUSTOM_TYPE_END_ZONE 405
|
||||
#define MX0_A03_CUSTOM_NOD_LEDGE_CREATED 406
|
||||
#define MX0_A03_CUSTOM_NOD_LEDGE_KILLED 407
|
||||
#define MX0_A03_CUSTOM_HARVESTER_DEAD 408
|
||||
#define MX0_A03_CUSTOM_NOD_INFANTRY_DEAD 409
|
||||
#define MX0_A03_CUSTOM_GET_TARGET 410
|
||||
#define MX0_A03_CUSTOM_SEND_TARGET 411
|
||||
#define MX0_A03_CUSTOM_NO_TARGET 412
|
||||
#define MX0_A03_CUSTOM_NOD_HARVESTER_DMG_SELF 413
|
||||
#define MX0_A03_CUSTOM_LOCK_END_ZONE 414
|
||||
#define MX0_A03_CUSTOM_BUGGIE_DEAD 415
|
||||
#define MX0_A03_CUSTOM_IS_ZONE_FINISHED 416
|
||||
#define MX0_A03_CUSTOM_NOD_PLACED_MINIGUNNER_INNATE_ENABLE 417
|
||||
|
||||
#define MX0_A03_HUMVEE_DROP_ID 1400042 // humvee drop off location
|
||||
#define MX0_A03_GDI_TROOP_DROP_ID 1400053 // GDI infantry drop off location
|
||||
#define MX0_A03_GDI_TANK_DROP_ID 1400057 // GDI Medium Tank drop off location
|
||||
#define MX0_A03_GDI_ORCA_STRIKE_ID 1400131 // Orca strike location
|
||||
#define MX0_A03_NOD_LEDGE_DROP_LOC_ID 1400152
|
||||
#define MX0_A03_NOD_LEDGE_LEFT_LOC_ID 1400153
|
||||
#define MX0_A03_NOD_LEDGE_RIGHT_LOC_ID 1400155
|
||||
#define MX0_A03_END_ZONE_ID 1400069
|
||||
|
||||
#define MX0_A03_WAYPATH_TANK_ID 1400058 // Medium Tank section 3 waypath
|
||||
#define MX0_A03_WAYPATH_HUMVEE_TO_A04_ID 1400070 // humvee to section 4 waypath
|
||||
#define MX0_A03_WAYPATH_NOD_BUGGIE_ID 1400096 // NOD buggie waypath ID.
|
||||
#define MX0_A03_WAYPATH_HUMVEE_ID 1400043 // humvee secton 3 waypath
|
||||
#define MX0_A03_WAYPATH_NOD_HARVESTER_ID 1400093 // NOD Harvester waypath ID.
|
||||
#define MX0_A03_WAYPATH_GDI_TROOPER_ONE_A_ID 1400117
|
||||
#define MX0_A03_WAYPATH_GDI_TROOPER_ONE_B_ID 1400124
|
||||
#define MX0_A03_WAYPATH_GDI_TROOPER_ONE_C_ID 1400132
|
||||
|
||||
enum
|
||||
{
|
||||
MX0_A02_TIMER_DEFAULT = 201,
|
||||
MX0_A02_TIMER_BASIC_MOVE_01,
|
||||
MX0_A02_TIMER_BASIC_MOVE_02,
|
||||
MX0_A02_TIMER_PRE_AMBIENT,
|
||||
MX0_A02_TIMER_SOLDIER_01_START,
|
||||
MX0_A02_TIMER_SOLDIER_02_START,
|
||||
MX0_A02_TIMER_PLAYER_RETREAT,
|
||||
MX0_A02_TIMER_PREVENT_SPAWNS,
|
||||
MX0_A02_TIMER_AFTER_HELI_01,
|
||||
MX0_A02_TIMER_DESTROY_FLAME,
|
||||
MX0_A02_TIMER_DESTROY_HELI_02,
|
||||
MX0_A02_TIMER_NOD_RETREAT,
|
||||
MX0_A02_TIMER_RETREAT_DONE,
|
||||
MX0_A02_TIMER_DESTROY_MINIGUNNER,
|
||||
MX0_A02_TIMER_ENGINEER_FIX_TANK,
|
||||
MX0_A02_TIMER_WAITFOR_MOVETOTANK,
|
||||
MX0_A02_TIMER_WAITFOR_MOVETORUBBLE,
|
||||
MX0_A02_TIMER_EAGLE_BASE,
|
||||
MX0_A02_TIMER_ENTER_TANK,
|
||||
MX0_A02_TIMER_RANDOM_EXPLOSIONS,
|
||||
MX0_A02_TIMER_DESTROY_RUBBLE,
|
||||
MX0_A02_TIMER_WRONG_WAY
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
MX0_A02_ACTION_DEFAULT = 201,
|
||||
MX0_A02_ACTION_ROCKET_SNIPER_MOVE,
|
||||
MX0_A02_ACTION_ROCKET_SNIPER_MOVE_02,
|
||||
MX0_A02_ACTION_ROCKET_SNIPER_SHOOT,
|
||||
MX0_A02_ACTION_ROCKET_SNIPER_SHOOT_02,
|
||||
MX0_A02_ACTION_BASIC_MOVE_01,
|
||||
MX0_A02_ACTION_BASIC_MOVE_02,
|
||||
MX0_A02_ACTION_APPROACH_HAVOC_01,
|
||||
MX0_A02_ACTION_NODFALL01_MOVE,
|
||||
MX0_A02_ACTION_GDI_SHOOTS_NOD_01,
|
||||
MX0_A02_ACTION_NODFALL02_MOVE,
|
||||
MX0_A02_ACTION_GDI_SHOOTS_NOD_02,
|
||||
MX0_A02_ACTION_NOD_MOVETO_APC,
|
||||
MX0_A02_ACTION_NOD_SHOOT_APC,
|
||||
MX0_A02_ACTION_NOD_DONEWITH_APC,
|
||||
MX0_A02_ACTION_NOD_HELI_01_MOVE,
|
||||
MX0_A02_ACTION_NOD_HELI_02_MOVE,
|
||||
MX0_A02_ACTION_RETREAT_MOVE,
|
||||
MX0_A02_ACTION_ENGINEER_01_MEDTANK,
|
||||
MX0_A02_ACTION_ENGINEER_02_RUBBLE,
|
||||
MX0_A02_ACTION_ENGINEER_RETREAT
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
MX0_A02_SPEECH_DEFAULT = 201,
|
||||
MX0_A02_SPEECH_GDI_01_STARTUP,
|
||||
MX0_A02_SPEECH_GDI_02_STARTUP,
|
||||
MX0_A02_SPEECH_GDI_01_STARTUP_02,
|
||||
MX0_A02_SPEECH_GDI_02_BECKON,
|
||||
MX0_A02_SPEECH_GDI_03_STARTUP,
|
||||
MX0_A02_SPEECH_GDI_SOLDIER_CONGRATS_01,
|
||||
MX0_A02_SPEECH_GDI_SOLDIER_CONGRATS_02,
|
||||
MX0_A02_SPEECH_GDI_SOLDIER_CONGRATS_03,
|
||||
MX0_A02_SPEECH_GDI_SOLDIER_CONGRATS_04,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_CONGRATS_01,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_CONGRATS_02,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_CONGRATS_03,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_CONGRATS_04,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_CONGRATS_05,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_CONGRATS_06,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_CONGRATS_07,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_CONGRATS_08,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_CONGRATS_09,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_CONGRATS_10,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_RETREAT_01,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_RETREAT_02,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_RETREAT_03,
|
||||
MX0_A02_SPEECH_GDI_PLAYER_RETREAT_04,
|
||||
MX0_A02_SPEECH_GDI_NOTICES_NOD_01,
|
||||
MX0_A02_SPEECH_GDI_RESPONDS_01,
|
||||
MX0_A02_SPEECH_GDI_SPOTS_HELI_DESTROY,
|
||||
MX0_A02_SPEECH_GDI_SPOTS_HELI_01,
|
||||
MX0_A02_SPEECH_GDI_SPOTS_HELI_02,
|
||||
MX0_A02_SPEECH_GDI_NOTICES_FLAME,
|
||||
MX0_A02_SPEECH_GDI_NOTICES_FLAME_DEAD,
|
||||
MX0_A02_SPEECH_NOD_HELI_DESTROYED_01,
|
||||
MX0_A02_SPEECH_NOD_HELI_DESTROYED_02,
|
||||
MX0_A02_SPEECH_ENDING_01,
|
||||
MX0_A02_SPEECH_ENDING_02,
|
||||
MX0_A02_SPEECH_ENDING_03,
|
||||
MX0_A02_SPEECH_ENDING_04,
|
||||
MX0_A02_SPEECH_ENDING_05,
|
||||
MX0_A02_SPEECH_ENGINEER_TANK_01,
|
||||
MX0_A02_SPEECH_ENGINEER_DONE,
|
||||
MX0_A02_SPEECH_UNSTOPPABLE,
|
||||
MX0_A02_SPEECH_TANKSAY_01,
|
||||
MX0_A02_SPEECH_TANKSAY_02,
|
||||
MX0_A02_SPEECH_TANKSAY_03,
|
||||
MX0_A02_SPEECH_TANKSAY_04,
|
||||
MX0_A02_SPEECH_APC_DOWN,
|
||||
MX0_A02_SPEECH_WRONGWAY_01,
|
||||
MX0_A02_SPEECH_WRONGWAY_02,
|
||||
MX0_A02_SPEECH_WRONGWAY_03
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
MX0_A02_CUSTOM_TYPE_DEFAULT = 201,
|
||||
MX0_A02_CUSTOM_TYPE_MAIN_STARTUP,
|
||||
MX0_A02_CUSTOM_TYPE_MAIN_ENDING,
|
||||
MX0_A02_CUSTOM_TYPE_REGISTER_ACTOR_ID,
|
||||
MX0_A02_CUSTOM_TYPE_DAMAGE_ON,
|
||||
MX0_A02_CUSTOM_TYPE_DAMAGE_OFF,
|
||||
MX0_A02_CUSTOM_TYPE_DEFAULT_STATE_ON,
|
||||
MX0_A02_CUSTOM_TYPE_DEFAULT_STATE_OFF,
|
||||
MX0_A02_CUSTOM_TYPE_REQUEST_TARGET,
|
||||
MX0_A02_CUSTOM_TYPE_DESTROY_APC,
|
||||
MX0_A02_CUSTOM_TYPE_PRE_AMBIENT,
|
||||
MX0_A02_CUSTOM_TYPE_PRE_AMBIENT_OFF,
|
||||
MX0_A02_CUSTOM_KILL_SNIPER_01,
|
||||
MX0_A02_CUSTOM_KILL_SNIPER_02,
|
||||
|
||||
//DAY - Added these two to fix scripts.
|
||||
MX0_A02_CUSTOM_TYPE_STARTUP,
|
||||
MX0_A02_CUSTOM_TYPE_ROCKET_SNIPER,
|
||||
MX0_A02_CUSTOM_TYPE_START_GDI_01,
|
||||
MX0_A02_CUSTOM_TYPE_START_GDI_02,
|
||||
MX0_A02_CUSTOM_TYPE_START_GDI_03,
|
||||
MX0_A02_CUSTOM_TYPE_START_GDI_04,
|
||||
MX0_A02_CUSTOM_TYPE_START_GDI_05,
|
||||
MX0_A02_CUSTOM_TYPE_CONTINUE,
|
||||
MX0_A02_CUSTOM_TYPE_GET_SNIPER_01_ID,
|
||||
MX0_A02_CUSTOM_TYPE_GET_SNIPER_02_ID,
|
||||
MX0_A02_CUSTOM_TYPE_HANDOFF_SNIPER_01_ID,
|
||||
MX0_A02_CUSTOM_TYPE_HANDOFF_SNIPER_02_ID,
|
||||
MX0_A02_CUSTOM_TYPE_PLAYER_KILLED_NOD,
|
||||
MX0_A02_CUSTOM_TYPE_SOLDIER_KILLED_NOD,
|
||||
MX0_A02_CUSTOM_TYPE_PLAYER_CONGRATS,
|
||||
MX0_A02_CUSTOM_TYPE_SOLDIER_CONGRATS,
|
||||
MX0_A02_CUSTOM_TYPE_PLAYER_RETREAT,
|
||||
MX0_A02_CUSTOM_TYPE_NOD_SOLDIER_KILLED,
|
||||
MX0_A02_CUSTOM_TYPE_GDI_NOTICES_NOD_01,
|
||||
MX0_A02_CUSTOM_TYPE_GDI_SHOOTS_NOD_01,
|
||||
MX0_A02_CUSTOM_TYPE_NEXT_SEQUENCE,
|
||||
MX0_A02_CUSTOM_TYPE_GDI_RESPONDS_01,
|
||||
MX0_A02_CUSTOM_TYPE_GDI_SHOOTS_NOD_02,
|
||||
MX0_A02_CUSTOM_TYPE_APC_DESTROY,
|
||||
MX0_A02_CUSTOM_TYPE_APC_BLOWITUP,
|
||||
MX0_A02_CUSTOM_TYPE_GET_APC_ID,
|
||||
MX0_A02_CUSTOM_TYPE_HELI_DESTROYED,
|
||||
MX0_A02_CUSTOM_TYPE_GDI_NOTICES_HELI_01,
|
||||
MX0_A02_CUSTOM_TYPE_GDI_NOTICES_HELI_02,
|
||||
MX0_A02_CUSTOM_TYPE_GDI_NOTICES_FLAME,
|
||||
MX0_A02_CUSTOM_TYPE_GDI_NOTICES_FLAME_DEAD,
|
||||
MX0_A02_CUSTOM_TYPE_HELI_DESTROYED_02,
|
||||
MX0_A02_CUSTOM_TYPE_RETREAT_SEQUENCE,
|
||||
MX0_A02_CUSTOM_TYPE_RETREAT_DONE,
|
||||
MX0_A02_CUSTOM_TYPE_ENDING_01,
|
||||
MX0_A02_CUSTOM_TYPE_ENDING_02,
|
||||
MX0_A02_CUSTOM_TYPE_ENDING_03,
|
||||
MX0_A02_CUSTOM_TYPE_ENDING_04,
|
||||
MX0_A02_CUSTOM_TYPE_ENDING_05,
|
||||
MX0_A02_CUSTOM_TYPE_ENDING_06,
|
||||
MX0_A02_CUSTOM_TYPE_ENGINEER_MOVETOTANK,
|
||||
MX0_A02_CUSTOM_TYPE_ENGINEER_DONE,
|
||||
MX0_A02_CUSTOM_TYPE_SAY_TANK,
|
||||
MX0_A02_CUSTOM_TYPE_ENGINEER_02_REGISTER,
|
||||
MX0_A02_CUSTOM_TYPE_TANKSAY_01,
|
||||
MX0_A02_CUSTOM_TYPE_TANKSAY_02,
|
||||
MX0_A02_CUSTOM_TYPE_TANKSAY_03,
|
||||
MX0_A02_CUSTOM_TYPE_ENTERED_TANK,
|
||||
MX0_A02_CUSTOM_TYPE_SAY_FIREHOLE,
|
||||
MX0_A02_CUSTOM_TYPE_EXPLODE,
|
||||
MX0_A02_CUSTOM_TYPE_FOLLOW_HAVOC,
|
||||
MX0_A02_CUSTOM_TYPE_A02_DONE,
|
||||
MX0_A02_CUSTOM_TYPE_SAY_APC_DOWN,
|
||||
MX0_A02_CUSTOM_TYPE_SHOOT_HELI_02,
|
||||
MX0_A02_CUSTOM_TYPE_SAY_WRONG_WAY
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
MX0_A02_CUSTOM_PARAM_DEFAULT
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
MX0_A02_ID_DEFAULT,
|
||||
MX0_A02_ID_TROOPER_01,
|
||||
MX0_A02_ID_TROOPER_02,
|
||||
MX0_A02_ID_TROOPER_03,
|
||||
MX0_A02_ID_TROOPER_04,
|
||||
MX0_A02_ID_NOD_UNIT_01,
|
||||
MX0_A02_ID_NOD_UNIT_02,
|
||||
MX0_A02_ID_NOD_UNIT_03,
|
||||
MX0_A02_ID_NOD_UNIT_04
|
||||
};
|
||||
|
||||
#endif // _MISSION4_H_
|
||||
|
||||
|
||||
4694
Code/Scripts/PRDemo.cpp
Normal file
4694
Code/Scripts/PRDemo.cpp
Normal file
File diff suppressed because it is too large
Load Diff
255
Code/Scripts/PRDemo.h
Normal file
255
Code/Scripts/PRDemo.h
Normal file
@@ -0,0 +1,255 @@
|
||||
/*
|
||||
** Command & Conquer Renegade(tm)
|
||||
** Copyright 2025 Electronic Arts Inc.
|
||||
**
|
||||
** This program is free software: you can redistribute it and/or modify
|
||||
** it under the terms of the GNU General Public License as published by
|
||||
** the Free Software Foundation, either version 3 of the License, or
|
||||
** (at your option) any later version.
|
||||
**
|
||||
** This program is distributed in the hope that it will be useful,
|
||||
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
** GNU General Public License for more details.
|
||||
**
|
||||
** You should have received a copy of the GNU General Public License
|
||||
** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* FILE
|
||||
* PRDemo.h
|
||||
*
|
||||
* DESCRIPTION
|
||||
* PR Demo level definitions
|
||||
*
|
||||
* PROGRAMMER
|
||||
* Design Team
|
||||
*
|
||||
* VERSION INFO
|
||||
* $Author: Rich_d $
|
||||
* $Revision: 15 $
|
||||
* $Modtime: 6/13/00 11:29a $
|
||||
* $Archive: /Commando/Code/Scripts/PRDemo.h $
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef _PRDEMO_H_
|
||||
#define _PRDEMO_H_
|
||||
|
||||
|
||||
// Defines and Includes
|
||||
|
||||
#include "toolkit.h"
|
||||
|
||||
|
||||
// Custom Types
|
||||
|
||||
typedef enum
|
||||
{
|
||||
MPR_CUSTOM_START_DEL = SCMD_PRDEMO,
|
||||
MPR_CUSTOM_EXPLODE_BRIDGE_DEL,
|
||||
MPR_CUSTOM_FOLLOW_ME_DEL,
|
||||
MPR_CUSTOM_I_AM_DEAD_DEL,
|
||||
MPR_CUSTOM_ESCORT_ATTACKED_DEL,
|
||||
MPR_CUSTOM_EVAC_CALL_DEL,
|
||||
MPR_CUSTOM_APACHE_GOTO_POSITION_DEL,
|
||||
MPR_CUSTOM_APACHE_SHOOT_DEL,
|
||||
MPR_A01_CUSTOM_ORCA_TURRETSTRIKE_RAD,
|
||||
MPR_A04_CUSTOM_OBELISK_FIRING_RAD,
|
||||
MPR_A05_CUSTOM_TEMPLE_ZONE_ENTERED_RAD,
|
||||
MPR_A05_CUSTOM_MAMMOTH_RAD,
|
||||
MPR_A02_CUSTOM_DRILL_INSTRUCTOR_JDG,
|
||||
MPR_A02_CUSTOM_CADET_1_JDG,
|
||||
MPR_A02_CUSTOM_CADET_2_JDG,
|
||||
MPR_A02_CUSTOM_CADET_3_JDG,
|
||||
MPR_A02_CUSTOM_DRIVEBY_HARVESTER_JDG,
|
||||
} PRCMD_EVENTS;
|
||||
|
||||
|
||||
// Custom Parameters
|
||||
|
||||
typedef enum
|
||||
{
|
||||
MPR_A02_PARAM_CADETS_TEN_HUT_JDG = 0,
|
||||
MPR_A02_PARAM_CADETS_AT_ATTENTION_JDG,
|
||||
MPR_A02_PARAM_CADETS_MADE_MISTAKE_JDG,
|
||||
MPR_A02_PARAM_CADETS_GOTO_INNATE_JDG,
|
||||
MPR_A00_PARAM_HAVOC_IN_ENTER_ZONE_JDG,
|
||||
} PRCMD_PARAMS;
|
||||
|
||||
|
||||
// Timers
|
||||
|
||||
typedef enum
|
||||
{
|
||||
MPR_TIMER_START_DEL = STIMER_PRDEMO,
|
||||
MPR_TIMER_HARVESTER_DONE_DEL,
|
||||
MPR_TIMER_HARVESTER_MOVE_DEL,
|
||||
MPR_TIMER_APACHE_SHOOT_DEL,
|
||||
MPR_TIMER_TIBERIUM_PMP,
|
||||
MPR_TIMER_DELAY_01_PMP,
|
||||
MPR_TIMER_EVAC_PMP,
|
||||
MPR_TIMER_WANDER_PMP,
|
||||
MPR_TIMER_DELAY_01_04_PMP,
|
||||
MPR_TIMER_DELAY_01_03_PMP,
|
||||
MPR_TIMER_DELAY_01_02_PMP,
|
||||
MPR_A01_TIMER_ORCASTRIKE_RAD,
|
||||
MPR_A01_TIMER_ORCASTRIKE_OFF_RAD,
|
||||
MPR_A02_TIMER_CADET_1_TEN_HUT_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_1_PUSHUPS_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_1_SITUPS_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_1_JUMPING_JACKS_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_1_MISTAKE_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_2_TEN_HUT_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_2_PUSHUPS_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_2_SITUPS_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_2_JUMPING_JACKS_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_2_MISTAKE_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_3_TEN_HUT_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_3_PUSHUPS_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_3_SITUPS_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_3_JUMPING_JACKS_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_3_MISTAKE_DELAY_JDG,
|
||||
MPR_A02_TIMER_DRILL_INSTRUCTOR_ATTACK_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_1_ATTACK_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_2_ATTACK_DELAY_JDG,
|
||||
MPR_A02_TIMER_CADET_3_ATTACK_DELAY_JDG,
|
||||
MPR_A02_TIMER_DI_PRE_GIVE_ORDER_JDG,
|
||||
MPR_A03_TIMER_BRIDGESCENE_ENGINEER_HAVOC_IN_ZONE_DELAY_JDG,
|
||||
MPR_A03_TIMER_BRIDGESCENE_ENTER_ZONE_EXPLOSION_DELAY_JDG,
|
||||
MPR_A03_TIMER_INJURED_PILOT_CRAWL_1_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_NOD_MINIGUNNER_HAVOC_IN_ZONE_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_GDI_MINIGUNNER_1_CHASE_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_GDI_MINIGUNNER_2_CHASE_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_GDI_MINIGUNNER_1_FOLLOW_TANK_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_GDI_MINIGUNNER_2_FOLLOW_TANK_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_NOD_LIGHTTANK_ATTACK_MEDIUMTANK_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_GDI_MINIGUNNER_1_ATTACK_LIGHTTANK_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_GDI_MINIGUNNER_2_ATTACK_LIGHTTANK_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_GDI_MEDIUMTANK_ATTACK_LIGHTTANK_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_GDI_MINIGUNNER_1_ATTACK_OBELISK_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_GDI_MINIGUNNER_2_ATTACK_OBELISK_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_GDI_MEDIUMTANK_ATTACK_OBELISK_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_GDI_MINIGUNNER_1_OBELISK_IS_DEAD_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_GDI_MINIGUNNER_2_OBELISK_IS_DEAD_DELAY_JDG,
|
||||
MPR_A04_TIMER_SUICIDERUN_GDI_MEDIUMTANK_OBELISK_IS_DEAD_DELAY_JDG,
|
||||
MPR_A04_TIMER_OBELISK_FIRING_RAD,
|
||||
MPR_A04_TIMER_OBELISK_STOPFIRING_RAD,
|
||||
MPR_A04_TIMER_OBELISK_PREFIRING_RAD,
|
||||
MPR_A05_TIMER_MAMMOTH_RAD,
|
||||
MPR_A05_TIMER_MAMMOTH_2_RAD,
|
||||
MPR_A05_TIMER_MAMMOTH_3_RAD,
|
||||
MPR_A05_TIMER_DROP_OBJECT_RMV,
|
||||
MPR_A05_TIMER_DIE_RMV,
|
||||
} PRTIMER_TIMERS;
|
||||
|
||||
|
||||
// Public Variables
|
||||
|
||||
bool MPR_nod_dead_PMP;
|
||||
bool MPR_evacing_to_chinook_PMP;
|
||||
bool MPR_A01_startstrike_RAD;
|
||||
|
||||
|
||||
// Predefined Constants
|
||||
|
||||
const Vector3 MPR_A05_tank_move_locations_RAD [4] =
|
||||
{
|
||||
Vector3(-8.0f, 676.0f, 4.0f), // Mammoth Tank temple location
|
||||
Vector3(177.0f, 615.0f, 3.0f), // Airfield Flame Tank airstrip location
|
||||
Vector3(-180.0f, 522.0f, 2.0f), // Temple Flame Tank temple location
|
||||
Vector3(-160.0f, 521.0f, 4.0f) // Temple Flame Tank temple location
|
||||
};
|
||||
|
||||
const char * MPR_control_klaxons_RAD [] =
|
||||
{
|
||||
"HONalert",
|
||||
"HONalert",
|
||||
"HONalert",
|
||||
"HONalert",
|
||||
"HONalert"
|
||||
};
|
||||
|
||||
const float MPR_A01_orca_attack_stoptime_RAD = 0.2f; // How long the ORCA turret attack should stay on.
|
||||
const float MPR_A01_obelisk_firing_time_RAD = 2.0f; // How much time delay between Obelisk attacks.
|
||||
|
||||
#define MPR_A02_DRILL_INSTRUCTOR_X1_JDG -57.75f
|
||||
#define MPR_A02_DRILL_INSTRUCTOR_Y1_JDG -12.79f
|
||||
#define MPR_A02_DRILL_INSTRUCTOR_Z1_JDG 2.42f
|
||||
#define MPR_A02_DRILL_INSTRUCTOR_X2_JDG -52.80f
|
||||
#define MPR_A02_DRILL_INSTRUCTOR_Y2_JDG -7.26f
|
||||
#define MPR_A02_DRILL_INSTRUCTOR_Z2_JDG 2.42f
|
||||
#define MPR_A02_CADET_1_X_JDG -51.62f
|
||||
#define MPR_A02_CADET_1_Y_JDG -10.56f
|
||||
#define MPR_A02_CADET_1_Z_JDG 2.42f
|
||||
#define MPR_A02_CADET_2_X_JDG -53.05f
|
||||
#define MPR_A02_CADET_2_Y_JDG -11.93f
|
||||
#define MPR_A02_CADET_2_Z_JDG 2.42f
|
||||
#define MPR_A02_CADET_3_X_JDG -54.58f
|
||||
#define MPR_A02_CADET_3_Y_JDG -13.31f
|
||||
#define MPR_A02_CADET_3_Z_JDG 2.42f
|
||||
#define MPR_A03_BRIDGESCENE_BRIDGE_ID_JDG 16016
|
||||
|
||||
|
||||
// Typedefined Enumerations
|
||||
|
||||
typedef enum
|
||||
{
|
||||
PUSHUPS = 0,
|
||||
SITUPS,
|
||||
JUMPING_JACKS,
|
||||
} Exercise;
|
||||
|
||||
Exercise exercise;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
MPR_A04_SUICIDERUN_LIGHTTANK_ALIVE = 0,
|
||||
MPR_A04_SUICIDERUN_LIGHTTANK_DEAD,
|
||||
} LIGHTTANKState;
|
||||
|
||||
LIGHTTANKState state;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
MPR_A04_SUICIDERUN_CONSOLE_ALIVE = 0,
|
||||
MPR_A04_SUICIDERUN_CONSOLE_DEAD,
|
||||
} CONSOLEState;
|
||||
|
||||
CONSOLEState status;
|
||||
|
||||
|
||||
// ID Values that need permanent address in the Level Editor
|
||||
|
||||
int MPR_A01_BARNZONE_GOTHERE_ID_PMP;
|
||||
int MPR_A01_CIV01_ID_PMP;
|
||||
int MPR_A01_CIV02_ID_PMP;
|
||||
int MPR_A01_CIV03_ID_PMP;
|
||||
int MPR_A01_orca_turret1_RAD;
|
||||
int MPR_A01_orca_turret2_RAD;
|
||||
int MPR_A02_drill_instructor_id_JDG;
|
||||
int MPR_A02_cadet_1_id_JDG;
|
||||
int MPR_A02_cadet_2_id_JDG;
|
||||
int MPR_A02_cadet_3_id_JDG;
|
||||
int MPR_A02_drill_zone_id_JDG;
|
||||
int MPR_A02_driveby_harvester_id_JDG;
|
||||
int MPR_A03_helicopter_injured_nod_pilot_id_JDG;
|
||||
int MPR_A03_bridgescene_enterzone_id_JDG;
|
||||
int MPR_A03_bridgescene_engineer_id_JDG;
|
||||
int MPR_A03_bridgescene_blowupzone_id_JDG;
|
||||
int MPR_A04_suiciderun_enterzone_id_JDG;
|
||||
int MPR_A04_suiciderun_gdi_minigunner_1_id_JDG;
|
||||
int MPR_A04_suiciderun_gdi_minigunner_2_id_JDG;
|
||||
int MPR_A04_suiciderun_nod_minigunner_id_JDG;
|
||||
int MPR_A04_suiciderun_gdi_medium_tank_id_JDG;
|
||||
int MPR_A04_suiciderun_nod_light_tank_id_JDG;
|
||||
int MPR_A05_mammoth_tank_id_RAD;
|
||||
|
||||
#define MPR_A02_HARVESTER_WAYPATH_JDG 364188
|
||||
#define MPR_A02_HARVESTER_WAYPATH_START_JDG 364187
|
||||
#define MPR_A02_HARVESTER_WAYPATH_STOP_JDG 364199
|
||||
|
||||
|
||||
#endif // _PRDEMO_H_
|
||||
BIN
Code/Scripts/Profile/Scripts.exp
Normal file
BIN
Code/Scripts/Profile/Scripts.exp
Normal file
Binary file not shown.
BIN
Code/Scripts/Profile/Scripts.lib
Normal file
BIN
Code/Scripts/Profile/Scripts.lib
Normal file
Binary file not shown.
BIN
Code/Scripts/Release/DLLmain.sbr
Normal file
BIN
Code/Scripts/Release/DLLmain.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Release/DPrint.sbr
Normal file
BIN
Code/Scripts/Release/DPrint.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Release/DrMobius.sbr
Normal file
BIN
Code/Scripts/Release/DrMobius.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Release/Mission00.sbr
Normal file
BIN
Code/Scripts/Release/Mission00.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Release/Mission01.sbr
Normal file
BIN
Code/Scripts/Release/Mission01.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Release/Mission02.sbr
Normal file
BIN
Code/Scripts/Release/Mission02.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Release/Mission03.sbr
Normal file
BIN
Code/Scripts/Release/Mission03.sbr
Normal file
Binary file not shown.
BIN
Code/Scripts/Release/Mission04.sbr
Normal file
BIN
Code/Scripts/Release/Mission04.sbr
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user