This repository has been archived on 2025-02-27. You can view files and clone it, but cannot push or open issues or pull requests.
CnC_Renegade/Code/Scripts/unitcombat.h

204 lines
7.5 KiB
C
Raw Permalink Normal View History

/*
** 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/>.
*/
/***********************************************************************************************
*** Confidential - Westwood Studios ***
***********************************************************************************************
* *
* Project Name : Commando *
* *
* $Archive:: /Commando/Code/Scripts/unitcombat.h $*
* *
* $Author:: David_y $*
* *
* $Modtime:: 4/27/00 10:54a $*
* *
* $Revision:: 1 $*
* *
*---------------------------------------------------------------------------------------------*/
/***********************************************************************************************
*
* Custom Event Type and Param Definitions
*
************************************************************************************************/
// SCRIPT OVERRIDE CUSTOM DEFINITIONS
// OV_CREATED = Sent by unit to control to let control know unit has been created.
// OV_VERIFIED = Sent by unit to control to verify that control is currently handling the unit.
// OV_ARRIVED = Sent by unit to control when the unit arrives at a destination.
// OV_ANIMCOMPLETE = Sent by unit to control when an animation has been completed.
// OV_OVERRIDE = Sent by control to unit when control wants to override combat code on the unit.
// OV_REQUEST = Sent by control to unit when control wants to verify that it is currently handling the unit.
#define OV_CREATED 1000
#define OV_CONFIRM 1001
#define OV_ARRIVED 1002
#define OV_ANIMCOMPLETE 1003
#define OV_OVERRIDE 1004
#define OV_VERIFY 1005
#define OV_DAMAGED 1006
#define OV_ENEMYSEEN 1007
#define OV_SOUNDHEARD 1008
#define OV_KILLED 1009
// OV_AWARE param is a bool. 0 turns awareness off, 1 sets it on.
#define OV_AWARE 1010
// Zone Entering Confirmation to Controller Custom Definition
#define ZONE_CONFIRM 1011
// Conversation queue custom send from conversation controller to object.
#define CONVERSATION 1012
// Scoreboard Customs and Params
#define HITDIRECTION 9910
#define HD_FRONTHIT 10
#define HD_BACKHIT 20
#define BODYLOCATION 9920
#define BL_HEAD 10
#define BL_CHEST 20
#define BL_GROIN 30
#define BL_RIGHTLEG 40
#define BL_LEFTLEG 50
#define BL_RIGHTARM 60
#define BL_LEFTARM 70
#define TALLY 9950
#define TALLY_KILL 10
#define TALLY_STRUCTURE 20
#define TALLY_CIVILIAN 30
// Secret_Level Tracks Completed Secrets in the Level
// If Param is Under 100, it is used to register the total number for
// a specific level.
#define SECRET_LEVEL 9960
#define SL_COMPLETE 100
// Statistic Collection Custom Definitions
#define STAT_CALL 9990
// MISSION CONTROL CUSTOM DEFINITONS:
// MC_COMPLETE = Custom event register for reporting a completed objective.
// MC_RESET = Custom event register for reporting a need to reset an objective.
// MC_IPRIMARY = Custom event for sending objective primary/secondary.
// MC_IPRIORITY = Custom event for sending objective priority.
// MC_IINTROTEXT = Custom event for sending intro text record number.
// MC_ISOLVETEXT = Custom event for sending immediate solve text record number.
// MC_IOUTTEXT = Custom event for sending final solve text record number.
// MC_IRESETTEXT = Custom event for sending objective reset text record number.
#define MC_COMPLETE 1
#define MC_RESET 2
#define MC_IPRIMARY 3
#define MC_IPRIORITY 4
#define MC_IINTROTEXT 5
#define MC_ISOLVETEXT 6
#define MC_IOUTTEXT 7
#define MC_IRESETTEXT 8
#define MC_STARTGAME 9
// Movie Control ID's to and from Mission and Movie Controllers
// Params between Intro (10) and Outro (99) are cutscenes
#define MOVIE_PLAY 10
#define MP_INTRO 10
#define MP_OUTRO 99
// Mission 3 CONTROL CUSTOM DEFINITIONS:
// M3_SAMOBJECTIVE = Secondary mission to destroy SAM sites in village completed.
// M3_SAMDESTROYED = Secondary mission SAM destroyed, send in reinforcements.
#define M3_SAMOBJECTIVE 11
#define M3_SAMDESTROYED 12
// Mission 1 Custom Definitions:
// M1_SAMDESTROYED = Primary mission to destroy SAM sites completed.
// M1_ACT1CONTROL = Custom sent from mission start to act 1 controller, animates nod soldier.
// M1_BASEGATE = Custom Type sent to open and close Base Gate for Harvester
#define M1_SAMDESTROYED 13
#define M1_ACT1CONTROL 14
#define M1_BASEGATE 15
#define BASEGATE_OPEN 10
#define BASEGATE_CLOSE 20
// Timer ID's (Unique. No Collision with other ScriptEvents)
#define TIMER_IDLE_ANIM 6000
#define TIMER_ARRIVED_FLAG 6010
#define TIMER_SEARCH_LOCATION 6020
#define TIMER_CROUCH_ATTACK 6030
#define TIMER_COMBAT_SPEECH 6040
#define TIMER_TURRET_ATTACK 6050
#define TIMER_HARVESTER_REGEN 6060
//Scoreboard Timers
#define TIMER_COMBO 6070
#define TIMER_COMBOEVA 6080
#define TIMER_STAT_CALL 6090
#define TIMER_MISSION 6100
//Mission Objective Timers
#define TIMER_OBJECTIVE 6110
#define TIMER_EVASPEECH 6120
#define TIMER_MISSION_FAILURE 6130
#define TIMER_MISSION_SUCCESS 6140
//Movie Control Timers
#define TIMER_REGISTER 6150
//Mission 1 Timers
#define TIMER_M1_A1 102
#define TIMER_M1_A2 103
#define TIMER_TUTORIAL 104
#define TIMER_M1_A3 105
//Mission 1 Radar Events
#define RADAR_M1_P1 150
//Mission 3 Timers
#define TIMER_M3_A1T1 301
#define TIMER_M3_A1T2 302
#define TIMER_M3_A1T3 303
#define TIMER_M3_B1 304
#define TIMER_M3_B2 305
#define TIMER_M3_B3 306
#define TIMER_M3_A3T1 307
#define TIMER_M3_A3T2 308
#define TIMER_M3_A4T1 309
#define TIMER_M3_A2T1 310
#define TIMER_M3_A4T3 311
#define TIMER_M3_A5T1 312
#define TIMER_M3_A5T2 313
#define TIMER_M3_A4T2 314
#define TIMER_M3_A1T4 315
//Mission 2 Radar Events
#define RADAR_M2_P1 250
#define RADAR_M2_P2 251
//Mission 3 Radar Events
#define RADAR_M3_P1 350
#define RADAR_M3_P2 351
#define RADAR_M3_S1 352
#define RADAR_M3_S2 353
#define RADAR_M3_S3 354
//Custom Event Sound Responses
#define CUSTOM_ALLY_INFO 7000
#define CUSTOM_TARGET_INFO 7010
//Designer Sound Types
#define SOUND_ENEMY_SEEN SOUND_TYPE_DESIGNER + 5000
#define SOUND_DEATH SOUND_TYPE_DESIGNER + 5010