From 552b06a0205b2179da6017d876c2117fdebbb514 Mon Sep 17 00:00:00 2001 From: mekolat Date: Sat, 30 Apr 2016 19:37:33 -0400 Subject: simplify `aggravate` builtin --- src/map/script-fun.cpp | 34 ++++++++-------------------------- 1 file changed, 8 insertions(+), 26 deletions(-) (limited to 'src/map') diff --git a/src/map/script-fun.cpp b/src/map/script-fun.cpp index 18d89a0..640bb20 100644 --- a/src/map/script-fun.cpp +++ b/src/map/script-fun.cpp @@ -2964,36 +2964,18 @@ void builtin_getmapusers(ScriptState *st) push_int(st->stack, users); } -static -void builtin_aggravate_sub(dumb_ptr bl, dumb_ptr target, int effect) -{ - dumb_ptr md = bl->is_mob(); - - if (mob_aggravate(md, target)) - clif_misceffect(bl, effect); -} - static void builtin_aggravate(ScriptState *st) { - dumb_ptr target = map_id2bl(st->rid); - MapName str = stringish(ZString(conv_str(st, &AARG(0)))); - int x0 = conv_num(st, &AARG(1)); - int y0 = conv_num(st, &AARG(2)); - int x1 = conv_num(st, &AARG(3)); - int y1 = conv_num(st, &AARG(4)); - int effect = conv_num(st, &AARG(5)); - P m = TRY_UNWRAP(map_mapname2mapid(str), + dumb_ptr md = map_id_is_mob(wrap(conv_num(st, &AARG(0)))); + if (md) { - push_int(st->stack, -1); - return; - }); + dumb_ptr target = script_rid2sd(st); + if (HARG(1)) + target = map_id2bl(wrap(conv_num(st, &AARG(1)))); - map_foreachinarea(std::bind(builtin_aggravate_sub, ph::_1, target, effect), - m, - x0, y0, - x1, y1, - BL::MOB); + mob_aggravate(md, target); + } } /*========================================== @@ -4820,7 +4802,7 @@ BuiltinFunction builtin_functions[] = BUILTIN(iscollision, "Mxy"_s, 'i'), BUILTIN(shop, "s"_s, '\0'), BUILTIN(isdead, ""_s, 'i'), - BUILTIN(aggravate, "Mxyxyi"_s, '\0'), + BUILTIN(aggravate, "i?"_s, '\0'), BUILTIN(fakenpcname, "ssi"_s, '\0'), BUILTIN(puppet, "mxysi??"_s, 'i'), BUILTIN(destroy, "?"_s, '\0'), -- cgit v1.2.3-60-g2f50