00001 00002 // Copyright (C) 2004-2007 by The Allacrost Project 00003 // All Rights Reserved 00004 // 00005 // This code is licensed under the GNU GPL version 2. It is free software 00006 // and you may modify it and/or redistribute it under the terms of this license. 00007 // See http://www.gnu.org/copyleft/gpl.html for details. 00009 00034 #ifndef __DEFS_HEADER__ 00035 #define __DEFS_HEADER__ 00036 00038 // Game Engine Declarations 00040 00041 // Audio declarations, see audio.h/cpp 00042 namespace hoa_audio { 00043 extern bool AUDIO_DEBUG; 00044 class GameAudio; 00045 00046 class MusicDescriptor; 00047 class SoundDescriptor; 00048 00049 namespace private_audio { 00050 class MusicData; 00051 class SoundData; 00052 } 00053 } 00054 00055 // Video declarations, see video.h/cpp 00056 namespace hoa_video { 00057 extern bool VIDEO_DEBUG; 00058 class GameVideo; 00059 00060 class Color; 00061 class CoordSys; 00062 class ScreenRect; 00063 00064 class FixedImageNode; 00065 class VariableImageNode; 00066 00067 class ImageDescriptor; 00068 class StillImage; 00069 class AnimatedImage; 00070 00071 class FontGlyph; 00072 class FontProperties; 00073 00074 class MenuWindow; 00075 class TextBox; 00076 class OptionBox; 00077 00078 class Interpolator; 00079 00080 class ParticleEffect; 00081 class ParticleEffectDef; 00082 class ParticleEmitter; 00083 class EffectParameters; 00084 00085 namespace private_video { 00086 class Context; 00087 00088 class TexSheet; 00089 class TexMemMgr; 00090 class FixedTexMemMgr; 00091 class VariableTexMemMgr; 00092 00093 class ImageLoadInfo; 00094 class Image; 00095 class ImageElement; 00096 class MultiImage; 00097 class AnimationFrame; 00098 00099 class GUISupervisor; 00100 class GUIElement; 00101 class GUIControl; 00102 class MenuSkin; 00103 00104 class Option; 00105 class OptionElement; 00106 class OptionCellBounds; 00107 00108 class ParticleManager; 00109 class ParticleSystem; 00110 class ParticleSystemDef; 00111 class Particle; 00112 class ParticleVertex; 00113 class ParticleTexCoord; 00114 class ParticleKeyframe; 00115 00116 class ScreenFader; 00117 class ShakeForce; 00118 } 00119 } 00120 00121 // Script declarations, see src/engine/script 00122 namespace hoa_script { 00123 extern bool SCRIPT_DEBUG; 00124 class GameScript; 00125 00126 class ScriptDescriptor; 00127 class ReadScriptDescriptor; 00128 class WriteScriptDescriptor; 00129 class ModifyScriptDescriptor; 00130 } 00131 00132 // Mode manager declarations, see mode_manager.h/cpp 00133 namespace hoa_mode_manager { 00134 extern bool MODE_MANAGER_DEBUG; 00135 class GameModeManager; 00136 00137 class GameMode; 00138 } 00139 00140 // Input declarations, see input.h/cpp 00141 namespace hoa_input { 00142 extern bool INPUT_DEBUG; 00143 class GameInput; 00144 } 00145 00146 // Settings declarations, see settings.h/cpp 00147 namespace hoa_system { 00148 extern bool SYSTEM_DEBUG; 00149 class GameSystem; 00150 class Timer; 00151 } 00152 00154 // Global Code Declarations 00156 00157 // Global declarations, see src/global/ 00158 namespace hoa_global { 00159 extern bool GLOBAL_DEBUG; 00160 class GameGlobal; 00161 class GlobalEventGroup; 00162 00163 class GlobalObject; 00164 class GlobalItem; 00165 class GlobalWeapon; 00166 class GlobalArmor; 00167 class GlobalShard; 00168 class GlobalKeyItem; 00169 00170 class GlobalStatusEffect; 00171 class GlobalElementalEffect; 00172 class GlobalSkill; 00173 00174 class GlobalTarget; 00175 class GlobalAttackPoint; 00176 class GlobalActor; 00177 class GlobalCharacter; 00178 class GlobalCharacterGrowth; 00179 class GlobalEnemy; 00180 class GlobalParty; 00181 } 00182 00184 // Game Mode Declarations 00186 00187 00188 // Battle mode declarations, see battle.h/cpp 00189 namespace hoa_battle { 00190 extern bool BATTLE_DEBUG; 00191 class BattleMode; 00192 00193 namespace private_battle { 00194 class BattleActor; 00195 class BattleCharacterActor; 00196 class BattleEnemyActor; 00197 00198 class ActorEffect; 00199 class ScriptEvent; 00200 00201 class ActionWindow; 00202 class FinishWindow; 00203 } 00204 } 00205 00206 00207 // Boot mode declarations, see boot.h/cpp 00208 namespace hoa_boot { 00209 extern bool BOOT_DEBUG; 00210 class BootMode; 00211 class BootMenu; 00212 class CreditsScreen; 00213 } 00214 00215 // Map mode declarations, see map.h/cpp 00216 namespace hoa_map { 00217 extern bool MAP_DEBUG; 00218 class MapMode; 00219 00220 namespace private_map { 00221 class MapTile; 00222 class MapFrame; 00223 class PathNode; 00224 00225 class ZoneSection; 00226 class MapZone; 00227 class EnemyZone; 00228 00229 class MapObject; 00230 class PhysicalObject; 00231 00232 class VirtualSprite; 00233 class MapSprite; 00234 class EnemySprite; 00235 00236 class DialogueManager; 00237 class MapDialogue; 00238 00239 class SpriteAction; 00240 class ActionPathMove; 00241 class ActionAnimate; 00242 class ActionScriptFunction; 00243 } 00244 } 00245 00246 // Menu mode declarations, see menu.h/cpp 00247 namespace hoa_menu { 00248 extern bool MENU_DEBUG; 00249 class MenuMode; 00250 } 00251 00252 // Pause mode declarations, see pause.h/cpp 00253 namespace hoa_pause { 00254 extern bool PAUSE_DEBUG; 00255 class PauseMode; 00256 } 00257 00258 // Quit mode declarations, see quit.h/cpp 00259 namespace hoa_quit { 00260 extern bool QUIT_DEBUG; 00261 class QuitMode; 00262 } 00263 00264 // Scene mode declarations, see scene.h/cpp 00265 namespace hoa_scene { 00266 extern bool SCENE_DEBUG; 00267 class SceneMode; 00268 } 00269 00270 // Shop mode declarations, see shop./cpp 00271 namespace hoa_shop { 00272 extern bool SHOP_DEBUG; 00273 class ShopMode; 00274 } 00275 00277 // Miscellaneous Declarations 00279 00280 // Utils declarations, see utils.h/cpp 00281 namespace hoa_utils { 00282 extern bool UTILS_DEBUG; 00283 class ustring; 00284 extern float RandomFloat(); 00285 } 00286 00288 // Binding Declarations 00290 00292 namespace hoa_defs { 00293 00298 void BindEngineToLua(); 00299 00300 } // namespace hoa_defs 00301 00302 #endif // __DEFS_HEADER__
1.5.1