Add /blockdj and /unblockdj
- More commands that never got added to the table. - Also fixes /blockdj incorrectly blocking a client from changing areas. - Checks if a client is DJ blocked when using /play
This commit is contained in:
parent
37e91708f7
commit
96407ad4bd
@ -1858,6 +1858,10 @@ class AOClient : public QObject {
|
|||||||
{"block_wtce", {ACLFlags.value("MUTE"), 1, &AOClient::cmdBlockWtce}},
|
{"block_wtce", {ACLFlags.value("MUTE"), 1, &AOClient::cmdBlockWtce}},
|
||||||
{"unblockwtce", {ACLFlags.value("MUTE"), 1, &AOClient::cmdUnBlockWtce}},
|
{"unblockwtce", {ACLFlags.value("MUTE"), 1, &AOClient::cmdUnBlockWtce}},
|
||||||
{"unblock_wtce", {ACLFlags.value("MUTE"), 1, &AOClient::cmdUnBlockWtce}},
|
{"unblock_wtce", {ACLFlags.value("MUTE"), 1, &AOClient::cmdUnBlockWtce}},
|
||||||
|
{"blockdj", {ACLFlags.value("MUTE"), 1, &AOClient::cmdBlockDj}},
|
||||||
|
{"block_dj", {ACLFlags.value("MUTE"), 1, &AOClient::cmdBlockDj}},
|
||||||
|
{"unblockdj", {ACLFlags.value("MUTE"), 1, &AOClient::cmdUnBlockDj}},
|
||||||
|
{"unblock_dj", {ACLFlags.value("MUTE"), 1, &AOClient::cmdUnBlockDj}},
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -22,6 +22,10 @@
|
|||||||
|
|
||||||
void AOClient::cmdPlay(int argc, QStringList argv)
|
void AOClient::cmdPlay(int argc, QStringList argv)
|
||||||
{
|
{
|
||||||
|
if (is_dj_blocked) {
|
||||||
|
sendServerMessage("You are blocked from changing the music.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
AreaData* area = server->areas[current_area];
|
AreaData* area = server->areas[current_area];
|
||||||
QString song = argv.join(" ");
|
QString song = argv.join(" ");
|
||||||
area->current_music = song;
|
area->current_music = song;
|
||||||
|
@ -210,10 +210,6 @@ void AOClient::pktPing(AreaData* area, int argc, QStringList argv, AOPacket pack
|
|||||||
|
|
||||||
void AOClient::pktChangeMusic(AreaData* area, int argc, QStringList argv, AOPacket packet)
|
void AOClient::pktChangeMusic(AreaData* area, int argc, QStringList argv, AOPacket packet)
|
||||||
{
|
{
|
||||||
if (is_dj_blocked) {
|
|
||||||
sendServerMessage("You are blocked from changing the music.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// Due to historical reasons, this
|
// Due to historical reasons, this
|
||||||
// packet has two functions:
|
// packet has two functions:
|
||||||
// Change area, and set music.
|
// Change area, and set music.
|
||||||
@ -225,6 +221,10 @@ void AOClient::pktChangeMusic(AreaData* area, int argc, QStringList argv, AOPack
|
|||||||
for (QString song : server->music_list) {
|
for (QString song : server->music_list) {
|
||||||
if (song == argument || song == "~stop.mp3") { // ~stop.mp3 is a dummy track used by 2.9+
|
if (song == argument || song == "~stop.mp3") { // ~stop.mp3 is a dummy track used by 2.9+
|
||||||
// We have a song here
|
// We have a song here
|
||||||
|
if (is_dj_blocked) {
|
||||||
|
sendServerMessage("You are blocked from changing the music.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
QString effects;
|
QString effects;
|
||||||
if (argc >= 4)
|
if (argc >= 4)
|
||||||
effects = argv[3];
|
effects = argv[3];
|
||||||
|
Loading…
Reference in New Issue
Block a user