mirror of
https://gitlab.com/hashborgir/d2tweaks-rnd2k.git
synced 2024-11-30 12:45:58 +00:00
89 lines
2.4 KiB
C++
89 lines
2.4 KiB
C++
#pragma once
|
|
|
|
#include <Windows.h>
|
|
#include <cstdint>
|
|
|
|
namespace diablo2 {
|
|
namespace structures {
|
|
struct gfxdata;
|
|
struct unit;
|
|
struct client_unit_list;
|
|
struct cellfile;
|
|
}
|
|
|
|
enum ui_window_t {
|
|
UI_WINDOW_INTERFACE = 0x0,
|
|
UI_WINDOW_INVENTORY = 0x01,
|
|
UI_WINDOW_CHARACTER = 0x02,
|
|
UI_WINDOW_MINISKILL = 0x03,
|
|
UI_WINDOW_SKILL = 0x04,
|
|
UI_WINDOW_CHAT = 0x05,
|
|
UI_WINDOW_NPCMENU = 0x08,
|
|
UI_WINDOW_MAINMENU = 0x09,
|
|
UI_WINDOW_AUTOMAP = 0x0a,
|
|
UI_WINDOW_CONFIG = 0x0b,
|
|
UI_WINDOW_NPCSHOP = 0x0c,
|
|
UI_WINDOW_ALTDOWN = 0x0d,
|
|
UI_WINDOW_ANVIL = 0x0e,
|
|
UI_WINDOW_QUEST = 0x0f,
|
|
UI_WINDOW_QUESTLOG = 0x11,
|
|
UI_WINDOW_STATUSAREA = 0x12,
|
|
UI_WINDOW_WPMENU = 0x14,
|
|
UI_WINDOW_MINIPANEL = 0x15,
|
|
UI_WINDOW_PARTY = 0x16,
|
|
UI_WINDOW_TRADE = 0x17,
|
|
UI_WINDOW_MSGS = 0x18,
|
|
UI_WINDOW_STASH = 0x19,
|
|
UI_WINDOW_CUBE = 0x1a,
|
|
UI_WINDOW_BELT = 0x1f,
|
|
UI_WINDOW_HELP = 0x21,
|
|
UI_WINDOW_MERC = 0x24,
|
|
UI_WINDOW_SCROLL = 0x25
|
|
};
|
|
|
|
class d2_client {
|
|
public:
|
|
static char* get_base();
|
|
|
|
static bool is_lod();
|
|
|
|
static structures::unit* get_local_player();
|
|
static const char* get_local_player_name();
|
|
static structures::client_unit_list* get_client_unit_list();
|
|
|
|
static int32_t get_view_offset_x();
|
|
static int32_t get_view_offset_y();
|
|
|
|
static uint32_t get_mouse_x();
|
|
static uint32_t get_mouse_y();
|
|
static bool get_ui_window_state(ui_window_t window);
|
|
static void* get_buysellbtn();
|
|
|
|
static void play_sound(uint32_t soundId, structures::unit* u, uint32_t ticks, BOOL prePick, uint32_t cache);
|
|
|
|
static structures::unit* get_unit_by_guid(int32_t type, int32_t guid);
|
|
|
|
static void send_to_server(void* data, size_t size);
|
|
static void print_chat(wchar_t* string, uint32_t color);
|
|
|
|
static bool cache_gfx_data(structures::gfxdata* gfxData,
|
|
structures::unit* unit,
|
|
structures::cellfile* cellfFile,
|
|
int32_t direction,
|
|
int32_t frame,
|
|
int32_t* outIndex,
|
|
int8_t flags,
|
|
int32_t colorTint);
|
|
|
|
static structures::cellfile* load_gfx_resource(char* path);
|
|
static int32_t unload_gfx_resource(structures::cellfile* handle);
|
|
static int32_t send_to_server_7(BYTE type, DWORD num, DWORD unk1, DWORD unk2);
|
|
static uint32_t screen_height();
|
|
static uint32_t screen_width();
|
|
static uint32_t current_vendor_id();
|
|
static uint32_t current_vendor_guid();
|
|
static bool is_gamble_open();
|
|
static uint8_t current_interact_menu();
|
|
static void resync_vendor_inventory(structures::unit* ptNPC);
|
|
};
|
|
} |