Merge pull request #39 from AttorneyOnline/notecards
Add /notecard, /notecardclear, and /notecardreveal
This commit is contained in:
commit
f810e3449b
@ -1257,6 +1257,34 @@ class AOClient : public QObject {
|
|||||||
|
|
||||||
void cmdSubTheme(int argc, QStringList argv);
|
void cmdSubTheme(int argc, QStringList argv);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Writes a "note card" in the current area.
|
||||||
|
*
|
||||||
|
* @details The note card is not readable until all note cards in the area are revealed by a **CM**.
|
||||||
|
* A message will appear to all clients in the area indicating that a note card has been written.
|
||||||
|
*
|
||||||
|
* @iscommand
|
||||||
|
*/
|
||||||
|
void cmdNoteCard(int argc, QStringList argv);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Reveals all note cards in the current area.
|
||||||
|
*
|
||||||
|
* @iscommand
|
||||||
|
*/
|
||||||
|
void cmdNoteCardReveal(int argc, QStringList argv);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Erases the client's note card from the area's list of cards.
|
||||||
|
*
|
||||||
|
* @details A message will appear to all clients in the area indicating that a note card has been erased.
|
||||||
|
*
|
||||||
|
* @iscommand
|
||||||
|
*/
|
||||||
|
void cmdNoteCardClear(int argc, QStringList argv);
|
||||||
|
|
||||||
|
// Messaging/Client
|
||||||
|
|
||||||
///@}
|
///@}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1521,20 +1549,17 @@ class AOClient : public QObject {
|
|||||||
{"gm", {ACLFlags.value("MODCHAT"), 1, &AOClient::cmdGM}},
|
{"gm", {ACLFlags.value("MODCHAT"), 1, &AOClient::cmdGM}},
|
||||||
{"mute", {ACLFlags.value("MUTE"), 1, &AOClient::cmdMute}},
|
{"mute", {ACLFlags.value("MUTE"), 1, &AOClient::cmdMute}},
|
||||||
{"unmute", {ACLFlags.value("MUTE"), 1, &AOClient::cmdUnMute}},
|
{"unmute", {ACLFlags.value("MUTE"), 1, &AOClient::cmdUnMute}},
|
||||||
{"oocmute", {ACLFlags.value("MUTE"), 1, &AOClient::cmdOocMute}},
|
|
||||||
{"ooc_mute", {ACLFlags.value("MUTE"), 1, &AOClient::cmdOocMute}},
|
|
||||||
{"oocunmute", {ACLFlags.value("MUTE"), 1, &AOClient::cmdOocUnMute}},
|
|
||||||
{"ooc_unmute", {ACLFlags.value("MUTE"), 1, &AOClient::cmdOocUnMute}},
|
|
||||||
{"blockdj", {ACLFlags.value("MUTE"), 1, &AOClient::cmdBlockDj}},
|
|
||||||
{"unblockdj", {ACLFlags.value("MUTE"), 1, &AOClient::cmdUnBlockDj}},
|
|
||||||
{"blockwtce", {ACLFlags.value("MUTE"), 1, &AOClient::cmdBlockWtce}},
|
|
||||||
{"unblockwtce", {ACLFlags.value("MUTE"), 1, &AOClient::cmdUnBlockWtce}},
|
|
||||||
{"bans", {ACLFlags.value("BAN"), 0, &AOClient::cmdBans}},
|
{"bans", {ACLFlags.value("BAN"), 0, &AOClient::cmdBans}},
|
||||||
{"unban", {ACLFlags.value("BAN"), 1, &AOClient::cmdUnBan}},
|
{"unban", {ACLFlags.value("BAN"), 1, &AOClient::cmdUnBan}},
|
||||||
{"removeuser", {ACLFlags.value("MODIFY_USERS"), 1, &AOClient::cmdRemoveUser}},
|
{"removeuser", {ACLFlags.value("MODIFY_USERS"), 1, &AOClient::cmdRemoveUser}},
|
||||||
{"subtheme", {ACLFlags.value("CM"), 1, &AOClient::cmdSubTheme}},
|
{"subtheme", {ACLFlags.value("CM"), 1, &AOClient::cmdSubTheme}},
|
||||||
{"about", {ACLFlags.value("NONE"), 0, &AOClient::cmdAbout}},
|
{"about", {ACLFlags.value("NONE"), 0, &AOClient::cmdAbout}},
|
||||||
{"evidence_swap", {ACLFlags.value("CM"), 2, &AOClient::cmdEvidence_Swap}},
|
{"evidence_swap", {ACLFlags.value("CM"), 2, &AOClient::cmdEvidence_Swap}},
|
||||||
|
{"notecard", {ACLFlags.value("NONE"), 1, &AOClient::cmdNoteCard}},
|
||||||
|
{"notecardreveal", {ACLFlags.value("CM"), 0, &AOClient::cmdNoteCardReveal}},
|
||||||
|
{"notecard_reveal", {ACLFlags.value("CM"), 0, &AOClient::cmdNoteCardReveal}},
|
||||||
|
{"notecardclear", {ACLFlags.value("NONE"), 0, &AOClient::cmdNoteCardClear}},
|
||||||
|
{"notecard_clear", {ACLFlags.value("NONE"), 0, &AOClient::cmdNoteCardClear}},
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -271,6 +271,7 @@ class AreaData : public QObject {
|
|||||||
* @see EvidenceMod
|
* @see EvidenceMod
|
||||||
*/
|
*/
|
||||||
EvidenceMod evi_mod;
|
EvidenceMod evi_mod;
|
||||||
|
QMap<QString, QString> notecards;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // AREA_DATA_H
|
#endif // AREA_DATA_H
|
||||||
|
@ -1203,6 +1203,43 @@ void AOClient::cmdUnBlockWtce(int argc, QStringList argv)
|
|||||||
target->is_wtce_blocked = false;
|
target->is_wtce_blocked = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AOClient::cmdNoteCard(int argc, QStringList argv)
|
||||||
|
{
|
||||||
|
AreaData* area = server->areas[current_area];
|
||||||
|
if (area->notecards.keys().contains(current_char))
|
||||||
|
area->notecards.remove(current_char);
|
||||||
|
QString notecard = argv.join(" ");
|
||||||
|
area->notecards[current_char] = notecard;
|
||||||
|
sendServerMessageArea(current_char + " wrote a note card.");
|
||||||
|
}
|
||||||
|
|
||||||
|
void AOClient::cmdNoteCardClear(int argc, QStringList argv)
|
||||||
|
{
|
||||||
|
AreaData* area = server->areas[current_area];
|
||||||
|
if (area->notecards.keys().contains(current_char)) {
|
||||||
|
area->notecards.remove(current_char);
|
||||||
|
sendServerMessageArea(current_char + " erased their note card.");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
sendServerMessage("You do not have a note card.");
|
||||||
|
}
|
||||||
|
|
||||||
|
void AOClient::cmdNoteCardReveal(int argc, QStringList argv)
|
||||||
|
{
|
||||||
|
AreaData* area = server->areas[current_area];
|
||||||
|
if (area->notecards.isEmpty()) {
|
||||||
|
sendServerMessage("There are no cards to reveal in this area.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
QStringList message;
|
||||||
|
message << "Note cards have been revealed.";
|
||||||
|
QMap<QString, QString>::iterator i;
|
||||||
|
for (i = area->notecards.begin(); i != area->notecards.end(); ++i)
|
||||||
|
message << i.key() + ": " + i.value();
|
||||||
|
sendServerMessageArea(message.join("\n"));
|
||||||
|
area->notecards.clear();
|
||||||
|
}
|
||||||
|
|
||||||
QStringList AOClient::buildAreaList(int area_idx)
|
QStringList AOClient::buildAreaList(int area_idx)
|
||||||
{
|
{
|
||||||
QStringList entries;
|
QStringList entries;
|
||||||
|
Loading…
Reference in New Issue
Block a user