1
0
mirror of https://foundry.openuru.org/gitblit/r/CWE-ou-minkata.git synced 2025-07-21 04:39:45 +00:00

Mute the linking sound on client kicks

This commit is really quite awesome in that you can now propagate any
plLinkToAgeMsg that will mute the link out, link in sounds, or both. Some
garbage fields were repurposed for this functionality. The messages were
passed correctly on Cyan's MOULa server.

Conflicts:

	Sources/Plasma/PubUtilLib/plMessage/plLinkToAgeMsg.h
	Sources/Plasma/PubUtilLib/plNetClient/plLinkEffectsMgr.cpp
	Sources/Plasma/PubUtilLib/plNetClient/plNetClientMgr.h
	Sources/Plasma/PubUtilLib/plNetClient/plNetLinkingMgr.cpp
This commit is contained in:
2012-06-12 17:50:45 -04:00
parent 33d26ce29f
commit af1db55f67
10 changed files with 109 additions and 82 deletions

View File

@ -81,12 +81,14 @@ struct plNCAgeLeaver {
NextOp nextOp;
bool quitting;
bool muteLinkSfx;
bool complete;
FNCAgeLeaverCallback callback;
void * userState;
plNCAgeLeaver (
bool quitting,
bool muteSfx,
FNCAgeLeaverCallback callback,
void * userState
);
@ -109,10 +111,12 @@ struct plNCAgeLeaver {
//============================================================================
plNCAgeLeaver::plNCAgeLeaver (
bool quitting,
bool muteSfx,
FNCAgeLeaverCallback callback,
void * userState
) : nextOp(kNoOp)
, quitting(quitting)
, muteLinkSfx(muteSfx)
, complete(false)
, callback(callback)
, userState(userState)
@ -200,7 +204,13 @@ void plNCAgeLeaver::ExecNextOp () {
//====================================================================
case kLinkOutFX: {
nc->StartLinkOutFX();
plLinkEffectsTriggerMsg* lem = new plLinkEffectsTriggerMsg();
lem->MuteLinkSfx(muteLinkSfx);
lem->SetLeavingAge(true);
lem->SetLinkKey(nc->GetLocalPlayerKey());
lem->SetBCastFlag(plMessage::kNetPropagate);
lem->SetBCastFlag(plMessage::kNetForce); // Necessary?
lem->Send(hsgResMgr::ResMgr()->FindKey(plUoid(kLinkEffectsMgr_KEY)));
}
break;
@ -264,6 +274,7 @@ void plNCAgeLeaver::Update () {
void NCAgeLeaverCreate (
plNCAgeLeaver ** pleaver,
bool quitting,
bool muteSfx,
FNCAgeLeaverCallback callback,
void * userState
) {
@ -273,6 +284,7 @@ void NCAgeLeaverCreate (
plNCAgeLeaver * leaver;
*pleaver = leaver = new plNCAgeLeaver(
quitting,
muteSfx,
callback,
userState
);