diff --git a/reactivedrop/materials/vgui/swarm/emotes/EmoteWelder.vmt b/reactivedrop/materials/vgui/swarm/emotes/EmoteWelder.vmt new file mode 100644 index 000000000..167ec8ae0 --- /dev/null +++ b/reactivedrop/materials/vgui/swarm/emotes/EmoteWelder.vmt @@ -0,0 +1,10 @@ +UnlitGeneric +{ + $basetexture "vgui\swarm\Emotes\EmoteWelder" + $translucent 1 + $surfaceprop metal + $vertexcolor 1 + $vertexalpha 1 + $no_fullbright 1 + $ignorez 1 +} \ No newline at end of file diff --git a/reactivedrop/materials/vgui/swarm/emotes/EmoteWelder.vtf b/reactivedrop/materials/vgui/swarm/emotes/EmoteWelder.vtf new file mode 100644 index 000000000..d4ae6b11f Binary files /dev/null and b/reactivedrop/materials/vgui/swarm/emotes/EmoteWelder.vtf differ diff --git a/reactivedrop/scripts/radialmenu.txt b/reactivedrop/scripts/radialmenu.txt index 6846c3c2d..3a27691b8 100644 --- a/reactivedrop/scripts/radialmenu.txt +++ b/reactivedrop/scripts/radialmenu.txt @@ -25,7 +25,7 @@ } "SouthEast" { - "command" "cl_chatter 39" + "command" "cl_emote 15" "text" "#asw_speech_rseal" } "South" diff --git a/src/game/client/swarm/c_asw_marine.cpp b/src/game/client/swarm/c_asw_marine.cpp index 5df9170f3..4e9b69c6d 100644 --- a/src/game/client/swarm/c_asw_marine.cpp +++ b/src/game/client/swarm/c_asw_marine.cpp @@ -461,6 +461,7 @@ C_ASW_Marine::C_ASW_Marine() : m_fEmoteAnimeSmileTime = 0; m_fEmoteQuestionTime = 0; m_fEmoteThanksTime = 0; + m_fEmoteWeldTime = 0; m_flLastMedicCall = 0; m_flLastAmmoCall = 0; diff --git a/src/game/client/swarm/c_asw_marine.h b/src/game/client/swarm/c_asw_marine.h index 8722f02a6..6940104c2 100644 --- a/src/game/client/swarm/c_asw_marine.h +++ b/src/game/client/swarm/c_asw_marine.h @@ -304,6 +304,7 @@ class C_ASW_Marine : public C_ASW_VPhysics_NPC, public IASWPlayerAnimStateHelper float m_fEmoteAnimeSmileTime; float m_fEmoteQuestionTime; float m_fEmoteThanksTime; + float m_fEmoteWeldTime; CNetworkVar( float, m_flLastMedicCall ); CNetworkVar( float, m_flLastAmmoCall ); diff --git a/src/game/client/swarm/vgui/asw_hud_emotes.cpp b/src/game/client/swarm/vgui/asw_hud_emotes.cpp index 993c6d385..0aeb5a02b 100644 --- a/src/game/client/swarm/vgui/asw_hud_emotes.cpp +++ b/src/game/client/swarm/vgui/asw_hud_emotes.cpp @@ -68,7 +68,7 @@ class CASWHudEmotes : public CASW_HudElement, public vgui::Panel CPanelAnimationVarAliasType( int, m_nAnimeTexture, "AnimeEmoteTexture", "vgui/swarm/Emotes/EmoteAnime", "textureid" ); CPanelAnimationVarAliasType( int, m_nQuestionTexture, "QuestionTexture", "vgui/swarm/Emotes/EmoteQuestion", "textureid" ); CPanelAnimationVarAliasType( int, m_nThanksTexture, "ThanksTexture", "vgui/swarm/Emotes/EmoteThanks", "textureid" ); - + CPanelAnimationVarAliasType( int, m_nWeldEmoteTexture, "WeldEmoteTexture", "vgui/swarm/Emotes/EmoteWelder", "textureid" ); CPanelAnimationVarAliasType( int, m_nWrenchTexture, "WrenchTexture", "vgui/swarm/ClassIcons/EngineerIcon", "textureid" ); CPanelAnimationVarAliasType( int, m_nSentryUpTexture, "SentryUpTexture", "vgui/swarm/ClassIcons/SentryBuild", "textureid" ); CPanelAnimationVarAliasType( int, m_nSentryDnTexture, "SentryDnTexture", "vgui/swarm/ClassIcons/SentryDismantle", "textureid" ); @@ -148,6 +148,8 @@ void CASWHudEmotes::PaintEmotesFor( C_ASW_Marine *pMarine ) PaintEmote( pMarine, pMarine->m_fEmoteQuestionTime, m_nQuestionTexture ); if ( pMarine->m_iClientEmote & ( 1 << 14 ) ) PaintEmote( pMarine, pMarine->m_fEmoteThanksTime, m_nThanksTexture ); + if (pMarine->m_iClientEmote & (1 << 15) ) + PaintEmote(pMarine, pMarine->m_fEmoteWeldTime, m_nWeldEmoteTexture); bool bBuildingSentry = false; bool bWelding = false; diff --git a/src/game/server/swarm/asw_marine.cpp b/src/game/server/swarm/asw_marine.cpp index aebc71d8b..b21228a9e 100644 --- a/src/game/server/swarm/asw_marine.cpp +++ b/src/game/server/swarm/asw_marine.cpp @@ -4496,6 +4496,9 @@ void CASW_Marine::DoEmote( int iEmote ) case 14: GetMarineSpeech()->Chatter( CHATTER_THANKS ); break; + case 15: + GetMarineSpeech()->Chatter( CHATTER_REQUEST_SEAL_DOOR ); + break; default: iEmote = 6; break; diff --git a/src/game/server/swarm/asw_marine.h b/src/game/server/swarm/asw_marine.h index fea9b7298..faecfc692 100644 --- a/src/game/server/swarm/asw_marine.h +++ b/src/game/server/swarm/asw_marine.h @@ -697,6 +697,7 @@ class CASW_Marine : public CASW_VPhysics_NPC, public IASWPlayerAnimStateHelpers, float m_fEmoteAnimeSmileTime; float m_fEmoteQuestionTime; float m_fEmoteThanksTime; + float m_fEmoteWeldTime; CNetworkVar( float, m_flLastMedicCall ); CNetworkVar( float, m_flLastAmmoCall ); diff --git a/src/game/shared/swarm/asw_marine_shared.cpp b/src/game/shared/swarm/asw_marine_shared.cpp index 67144059e..cc026713b 100644 --- a/src/game/shared/swarm/asw_marine_shared.cpp +++ b/src/game/shared/swarm/asw_marine_shared.cpp @@ -271,6 +271,7 @@ void CASW_Marine::TickEmotes( float d ) TickEmote( d, 1 << 6, m_fEmoteAnimeSmileTime ); TickEmote( d, 1 << 7, m_fEmoteQuestionTime ); TickEmote( d, 1 << 14, m_fEmoteThanksTime ); + TickEmote( d, 1 << 15, m_fEmoteWeldTime ); } bool CASW_Marine::TickEmote( float d, int bit, float &fEmoteTime )