2016-09-20 16:00:02 -04:00
|
|
|
#define VERSION_ALPHA2 316
|
|
|
|
#define VERSION_ALPHA3 318//319
|
2016-09-24 14:55:52 -04:00
|
|
|
#define VERSION_ALPHA3_DEC 319
|
2016-09-20 16:00:02 -04:00
|
|
|
|
2016-09-18 09:10:23 -04:00
|
|
|
namespace Components
|
|
|
|
{
|
|
|
|
class Zones : public Component
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
Zones();
|
|
|
|
~Zones();
|
|
|
|
|
|
|
|
#if defined(DEBUG) || defined(FORCE_UNIT_TESTS)
|
|
|
|
const char* GetName() { return "Zones"; };
|
|
|
|
#endif
|
|
|
|
|
|
|
|
static void InstallPatches(int version);
|
|
|
|
|
2016-09-24 14:55:52 -04:00
|
|
|
static int Version() { return Zones::ZoneVersion; };
|
|
|
|
|
2016-09-24 10:37:13 -04:00
|
|
|
private:
|
2016-09-18 09:10:23 -04:00
|
|
|
static int ZoneVersion;
|
2016-09-21 13:27:31 -04:00
|
|
|
|
2016-09-22 15:22:12 -04:00
|
|
|
static int FxEffectIndex;
|
|
|
|
static char* FxEffectStrings[64];
|
|
|
|
|
2016-09-21 13:27:31 -04:00
|
|
|
static Utils::Hook LoadFxElemDefHook;
|
|
|
|
static Utils::Hook LoadFxElemDefArrayHook;
|
|
|
|
static Utils::Hook LoadXModelLodInfoHook;
|
2016-09-21 17:19:16 -04:00
|
|
|
static Utils::Hook LoadXModelHook;
|
|
|
|
static Utils::Hook LoadXSurfaceArrayHook;
|
|
|
|
static Utils::Hook LoadGameWorldSpHook;
|
|
|
|
static Utils::Hook LoadPathDataHook;
|
|
|
|
static Utils::Hook LoadVehicleDefHook;
|
|
|
|
static Utils::Hook Loadsnd_alias_tArrayHook;
|
|
|
|
static Utils::Hook LoadLoadedSoundHook;
|
2016-09-22 15:22:12 -04:00
|
|
|
static Utils::Hook LoadmenuDef_tHook;
|
|
|
|
static Utils::Hook LoadFxEffectDefHook;
|
|
|
|
static Utils::Hook LoadMaterialShaderArgumentArrayHook;
|
|
|
|
static Utils::Hook LoadStructuredDataStructPropertyArrayHook;
|
|
|
|
static Utils::Hook LoadPathDataTailHook;
|
|
|
|
static Utils::Hook LoadWeaponAttachHook;
|
2016-09-24 10:37:13 -04:00
|
|
|
static Utils::Hook LoadWeaponCompleteDefHook;
|
2016-09-26 16:14:11 -04:00
|
|
|
static Utils::Hook LoadGfxImageHook;
|
2016-09-21 13:27:31 -04:00
|
|
|
|
|
|
|
static void LoadFxElemDefArrayStub(bool atStreamStart);
|
|
|
|
static bool LoadFxElemDefStub(bool atStreamStart, Game::FxElemDef* fxElem, int size);
|
|
|
|
|
|
|
|
static void LoadXModelLodInfo(int i);
|
|
|
|
static void LoadXModelLodInfoStub();
|
2016-09-21 17:19:16 -04:00
|
|
|
static bool LoadXModel(bool atStreamStart, char* xmodel, int size);
|
|
|
|
static bool LoadXSurfaceArray(bool atStreamStart, char* buffer, int size);
|
|
|
|
static bool LoadGameWorldSp(bool atStreamStart, char* buffer);
|
|
|
|
static bool LoadVehicleDef(bool atStreamStart, char* buffer);
|
|
|
|
static bool Loadsnd_alias_tArray(bool atStreamStart, char* buffer, int len);
|
2016-09-22 15:22:12 -04:00
|
|
|
static bool LoadLoadedSound(bool atStreamStart, char* buffer);
|
|
|
|
static bool LoadmenuDef_t(bool atStreamStart, char* buffer, int size);
|
|
|
|
static bool LoadFxEffectDef(bool atStreamStart, char* buffer, int size);
|
|
|
|
static bool LoadMaterialShaderArgumentArray(bool atStreamStart, Game::MaterialShaderArgument* argument, int size);
|
|
|
|
static bool LoadStructuredDataStructPropertyArray(bool atStreamStart, char* data, int size);
|
|
|
|
static void LoadPathDataTail();
|
|
|
|
static void LoadWeaponAttach();
|
|
|
|
static void LoadWeaponAttachStuff(DWORD* varWeaponAttachStuff, int count);
|
2016-09-24 10:37:13 -04:00
|
|
|
static void LoadWeaponCompleteDef();
|
2016-09-26 16:14:11 -04:00
|
|
|
static bool LoadGfxImage(bool atStreamStart, char* buffer, int size);
|
2016-09-18 09:10:23 -04:00
|
|
|
};
|
|
|
|
}
|