diff options
author | Ben Longbons <b.r.longbons@gmail.com> | 2014-11-03 13:35:54 -0800 |
---|---|---|
committer | Ben Longbons <b.r.longbons@gmail.com> | 2014-11-04 20:10:50 -0800 |
commit | 1853e964e96c41e762ca0ab97259ee4e79d86ec7 (patch) | |
tree | edc76f58ed786263a28da79564786f4d75400092 /src/map/atcommand.cpp | |
parent | 1a00fe4ea75924bfe594c4d92073cc95eaa2f32d (diff) | |
download | tmwa-1853e964e96c41e762ca0ab97259ee4e79d86ec7.tar.gz tmwa-1853e964e96c41e762ca0ab97259ee4e79d86ec7.tar.bz2 tmwa-1853e964e96c41e762ca0ab97259ee4e79d86ec7.tar.xz tmwa-1853e964e96c41e762ca0ab97259ee4e79d86ec7.zip |
Use the new ASTs
Diffstat (limited to 'src/map/atcommand.cpp')
-rw-r--r-- | src/map/atcommand.cpp | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/src/map/atcommand.cpp b/src/map/atcommand.cpp index d3e215f..0b23ddd 100644 --- a/src/map/atcommand.cpp +++ b/src/map/atcommand.cpp @@ -57,6 +57,8 @@ #include "../high/mmo.hpp" #include "../high/utils.hpp" +#include "../ast/npc.hpp" + #include "battle.hpp" #include "chrif.hpp" #include "clif.hpp" @@ -4136,13 +4138,21 @@ ATCE atcommand_addwarp(Session *s, dumb_ptr<map_session_data> sd, if (!extract(message, record<' '>(&mapname, &x, &y))) return ATCE::USAGE; - AString w1 = STRPRINTF("%s,%d,%d"_fmt, sd->mapname_, sd->bl_x, sd->bl_y); AString w3 = STRPRINTF("%s%d%d%d%d"_fmt, mapname, sd->bl_x, sd->bl_y, x, y); - AString w4 = STRPRINTF("1,1,%s.gat,%d,%d"_fmt, mapname, x, y); - NpcName w3name = stringish<NpcName>(w3); - int ret = npc_parse_warp(w1, "warp"_s, w3name, w4); - if (ret) + + ast::npc::Warp warp; + warp.m.data = sd->mapname_; + warp.x.data = sd->bl_x; + warp.y.data = sd->bl_y; + warp.name.data = w3name; + warp.xs.data = 1+2; + warp.ys.data = 1+2; + warp.to_m.data = mapname; + warp.to_x.data = x; + warp.to_y.data = y; + + if (!npc_load_warp(warp)) // warp failed return ATCE::RANGE; |