diff options
Diffstat (limited to 'src/server/scripts/Commands')
| -rw-r--r-- | src/server/scripts/Commands/cs_cheat.cpp | 15 | ||||
| -rw-r--r-- | src/server/scripts/Commands/cs_debug.cpp | 10 | ||||
| -rw-r--r-- | src/server/scripts/Commands/cs_gm.cpp | 10 |
3 files changed, 26 insertions, 9 deletions
diff --git a/src/server/scripts/Commands/cs_cheat.cpp b/src/server/scripts/Commands/cs_cheat.cpp index 3ca81e3e6f3..aeac475fdb1 100644 --- a/src/server/scripts/Commands/cs_cheat.cpp +++ b/src/server/scripts/Commands/cs_cheat.cpp @@ -185,10 +185,11 @@ public: std::string argstr = (char*)args; + Player* target = handler->GetSession()->GetPlayer(); if (!*args) { - argstr = (handler->GetSession()->GetPlayer()->GetCommandStatus(CHEAT_WATERWALK)) ? "off" : "on"; - if (handler->GetSession()->GetPlayer()->GetCommandStatus(CHEAT_WATERWALK)) + argstr = (target->GetCommandStatus(CHEAT_WATERWALK)) ? "off" : "on"; + if (target->GetCommandStatus(CHEAT_WATERWALK)) argstr = "off"; else argstr = "on"; @@ -196,15 +197,17 @@ public: if (argstr == "off") { - handler->GetSession()->GetPlayer()->SetCommandStatusOff(CHEAT_WATERWALK); - handler->GetSession()->GetPlayer()->SendMovementSetWaterWalking(false); // OFF + target->SetCommandStatusOff(CHEAT_WATERWALK); + target->RemoveUnitMovementFlag(MOVEMENTFLAG_WATERWALKING); + target->SendMovementWaterWalking(); // OFF handler->SendSysMessage("Waterwalking is OFF. You can't walk on water."); return true; } else if (argstr == "on") { - handler->GetSession()->GetPlayer()->SetCommandStatusOn(CHEAT_WATERWALK); - handler->GetSession()->GetPlayer()->SendMovementSetWaterWalking(true); // ON + target->SetCommandStatusOn(CHEAT_WATERWALK); + target->AddUnitMovementFlag(MOVEMENTFLAG_WATERWALKING); + target->SendMovementWaterWalking(); // ON handler->SendSysMessage("Waterwalking is ON. You can walk on water."); return true; } diff --git a/src/server/scripts/Commands/cs_debug.cpp b/src/server/scripts/Commands/cs_debug.cpp index 56b8d251de6..1c3968cae8e 100644 --- a/src/server/scripts/Commands/cs_debug.cpp +++ b/src/server/scripts/Commands/cs_debug.cpp @@ -1331,7 +1331,15 @@ public: target->SetExtraUnitMovementFlags(moveFlagsExtra); } - target->SendMovementFlagUpdate(); + if (target->GetTypeId() != TYPEID_PLAYER) + target->DestroyForNearbyPlayers(); // Force new SMSG_UPDATE_OBJECT:CreateObject + else + { + WorldPacket data(SMSG_PLAYER_MOVE); + target->WriteMovementInfo(data); + target->SendMessageToSet(&data, true); + } + handler->PSendSysMessage(LANG_MOVEFLAGS_SET, target->GetUnitMovementFlags(), target->GetExtraUnitMovementFlags()); } diff --git a/src/server/scripts/Commands/cs_gm.cpp b/src/server/scripts/Commands/cs_gm.cpp index a99957a07c0..e0c338a2dbf 100644 --- a/src/server/scripts/Commands/cs_gm.cpp +++ b/src/server/scripts/Commands/cs_gm.cpp @@ -103,9 +103,15 @@ public: WorldPacket data; if (strncmp(args, "on", 3) == 0) - target->SendMovementSetCanFly(true); + { + target->AddUnitMovementFlag(MOVEMENTFLAG_CAN_FLY); + target->SendMovementCanFlyChange(); + } else if (strncmp(args, "off", 4) == 0) - target->SendMovementSetCanFly(false); + { + target->RemoveUnitMovementFlag(MOVEMENTFLAG_CAN_FLY); + target->SendMovementCanFlyChange(); + } else { handler->SendSysMessage(LANG_USE_BOL); |
