Skip to content
This repository has been archived by the owner. It is now read-only.
Permalink
Browse files
fix Messages.cpp
  • Loading branch information
Fire-Head committed Oct 27, 2019
1 parent ff02fc1 commit 649aea7bf776574c86a1ef3c69305bfd6ea4a09e
Showing with 49 additions and 49 deletions.
  1. +49 −49 src/text/Messages.cpp
@@ -1,58 +1,58 @@
#define DIRECTINPUT_VERSION 0x0800
#include "dinput.h"

#include "common.h"
#include "patcher.h"
#include "Messages.h"
#include "RwHelper.h"
#include "Hud.h"
#include "User.h"
#include "Timer.h"
#include "Text.h"

#include "ControllerConfig.h"

tMessage(&CMessages::BriefMessages)[NUMBRIEFMESSAGES] = *(tMessage(*)[NUMBRIEFMESSAGES])*(uintptr*)0x8786E0;
tPreviousBrief(&CMessages::PreviousBriefs)[NUMPREVIOUSBRIEFS] = *(tPreviousBrief(*)[NUMPREVIOUSBRIEFS])*(uintptr*)0x713C08;
tBigMessage(&CMessages::BIGMessages)[NUMBIGMESSAGES] = *(tBigMessage(*)[NUMBIGMESSAGES])*(uintptr*)0x773628;
char CMessages::PreviousMissionTitle[16]; // unused

void
CMessages::Init()
#define DIRECTINPUT_VERSION 0x0800
#include "dinput.h"

#include "common.h"
#include "patcher.h"
#include "Messages.h"
#include "RwHelper.h"
#include "Hud.h"
#include "User.h"
#include "Timer.h"
#include "Text.h"

#include "ControllerConfig.h"

tMessage(&CMessages::BriefMessages)[NUMBRIEFMESSAGES] = *(tMessage(*)[NUMBRIEFMESSAGES])*(uintptr*)0x8786E0;
tPreviousBrief(&CMessages::PreviousBriefs)[NUMPREVIOUSBRIEFS] = *(tPreviousBrief(*)[NUMPREVIOUSBRIEFS])*(uintptr*)0x713C08;
tBigMessage(&CMessages::BIGMessages)[NUMBIGMESSAGES] = *(tBigMessage(*)[NUMBIGMESSAGES])*(uintptr*)0x773628;
char CMessages::PreviousMissionTitle[16]; // unused

void
CMessages::Init()
{
ClearMessages();

for (int32 i = 0; i < NUMPREVIOUSBRIEFS; i++) {
PreviousBriefs[i].m_pText = nil;
PreviousBriefs[i].m_pString = nil;
}
}

uint16
CMessages::GetWideStringLength(wchar *src)
for (int32 i = 0; i < NUMPREVIOUSBRIEFS; i++) {
PreviousBriefs[i].m_pText = nil;
PreviousBriefs[i].m_pString = nil;
}
}

uint16
CMessages::GetWideStringLength(wchar *src)
{
uint16 length = 0;
while (*(src++)) length++;
return length;
}

void
CMessages::WideStringCopy(wchar *dst, wchar *src, uint16 size)
return length;
}

void
CMessages::WideStringCopy(wchar *dst, wchar *src, uint16 size)
{
int32 i = 0;
if (src) {
if (src) {
while (i < size - 1) {
if (!src[i]) break;
dst[i] = src[i];
i++;
}
} else {
}
} else {
while (i < size - 1)
dst[i++] = '\0';
}
dst[i] = '\0';
}

dst[i++] = '\0';
}
dst[i] = '\0';
}

bool
CMessages::WideStringCompare(wchar *str1, wchar *str2, uint16 size)
{
@@ -251,11 +251,11 @@ CMessages::AddMessageSoon(wchar *msg, uint32 time, uint16 flag)
void
CMessages::ClearMessages()
{
for (int32 i = 0; i < NUMBIGMESSAGES; i++) {
for (int32 j = 0; j < 4; j++) {
BIGMessages[i].m_Stack[j].m_pText = nil;
BIGMessages[i].m_Stack[j].m_pString = nil;
}
for (int32 i = 0; i < NUMBIGMESSAGES; i++) {
for (int32 j = 0; j < 4; j++) {
BIGMessages[i].m_Stack[j].m_pText = nil;
BIGMessages[i].m_Stack[j].m_pString = nil;
}
}
ClearSmallMessagesOnly();
}
@@ -442,7 +442,7 @@ CMessages::InsertPlayerControlKeysInString(wchar *str)
for (i = 0; i < strSize;) {
if (str[i] == '~' && str[i + 1] == 'k' && str[i + 2] == '~') {
i += 4;
for (int32 cont = 0; cont < TOTAL_CONTROL_ACTIONS; cont++) {
for (int32 cont = 0; cont < MAX_CONTROLLERACTIONS; cont++) {
uint16 contSize = GetWideStringLength(ControlsManager.m_aActionNames[cont]);
if (contSize != 0) {
if (WideStringCompare(&str[i], ControlsManager.m_aActionNames[cont], contSize)) {
@@ -832,4 +832,4 @@ STARTPATCHES
InjectHook(0x52B140, CMessages::ClearThisPrint, PATCH_JUMP);
InjectHook(0x52B3C0, CMessages::ClearThisBigPrint, PATCH_JUMP);
InjectHook(0x52B670, CMessages::ClearAllMessagesDisplayedByGame, PATCH_JUMP);
ENDPATCHES
ENDPATCHES

0 comments on commit 649aea7

Please sign in to comment.