____ _ __
/ __ )____ _____ | | / /___ ___________
/ __ / __ \/ ___/ | | /| / / __ `/ ___/ ___/
/ /_/ / /_/ (__ ) | |/ |/ / /_/ / / (__ )
/_____/\____/____/ |__/|__/\__,_/_/ /____/
A futuristic real-time strategy game.
This file is part of Bos Wars.
(C) Copyright 2001-2007 by the Bos Wars and Stratagus Project.
Distributed under the "GNU General Public License"00001 // ____ _ __ 00002 // / __ )____ _____ | | / /___ ___________ 00003 // / __ / __ \/ ___/ | | /| / / __ `/ ___/ ___/ 00004 // / /_/ / /_/ (__ ) | |/ |/ / /_/ / / (__ ) 00005 // /_____/\____/____/ |__/|__/\__,_/_/ /____/ 00006 // 00007 // A futuristic real-time strategy game. 00008 // This file is part of Bos Wars. 00009 // 00011 // 00012 // (c) Copyright 1998-2007 by Lutz Sammer 00013 // 00014 // This program is free software; you can redistribute it and/or modify 00015 // it under the terms of the GNU General Public License as published by 00016 // the Free Software Foundation; only version 2 of the License. 00017 // 00018 // This program is distributed in the hope that it will be useful, 00019 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00020 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00021 // GNU General Public License for more details. 00022 // 00023 // You should have received a copy of the GNU General Public License 00024 // along with this program; if not, write to the Free Software 00025 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 00026 // 02111-1307, USA. 00027 00028 #ifndef __AI_H__ 00029 #define __AI_H__ 00030 00032 00033 /*---------------------------------------------------------------------------- 00034 -- Declarations 00035 ----------------------------------------------------------------------------*/ 00036 00037 class CPlayer; 00038 class CFile; 00039 class CUnit; 00040 class CUnitType; 00041 00042 /*---------------------------------------------------------------------------- 00043 -- Variables 00044 ----------------------------------------------------------------------------*/ 00045 00046 extern int AiSleepCycles; 00047 00048 /*---------------------------------------------------------------------------- 00049 -- Functions 00050 ----------------------------------------------------------------------------*/ 00051 00052 extern void AiEachCycle(CPlayer *player); 00053 extern void AiEachSecond(CPlayer *player); 00054 00055 extern void InitAiModule(void); 00056 extern void AiInit(CPlayer *player); 00057 extern void CleanAi(void); 00058 extern void FreeAi(void); 00059 extern void SaveAi(CFile *file); 00060 00061 extern void AiCclRegister(void); 00062 00063 /*-------------------------------------------------------- 00064 -- Call Backs/Triggers 00065 --------------------------------------------------------*/ 00066 00068 extern void AiHelpMe(const CUnit *attacker, CUnit *defender); 00070 extern void AiUnitKilled(CUnit *unit); 00072 extern void AiNeedMoreSupply(const CUnit *unit, 00073 const CUnitType *what); 00075 extern void AiWorkComplete(CUnit *unit, CUnit *what); 00077 extern void AiCanNotBuild(CUnit *unit, 00078 const CUnitType *what); 00080 extern void AiCanNotReach(CUnit *unit, 00081 const CUnitType *what); 00083 extern void AiCanNotMove(CUnit *unit); 00085 extern void AiTrainingComplete(CUnit *unit, CUnit *what); 00086 00088 00089 #endif // !__AI_H__
1.5.6