From 8e51ef551c33a8888d196636c3649d958f08dad5 Mon Sep 17 00:00:00 2001 From: Tater Date: Tue, 17 May 2022 03:45:49 -0500 Subject: [PATCH] fixes to merge with new ddnet --- src/game/client/components/hud.cpp | 6 +++--- src/game/client/gameclient.cpp | 2 +- src/game/client/render.cpp | 5 ++++- src/game/client/render.h | 4 +++- src/game/editor/editor.cpp | 3 ++- 5 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/game/client/components/hud.cpp b/src/game/client/components/hud.cpp index 11b83b162d2..3dd319ba152 100644 --- a/src/game/client/components/hud.cpp +++ b/src/game/client/components/hud.cpp @@ -858,10 +858,10 @@ void CHud::RenderCursor() Graphics()->SetColor(1.f, 1.f, 1.f, 1.f); // render cursor - int CurWeapon = m_pClient->m_Snap.m_pLocalCharacter->m_Weapon % NUM_WEAPONS; + int Wep = m_pClient->m_Snap.m_pLocalCharacter->m_Weapon % NUM_WEAPONS; Graphics()->SetColor(1.f, 1.f, 1.f, 1.f); - Graphics()->TextureSet(m_pClient->m_GameSkin.m_SpriteWeaponCursors[CurWeapon]); - Graphics()->RenderQuadContainerAsSprite(m_HudQuadContainerIndex, m_CursorOffset[CurWeapon], m_pClient->m_Controls.m_TargetPos[g_Config.m_ClDummy].x, m_pClient->m_Controls.m_TargetPos[g_Config.m_ClDummy].y); + Graphics()->TextureSet(m_pClient->m_GameSkin.m_SpriteWeaponCursors[Wep]); + Graphics()->RenderQuadContainerAsSprite(m_HudQuadContainerIndex, m_CursorOffset[Wep], m_pClient->m_Controls.m_TargetPos[g_Config.m_ClDummy].x, m_pClient->m_Controls.m_TargetPos[g_Config.m_ClDummy].y); } void CHud::PrepareAmmoHealthAndArmorQuads() diff --git a/src/game/client/gameclient.cpp b/src/game/client/gameclient.cpp index a8f442e69ab..300013d2a44 100644 --- a/src/game/client/gameclient.cpp +++ b/src/game/client/gameclient.cpp @@ -228,7 +228,7 @@ void CGameClient::OnInit() // propagate pointers m_UI.Init(Graphics(), TextRender()); - m_RenderTools.Init(Graphics(), TextRender()); + m_RenderTools.Init(Graphics(), TextRender(), this); int64_t Start = time_get(); diff --git a/src/game/client/render.cpp b/src/game/client/render.cpp index 32f2764efb6..f24ab4d0fb0 100644 --- a/src/game/client/render.cpp +++ b/src/game/client/render.cpp @@ -16,13 +16,15 @@ #include #include + static float gs_SpriteWScale; static float gs_SpriteHScale; -void CRenderTools::Init(IGraphics *pGraphics, ITextRender *pTextRender) +void CRenderTools::Init(IGraphics *pGraphics, ITextRender *pTextRender, class CGameClient *pGameClient) { m_pGraphics = pGraphics; m_pTextRender = pTextRender; + m_pGameClient = (CGameClient *)pGameClient; m_TeeQuadContainerIndex = Graphics()->CreateQuadContainer(false); Graphics()->SetColor(1.f, 1.f, 1.f, 1.f); @@ -719,6 +721,7 @@ void CRenderTools::RenderTee(CAnimState *pAnim, CTeeRenderInfo *pInfo, int Emote if(g_Config.m_ClWhiteFeet && pInfo->m_CustomColoredSkin) { CTeeRenderInfo WhiteFeetInfo; + int Skin = GameClient()->m_Skins.Find("x_ninja"); if(Skin != -1) { diff --git a/src/game/client/render.h b/src/game/client/render.h index 7f8537540cb..c7f4b2d1283 100644 --- a/src/game/client/render.h +++ b/src/game/client/render.h @@ -63,10 +63,12 @@ class CRenderTools void GetRenderTeeFeetScale(float BaseSize, float &FeetScaleWidth, float &FeetScaleHeight); public: + class CGameClient *m_pGameClient; class IGraphics *Graphics() const { return m_pGraphics; } class ITextRender *TextRender() const { return m_pTextRender; } + class CGameClient *GameClient() const { return m_pGameClient; } - void Init(class IGraphics *pGraphics, class ITextRender *pTextRender); + void Init(class IGraphics *pGraphics, class ITextRender *pTextRender, class CGameClient *pGameClient); void SelectSprite(struct CDataSprite *pSprite, int Flags = 0, int sx = 0, int sy = 0); void SelectSprite(int Id, int Flags = 0, int sx = 0, int sy = 0); diff --git a/src/game/editor/editor.cpp b/src/game/editor/editor.cpp index 5b6c78d2757..2566eb24fb1 100644 --- a/src/game/editor/editor.cpp +++ b/src/game/editor/editor.cpp @@ -6343,7 +6343,8 @@ void CEditor::Init() m_pStorage = Kernel()->RequestInterface(); m_pSound = Kernel()->RequestInterface(); m_UI.Init(m_pGraphics, m_pTextRender); - m_RenderTools.Init(m_pGraphics, m_pTextRender); + CGameClient *pGameClient = (CGameClient *)Kernel()->RequestInterface(); + m_RenderTools.Init(m_pGraphics, m_pTextRender, pGameClient); m_Map.m_pEditor = this; UIEx()->Init(UI(), Kernel(), RenderTools(), Input()->GetEventsRaw(), Input()->GetEventCountRaw());