Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Texture filtering set in menumanager
Broken mobile shadows (disabled by a macro)
- Loading branch information
There are no files selected for viewing
|
|
@@ -9,6 +9,11 @@ signed char CAERadioTrackManager::bTracksPlayedRecently[NUM_RADIOSTATIONS]; |
|
static std::map<short,tVehicleAudioSettings> AudioSettingsMap;
|
|
static std::map<short,tVehicleAudioSettings> AudioSettingsMap;
|
|
|
|
|
|
WRAPPER void CAudioEngine::ReportFrontendAudioEvent(long nSoundID, float fUnk, float fVolume) { WRAPARG(nSoundID); WRAPARG(fUnk); WRAPARG(fVolume); EAXJMP(0x506EA0); }
|
|
WRAPPER void CAudioEngine::ReportFrontendAudioEvent(long nSoundID, float fUnk, float fVolume) { WRAPARG(nSoundID); WRAPARG(fUnk); WRAPARG(fVolume); EAXJMP(0x506EA0); }
|
|
|
|
WRAPPER void CAudioEngine::SetMusicMasterVolume(signed char nVolume) { WRAPARG(nVolume); EAXJMP(0x506DE0); };
|
|
|
|
WRAPPER void CAudioEngine::SetEffectsMasterVolume(signed char nVolume) { WRAPARG(nVolume); EAXJMP(0x506E10); }
|
|
|
|
WRAPPER void CAudioEngine::SetRadioAutoRetuneOnOff(bool bRetune) { WRAPARG(bRetune); EAXJMP(0x506F80); }
|
|
|
|
WRAPPER void CAudioEngine::RetuneRadio(signed char nStation) { WRAPARG(nStation); EAXJMP(0x507E10); }
|
|
|
|
|
|
|
|
|
|
signed char CAERadioTrackManager::GetNextTrackByStation(BYTE stationID)
|
|
signed char CAERadioTrackManager::GetNextTrackByStation(BYTE stationID)
|
|
{
|
|
{
|
|
|
|
|
|
@@ -83,6 +83,10 @@ class CAudioEngine |
|
{
|
|
{
|
|
public:
|
|
public:
|
|
void ReportFrontendAudioEvent(long nSoundID, float fUnk, float fVolume);
|
|
void ReportFrontendAudioEvent(long nSoundID, float fUnk, float fVolume);
|
|
|
|
void SetMusicMasterVolume(signed char nVolume);
|
|
|
|
void SetEffectsMasterVolume(signed char nVolume);
|
|
|
|
void SetRadioAutoRetuneOnOff(bool bRetune);
|
|
|
|
void RetuneRadio(signed char nStation);
|
|
};
|
|
};
|
|
|
|
|
|
extern CAudioEngine& AudioEngine;
|
|
extern CAudioEngine& AudioEngine;
|
|
|
|
|
|
@@ -4,6 +4,8 @@ |
|
#include "Sprite.h"
|
|
#include "Sprite.h"
|
|
|
|
|
|
bool CCamera::bDontTouchFOVInWidescreen;
|
|
bool CCamera::bDontTouchFOVInWidescreen;
|
|
|
|
float& CCamera::m_fMouseAccelHorzntl = *(float*)0xB6EC1C;
|
|
|
|
bool& CCamera::m_bUseMouse3rdPerson = *(bool*)0xB6EC2E;
|
|
|
|
|
|
WRAPPER void CamShakeNoPos(CCamera* pCamera, float fStrength) { WRAPARG(pCamera); WRAPARG(fStrength); EAXJMP(0x50A970); }
|
|
WRAPPER void CamShakeNoPos(CCamera* pCamera, float fStrength) { WRAPARG(pCamera); WRAPARG(fStrength); EAXJMP(0x50A970); }
|
|
|
|
|
|
|
|
|
|
@@ -290,7 +290,7 @@ class CCamera : public CPlaceable |
|
bool m_bCooperativeCamMode;
|
|
bool m_bCooperativeCamMode;
|
|
bool m_bAllowShootingWith2PlayersInCar;
|
|
bool m_bAllowShootingWith2PlayersInCar;
|
|
bool m_bDisableFirstPersonInCar;
|
|
bool m_bDisableFirstPersonInCar;
|
|
static bool m_bUseMouse3rdPerson;
|
|
static bool& m_bUseMouse3rdPerson;
|
|
|
|
|
|
short m_ModeForTwoPlayersSeparateCars;
|
|
short m_ModeForTwoPlayersSeparateCars;
|
|
short m_ModeForTwoPlayersSameCarShootingAllowed;
|
|
short m_ModeForTwoPlayersSameCarShootingAllowed;
|
|
|
@@ -404,7 +404,7 @@ class CCamera : public CPlaceable |
|
float m_fStartingFOVForInterPol;
|
|
float m_fStartingFOVForInterPol;
|
|
|
|
|
|
// These ones are static so that they don't get cleared in CCamera::Init()
|
|
// These ones are static so that they don't get cleared in CCamera::Init()
|
|
static float m_fMouseAccelHorzntl;// acceleration multiplier for 1st person controls
|
|
static float& m_fMouseAccelHorzntl;// acceleration multiplier for 1st person controls
|
|
static float m_fMouseAccelVertical;// acceleration multiplier for 1st person controls
|
|
static float m_fMouseAccelVertical;// acceleration multiplier for 1st person controls
|
|
static float m_f3rdPersonCHairMultX;
|
|
static float m_f3rdPersonCHairMultX;
|
|
static float m_f3rdPersonCHairMultY;
|
|
static float m_f3rdPersonCHairMultY;
|
|
|
|
|
|
@@ -19,12 +19,15 @@ void CControllerConfigManager::SaveToFile() |
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
void CControllerConfigManager::LoadFromFile()
|
|
bool CControllerConfigManager::LoadFromFile()
|
|
{
|
|
{
|
|
|
|
bool bResult = false;
|
|
|
|
|
|
if ( FILE* hFile = CFileMgr::OpenFile("controls.set", "rb") )
|
|
if ( FILE* hFile = CFileMgr::OpenFile("controls.set", "rb") )
|
|
{
|
|
{
|
|
LoadSettings(hFile);
|
|
bResult = LoadSettings(hFile);
|
|
|
|
|
|
CFileMgr::CloseFile(hFile);
|
|
CFileMgr::CloseFile(hFile);
|
|
}
|
|
}
|
|
|
|
return bResult;
|
|
}
|
|
}
|
|
|
@@ -3,6 +3,13 @@ |
|
|
|
|
|
#define CONTROLS_FILE_VERSION 1
|
|
#define CONTROLS_FILE_VERSION 1
|
|
|
|
|
|
|
|
class CMousePointerStateHelper
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
bool m_bVerticalInvert;
|
|
|
|
bool m_bHorizontalInvert;
|
|
|
|
};
|
|
|
|
|
|
class CControllerConfigManager
|
|
class CControllerConfigManager
|
|
{
|
|
{
|
|
public:
|
|
public:
|
|
|
@@ -12,10 +19,11 @@ class CControllerConfigManager |
|
bool GetIsKeyboardKeyDown(RsKeyCodes eKey);
|
|
bool GetIsKeyboardKeyDown(RsKeyCodes eKey);
|
|
|
|
|
|
void SaveToFile();
|
|
void SaveToFile();
|
|
void LoadFromFile();
|
|
bool LoadFromFile();
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
extern CControllerConfigManager& ControlsManager;
|
|
extern CControllerConfigManager& ControlsManager;
|
|
|
|
extern CMousePointerStateHelper& MousePointerStateHelper;
|
|
|
|
|
|
#endif
|
|
#endif
|
|
|
@@ -21,12 +21,15 @@ char CFileLoader::m_cParticlesPath[64] = "MODELS\\PARTICLE.TXD"; |
|
char CFileLoader::m_cPedgrpPath[64] = "DATA\\PEDGRP.DAT";
|
|
char CFileLoader::m_cPedgrpPath[64] = "DATA\\PEDGRP.DAT";
|
|
char CFileLoader::m_cPopcyclePath[64] = "DATA\\POPCYCLE.DAT";
|
|
char CFileLoader::m_cPopcyclePath[64] = "DATA\\POPCYCLE.DAT";
|
|
char CFileLoader::m_cTimecycPath[64] = "DATA\\TIMECYC.DAT";
|
|
char CFileLoader::m_cTimecycPath[64] = "DATA\\TIMECYC.DAT";
|
|
char CFileLoader::m_cFrontendPath[64] = "\0";
|
|
char CFileLoader::m_cFrontendPath[64] = "";
|
|
char CFileLoader::m_cP2dfxPath[64];
|
|
char CFileLoader::m_cP2dfxPath[64];
|
|
|
|
|
|
unsigned char CFileLoader::m_bCurrentEncryptionType;
|
|
unsigned char CFileLoader::m_bCurrentEncryptionType;
|
|
|
|
|
|
// Wrappers
|
|
// Wrappers
|
|
|
|
WRAPPER void CFileMgr::SetDirMyDocuments() { EAXJMP(0x538860); }
|
|
|
|
WRAPPER void CFileMgr::SetDir(const char* pDir) { WRAPARG(pDir); EAXJMP(0x5387D0); }
|
|
|
|
|
|
WRAPPER void CFileLoader::LoadObjectTypes(const char* pFileName) { WRAPARG(pFileName); EAXJMP(0x5B8400); }
|
|
WRAPPER void CFileLoader::LoadObjectTypes(const char* pFileName) { WRAPARG(pFileName); EAXJMP(0x5B8400); }
|
|
WRAPPER void CFileLoader::LoadScene(const char* pFileName) { WRAPARG(pFileName); EAXJMP(0x5B8700); }
|
|
WRAPPER void CFileLoader::LoadScene(const char* pFileName) { WRAPARG(pFileName); EAXJMP(0x5B8700); }
|
|
WRAPPER void CFileLoader::LoadCollisionFile(const char* pFileName, unsigned char bUnk) { WRAPARG(pFileName); WRAPARG(bUnk); EAXJMP(0x5B4E60); }
|
|
WRAPPER void CFileLoader::LoadCollisionFile(const char* pFileName, unsigned char bUnk) { WRAPARG(pFileName); WRAPARG(bUnk); EAXJMP(0x5B4E60); }
|
|
|
|
|
|
@@ -15,10 +15,13 @@ class CFileMgr |
|
{ return fgets(str, num, stream) != nullptr; }
|
|
{ return fgets(str, num, stream) != nullptr; }
|
|
static inline size_t Read(FILE* stream, void* buf, size_t len)
|
|
static inline size_t Read(FILE* stream, void* buf, size_t len)
|
|
{ return fread(buf, 1, len, stream); }
|
|
{ return fread(buf, 1, len, stream); }
|
|
static inline size_t Write(FILE* stream, const char* ptr, size_t len)
|
|
static inline size_t Write(FILE* stream, const void* ptr, size_t len)
|
|
{ return fwrite(ptr, 1, len, stream); }
|
|
{ return fwrite(ptr, 1, len, stream); }
|
|
static inline bool Seek(FILE* stream, long pos, int from)
|
|
static inline bool Seek(FILE* stream, long pos, int from)
|
|
{ return fseek(stream, pos, from) != 0; }
|
|
{ return fseek(stream, pos, from) != 0; }
|
|
|
|
|
|
|
|
static void SetDirMyDocuments();
|
|
|
|
static void SetDir(const char* pDir);
|
|
};
|
|
};
|
|
|
|
|
|
// Now uses multiple lists
|
|
// Now uses multiple lists
|
|
|
|
Oops, something went wrong.