summaryrefslogtreecommitdiff
path: root/src/map/atcommand.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/atcommand.cpp')
-rw-r--r--src/map/atcommand.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/map/atcommand.cpp b/src/map/atcommand.cpp
index 63a1159..d587bde 100644
--- a/src/map/atcommand.cpp
+++ b/src/map/atcommand.cpp
@@ -4157,6 +4157,30 @@ ATCE atcommand_npcmove(Session *, dumb_ptr<map_session_data>,
}
static
+ATCE atcommand_npcsit(Session *, dumb_ptr<map_session_data> sd,
+ ZString message)
+{
+ NpcName character;
+ dumb_ptr<npc_data> nd = nullptr;
+
+ if (!asplit(message, &character))
+ return ATCE::USAGE;
+
+ nd = npc_name2id(character);
+ if (nd == nullptr)
+ return ATCE::EXIST;
+
+ if(nd->sit == DamageType::SIT)
+ nd->sit = DamageType::STAND;
+ else
+ nd->sit = DamageType::SIT;
+
+ clif_sitnpc(sd, nd, true);
+
+ return ATCE::OKAY;
+}
+
+static
ATCE atcommand_addwarp(Session *s, dumb_ptr<map_session_data> sd,
ZString message)
{
@@ -5267,6 +5291,9 @@ Map<XString, AtCommandInfo> atcommand_info =
{"npcmove"_s, {"<x> <y> <npc-name>"_s,
80, atcommand_npcmove,
"Force an NPC to move on the map"_s}},
+ {"npcsit"_s, {"<npc-name>"_s,
+ 80, atcommand_npcsit,
+ "Force an NPC to move on the map"_s}},
{"charpvp"_s, {"<charname> <channel>"_s,
40, atcommand_charpvp,
"Set the pvp channel of another player"_s}},