PDA

View Full Version : |Source| Source WideScreen 2024 By Dakosmu



Mentor
02-20-2024, 02:06 AM
Pessoal , estou postando essa source que foi compartilhada pelo dakosmu que é o widescreem para season6, inclusive adicionei ela ao projeto PZ Season6, mais requer alguns ajustes...



https://i.ibb.co/rGHVV64/Screen-02-19-22-42-0000.jpg
https://i.ibb.co/8YS9KX3/Screen-02-19-22-42-0001.jpg
https://i.ibb.co/VBm2NQh/Screen-02-19-22-42-0003.jpg
https://i.ibb.co/25Xm3RY/Screen-02-19-22-42-0004.jpg


Interface.cpp Adicione:

#include "DakosmuS6.h"

Agora busque por:

void Interface::LoadImages()

E adicione:

//DakosmuWide Imagenes Cliente
pLoadImage("Custom\\DakosmuWide\\Wide_1.tga", 87968, 0x2601, 0x2901, 1, 0);
pLoadImage("Custom\\DakosmuWide\\Wide_2.tga", 87969, 0x2601, 0x2901, 1, 0);
pLoadImage("Custom\\DakosmuWide\\Wide_3.tga", 61546, GL_LINEAR, GL_CLAMP, 1, 0);
pLoadImage("Custom\\DakosmuWide\\Wide_4.tga", 61547, GL_LINEAR, GL_CLAMP, 1, 0);
pLoadImage("Custom\\DakosmuWide\\Wide_5.tga", 31337, 9729, 10496, 1, 0);
//Dakosmu

Baixe os arquivos .OZT, pois será necessário para você adicionar na pasta Data\Custom\DakosmuWide do seu cliente
**Hidden Content: Check the thread to see hidden data.**

Dando continuidade no Interface.cpp busque por:

pLoadSomeForm();

E adicione:

DakosmuInterfaceNew.Load_Image(); //Las Imagenes Wide_1,2,3,4,5

Agora abra o Main.cpp e adicione:

#include "DakosmuWide.h"
#include "DakosmuS6.h"

Busque por:

extern "C" _declspec(dllexport) void EntryProc() // OK

E adicione:

//WideScreen
DakosmuWide1.InitFrameOpenGL();
DakosmuInterfaceNew.Load();
//WideScreen

Próxima é criar pasta e diretórios conforme imagem abaixo:
https://i.ibb.co/F4T4xqS/archivos.jpg


DakosmuBytes.cpp

#include "stdafx.h"
#include "DakosmuBytes.h"
#include "../../Util/libjpeg/jpeglib.h"
#include "Util.h"

#include <Shlwapi.h>

#pragma comment(lib, "Shlwapi.lib")

#pragma comment(lib, "jpeg.lib")

#define pOpen ((FILE*(*)(const char *,const char*))0x009D0040)
#define pSeek ((int*(*)(FILE*,long,int))0x009D6A53)
#define pRead ((DWORD*(*)(void*,DWORD,DWORD,FILE*))0x009CFF5F)

void* DakosmuJpegBuffer;
DWORD DakosmuJpegBufferSize;

void DakosmuDec()
{
SetCompleteHook(0xE9, 0x004FC7AC, &DakosmuOpenJpegBuffer1);
SetCompleteHook(0xE9, 0x004FCB85, &DakosmuOpenJpegBuffer2);

SetCompleteHook(0xE9, 0x004FCCBA, &DakosmuOpenTga);
SetCompleteHook(0xE9, 0x0054C28C, &DakosmuOpenBmd);
SetCompleteHook(0xE9, 0x005D68FF, &DakosmuOpenAtt);
SetCompleteHook(0xE9, 0x005D6ECF, &DakosmuOpenMap);
SetCompleteHook(0xE9, 0x005F34A8, &DakosmuOpenObj);

SetCompleteHook(0xFF, 0x004FC6C7, &DakosmuOpenFile);
SetCompleteHook(0xFF, 0x004FCC3E, &DakosmuOpenFile);
SetCompleteHook(0xFF, 0x0054C21D, &DakosmuOpenFile);
SetCompleteHook(0xFF, 0x005D6826, &DakosmuOpenFile);
SetCompleteHook(0xFF, 0x005D6E64, &DakosmuOpenFile);
SetCompleteHook(0xFF, 0x005F3402, &DakosmuOpenFile);
}

FILE* DakosmuOpenFile(const char* path, const char* f)
{
char encpath[MAX_PATH] = { 0 };

wsprintf(encpath, "%s.enc", path);

if (PathFileExists(encpath) != 0)
{
return pOpen(encpath, f);
}

return pOpen(path, f);
}

int DakosmuCheckFile(FILE* hFile)
{
BYTE Buffer[0x18] = { 0 };

pSeek(hFile, 0, SEEK_SET);
pRead(Buffer, 1, sizeof(Buffer), hFile);

if (Buffer[0] != 'E' || Buffer[1] != 'N' || Buffer[2] != 'C')
{
return 0;
}

if (Buffer[3] == 1)
{
return 2;
}

return 1;
}

BOOL DakosmuDecryptFile(FILE* hFile, BYTE* Buffer, int Size, int Origin, int Offset)
{
if (DakosmuCheckFile(hFile) != 0)
{
pSeek(hFile, 0x18, SEEK_SET);
pRead(Buffer, 1, Size, hFile);

for (int n = 0; n < (Size - 0x18); n++)
{
Buffer[n] += (BYTE)(0xA0 ^ HIBYTE(n));
Buffer[n] ^= (BYTE)(0xAB ^ LOBYTE(n));
}

return 1;
}

pSeek(hFile, Offset, SEEK_SET);
pRead(Buffer, 1, Size, hFile);

return 0;
}

__declspec(naked) void DakosmuOpenJpegBuffer1()
{
static DWORD Address1 = 0x004FC7C2;
static DWORD Address2 = 0x004FC7C2;
static DWORD Address3 = 0x009CFF5F;
static DWORD Address4 = 0x009D6A53;
static DWORD Address5 = 0x009D6CF0;
static DWORD Address6 = 0x009D00C5;

_asm
{
Push 2
Push 0x18
Mov Ecx, Dword Ptr Ss : [Ebp - 0x2C4]
Push Ecx
Call[Address4]
Add Esp, 0x0C
Mov Ecx, Dword Ptr Ss : [Ebp - 0x2C4]
Push Ecx
Call[Address5]
Add Esp, 0x04
Mov DakosmuJpegBufferSize, Eax
Push 0
Push 0x18
Mov Ecx, Dword Ptr Ss : [Ebp - 0x2C4]
Push Ecx
Call[Address4]
Add Esp, 0x0C
Push DakosmuJpegBufferSize
Call[Address6]
Add Esp, 0x04
Push 0x18
Push 0
Mov DakosmuJpegBuffer, Eax
Push DakosmuJpegBufferSize
Push DakosmuJpegBuffer
Mov Ecx, Dword Ptr Ss : [Ebp - 0x2C4]
Push Ecx
Call[DakosmuDecryptFile]
Add Esp, 0x14
Test Eax, Eax
Je EXIT
Mov Edx, DakosmuJpegBufferSize
Sub Edx, 0x18
Push Edx
Mov Eax, DakosmuJpegBuffer
Add Eax, 0x18
Push Eax
Lea Ecx, Dword Ptr Ss : [Ebp - 0x2A4]
Push Ecx
Call[jpeg_mem_src]
Add Esp, 0x0C
Jmp Address1
EXIT :
Push DakosmuJpegBufferSize
Push DakosmuJpegBuffer
Lea Ecx, Dword Ptr Ss : [Ebp - 0x2A4]
Push Ecx
Call[jpeg_mem_src]
Add Esp, 0x0C
Jmp Address2
}
}

__declspec(naked) void DakosmuOpenJpegBuffer2()
{
static DWORD Address1 = 0x004FCB8C;
static DWORD Address2 = 0x009CF11A;

_asm
{
Push DakosmuJpegBuffer
Call[Address2]
Add Esp, 0x04
Mov DakosmuJpegBuffer, 0
Mov Byte Ptr Ss : [Ebp - 0x325] , 1
Jmp Address1
}
}

__declspec(naked) void DakosmuOpenTga()
{
static DWORD Address1 = 0x004FCCD0;
static DWORD Address2 = 0x004FCCD0;

_asm
{
Push 0
Push 0x18
Mov Edx, Dword Ptr Ss : [Ebp - 0x34]
Push Edx
Mov Eax, Dword Ptr Ss : [Ebp - 0x44]
Push Eax
Mov Ecx, Dword Ptr Ss : [Ebp - 0x3C]
Push Ecx
Call[DakosmuDecryptFile]
Add Esp, 0x14
Jmp Address1
}
}

__declspec(naked) void DakosmuOpenBmd()
{
static DWORD Address1 = 0x0054C2A2;
static DWORD Address2 = 0x0054C2A2;

_asm
{
Push 0
Push 0x18
Mov Edx, Dword Ptr Ss : [Ebp - 0x64]
Push Edx
Mov Eax, Dword Ptr Ss : [Ebp - 0x68]
Push Eax
Mov Ecx, Dword Ptr Ss : [Ebp - 0x18]
Push Ecx
Call[DakosmuDecryptFile]
Add Esp, 0x14
Jmp Address1
}
}

__declspec(naked) void DakosmuOpenAtt()
{
static DWORD Address1 = 0x005D6915;
static DWORD Address2 = 0x005D6915;

_asm
{
Push 0
Push 0x18
Mov Edx, Dword Ptr Ss : [Ebp - 0x14]
Push Edx
Mov Eax, Dword Ptr Ss : [Ebp - 0x0C]
Push Eax
Mov Ecx, Dword Ptr Ss : [Ebp - 0x8]
Push Ecx
Call[DakosmuDecryptFile]
Add Esp, 0x14
Test Eax, Eax
Je EXIT
Mov Edx, Dword Ptr Ss : [Ebp - 0x14]
Sub Edx, 0x18
Mov Dword Ptr Ss : [Ebp - 0x14] , Edx
Jmp Address1
EXIT :
Jmp Address2
}
}

__declspec(naked) void DakosmuOpenMap()
{
static DWORD Address1 = 0x005D6EE5;
static DWORD Address2 = 0x005D6EE5;

_asm
{
Push 0
Push 0x18
Mov Edx, Dword Ptr Ss : [Ebp - 0x14]
Push Edx
Mov Eax, Dword Ptr Ss : [Ebp - 0x0C]
Push Eax
Mov Ecx, Dword Ptr Ss : [Ebp - 0x8]
Push Ecx
Call[DakosmuDecryptFile]
Add Esp, 0x14
Test Eax, Eax
Je EXIT
Mov Edx, Dword Ptr Ss : [Ebp - 0x14]
Sub Edx, 0x18
Mov Dword Ptr Ss : [Ebp - 0x14] , Edx
Jmp Address1
EXIT :
Jmp Address2
}
}

__declspec(naked) void DakosmuOpenObj()
{
static DWORD Address1 = 0x005F34BE;
static DWORD Address2 = 0x005F34BE;

_asm
{
Push 0
Push 0x18
Mov Edx, Dword Ptr Ss : [Ebp - 0x18]
Push Edx
Mov Eax, Dword Ptr Ss : [Ebp - 0x10]
Push Eax
Mov Ecx, Dword Ptr Ss : [Ebp - 0x8]
Push Ecx
Call[DakosmuDecryptFile]
Add Esp, 0x14
Test Eax, Eax
Je EXIT
Mov Edx, Dword Ptr Ss : [Ebp - 0x18]
Sub Edx, 0x18
Mov Dword Ptr Ss : [Ebp - 0x18] , Edx
Jmp Address1
EXIT :
Jmp Address2
}
}


DakosmuBytes.h

#pragma once

void DakosmuDec();
FILE *DakosmuOpenFile(const char *path, const char *f);
int DakosmuCheckFile(FILE *hFile);
BOOL DakosmuDecryptFile(FILE *hFile, BYTE *Buffer, int Size, int Origin, int Offset);
void DakosmuOpenJpegBuffer1();
void DakosmuOpenJpegBuffer2();
void DakosmuOpenTga();
void DakosmuOpenBmd();
void DakosmuOpenAtt();
void DakosmuOpenMap();
void DakosmuOpenObj();


Dakosmudefine.h

#pragma once
//WideScreem
#define DakosmuCoorX *(DWORD *)(*(DWORD *)0x7BC4F04 + 0xAC)
#define DakosmuCoorY *(DWORD *)(*(DWORD *)0x7BC4F04 + 0xB0)
#define DakosmuSupremo ((void(__cdecl*)())0x00637A30)
#define DakosmuSetFont ((int(__thiscall*)(LPVOID This, int a2)) 0x420120)
#define DakosmuFontBold *(HGDIOBJ*)0x00E8C58C
#define DakosmuAlphaTest ((void(__cdecl*)(BYTE Mode)) 0x635FD0)
#define DakosmuBitmap ((void(__cdecl*)(int ImageID, float PosX, float PosY, float Width, float Height, float Arg6, float Arg7, float ScaleX, float ScaleY, bool ScaleSize, bool ScalePosition, float ScaleAlpha)) 0x00637C60)
#define DakosmuMouseOver ((bool(__cdecl*)(int a1, int a2, int a3, int a4)) 0x00790B10)
#define DakosmuBuffer33 ((signed int(__cdecl*)(int a1, int a2, int a3)) 0x006D6C20)
#define Dakosmu_7BC4F04 *(DWORD*)0x7BC4F04
#define Dakosmu_8128AC8 *(DWORD*)0x8128AC8
#define Dakosmu_8793384 *(BYTE*)0x8793384
#define Dakosmu_8793380 *(BYTE*)0x8793380
#define Dakosmu_8128ABC *(DWORD*)0x8128ABC
#define DakosmuSkillLine ((void(__thiscall*)(int a1, float a5, int a6, int a7, int a8, int a9)) 0x00772EA0)
#define DakosmuWidth *(GLsizei*)0x0E61E58
#define DakosmuHeight *(GLsizei*)0x0E61E5C
//WideScreem



import.cpp

#include "stdafx.h"
#include "Import.h"
#include "DakosmuWide.h"
#include "DakosmuS6.h"
#include "DakosmuBytes.h"

signed int sub_9CEBF0_2(double a1)
{
return (signed int)a1;
}

bool pCheckMouseOverMiddle(int x, int y, int w, int h)
{
int Addr = (pWinWidth / pWinHeightReal / 2) - 320;
return pCheckMouseOver(x + Addr, y, w, h);
}

void RenderBitmapMiddle(int ImageID, float PosX, float PosY, float Width, float Height, float Arg6, float Arg7, float ScaleX, float ScaleY, bool ScaleSize, bool ScalePosition, float ScaleAlpha)
{
int Addr = (pWinWidth / pWinHeightReal / 2) - 320;

RenderBitmap(ImageID, PosX + Addr, PosY, Width, Height, Arg6, Arg7, ScaleX, ScaleY, ScaleSize, ScalePosition, ScaleAlpha);
}

void RenderBitmapRight(int ImageID, float PosX, float PosY, float Width, float Height, float Arg6, float Arg7, float ScaleX, float ScaleY, bool ScaleSize, bool ScalePosition, float ScaleAlpha)
{
int Addr = pWinWidth / pWinHeightReal - 640;

RenderBitmap(ImageID, PosX + Addr, PosY, Width, Height, Arg6, Arg7, ScaleX, ScaleY, ScaleSize, ScalePosition, ScaleAlpha);
}

void CRenderImageMiddle(int a1, float a2, float a3, float a4, float a5)
{
int Addr = (pWinWidth / pWinHeightReal / 2) - 320;

pDrawGUI(a1, a2 + Addr, a3, a4, a5);
}

void CRenderImageRight(int a1, float a2, float a3, float a4, float a5)
{
int Addr = pWinWidth / pWinHeightReal - 640;

pDrawGUI(a1, a2 + Addr, a3, a4, a5);
}

void BarFormMiddle(float PosX, float PosY, float Width, float Height, float Arg5, int Arg6)
{
int Addr = (pWinWidth / pWinHeightReal / 2) - 320;

pDrawBarForm(PosX + Addr, PosY, Width, Height, Arg5, Arg6);
}

void BarFormRight(float PosX, float PosY, float Width, float Height, float Arg5, int Arg6)
{
int Addr = pWinWidth / pWinHeightReal - 640;

pDrawBarForm(PosX + Addr, PosY, Width, Height, Arg5, Arg6);
}

void pDrawButtonMiddle(DWORD ModelID, float X, float Y, float W, float H, float CurrentX, float CurrentY)
{
int Addr = (pWinWidth / pWinHeightReal / 2) - 320;
pDrawButton(ModelID, X + Addr, Y, W, H, CurrentX, CurrentY);
}


double sub_636450_2(float a1)
{
return (float)((double)(unsigned int)pWinHeight * a1 / 480.0);
}

stdafx.h adicione:

#define Wide_Screen 1

Faça o download desse arquivo e adicione ele dentro da pasta Util conforme mostra na print:
https://i.ibb.co/7y8X6h7/cccccccccc.jpg
**Hidden Content: Check the thread to see hidden data.**

deve ser colocado dentro da pasta Util de suas fontes

Você também deve verificar a rota
#include "../../Util/libjpeg/jpeglib.h"

verifique o caminho ../../

DakosmuS6.cpp
**Hidden Content: Check the thread to see hidden data.**

DakosmuS6.h
**Hidden Content: Check the thread to see hidden data.**

DakosmuWide.cpp
**Hidden Content: Check the thread to see hidden data.**

DakosmuWide.h
**Hidden Content: Check the thread to see hidden data.**

Créditos
Asura pela fonte
Dakosmu pelo guia
onlinezajzaj para o guia de vídeo

HR.
02-20-2024, 03:30 AM
https://perfectzone.com.br/image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQYAAAAsCAYAAAC HdRbYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJc EhZcwAADsMAAA7DAcdvqGQAAAbQSURBVHhe7ZxPiFtFHMd/2y1oVWzFtpckdilI6D/Bthr2EJHmUIPVXnJwEdODp8Rr8JAcxMNuQXJOvHjoeoiHgNgW1 h62iHtYot2Ktt0Sxba4iUK30K70D8Ju199vMi95yeQl 5JsXgvfD6TvzcybmV9e5n3n95t53ZE9e/asEwAA2BgJh8MQBgBAE1v0EQAA6kAYAAAGnocSB7c9Tyd37KID fHxx61ZaWV2la48e0NmVZbr68IG CgAwTDwThtGREfpkt5/e3f6yzjE5d 8O5ZertLaOZRAAholnoYQlCv tP9Y5zUj ezt2UmKXT cAAIaFJ8JwaNsLdVH4/MJ5WlxY0CU1JC35ljhImLFxojQ1O02JoE7WkfxZmp2K6rSF/frWukFKTLfUiU7R7OwUX9lCu3yVx/X5M20aRMHENM1OJ7gX4Arrvsq9CyZo2vH36wZfb93/pnY2E5uNG7bdZueQ8EQYTr60Ux2fGdlCH7Hn8M7iJfrt0i8q7/rlyyr9wc6AKhfe37FbHfunSlV/igxtcCA6laPx SRF0jOc0iIRJirVijVO fxjpoiykQhFIlmqxDItP3qUTsWedG o02D1CrmvISpl b7G81Qu5ykeiVO rIt7ZVDtuMGLPjeIJ8Kw/9mGB7Dv8GH6fv9ROnH9Jyr8 AMdv/azSr929HV9BdHB59x4DJ2ZLxTJP9FdfWU2T1GW4vVfrUz5OA/G9JxOWzjkR8MUKs2RSArxv2eKROPHGr0GExNExSJLFXBPlZZu6 FOwKXgiDLL7YGf/kSP0xStB viPK ooaTvbt4zqswFwI0 FSowynabBY1OUG5 npPIUeiM45qeqbfSWb1XIF9hbS7ALmQkUKH2xlnRGeyM6HLE8n ehUI68R5ujZPdEufOlUxiiXttFmrUmpk6IQ SiWs/djo209QfcXbZQ792eFX11sVDTbVCvX9VovFdr2Y2eG0uJ1qHN7 O73Yz9jypxMJZ7vqtLF9b7s 7XYOB0 E4d/VVX1WY3FhgT79q0xfvXpIHSVtZ Xxmj4bDDPpdq69BQ 6GLuqhc36Ifhhz4zT/JluoiOioEMZFY5EyNKpmXQtLSFKKTRh x5se2CuVpYtkS92yvYwOJXx4MzFqCKuuZQl2aNKyWDlwSjt8 xcTHK IZJO9XSx9MdO0aQuo/r9lnr8/aVNZQvRRL1SJ/uFZpsa3lw7OvWzEdza33w/JmmcBcwtTn0OH0 E4eqjxvsJ1prC X1v0sRbb9OFA280rTkIVx7e12eDggdYtkKxU YcIm5qMds6yAdHMJHhh32ye1wZPEbjvhIV2l1YX9SU2dMO224J zswcP0B Gqt/B4ey4BiflWjOeu457i2UfGQ5N450rcf9TWpxtZepevwAiBci3y HF83 9Uif7XdKxn43g0n7JrxbJMr cL7D9bnHo0wM8EYZv792h9ZERtevw9e1K05qCtebwzZ2l lbmuXvL6jhQZs5Q0WkhksONuAhHrp37uTGaQgemFlqMqQVHXyx XG1Q8w/h8Mcq5WXEWd7W qJmk4lOxSBEk/vo2Stp /ekjZOvMoPrxwv7WPoeLJ8Jw/dF9On93We06fHb8hLGmIGnJl/KzLCLyJuTgKVN UjyD1llXM5OmZNFPqV63iW4sUTUU1sIiOxBE8xfz7ArbBhS7i1 WeZZLt4sfyRZqvhkz3d2 AfNUlUqsXyqtQub1TvkUVvgNhSwFZeCZCNk/Aia71fI3FVu39qDJdz51b3wN99 PSfslnkbecUFlcbowrDjO6rjcIDn16gCfCIMgbjfJmo7Ul2Yol Cl/yde6xuXr8MRexNOyuTXaYcsv5OGUrLmd0C247zvFnStkgU7zbb SnZ7ZC1EO1d8Ed5N LpENskeZkAVfr2GDisUusD n6p DnNubWyOXZn1b00XKtO9YQqVQIZXSaxd6NNqceN1r9X24XNvum 3H7f2c362RCF9PzI031Mo0b7P4eP5/5WQl5fkPQXZktw Okora2tqDeK7u7dpcVM8BbD5yAw5QUvJJ3OPvj1ic5jmIvIwDs B CflyASqo9p4 PPMYLCRMOP3PTfrwz6t04vdf1fH03zchCmC4yHsnVog2AKIcO9 ZDvqcQz4UBAE x3j1I Rs7Aj3R/M5JKlTi6LGf9rwFf8EJAGAAjwEAYIA/BgsAMIDHAAAwgDAAAAwgDAAAAwgDAMAAwgAAMIAwAAAMIAwAAA MIAwDAAMIAADCAMAAADCAMAAADCAMAwADCAAAwgDAAAAwgDAAA AwgDAMAAwgAAMIAwAAAMIAwAAAMIAwDAAMIAADCAMAAAWiD6H1 YNtUzEETiRAAAAAElFTkSuQmCC
https://imgur.com/ni8QM7J
https://imgur.com/ni8QM7J

Deu esse erro no seu ?

Mentor
02-20-2024, 01:21 PM
https://perfectzone.com.br/image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQYAAAAsCAYAAAC HdRbYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJc EhZcwAADsMAAA7DAcdvqGQAAAbQSURBVHhe7ZxPiFtFHMd/2y1oVWzFtpckdilI6D/Bthr2EJHmUIPVXnJwEdODp8Rr8JAcxMNuQXJOvHjoeoiHgNgW1 h62iHtYot2Ktt0Sxba4iUK30K70D8Ju199vMi95yeQl 5JsXgvfD6TvzcybmV9e5n3n95t53ZE9e/asEwAA2BgJh8MQBgBAE1v0EQAA6kAYAAAGnocSB7c9Tyd37KID fHxx61ZaWV2la48e0NmVZbr68IG CgAwTDwThtGREfpkt5/e3f6yzjE5d 8O5ZertLaOZRAAholnoYQlCv tP9Y5zUj ezt2UmKXT cAAIaFJ8JwaNsLdVH4/MJ5WlxY0CU1JC35ljhImLFxojQ1O02JoE7WkfxZmp2K6rSF/frWukFKTLfUiU7R7OwUX9lCu3yVx/X5M20aRMHENM1OJ7gX4Arrvsq9CyZo2vH36wZfb93/pnY2E5uNG7bdZueQ8EQYTr60Ux2fGdlCH7Hn8M7iJfrt0i8q7/rlyyr9wc6AKhfe37FbHfunSlV/igxtcCA6laPx SRF0jOc0iIRJirVijVO fxjpoiykQhFIlmqxDItP3qUTsWedG o02D1CrmvISpl b7G81Qu5ykeiVO rIt7ZVDtuMGLPjeIJ8Kw/9mGB7Dv8GH6fv9ROnH9Jyr8 AMdv/azSr929HV9BdHB59x4DJ2ZLxTJP9FdfWU2T1GW4vVfrUz5OA/G9JxOWzjkR8MUKs2RSArxv2eKROPHGr0GExNExSJLFXBPlZZu6 FOwKXgiDLL7YGf/kSP0xStB viPK ooaTvbt4zqswFwI0 FSowynabBY1OUG5 npPIUeiM45qeqbfSWb1XIF9hbS7ALmQkUKH2xlnRGeyM6HLE8n ehUI68R5ujZPdEufOlUxiiXttFmrUmpk6IQ SiWs/djo209QfcXbZQ792eFX11sVDTbVCvX9VovFdr2Y2eG0uJ1qHN7 O73Yz9jypxMJZ7vqtLF9b7s 7XYOB0 E4d/VVX1WY3FhgT79q0xfvXpIHSVtZ Xxmj4bDDPpdq69BQ 6GLuqhc36Ifhhz4zT/JluoiOioEMZFY5EyNKpmXQtLSFKKTRh x5se2CuVpYtkS92yvYwOJXx4MzFqCKuuZQl2aNKyWDlwSjt8 xcTHK IZJO9XSx9MdO0aQuo/r9lnr8/aVNZQvRRL1SJ/uFZpsa3lw7OvWzEdza33w/JmmcBcwtTn0OH0 E4eqjxvsJ1prC X1v0sRbb9OFA280rTkIVx7e12eDggdYtkKxU YcIm5qMds6yAdHMJHhh32ye1wZPEbjvhIV2l1YX9SU2dMO224J zswcP0B Gqt/B4ey4BiflWjOeu457i2UfGQ5N450rcf9TWpxtZepevwAiBci3y HF83 9Uif7XdKxn43g0n7JrxbJMr cL7D9bnHo0wM8EYZv792h9ZERtevw9e1K05qCtebwzZ2l lbmuXvL6jhQZs5Q0WkhksONuAhHrp37uTGaQgemFlqMqQVHXyx XG1Q8w/h8Mcq5WXEWd7W qJmk4lOxSBEk/vo2Stp /ekjZOvMoPrxwv7WPoeLJ8Jw/dF9On93We06fHb8hLGmIGnJl/KzLCLyJuTgKVN UjyD1llXM5OmZNFPqV63iW4sUTUU1sIiOxBE8xfz7ArbBhS7i1 WeZZLt4sfyRZqvhkz3d2 AfNUlUqsXyqtQub1TvkUVvgNhSwFZeCZCNk/Aia71fI3FVu39qDJdz51b3wN99 PSfslnkbecUFlcbowrDjO6rjcIDn16gCfCIMgbjfJmo7Ul2Yol Cl/yde6xuXr8MRexNOyuTXaYcsv5OGUrLmd0C247zvFnStkgU7zbb SnZ7ZC1EO1d8Ed5N LpENskeZkAVfr2GDisUusD n6p DnNubWyOXZn1b00XKtO9YQqVQIZXSaxd6NNqceN1r9X24XNvum 3H7f2c362RCF9PzI031Mo0b7P4eP5/5WQl5fkPQXZktw Okora2tqDeK7u7dpcVM8BbD5yAw5QUvJJ3OPvj1ic5jmIvIwDs B CflyASqo9p4 PPMYLCRMOP3PTfrwz6t04vdf1fH03zchCmC4yHsnVog2AKIcO9 ZDvqcQz4UBAE x3j1I Rs7Aj3R/M5JKlTi6LGf9rwFf8EJAGAAjwEAYIA/BgsAMIDHAAAwgDAAAAwgDAAAAwgDAMAAwgAAMIAwAAAMIAwAAA MIAwDAAMIAADCAMAAADCAMAAADCAMAwADCAAAwgDAAAAwgDAAA AwgDAMAAwgAAMIAwAAAMIAwAAAMIAwDAAMIAADCAMAAAWiD6H1 YNtUzEETiRAAAAAElFTkSuQmCC
https://imgur.com/ni8QM7J
https://imgur.com/ni8QM7J

Deu esse erro no seu ?
Sim, no tópico inicial tem link do arquivo e print mostrando a onde você deve colocar o arquivo necessário.

HR.
02-20-2024, 09:17 PM
Sim, no tópico inicial tem link do arquivo e print mostrando a onde você deve colocar o arquivo necessário.

Já estava adicionado os arquivos na pasta Util

Mentor
02-21-2024, 01:40 AM
Já estava adicionado os arquivos na pasta Util

Mas você verificou se essa linha está chamando o arquivo necessário?

#include "../../Util/libjpeg/jpeglib.h"
Porque a depender da quantidade de subpasta que sua source esteja essa parte talvez seja necessário acrescentar mais ../ por exemplo: #include "../../../../Util/libjpeg/jpeglib.h"
No meu caso deixei assim e ficou ok
https://i.ibb.co/XzfkjvZ/image.png


Edit

Conseguir deixar as janelas custom do meu projeto centralizada, mas estou precisando centralizar outras coisas como as mensagens de avisos em geral, o nome dos mapas, tela de loading, e o menu de opções quando apertamos a teccla esc.

https://i.ibb.co/wsgw3ZK/image.png
https://i.ibb.co/GVGkQfy/image.png
https://i.ibb.co/q01JZPJ/image.png
https://i.ibb.co/V3rZjTx/image.png
https://i.ibb.co/8jzdstB/image.png
https://i.ibb.co/QPc04Ld/image.png

Para isso, fui nas funções de interface das janelas, e mudei a linha
**Hidden Content: Check the thread to see hidden data.**

para essa :
**Hidden Content: Check the thread to see hidden data.**

Pelo menos foi a maneira que encontrei para que essas janelas ficassem centralizadas em todas as resoluções do meu projeto.

Farias
02-23-2024, 09:29 AM
Top, isso que chamo de tutorial, passo a passo, se todos fizessem isso, ajudava muitos !!!