本文整理汇总了C++中getSelectedUnit函数的典型用法代码示例。如果您正苦于以下问题:C++ getSelectedUnit函数的具体用法?C++ getSelectedUnit怎么用?C++ getSelectedUnit使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了getSelectedUnit函数的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: getSelectedUnit
bool ChatHandler::HandleCastSpellCommand(const char* args, WorldSession *m_session)
{
Unit* caster = m_session->GetPlayer();
Unit* target = getSelectedUnit(m_session, false);
if(!target)
target = caster;
uint32 spellid = atol(args);
if(spellid == 0)
spellid = GetSpellIDFromLink( args );
SpellEntry *spellentry = dbcSpell.LookupEntryForced(spellid);
if(spellentry == NULL)
{
RedSystemMessage(m_session, "Invalid spell id!");
return false;
}
Spell* sp = new Spell(caster, spellentry, false, NULLAURA);
if(!sp)
{
RedSystemMessage(m_session, "Spell failed creation!");
return false;
}
BlueSystemMessage(m_session, "Casting spell %d on target.", spellid);
SpellCastTargets targets;
targets.m_unitTarget = target->GetGUID();
sp->prepare(&targets);
sWorld.LogGM(m_session, "Used castspell command on %s" , target->GetName());
return true;
}
开发者ID:Refuge89,项目名称:Hearthstone,代码行数:31,代码来源:Level2.cpp
示例2: getSelectedUnit
bool ChatHandler::HandleDebugSendOpcodeCommand(const char* /*args*/)
{
Unit *unit = getSelectedUnit();
Player *player = NULL;
if (!unit || (unit->GetTypeId() != TYPEID_PLAYER))
player = m_session->GetPlayer();
else
player = (Player*)unit;
if (!unit) unit = player;
std::ifstream ifs("opcode.txt");
if (ifs.bad())
return false;
uint32 opcode;
ifs >> opcode;
WorldPacket data(opcode, 0);
while (!ifs.eof())
{
std::string type;
ifs >> type;
if (type == "")
break;
if (type == "uint8")
{
uint16 val1;
ifs >> val1;
data << uint8(val1);
}
else if (type == "uint16")
开发者ID:sensibob,项目名称:tempestcore,代码行数:34,代码来源:Debugcmds.cpp
示例3: getSelectedUnit
bool ChatHandler::HandleSendOpcodeCommand(const char* args)
{
Unit *unit = getSelectedUnit();
if (!unit || (unit->GetTypeId() != TYPEID_PLAYER))
unit = m_session->GetPlayer();
std::ifstream ifs("opcode.txt");
if(ifs.bad())
return false;
uint32 opcode;
ifs >> opcode;
WorldPacket data(opcode, 0);
while(!ifs.eof())
{
std::string type;
ifs >> type;
if(type == "uint8")
{
uint8 val1;
ifs >> val1;
data << val1;
}
else if(type == "uint16")
开发者ID:Artea,项目名称:mangos-svn,代码行数:27,代码来源:debugcmds.cpp
示例4: getSelectedUnit
bool ChatHandler::HandleDebugInArcCommand(const char* /*args*/)
{
Object* obj = getSelectedUnit();
if (!obj)
{
SendSysMessage(LANG_SELECT_CHAR_OR_CREATURE);
return true;
}
SendSysMessage(LANG_NOT_IMPLEMENTED);
return true;
}
开发者ID:Aminxhm,项目名称:OregonCore,代码行数:14,代码来源:Debugcmds.cpp
示例5: atoi
bool ChatHandler::HandleDebugAddFormationToFileCommand(const char* args)
{
if (!args)
return false;
std::fstream file;
file.open("formations.txt", std::ios_base::app);
if (file.fail())
return false;
uint32 leader = atoi((char*)args);
uint32 member = 0;
if (Unit *sel = getSelectedUnit())
member = ((Creature *)sel)->GetDBTableGUIDLow();
file << "INSERT INTO `creature_formations` VALUES ('" << leader << "', '" << member << "', '0', '0', '2');" << std::endl;
file.close();
return true;
}
开发者ID:Blumfield,项目名称:ptc2,代码行数:19,代码来源:Debugcmds.cpp
示例6: getSelectedUnit
//demorph player or unit
bool ChatHandler::HandleDeMorphCommand(const char* /*args*/)
{
Unit *target = getSelectedUnit();
if (!target)
target = m_session->GetPlayer();
// check online security
if (target->GetTypeId() == TYPEID_PLAYER && HasLowerSecurity((Player*)target, 0))
return false;
if (target->GetTypeId() == TYPEID_PLAYER)
if (target->ToPlayer()->NoModify() && m_session->GetPlayer() != target && !m_session->GetPlayer()->IsAdmin())
{
PSendSysMessage("This player has disabled gm commands being used on them.");
return true;
}
target->DeMorph();
return true;
}
开发者ID:sanysan,项目名称:ChaosCore-1,代码行数:22,代码来源:Level2.cpp
示例7: getSelectedUnit
bool ChatHandler::HandleDebugSendPoiCommand(char* args)
{
Player *pPlayer = m_session->GetPlayer();
Unit* target = getSelectedUnit();
if (!target)
{
SendSysMessage(LANG_SELECT_CHAR_OR_CREATURE);
return true;
}
uint32 icon;
if (!ExtractUInt32(&args, icon))
return false;
uint32 flags;
if (!ExtractUInt32(&args, flags))
return false;
DETAIL_LOG("Command : POI, NPC = %u, icon = %u flags = %u", target->GetGUIDLow(), icon,flags);
pPlayer->PlayerTalkClass->SendPointOfInterest(target->GetPositionX(), target->GetPositionY(), Poi_Icon(icon), flags, 30, "Test POI");
return true;
}
开发者ID:Wisznu,项目名称:mangos,代码行数:22,代码来源:debugcmds.cpp
示例8: getSelectedUnit
bool ChatHandler::HandleGPSCommand(const char* args)
{
Object *obj = getSelectedUnit();
if(!obj)
{
SendSysMessage(LANG_SELECT_CHAR_OR_CREATURE);
return true;
}
CellPair cell_val = MaNGOS::ComputeCellPair(obj->GetPositionX(), obj->GetPositionY());
Cell cell = RedZone::GetZone(cell_val);
PSendSysMultilineMessage(LANG_MAP_POSITION,
obj->GetMapId(), obj->GetZoneId(), obj->GetPositionX(), obj->GetPositionY(), obj->GetPositionZ(),
obj->GetOrientation(),cell.GridX(), cell.GridY(), cell.CellX(), cell.CellY());
sLog.outDebug("Player %s GPS call unit " I64FMT " " LANG_MAP_POSITION, m_session->GetPlayer()->GetName(), obj->GetGUID(),
obj->GetMapId(), obj->GetZoneId(), obj->GetPositionX(), obj->GetPositionY(), obj->GetPositionZ(),
obj->GetOrientation(), cell.GridX(), cell.GridY(), cell.CellX(), cell.CellY());
return true;
}
开发者ID:Artea,项目名称:mangos-svn,代码行数:23,代码来源:Level1.cpp
示例9: getSelectedUnit
bool ChatHandler::HandleGPSCommand(const char* args)
{
WorldObject *obj = getSelectedUnit();
if(!obj)
{
SendSysMessage(LANG_SELECT_CHAR_OR_CREATURE);
return true;
}
CellPair cell_val = MaNGOS::ComputeCellPair(obj->GetPositionX(), obj->GetPositionY());
Cell cell = RedZone::GetZone(cell_val);
PSendSysMultilineMessage(LANG_MAP_POSITION,
obj->GetMapId(), obj->GetZoneId(), obj->GetAreaId(), obj->GetPositionX(), obj->GetPositionY(), obj->GetPositionZ(),
obj->GetOrientation(),cell.GridX(), cell.GridY(), cell.CellX(), cell.CellY(),obj->GetInstanceId());
sLog.outDebug("Player %s GPS call %s %u " LANG_MAP_POSITION, m_session->GetPlayer()->GetName(),
(obj->GetTypeId() == TYPEID_PLAYER ? "player" : "creature"), obj->GetGUIDLow(),
obj->GetMapId(), obj->GetZoneId(), obj->GetAreaId(), obj->GetPositionX(), obj->GetPositionY(), obj->GetPositionZ(),
obj->GetOrientation(), cell.GridX(), cell.GridY(), cell.CellX(), cell.CellY(),obj->GetInstanceId());
return true;
}
开发者ID:Artea,项目名称:mangos-svn,代码行数:24,代码来源:Level1.cpp
示例10: extractGuidFromLink
bool ChatHandler::HandleGPSCommand(const char* args)
{
WorldObject *obj = NULL;
if (*args)
{
uint64 guid = extractGuidFromLink((char*)args);
if (guid)
obj = (WorldObject*)ObjectAccessor::GetObjectByTypeMask(*m_session->GetPlayer(), guid, TYPEMASK_UNIT|TYPEMASK_GAMEOBJECT);
if (!obj)
{
SendSysMessage(LANG_PLAYER_NOT_FOUND);
SetSentErrorMessage(true);
return false;
}
}
else
{
obj = getSelectedUnit();
if (!obj)
{
SendSysMessage(LANG_SELECT_CHAR_OR_CREATURE);
SetSentErrorMessage(true);
return false;
}
}
CellPair cell_val = Trinity::ComputeCellPair(obj->GetPositionX(), obj->GetPositionY());
Cell cell(cell_val);
uint32 zone_id, area_id;
obj->GetZoneAndAreaId(zone_id, area_id);
MapEntry const* mapEntry = sMapStore.LookupEntry(obj->GetMapId());
AreaTableEntry const* zoneEntry = GetAreaEntryByAreaID(zone_id);
AreaTableEntry const* areaEntry = GetAreaEntryByAreaID(area_id);
float zone_x = obj->GetPositionX();
float zone_y = obj->GetPositionY();
Map2ZoneCoordinates(zone_x, zone_y, zone_id);
Map const *map = obj->GetMap();
float ground_z = map->GetHeight(obj->GetPositionX(), obj->GetPositionY(), MAX_HEIGHT);
float floor_z = map->GetHeight(obj->GetPositionX(), obj->GetPositionY(), obj->GetPositionZ());
GridPair p = Trinity::ComputeGridPair(obj->GetPositionX(), obj->GetPositionY());
// 63? WHY?
int gx = 63 - p.x_coord;
int gy = 63 - p.y_coord;
uint32 have_map = Map::ExistMap(obj->GetMapId(), gx, gy) ? 1 : 0;
uint32 have_vmap = Map::ExistVMap(obj->GetMapId(), gx, gy) ? 1 : 0;
if (have_vmap)
{
if (map->IsOutdoors(obj->GetPositionX(), obj->GetPositionY(), obj->GetPositionZ()))
PSendSysMessage("You are outdoors");
else
PSendSysMessage("You are indoors");
}
else PSendSysMessage("no VMAP available for area info");
PSendSysMessage(LANG_MAP_POSITION,
obj->GetMapId(), (mapEntry ? mapEntry->name[GetSessionDbcLocale()] : "<unknown>"),
zone_id, (zoneEntry ? zoneEntry->area_name[GetSessionDbcLocale()] : "<unknown>"),
area_id, (areaEntry ? areaEntry->area_name[GetSessionDbcLocale()] : "<unknown>"),
obj->GetPhaseMask(),
obj->GetPositionX(), obj->GetPositionY(), obj->GetPositionZ(), obj->GetOrientation(),
cell.GridX(), cell.GridY(), cell.CellX(), cell.CellY(), obj->GetInstanceId(),
zone_x, zone_y, ground_z, floor_z, have_map, have_vmap);
LiquidData liquid_status;
ZLiquidStatus res = map->getLiquidStatus(obj->GetPositionX(), obj->GetPositionY(), obj->GetPositionZ(), MAP_ALL_LIQUIDS, &liquid_status);
if (res)
{
PSendSysMessage(LANG_LIQUID_STATUS, liquid_status.level, liquid_status.depth_level, liquid_status.type, res);
}
return true;
}
开发者ID:Nedj,项目名称:TrinityCore,代码行数:81,代码来源:Level1.cpp
注:本文中的getSelectedUnit函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论