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:
@ -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
|
||||
);
|
||||
|
Reference in New Issue
Block a user