From 25c5a610555f442005d562ad463a4f22efb6f744 Mon Sep 17 00:00:00 2001 From: Emistry Date: Sun, 5 Jul 2015 04:28:31 +0800 Subject: Added script command `showscript ""{,};` Makes attached player or GID says a message like shouting a skill name, the message will be seen to everyone around but not in chat window. --- src/map/script.c | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'src') diff --git a/src/map/script.c b/src/map/script.c index 87762f44e..b74f1d0ab 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -19660,6 +19660,37 @@ BUILDIN(channelmes) return true; } + +/** By Cydh +Display script message +showscript ""{,}; +*/ +BUILDIN(showscript) { + struct block_list *bl = NULL; + const char *msg = script_getstr(st, 2); + int id = 0; + + if (script_hasdata(st, 3)) { + id = script_getnum(st, 3); + bl = map->id2bl(id); + } + else { + bl = st->rid ? map->id2bl(st->rid) : map->id2bl(st->oid); + } + + if (!bl) { + ShowError("buildin_showscript: Script not attached. (id=%, rid=%d, oid=%d)\n", id, st->rid, st->oid); + script_pushint(st, 0); + return false; + } + + clif->ShowScript(bl, msg); + + script_pushint(st, 1); + + return true; +} + /** place holder for the translation macro **/ BUILDIN(_) { return true; @@ -20297,6 +20328,7 @@ void script_parse_builtin(void) { BUILDIN_DEF(shopcount, "i"), BUILDIN_DEF(channelmes, "ss"), + BUILDIN_DEF(showscript, "s?"), BUILDIN_DEF(_,"s"), }; int i, len = ARRAYLENGTH(BUILDIN); -- cgit v1.2.3-60-g2f50