*Some work on vehicles.

--HG--
branch : trunk
This commit is contained in:
megamage
2009-04-17 15:08:58 -05:00
parent af935468df
commit c7d78b5ff9
17 changed files with 392 additions and 190 deletions

View File

@@ -32,6 +32,10 @@
#include "BattleGroundMgr.h"
#include <fstream>
#include "ObjectMgr.h"
#include "Cell.h"
#include "CellImpl.h"
#include "GridNotifiers.h"
#include "GridNotifiersImpl.h"
bool ChatHandler::HandleDebugSendSpellFailCommand(const char* args)
{
@@ -673,6 +677,53 @@ bool ChatHandler::HandleDebugHostilRefList(const char * /*args*/)
return true;
}
bool ChatHandler::HandleDebugSetVehicleId(const char *args)
{
Unit* target = getSelectedUnit();
if(!target || target->GetTypeId() != TYPEID_UNIT || !((Creature*)target)->isVehicle())
return false;
if(!args)
return false;
char* i = strtok((char*)args, " ");
if(!i)
return false;
uint32 id = (uint32)atoi(i);
((Vehicle*)target)->SetVehicleId(id);
target->SendUpdateObjectToAllExcept(NULL);
PSendSysMessage("Vehicle id set to %u", id);
return true;
}
bool ChatHandler::HandleDebugEnterVehicle(const char * args)
{
Unit* target = getSelectedUnit();
if(!target || target->GetTypeId() != TYPEID_UNIT || !((Creature*)target)->isVehicle())
return false;
if(!args)
return false;
char* i = strtok((char*)args, " ");
if(!i)
return false;
uint32 entry = (uint32)atoi(i);
Creature *passenger = NULL;
Trinity::AllCreaturesOfEntryInRange check(m_session->GetPlayer(), entry, 20.0f);
Trinity::CreatureSearcher<Trinity::AllCreaturesOfEntryInRange> searcher(m_session->GetPlayer(), passenger, check);
m_session->GetPlayer()->VisitNearbyObject(20.0f, searcher);
if(!passenger || passenger == target)
return false;
((Vehicle*)target)->AddPassenger(passenger);
PSendSysMessage("Creature entered vehicle");
return true;
}
bool ChatHandler::HandleDebugSpawnVehicle(const char* args)
{
if(!args)