diff options
Diffstat (limited to 'src/server/scripts/Commands')
| -rw-r--r-- | src/server/scripts/Commands/cs_cheat.cpp | 6 | ||||
| -rw-r--r-- | src/server/scripts/Commands/cs_gm.cpp | 10 | ||||
| -rw-r--r-- | src/server/scripts/Commands/cs_mmaps.cpp | 21 |
3 files changed, 19 insertions, 18 deletions
diff --git a/src/server/scripts/Commands/cs_cheat.cpp b/src/server/scripts/Commands/cs_cheat.cpp index aeac475fdb1..a5199ce75b4 100644 --- a/src/server/scripts/Commands/cs_cheat.cpp +++ b/src/server/scripts/Commands/cs_cheat.cpp @@ -198,16 +198,14 @@ public: if (argstr == "off") { target->SetCommandStatusOff(CHEAT_WATERWALK); - target->RemoveUnitMovementFlag(MOVEMENTFLAG_WATERWALKING); - target->SendMovementWaterWalking(); // OFF + target->SetWaterWalking(false); handler->SendSysMessage("Waterwalking is OFF. You can't walk on water."); return true; } else if (argstr == "on") { target->SetCommandStatusOn(CHEAT_WATERWALK); - target->AddUnitMovementFlag(MOVEMENTFLAG_WATERWALKING); - target->SendMovementWaterWalking(); // ON + target->SetWaterWalking(true); handler->SendSysMessage("Waterwalking is ON. You can walk on water."); return true; } diff --git a/src/server/scripts/Commands/cs_gm.cpp b/src/server/scripts/Commands/cs_gm.cpp index c484f7ef753..f837680d570 100644 --- a/src/server/scripts/Commands/cs_gm.cpp +++ b/src/server/scripts/Commands/cs_gm.cpp @@ -103,15 +103,9 @@ public: WorldPacket data; if (strncmp(args, "on", 3) == 0) - { - target->AddUnitMovementFlag(MOVEMENTFLAG_CAN_FLY); - target->SendMovementCanFlyChange(); - } + target->SetCanFly(true); else if (strncmp(args, "off", 4) == 0) - { - target->RemoveUnitMovementFlag(MOVEMENTFLAG_CAN_FLY); - target->SendMovementCanFlyChange(); - } + target->SetCanFly(false); else { handler->SendSysMessage(LANG_USE_BOL); diff --git a/src/server/scripts/Commands/cs_mmaps.cpp b/src/server/scripts/Commands/cs_mmaps.cpp index 49fa87b5d68..2428cb0a239 100644 --- a/src/server/scripts/Commands/cs_mmaps.cpp +++ b/src/server/scripts/Commands/cs_mmaps.cpp @@ -153,7 +153,11 @@ public: // navmesh poly -> navmesh tile location dtQueryFilter filter = dtQueryFilter(); dtPolyRef polyRef = INVALID_POLYREF; - navmeshquery->findNearestPoly(location, extents, &filter, &polyRef, NULL); + if (dtStatusFailed(navmeshquery->findNearestPoly(location, extents, &filter, &polyRef, NULL))) + { + handler->PSendSysMessage("Dt [??,??] (invalid poly, probably no tile loaded)"); + return true; + } if (polyRef == INVALID_POLYREF) handler->PSendSysMessage("Dt [??, ??] (invalid poly, probably no tile loaded)"); @@ -161,11 +165,16 @@ public: { dtMeshTile const* tile; dtPoly const* poly; - navmesh->getTileAndPolyByRef(polyRef, &tile, &poly); - if (tile) - handler->PSendSysMessage("Dt [%02i, %02i]", tile->header->x, tile->header->y); - else - handler->PSendSysMessage("Dt [??, ??] (no tile loaded)"); + if (dtStatusSucceed(navmesh->getTileAndPolyByRef(polyRef, &tile, &poly))) + { + if (tile) + { + handler->PSendSysMessage("Dt [%02i,%02i]", tile->header->x, tile->header->y); + return false; + } + } + + handler->PSendSysMessage("Dt [??,??] (no tile loaded)"); } return true; |
