HELLO GUYS ,
i know you helped me alot the previous days. last question i'll be asking is rendering the cicplayer so i can keep the color name changed. i tried to do it but my client crashes when selecting the char i believe its replaceaddr address issue
i know you helped me alot the previous days. last question i'll be asking is rendering the cicplayer so i can keep the color name changed. i tried to do it but my client crashes when selecting the char i believe its replaceaddr address issue
Code:
#include "ICPlayer.h"
// CICPlayer::IsGameMasterMAYBE(void) .text 009D4C40 00000009 R . . . . T .
bool CICPlayer::IsGameMaster() {
return N000094A7 & 1;
}
// sub_9D6580 .text 009D6580 00000032 00000008 00000004 R . . . . T .
// I am pretty sure this func simply returned a copy of the players name ... ridiculous!
std::n_wstring *CICPlayer::sub_9D6580(std::n_wstring *str) {
return reinterpret_cast<std::n_wstring*(__thiscall*)(CICPlayer*, std::n_wstring*)>(0x9D6580)(this, str);
}
void CICPlayer::OnRender()
{
// UpdateNameColor(D3DCOLOR_ARGB(255, 166, 9, 168));
reinterpret_cast<void(__thiscall*)(CICPlayer*)>(0x009D87C0)(this); //Render
}
Code:
#pragma once
#include "ICUser.h"
#include "SOItem.h"
class CICPlayer : public CICUser {
public:
bool IsGameMaster();
std::n_wstring* sub_9D6580(std::n_wstring *str);
void OnRender();
public:
char pad_082C[32]; //0x082C
std::wstring m_charname; //0x084C
char pad_0x0390[0x0388];
std::wstring m_statpoint_available;
std::wstring m_honorPointValueText;
public:
unsigned char m_level; //0x0868 level of your character, crashes when set too high
private:
char pad_0869[7]; //0x0869
public:
long long int m_exp_current; //0x0870
int m_skillpoint_progress; //0x0878
private:
short m_str_stat; //0x087C
short m_int_stat; //0x087E
public:
int m_skillpoint; //0x0880
private:
//short m_statpoint_available; //0x0884
char pad_0886[26]; //0x0886
CSOItem N0000947A; //0x08A0
CSOItem N0000947B; //0x0A70
CSOItem N0000947C; //0x0C40
CSOItem N0000947D; //0x0E10
CSOItem N0000947E; //0x0FE0
CSOItem N0000947F; //0x11B0
CSOItem N00009480; //0x1380
CSOItem N00009481; //0x1550
CSOItem N00009482; //0x1720
CSOItem N00009483; //0x18F0
CSOItem N00009484; //0x1AC0
CSOItem N00009485; //0x1C90
CSOItem N00009486; //0x1E60
char pad_2030[96]; //0x2030
char N000094A7; //0x2090 bit 0 = isGameMaster
char pad_2091[135]; //0x2091
};
#define g_pCICPlayer (*((CICPlayer**)0x00EEF5EC))
Code:
replaceAddr(0x00B44EFC, addr_from_this(&CICPlayer::OnRender));