summaryrefslogtreecommitdiff
path: root/src/map/npc.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/npc.c')
-rw-r--r--src/map/npc.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/map/npc.c b/src/map/npc.c
index 36569eb88..c6d77c18c 100644
--- a/src/map/npc.c
+++ b/src/map/npc.c
@@ -916,6 +916,32 @@ int npc_checknear(struct map_session_data *sd,int id)
}
/*==========================================
+ * NPCのオープンチャット発言
+ *------------------------------------------
+ */
+int npc_globalmessage(const char *name,char *mes)
+{
+ struct npc_data *nd=strdb_search(npcname_db,name);
+ char temp[100];
+ char ntemp[50];
+ char *ltemp;
+
+ if(nd==NULL) return 0;
+ if(name==NULL) return 0;
+
+ ltemp=strchr(name,'#');
+ if(ltemp!=NULL) {
+ strncpy(ntemp,name,ltemp - name); // 123#456 の # から後ろを削除する
+ ntemp[ltemp - name]=0x00; // strncpy のバグ?使い方間違ってる?
+ }
+
+ snprintf(temp, sizeof temp ,"%s : %s",ntemp,mes);
+ clif_GlobalMessage(&nd->bl,temp);
+
+ return 0;
+}
+
+/*==========================================
* クリック時のNPC処理
*------------------------------------------
*/