关灯
开启左侧

会员说话系统-参考代码

  [复制链接]
admin实名认证 发表于 2016-4-18 22:50:09 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
 
服务端的会员说话系统-参考代码(貌似是比较老的代码了)


diff --git a/addition/[104] mangos_name_announce.sql b/addition/[104] mangos_name_announce.sqlnew file mode 100644
index 0000000..3b350af
--- /dev/null
+++ b/addition/[104] mangos_name_announce.sql       
@@ -0,0 +1,2 @@
+INSERT INTO `command` VALUES ('nameannounce',1,'Syntax: .nameannounce $MessageToBroadcast Send a global message to all players online in chat log with colored sender\'s name.');
+INSERT INTO `mangos_string` VALUES (60,'|c1f40af20 <Mod>|cffff0000[%s]|c1f40af20 announce:|cffffff00 %s|r',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL), (61,'|c1f40af20 <GM>|cffff0000[%s]|c1f40af20 announce:|cffffff00 %s|r',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL), (62,'|c1f40af20 <Admin>|cffff0000[%s]|c1f40af20 announce:|cffffff00 %s|r',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
diff --git a/src/game/Chat.cpp b/src/game/Chat.cpp
index 891d96b..03d484f 100644
--- a/src/game/Chat.cpp
+++ b/src/game/Chat.cpp
@@ -598,6 +598,7 @@ ChatCommand * ChatHandler::getCommandTable()
         { "aura",           SEC_ADMINISTRATOR,  false, &ChatHandler::HandleAuraCommand,                "", NULL },
         { "unaura",         SEC_ADMINISTRATOR,  false, &ChatHandler::HandleUnAuraCommand,              "", NULL },
         { "announce",       SEC_MODERATOR,      true,  &ChatHandler::HandleAnnounceCommand,            "", NULL },
+        { "nameannounce",   SEC_MODERATOR,      false, &ChatHandler::HandleNameAnnounceCommand,        "", NULL },
         { "notify",         SEC_MODERATOR,      true,  &ChatHandler::HandleNotifyCommand,              "", NULL },
         { "goname",         SEC_MODERATOR,      false, &ChatHandler::HandleGonameCommand,              "", NULL },
         { "namego",         SEC_MODERATOR,      false, &ChatHandler::HandleNamegoCommand,              "", NULL },
diff --git a/src/game/Chat.h b/src/game/Chat.h
index 9c3ff0a..573f47e 100644
--- a/src/game/Chat.h
+++ b/src/game/Chat.h
@@ -441,6 +441,7 @@ class ChatHandler
         bool HandleGroupgoCommand(const char* args);
         bool HandleRecallCommand(const char* args);
         bool HandleAnnounceCommand(const char* args);
+        bool HandleNameAnnounceCommand(const char* args);
         bool HandleNotifyCommand(const char* args);
         bool HandleGPSCommand(const char* args);
         bool HandleTaxiCheatCommand(const char* args);
diff --git a/src/game/Language.h b/src/game/Language.h
index a7eaa08..888f4aa 100644
--- a/src/game/Language.h
+++ b/src/game/Language.h
@@ -84,6 +84,9 @@ enum MangosStrings
     LANG_USING_SCRIPT_LIB               = 58,
     LANG_USING_EVENT_AI                 = 59,
     // Room for more level 0              60-99 not used
+    LANG_SYSTEMMESSAGE_MODERATOR        = 60,
+    LANG_SYSTEMMESSAGE_GAMEMASTER       = 61,
+    LANG_SYSTEMMESSAGE_ADMINISTRATOR    = 62,

     // level 1 chat
     LANG_GLOBAL_NOTIFY                  = 100,
diff --git a/src/game/Level1.cpp b/src/game/Level1.cpp
index 61a998e..0cb3fc0 100644
--- a/src/game/Level1.cpp
+++ b/src/game/Level1.cpp
@@ -132,6 +132,34 @@ bool ChatHandler::HandleAnnounceCommand(const char* args)
     return true;
}

+// Nameannounce
+bool ChatHandler::HandleNameAnnounceCommand(const char* args)
+{
+    int32 strid = 0;
+
+    if(!*args)
+        return false;
+
+    switch(m_session->GetSecurity())
+    {
+      case SEC_MODERATOR:
+        strid = LANG_SYSTEMMESSAGE_MODERATOR;
+        break;
+      case SEC_GAMEMASTER:
+        strid = LANG_SYSTEMMESSAGE_GAMEMASTER;
+        break;
+      case SEC_ADMINISTRATOR:
+        strid = LANG_SYSTEMMESSAGE_ADMINISTRATOR;
+        break;
+      default:
+        return false;
+    }
+
+    sWorld.SendWorldText(strid, m_session->GetPlayerName(), args);
+
+    return true;
+}
+
//notification player at the screen
bool ChatHandler::HandleNotifyCommand(const char* args)
{

标签:会员
 

精彩评论1

倒序浏览
你懂的 发表于 2016-11-7 03:37:31 | 显示全部楼层
 
感谢楼主分享,祝愿吾爱尚玩越来越好!
 
VIP介绍
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 最佳新人

    注册账号后积极发帖的会员
  • 活跃会员

    经常参与各类话题的讨论,发帖内容较有主见
  • 热心会员

    经常帮助其他会员答疑
  • 推广达人

    积极宣传本站,为本站带来更多注册会员
  • 宣传达人

    积极宣传本站,为本站带来更多的用户访问量
  • 灌水之王

    经常在论坛发帖,且发帖量较大
  • 突出贡献

    长期对论坛的繁荣而不断努力,或多次提出建设性意见
  • 优秀版主

    活跃且尽责职守的版主
  • 荣誉管理

    曾经为论坛做出突出贡献目前已离职的版主
  • 论坛元老

    为论坛做出突出贡献的会员

0关注

5粉丝

3421帖子

排行榜
作者专栏

QQ交流群&&微信订阅号

QQ交流群

微信订阅号

吾爱尚玩资源基地永久域名:

Www.523Play.Com

在线管理员QQ:1589479632

邮箱:Email@523play.com

QQ交流群:558936238

Copyright   ©2015-2116  吾爱尚玩资源基地|523play.comPowered by©523Pplay.Com技术支持:吾爱尚玩资源基地