mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2025-04-20 00:02:55 +00:00
Add T5 basis
This commit is contained in:
parent
4f212562fc
commit
2edca7a57e
@ -192,7 +192,7 @@ namespace IW3
|
|||||||
UShortVec* _2;
|
UShortVec* _2;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct type_align(4) XAnimPartTransFrames
|
struct XAnimPartTransFrames
|
||||||
{
|
{
|
||||||
float mins[3];
|
float mins[3];
|
||||||
float size[3];
|
float size[3];
|
||||||
@ -221,7 +221,7 @@ namespace IW3
|
|||||||
uint16_t _2[1];
|
uint16_t _2[1];
|
||||||
};
|
};
|
||||||
|
|
||||||
struct type_align(4) XAnimDeltaPartQuatDataFrames
|
struct XAnimDeltaPartQuatDataFrames
|
||||||
{
|
{
|
||||||
XQuat *frames;
|
XQuat *frames;
|
||||||
XAnimDynamicIndicesQuat indices;
|
XAnimDynamicIndicesQuat indices;
|
||||||
@ -740,7 +740,7 @@ namespace IW3
|
|||||||
char platform[2];
|
char platform[2];
|
||||||
};
|
};
|
||||||
|
|
||||||
struct type_align(4) GfxImageLoadDef
|
struct GfxImageLoadDef
|
||||||
{
|
{
|
||||||
char levelCount;
|
char levelCount;
|
||||||
char flags;
|
char flags;
|
||||||
@ -1368,7 +1368,7 @@ namespace IW3
|
|||||||
float angles[3];
|
float angles[3];
|
||||||
};
|
};
|
||||||
|
|
||||||
struct type_align(4) GfxLightImage
|
struct GfxLightImage
|
||||||
{
|
{
|
||||||
GfxImage* image;
|
GfxImage* image;
|
||||||
char samplerState;
|
char samplerState;
|
||||||
|
0
src/Common/Game/T5/CommonT5.cpp
Normal file
0
src/Common/Game/T5/CommonT5.cpp
Normal file
0
src/Common/Game/T5/CommonT5.h
Normal file
0
src/Common/Game/T5/CommonT5.h
Normal file
58
src/Common/Game/T5/GameT5.cpp
Normal file
58
src/Common/Game/T5/GameT5.cpp
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
#include "GameT5.h"
|
||||||
|
|
||||||
|
#include <algorithm>
|
||||||
|
|
||||||
|
#include "T5.h"
|
||||||
|
|
||||||
|
using namespace T5;
|
||||||
|
|
||||||
|
GameT5 g_GameT5;
|
||||||
|
|
||||||
|
std::string GameT5::GetFullName()
|
||||||
|
{
|
||||||
|
return "Call Of Duty: Black Ops";
|
||||||
|
}
|
||||||
|
|
||||||
|
std::string GameT5::GetShortName()
|
||||||
|
{
|
||||||
|
return "T5";
|
||||||
|
}
|
||||||
|
|
||||||
|
void GameT5::AddZone(Zone* zone)
|
||||||
|
{
|
||||||
|
m_zones.push_back(zone);
|
||||||
|
}
|
||||||
|
|
||||||
|
void GameT5::RemoveZone(Zone* zone)
|
||||||
|
{
|
||||||
|
const auto foundEntry = std::find(m_zones.begin(), m_zones.end(), zone);
|
||||||
|
|
||||||
|
if (foundEntry != m_zones.end())
|
||||||
|
m_zones.erase(foundEntry);
|
||||||
|
}
|
||||||
|
|
||||||
|
std::vector<Zone*> GameT5::GetZones()
|
||||||
|
{
|
||||||
|
return m_zones;
|
||||||
|
}
|
||||||
|
|
||||||
|
std::vector<GameLanguagePrefix> GameT5::GetLanguagePrefixes()
|
||||||
|
{
|
||||||
|
std::vector<GameLanguagePrefix> prefixes;
|
||||||
|
|
||||||
|
prefixes.emplace_back(GameLanguage::LANGUAGE_ENGLISH, "en_");
|
||||||
|
prefixes.emplace_back(GameLanguage::LANGUAGE_FRENCH, "fr_");
|
||||||
|
prefixes.emplace_back(GameLanguage::LANGUAGE_FRENCH_CAN, "fc_");
|
||||||
|
prefixes.emplace_back(GameLanguage::LANGUAGE_GERMAN, "ge_");
|
||||||
|
prefixes.emplace_back(GameLanguage::LANGUAGE_AUSTRIAN, "ge_");
|
||||||
|
prefixes.emplace_back(GameLanguage::LANGUAGE_ITALIAN, "it_");
|
||||||
|
prefixes.emplace_back(GameLanguage::LANGUAGE_SPANISH, "sp_");
|
||||||
|
prefixes.emplace_back(GameLanguage::LANGUAGE_BRITISH, "br_");
|
||||||
|
prefixes.emplace_back(GameLanguage::LANGUAGE_RUSSIAN, "ru_");
|
||||||
|
prefixes.emplace_back(GameLanguage::LANGUAGE_POLISH, "po_");
|
||||||
|
prefixes.emplace_back(GameLanguage::LANGUAGE_KOREAN, "ko_");
|
||||||
|
prefixes.emplace_back(GameLanguage::LANGUAGE_JAPANESE, "ja_");
|
||||||
|
prefixes.emplace_back(GameLanguage::LANGUAGE_CZECH, "cz_");
|
||||||
|
|
||||||
|
return prefixes;
|
||||||
|
}
|
17
src/Common/Game/T5/GameT5.h
Normal file
17
src/Common/Game/T5/GameT5.h
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "Game/IGame.h"
|
||||||
|
|
||||||
|
class GameT5 : public IGame
|
||||||
|
{
|
||||||
|
std::vector<Zone*> m_zones;
|
||||||
|
|
||||||
|
public:
|
||||||
|
std::string GetFullName() override;
|
||||||
|
std::string GetShortName() override;
|
||||||
|
void AddZone(Zone* zone) override;
|
||||||
|
void RemoveZone(Zone* zone) override;
|
||||||
|
std::vector<Zone*> GetZones() override;
|
||||||
|
std::vector<GameLanguagePrefix> GetLanguagePrefixes() override;
|
||||||
|
};
|
||||||
|
|
||||||
|
extern GameT5 g_GameT5;
|
113
src/Common/Game/T5/T5.h
Normal file
113
src/Common/Game/T5/T5.h
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
//#include <d3d9.h>
|
||||||
|
#include "Image/Texture.h"
|
||||||
|
|
||||||
|
#include "T5_Assets.h"
|
||||||
|
|
||||||
|
namespace T5
|
||||||
|
{
|
||||||
|
struct ScriptStringList
|
||||||
|
{
|
||||||
|
int count;
|
||||||
|
const char** strings;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct XAsset
|
||||||
|
{
|
||||||
|
XAssetType type;
|
||||||
|
XAssetHeader header;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct XAssetList
|
||||||
|
{
|
||||||
|
ScriptStringList stringList;
|
||||||
|
int assetCount;
|
||||||
|
XAsset* assets;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct cspField_t
|
||||||
|
{
|
||||||
|
const char* szName;
|
||||||
|
int iOffset;
|
||||||
|
int iFieldType;
|
||||||
|
};
|
||||||
|
|
||||||
|
enum csParseFieldType_t
|
||||||
|
{
|
||||||
|
CSPFT_STRING,
|
||||||
|
CSPFT_STRING_MAX_STRING_CHARS,
|
||||||
|
CSPFT_STRING_MAX_QPATH,
|
||||||
|
CSPFT_STRING_MAX_OSPATH,
|
||||||
|
CSPFT_INT,
|
||||||
|
CSPFT_BOOL,
|
||||||
|
CSPFT_QBOOLEAN,
|
||||||
|
CSPFT_FLOAT,
|
||||||
|
CSPFT_MILLISECONDS,
|
||||||
|
CSPFT_FX,
|
||||||
|
CSPFT_XMODEL,
|
||||||
|
CSPFT_MATERIAL,
|
||||||
|
CSPFT_MATERIAL_STREAM,
|
||||||
|
CSPFT_PHYS_PRESET,
|
||||||
|
CSPFT_SCRIPT_STRING,
|
||||||
|
|
||||||
|
CSPFT_NUM_BASE_FIELD_TYPES
|
||||||
|
};
|
||||||
|
|
||||||
|
enum weapFieldType_t
|
||||||
|
{
|
||||||
|
WFT_WEAPONTYPE = CSPFT_NUM_BASE_FIELD_TYPES,
|
||||||
|
WFT_WEAPONCLASS,
|
||||||
|
WFT_OVERLAYRETICLE,
|
||||||
|
WFT_PENETRATE_TYPE,
|
||||||
|
WFT_IMPACT_TYPE,
|
||||||
|
WFT_STANCE,
|
||||||
|
WFT_PROJ_EXPLOSION,
|
||||||
|
WFT_OFFHAND_CLASS,
|
||||||
|
WFT_OFFHAND_SLOT,
|
||||||
|
WFT_ANIMTYPE,
|
||||||
|
WFT_ACTIVE_RETICLE_TYPE,
|
||||||
|
WFT_GUIDED_MISSILE_TYPE,
|
||||||
|
WFT_BOUNCE_SOUND,
|
||||||
|
WFT_STICKINESS,
|
||||||
|
WFT_ROTATETYPE,
|
||||||
|
WFT_OVERLAYINTERFACE,
|
||||||
|
WFT_INVENTORYTYPE,
|
||||||
|
WFT_FIRETYPE,
|
||||||
|
WFT_CLIPTYPE,
|
||||||
|
WFT_AMMOCOUNTER_CLIPTYPE,
|
||||||
|
WFT_ICONRATIO_HUD,
|
||||||
|
WFT_ICONRATIO_AMMOCOUNTER,
|
||||||
|
WFT_ICONRATIO_KILL,
|
||||||
|
WFT_ICONRATIO_DPAD,
|
||||||
|
WFT_ICONRATIO_INDICATOR,
|
||||||
|
WFT_HIDETAGS,
|
||||||
|
WFT_EXPLOSION_TAG,
|
||||||
|
WFT_NOTETRACKSOUNDMAP,
|
||||||
|
|
||||||
|
WFT_NUM_FIELD_TYPES
|
||||||
|
};
|
||||||
|
|
||||||
|
enum VehicleFieldType
|
||||||
|
{
|
||||||
|
VFT_TYPE = CSPFT_NUM_BASE_FIELD_TYPES,
|
||||||
|
VFT_CAMERAMODE,
|
||||||
|
VFT_BOOSTMODE,
|
||||||
|
VFT_TRACTION_TYPE,
|
||||||
|
VFT_MPH_TO_INCHES_PER_SECOND,
|
||||||
|
VFT_POUNDS_TO_GAME_MASS,
|
||||||
|
VFT_SCR_STRING,
|
||||||
|
VFT_TEAM,
|
||||||
|
VFT_KEY_BINDING,
|
||||||
|
VFT_GRAPH,
|
||||||
|
|
||||||
|
VFT_NUM
|
||||||
|
};
|
||||||
|
|
||||||
|
enum constraintsFieldType_t
|
||||||
|
{
|
||||||
|
CFT_TYPE = CSPFT_NUM_BASE_FIELD_TYPES,
|
||||||
|
|
||||||
|
CFT_NUM_FIELD_TYPES
|
||||||
|
};
|
||||||
|
}
|
4126
src/Common/Game/T5/T5_Assets.h
Normal file
4126
src/Common/Game/T5/T5_Assets.h
Normal file
File diff suppressed because it is too large
Load Diff
0
src/Linker/Game/T5/ZoneCreatorT5.cpp
Normal file
0
src/Linker/Game/T5/ZoneCreatorT5.cpp
Normal file
0
src/Linker/Game/T5/ZoneCreatorT5.h
Normal file
0
src/Linker/Game/T5/ZoneCreatorT5.h
Normal file
0
src/ObjCommon/Game/T5/ObjConstantsT5.h
Normal file
0
src/ObjCommon/Game/T5/ObjConstantsT5.h
Normal file
0
src/ObjLoading/Game/T5/ObjLoaderT5.cpp
Normal file
0
src/ObjLoading/Game/T5/ObjLoaderT5.cpp
Normal file
0
src/ObjLoading/Game/T5/ObjLoaderT5.h
Normal file
0
src/ObjLoading/Game/T5/ObjLoaderT5.h
Normal file
0
src/ObjWriting/Game/T5/ZoneDumperT5.cpp
Normal file
0
src/ObjWriting/Game/T5/ZoneDumperT5.cpp
Normal file
0
src/ObjWriting/Game/T5/ZoneDumperT5.h
Normal file
0
src/ObjWriting/Game/T5/ZoneDumperT5.h
Normal file
0
src/Unlinker/Game/T5/ZoneDefWriterT5.cpp
Normal file
0
src/Unlinker/Game/T5/ZoneDefWriterT5.cpp
Normal file
0
src/Unlinker/Game/T5/ZoneDefWriterT5.h
Normal file
0
src/Unlinker/Game/T5/ZoneDefWriterT5.h
Normal file
@ -67,6 +67,41 @@ ZoneCode.Assets = {
|
|||||||
"AddonMapEnts"
|
"AddonMapEnts"
|
||||||
},
|
},
|
||||||
|
|
||||||
|
T5 = {
|
||||||
|
"PhysPreset",
|
||||||
|
"PhysConstraints",
|
||||||
|
"DestructibleDef",
|
||||||
|
"XAnimParts",
|
||||||
|
"XModel",
|
||||||
|
"Material",
|
||||||
|
"MaterialTechniqueSet",
|
||||||
|
"GfxImage",
|
||||||
|
"SndBank",
|
||||||
|
"SndPatch",
|
||||||
|
"clipMap_t",
|
||||||
|
"ComWorld",
|
||||||
|
"GameWorldSp",
|
||||||
|
"GameWorldMp",
|
||||||
|
"MapEnts",
|
||||||
|
"GfxWorld",
|
||||||
|
"GfxLightDef",
|
||||||
|
"Font_s",
|
||||||
|
"MenuList",
|
||||||
|
"menuDef_t",
|
||||||
|
"LocalizeEntry",
|
||||||
|
"WeaponVariantDef",
|
||||||
|
"SndDriverGlobals",
|
||||||
|
"FxEffectDef",
|
||||||
|
"FxImpactTable",
|
||||||
|
"RawFile",
|
||||||
|
"StringTable",
|
||||||
|
"PackIndex",
|
||||||
|
"XGlobals",
|
||||||
|
"ddlRoot_t",
|
||||||
|
"Glasses",
|
||||||
|
"EmblemSet"
|
||||||
|
},
|
||||||
|
|
||||||
T6 = {
|
T6 = {
|
||||||
"PhysPreset",
|
"PhysPreset",
|
||||||
"PhysConstraints",
|
"PhysConstraints",
|
||||||
@ -243,6 +278,10 @@ function ZoneCode:project()
|
|||||||
self:outputForAssets(self.Assets.IW4)
|
self:outputForAssets(self.Assets.IW4)
|
||||||
filter {}
|
filter {}
|
||||||
|
|
||||||
|
filter "files:**/T5.gen"
|
||||||
|
self:outputForAssets(self.Assets.T5)
|
||||||
|
filter {}
|
||||||
|
|
||||||
filter "files:**/T6.gen"
|
filter "files:**/T6.gen"
|
||||||
self:outputForAssets(self.Assets.T6)
|
self:outputForAssets(self.Assets.T6)
|
||||||
filter {}
|
filter {}
|
||||||
|
0
src/ZoneCode/Game/T5/T5.gen
Normal file
0
src/ZoneCode/Game/T5/T5.gen
Normal file
0
src/ZoneCode/Game/T5/T5.h
Normal file
0
src/ZoneCode/Game/T5/T5.h
Normal file
0
src/ZoneCode/Game/T5/T5_Commands.txt
Normal file
0
src/ZoneCode/Game/T5/T5_Commands.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/ComWorld.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/ComWorld.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/DestructibleDef.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/DestructibleDef.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/EmblemSet.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/EmblemSet.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/Font_s.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/Font_s.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/FxEffectDef.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/FxEffectDef.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/FxImpactTable.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/FxImpactTable.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/GameWorldMp.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/GameWorldMp.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/GameWorldSp.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/GameWorldSp.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/GfxImage.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/GfxImage.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/GfxLightDef.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/GfxLightDef.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/GfxWorld.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/GfxWorld.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/Glasses.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/Glasses.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/LocalizeEntry.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/LocalizeEntry.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/MapEnts.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/MapEnts.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/Material.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/Material.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/MenuList.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/MenuList.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/PackIndex.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/PackIndex.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/PhysConstraints.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/PhysConstraints.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/PhysPreset.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/PhysPreset.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/RawFile.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/RawFile.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/SndBank.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/SndBank.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/SndDriverGlobals.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/SndDriverGlobals.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/SndPatch.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/SndPatch.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/StringTable.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/StringTable.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/WeaponVariantDef.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/WeaponVariantDef.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/XAnimParts.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/XAnimParts.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/XGlobals.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/XGlobals.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/XModel.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/XModel.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/clipMap_t.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/clipMap_t.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/ddlRoot_t.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/ddlRoot_t.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/menuDef_t.txt
Normal file
0
src/ZoneCode/Game/T5/XAssets/menuDef_t.txt
Normal file
0
src/ZoneCommon/Game/T5/GameAssetPoolT5.cpp
Normal file
0
src/ZoneCommon/Game/T5/GameAssetPoolT5.cpp
Normal file
0
src/ZoneCommon/Game/T5/GameAssetPoolT5.h
Normal file
0
src/ZoneCommon/Game/T5/GameAssetPoolT5.h
Normal file
0
src/ZoneCommon/Game/T5/ZoneConstantsT5.h
Normal file
0
src/ZoneCommon/Game/T5/ZoneConstantsT5.h
Normal file
0
src/ZoneLoading/Game/T5/ContentLoaderT5.cpp
Normal file
0
src/ZoneLoading/Game/T5/ContentLoaderT5.cpp
Normal file
0
src/ZoneLoading/Game/T5/ContentLoaderT5.h
Normal file
0
src/ZoneLoading/Game/T5/ContentLoaderT5.h
Normal file
0
src/ZoneLoading/Game/T5/ZoneLoaderFactoryT5.cpp
Normal file
0
src/ZoneLoading/Game/T5/ZoneLoaderFactoryT5.cpp
Normal file
0
src/ZoneLoading/Game/T5/ZoneLoaderFactoryT5.h
Normal file
0
src/ZoneLoading/Game/T5/ZoneLoaderFactoryT5.h
Normal file
0
src/ZoneWriting/Game/T5/ContentWriterT5.cpp
Normal file
0
src/ZoneWriting/Game/T5/ContentWriterT5.cpp
Normal file
0
src/ZoneWriting/Game/T5/ContentWriterT5.h
Normal file
0
src/ZoneWriting/Game/T5/ContentWriterT5.h
Normal file
0
src/ZoneWriting/Game/T5/ZoneWriterFactoryT5.cpp
Normal file
0
src/ZoneWriting/Game/T5/ZoneWriterFactoryT5.cpp
Normal file
0
src/ZoneWriting/Game/T5/ZoneWriterFactoryT5.h
Normal file
0
src/ZoneWriting/Game/T5/ZoneWriterFactoryT5.h
Normal file
Loading…
x
Reference in New Issue
Block a user