12#ifndef SCRIPTS_INCLUDE__ENGINE_GAME_H
13#define SCRIPTS_INCLUDE__ENGINE_GAME_H
27void SCRIPTS_API Power_Base(
int team,
bool powered);
40void SCRIPTS_API Set_Can_Generate_Soldiers(
int team,
bool cangenerate);
53void SCRIPTS_API Set_Can_Generate_Vehicles(
int team,
bool cangenerate);
63void SCRIPTS_API Destroy_Base(
int team);
76void SCRIPTS_API Beacon_Destroyed_Base(
int team,
bool destroyed);
89void SCRIPTS_API Enable_Base_Radar(
int team,
bool enable);
100bool SCRIPTS_API Is_Harvester(GameObject *obj);
112bool SCRIPTS_API Is_Radar_Enabled(
int team);
123int SCRIPTS_API Building_Type(GameObject *obj);
134bool SCRIPTS_API Is_Building_Dead(GameObject *obj);
149GameObject SCRIPTS_API *Find_Building_By_Type(
int team,
int type);
161GameObject SCRIPTS_API *Find_Base_Defense(
int team);
169bool SCRIPTS_API Is_Map_Flying();
171GameObject SCRIPTS_API *Create_Building(
const char *preset,
const Vector3 & Position);
183GameObject SCRIPTS_API *Find_Harvester(
int team);
195bool SCRIPTS_API Is_Base_Powered(
int team);
207bool SCRIPTS_API Can_Generate_Vehicles(
int team);
219bool SCRIPTS_API Can_Generate_Soldiers(
int team);
227cGameData SCRIPTS_API *The_Game();
235cGameDataSkirmish SCRIPTS_API *The_Skirmish_Game();
243cGameDataCnc SCRIPTS_API *The_Cnc_Game();
251cGameDataSinglePlayer SCRIPTS_API *The_Single_Player_Game();
263int SCRIPTS_API Get_Building_Count_Team(
int Team);
275GameObject SCRIPTS_API *Find_Building_By_Team(
int Team);
290GameObject SCRIPTS_API *Find_Building_By_Preset(
int Team,
const char *Preset_Name);
302GameObject SCRIPTS_API *Find_Power_Plant(
int Team);
314GameObject SCRIPTS_API *Find_Construction_Yard(
int Team);
326GameObject SCRIPTS_API *Find_Refinery(
int Team);
338GameObject SCRIPTS_API *Find_Repair_Bay(
int Team);
350GameObject SCRIPTS_API *Find_Soldier_Factory(
int Team);
362GameObject SCRIPTS_API *Find_Vehicle_Factory(
int Team);
374GameObject SCRIPTS_API *Find_Com_Center(
int Team);
386GameObject SCRIPTS_API *Find_Special(
int Team);
398GameObject SCRIPTS_API *Find_Naval_Factory(
int Team);
410GameObject SCRIPTS_API *Find_Tech_Center(
int Team);
422GameObject SCRIPTS_API *Find_Helipad(
int Team);
434GameObject SCRIPTS_API *Find_Shrine(
int Team);
436void SCRIPTS_API Restore_Building(GameObject* obj);
444bool SCRIPTS_API Is_Gameplay_Permitted();
452bool SCRIPTS_API Is_Dedicated();
461unsigned int SCRIPTS_API Get_Current_Game_Mode();
463void SCRIPTS_API Get_Private_Message_Color(
unsigned int *red,
unsigned int *green,
unsigned int *blue);
464void SCRIPTS_API Get_Public_Message_Color(
unsigned int *red,
unsigned int *green,
unsigned int *blue);
475int SCRIPTS_API Get_Harvester_Preset_ID(
int Team);
486bool SCRIPTS_API Is_Harvester_Preset(GameObject *obj);
497bool SCRIPTS_API Vehicle_Preset_Is_Air(
int preset);
508bool SCRIPTS_API Vehicle_Preset_Is_Naval(
int preset);
520Vector3 SCRIPTS_API Get_Base_Center(
int Team);
522void SCRIPTS_API Seconds_To_Hms(
float secs,
int &hours,
int &minutes,
int &seconds);