All pastes #988665 Raw Edit

Someone

public cpp v1 · immutable
#988665 ·published 2008-04-17 19:51 UTC
rendered paste body
bool ChatHandler::HandleGameObjectCommand(const char* args){    if (!*args)        return false;    char* pParam1 = strtok((char*)args, " ");    uint32 id = atoi((char*)pParam1);    if(!id)        return false;    char* spawntimeSecs = strtok(NULL, " ");    const GameObjectInfo *goI = objmgr.GetGameObjectInfo(id);    if (!goI)    {        PSendSysMessage(LANG_GAMEOBJECT_NOT_EXIST,id);        return false;    }    Player *chr = m_session->GetPlayer();    float x = float(chr->GetPositionX());    float y = float(chr->GetPositionY());    float z = float(chr->GetPositionZ());    float o = float(chr->GetOrientation());    float rot2 = sin(o/2);    float rot3 = cos(o/2);    GameObject* pGameObj = new GameObject(NULL);    uint32 lowGUID = objmgr.GenerateLowGuid(HIGHGUID_GAMEOBJECT);    if(!pGameObj->Create(lowGUID, goI->id, chr->GetMapId(), x, y, z, o, 0, 0, rot2, rot3, 0, 1))    {        delete pGameObj;        return false;    }    //pGameObj->SetZoneId(chr->GetZoneId());    pGameObj->SetMapId(chr->GetMapId());    //pGameObj->SetNameId(id);    sLog.outDebug(GetMangosString(LANG_GAMEOBJECT_CURRENT), goI->name, lowGUID, x, y, z, o);    if( spawntimeSecs )    {        uint32 value = atoi((char*)spawntimeSecs);        pGameObj->SetRespawnTime(value);        //sLog.outDebug("*** spawntimeSecs: %d", value);    }    pGameObj->SaveToDB();    MapManager::Instance().GetMap(pGameObj->GetMapId(), pGameObj)->Add(pGameObj);    GameObjectData const* data = objmgr.GetGOData(lowGUID);    if (data)    {        objmgr.AddGameobjectToGrid(lowGUID, data);    }    PSendSysMessage(LANG_GAMEOBJECT_ADD,id,goI->name,lowGUID,x,y,z);    return true;}