Skip to content

Commit

Permalink
Revert "Add engineSet/GetModelTime (multitheftauto#752)" (multithefta…
Browse files Browse the repository at this point in the history
…uto#1588)

This reverts commit 429c0b7.
  • Loading branch information
qaisjp committed Aug 2, 2020
1 parent c5ebd7f commit 0e03a42
Show file tree
Hide file tree
Showing 10 changed files with 1 addition and 142 deletions.
5 changes: 0 additions & 5 deletions Client/game_sa/CGameSA.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -836,11 +836,6 @@ void CGameSA::ResetModelLodDistances()
CModelInfoSA::StaticResetLodDistances();
}

void CGameSA::ResetModelTimes()
{
CModelInfoSA::StaticResetModelTimes();
}

void CGameSA::ResetAlphaTransparencies()
{
CModelInfoSA::StaticResetAlphaTransparencies();
Expand Down
1 change: 0 additions & 1 deletion Client/game_sa/CGameSA.h
Original file line number Diff line number Diff line change
Expand Up @@ -417,7 +417,6 @@ class CGameSA : public CGame
void ResetModelLodDistances();
void ResetAlphaTransparencies();
void DisableVSync();
void ResetModelTimes();

void OnPedContextChange(CPed* pPedContext);
CPed* GetPedContext();
Expand Down
46 changes: 0 additions & 46 deletions Client/game_sa/CModelInfoSA.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ std::map<unsigned short, int> CModelInfo
std::map<DWORD, float> CModelInfoSA::ms_ModelDefaultLodDistanceMap;
std::map<DWORD, BYTE> CModelInfoSA::ms_ModelDefaultAlphaTransparencyMap;
std::unordered_map<std::uint32_t, std::map<eVehicleDummies, CVector>> CModelInfoSA::ms_ModelDefaultDummiesPosition;
std::map<TimeInfo*, TimeInfo*> CModelInfoSA::ms_ModelDefaultModelTimeInfo;
std::unordered_map<DWORD, unsigned short> CModelInfoSA::ms_OriginalObjectPropertiesGroups;

CModelInfoSA::CModelInfoSA()
Expand Down Expand Up @@ -563,51 +562,6 @@ float CModelInfoSA::GetLODDistance()
return 0.0f;
}

bool CModelInfoSA::SetTime(char cHourOn, char cHourOff)
{
m_pInterface = ppModelInfo[m_dwModelID];
if (!m_pInterface)
return false;

TimeInfo* pTime = ((TimeInfo*(*)(void))m_pInterface->VFTBL->GetTimeInfo)();
if (!pTime)
return false;

if (!MapContains(ms_ModelDefaultModelTimeInfo, pTime))
MapSet(ms_ModelDefaultModelTimeInfo, pTime, new TimeInfo(pTime->m_nTimeOn, pTime->m_nTimeOff, pTime->m_wOtherTimeModel));

pTime->m_nTimeOn = cHourOn;
pTime->m_nTimeOff = cHourOff;
return true;
}

bool CModelInfoSA::GetTime(char& cHourOn, char& cHourOff)
{
m_pInterface = ppModelInfo[m_dwModelID];
if (!m_pInterface)
return false;

TimeInfo* time = ((TimeInfo*(*)(void))m_pInterface->VFTBL->GetTimeInfo)();
if (!time)
return false;

cHourOn = time->m_nTimeOn;
cHourOff = time->m_nTimeOff;
return true;
}

void CModelInfoSA::StaticResetModelTimes()
{
// Restore default values
for (std::map<TimeInfo*, TimeInfo*>::const_iterator iter = ms_ModelDefaultModelTimeInfo.begin(); iter != ms_ModelDefaultModelTimeInfo.end(); ++iter)
{
iter->first->m_nTimeOn = iter->second->m_nTimeOn;
iter->first->m_nTimeOff = iter->second->m_nTimeOff;
}

ms_ModelDefaultModelTimeInfo.clear();
}

float CModelInfoSA::GetOriginalLODDistance()
{
// Return default LOD distance value (if doesn't exist, LOD distance hasn't been changed)
Expand Down
4 changes: 0 additions & 4 deletions Client/game_sa/CModelInfoSA.h
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,6 @@ class CModelInfoSA : public CModelInfo
static std::map<DWORD, float> ms_ModelDefaultLodDistanceMap;
static std::map<DWORD, BYTE> ms_ModelDefaultAlphaTransparencyMap;
static std::unordered_map<std::uint32_t, std::map<eVehicleDummies, CVector>> ms_ModelDefaultDummiesPosition;
static std::map<TimeInfo*, TimeInfo*> ms_ModelDefaultModelTimeInfo;
static std::unordered_map<DWORD, unsigned short> ms_OriginalObjectPropertiesGroups;
bool m_bAddedRefForCollision;
SVehicleSupportedUpgrades m_ModelSupportedUpgrades;
Expand Down Expand Up @@ -320,9 +319,6 @@ class CModelInfoSA : public CModelInfo
void RestreamIPL();
static void StaticFlushPendingRestreamIPL();
static void StaticSetHooks();
bool GetTime(char& cHourOn, char& cHourOff);
bool SetTime(char cHourOn, char cHourOff);
static void StaticResetModelTimes();

void SetAlphaTransparencyEnabled(BOOL bEnabled);
bool IsAlphaTransparencyEnabled();
Expand Down
1 change: 0 additions & 1 deletion Client/mods/deathmatch/logic/CClientGame.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3560,7 +3560,6 @@ void CClientGame::Event_OnIngame()

g_pGame->ResetModelLodDistances();
g_pGame->ResetAlphaTransparencies();
g_pGame->ResetModelTimes();

// Make sure we can access all areas
g_pGame->GetStats()->ModifyStat(CITIES_PASSED, 2.0);
Expand Down
74 changes: 1 addition & 73 deletions Client/mods/deathmatch/logic/luadefs/CLuaEngineDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,6 @@ void CLuaEngineDefs::LoadFunctions()
{"engineGetModelIDFromName", EngineGetModelIDFromName},
{"engineGetModelTextureNames", EngineGetModelTextureNames},
{"engineGetVisibleTextureNames", EngineGetVisibleTextureNames},
{"engineSetModelVisibleTime", EngineSetModelVisibleTime},
{"engineGetModelVisibleTime", EngineGetModelVisibleTime},
{"engineGetModelTextures", EngineGetModelTextures},
{"engineGetSurfaceProperties", EngineGetSurfaceProperties},
{"engineSetSurfaceProperties", EngineSetSurfaceProperties},
Expand Down Expand Up @@ -72,15 +70,13 @@ void CLuaEngineDefs::AddClass(lua_State* luaVM)
lua_classfunction(luaVM, "setAsynchronousLoading", "engineSetAsynchronousLoading");
lua_classfunction(luaVM, "setModelLODDistance", "engineSetModelLODDistance");
lua_classfunction(luaVM, "resetModelLODDistance", "engineResetModelLODDistance");
lua_classfunction(luaVM, "setModelVisibleTime", "engineSetModelVisibleTime");

lua_classfunction(luaVM, "getVisibleTextureNames", "engineGetVisibleTextureNames");
lua_classfunction(luaVM, "getModelLODDistance", "engineGetModelLODDistance");
lua_classfunction(luaVM, "getModelTextureNames", "engineGetModelTextureNames");
lua_classfunction(luaVM, "getModelTextures", "engineGetModelTextures");
lua_classfunction(luaVM, "getModelIDFromName", "engineGetModelIDFromName");
lua_classfunction(luaVM, "getModelNameFromID", "engineGetModelNameFromID");
lua_classfunction(luaVM, "getModelVisibleTime", "engineGetModelVisibleTime");
lua_classfunction(luaVM, "getModelPhysicalPropertiesGroup", "engineGetModelPhysicalPropertiesGroup");
lua_classfunction(luaVM, "setModelPhysicalPropertiesGroup", "engineSetModelPhysicalPropertiesGroup");
lua_classfunction(luaVM, "restoreModelPhysicalPropertiesGroup", "engineRestoreModelPhysicalPropertiesGroup");
Expand Down Expand Up @@ -775,7 +771,7 @@ int CLuaEngineDefs::EngineResetModelLODDistance(lua_State* luaVM)

if (argStream.HasErrors())
return luaL_error(luaVM, argStream.GetFullErrorMessage());

unsigned short usModelID = CModelNames::ResolveModelID(strModel);
CModelInfo* pModelInfo = g_pGame->GetModelInfo(usModelID);
if (pModelInfo)
Expand Down Expand Up @@ -1099,74 +1095,6 @@ int CLuaEngineDefs::EngineGetVisibleTextureNames(lua_State* luaVM)
return 1;
}

int CLuaEngineDefs::EngineSetModelVisibleTime(lua_State* luaVM)
{
// bool engineSetModelVisibleTime ( int/string modelID, int hourOn, int hourOff )
SString strModelId;
char cHourOn,cHourOff;
CScriptArgReader argStream(luaVM);
argStream.ReadString(strModelId);
argStream.ReadNumber(cHourOn);
argStream.ReadNumber(cHourOff);

if (!argStream.HasErrors())
{
ushort usModelID = CModelNames::ResolveModelID(strModelId);
CModelInfo* pModelInfo = g_pGame->GetModelInfo(usModelID);
if (pModelInfo)
{
if (cHourOn >= 0 && cHourOn <= 24 && cHourOff >= 0 && cHourOff <= 24)
{
lua_pushboolean(luaVM, pModelInfo->SetTime(cHourOn, cHourOff));
return 1;
}
}
}
else
luaL_error(luaVM, argStream.GetFullErrorMessage());

// Failed
lua_pushboolean(luaVM, false);
return 1;
}

int CLuaEngineDefs::EngineGetModelVisibleTime(lua_State* luaVM)
{
// int, int engineGetModelVisibleTime ( int/string modelID )
SString strModelId;

CScriptArgReader argStream(luaVM);
argStream.ReadString(strModelId);

if (!argStream.HasErrors())
{
ushort usModelID = CModelNames::ResolveModelID(strModelId);
CModelInfo* pModelInfo = g_pGame->GetModelInfo(usModelID);
if (pModelInfo)
{
char cHourOn, cHourOff;
if (pModelInfo->GetTime(cHourOn, cHourOff))
{
lua_pushnumber(luaVM, cHourOn);
lua_pushnumber(luaVM, cHourOff);
return 2;
}
else // Model is incompatible, don't let confuse user.
{
lua_pushnumber(luaVM, 0);
lua_pushnumber(luaVM, 24);
return 2;
}
}
}
else
luaL_error(luaVM, argStream.GetFullErrorMessage());

// Failed
lua_pushboolean(luaVM, false);
return 1;
}

int CLuaEngineDefs::EngineGetModelTextures(lua_State* luaVM)
{
// table engineGetModelTextures ( string/int modelName/modelID, string/table textureNames )
Expand Down
2 changes: 0 additions & 2 deletions Client/mods/deathmatch/logic/luadefs/CLuaEngineDefs.h
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,6 @@ class CLuaEngineDefs : public CLuaDefs
LUA_DECLARE(EngineGetModelIDFromName);
LUA_DECLARE(EngineGetModelTextureNames);
LUA_DECLARE(EngineGetVisibleTextureNames);
LUA_DECLARE(EngineSetModelVisibleTime);
LUA_DECLARE(EngineGetModelVisibleTime);
LUA_DECLARE(EngineGetModelTextures);
LUA_DECLARE(EngineSetSurfaceProperties);
LUA_DECLARE(EngineGetSurfaceProperties);
Expand Down
1 change: 0 additions & 1 deletion Client/sdk/game/CGame.h
Original file line number Diff line number Diff line change
Expand Up @@ -239,7 +239,6 @@ class __declspec(novtable) CGame
virtual void ResetModelLodDistances() = 0;
virtual void ResetAlphaTransparencies() = 0;
virtual void DisableVSync() = 0;
virtual void ResetModelTimes() = 0;

virtual void OnPedContextChange(CPed* pPedContext) = 0;
virtual CPed* GetPedContext() = 0;
Expand Down
2 changes: 0 additions & 2 deletions Client/sdk/game/CModelInfo.h
Original file line number Diff line number Diff line change
Expand Up @@ -129,8 +129,6 @@ class CModelInfo
virtual float GetOriginalLODDistance() = 0;
virtual void SetLODDistance(float fDistance, bool bOverrideMaxDistance = false) = 0;
virtual void RestreamIPL() = 0;
virtual bool GetTime(char& hourOn, char& hourOff) = 0;
virtual bool SetTime(char hourOn, char hourOff) = 0;

virtual void ModelAddRef(EModelRequestType requestType, const char* szTag /* = NULL*/) = 0;
virtual void RemoveRef(bool bRemoveExtraGTARef = false) = 0;
Expand Down
7 changes: 0 additions & 7 deletions Client/sdk/game/RenderWare.h
Original file line number Diff line number Diff line change
Expand Up @@ -424,10 +424,3 @@ struct RwError
{
int err1, err2;
};

struct TimeInfo {
TimeInfo(char timeOn, char timeOff, short OtherTimeModel) : m_nTimeOn(timeOn), m_nTimeOff(timeOff), m_wOtherTimeModel(OtherTimeModel) {};
char m_nTimeOn;
char m_nTimeOff;
short m_wOtherTimeModel;
};

0 comments on commit 0e03a42

Please sign in to comment.