From 77db5d34b091c366750410281369ff4ce926b9b6 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sat, 15 Nov 2014 17:43:49 +0300 Subject: Impliment script function npctalk3. --- src/map/script.c | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) (limited to 'src/map/script.c') diff --git a/src/map/script.c b/src/map/script.c index fffaa70..54bf82c 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -85,3 +85,46 @@ BUILDIN(restoreCam) send_npccommand(sd, st->oid, 3); return 0; } + +BUILDIN(npcTalk3) +{ + getSD(); + + char *str; + char *msg; + struct npc_data *nd = NULL; + + if (script_hasdata(st, 3)) + { + nd = npc->name2id (script_getstr(st, 2)); + str = script_getstr(st, 3); + } + else + { + nd = (struct npc_data *) map->id2bl (st->oid); + str = script_getstr(st, 2); + } + + if (!nd) + return 0; + + msg = nd->name; +// +++ after restore lang support need translate here +/* + if (sd) + msg = (char*)lang_pctrans (nd->name, sd); + else + msg = nd->name; +*/ + if (strlen(str) + strlen(msg) > 450) + return 0; + + if (nd) + { + char message[500]; + strcpy (message, msg); + strcat (message, " : "); + strcat (message, str); + send_local_message (sd, &(nd->bl), message); + } +} -- cgit v1.2.3-70-g09d2