本文整理汇总了C++中Being::getSpeed方法的典型用法代码示例。如果您正苦于以下问题:C++ Being::getSpeed方法的具体用法?C++ Being::getSpeed怎么用?C++ Being::getSpeed使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Being
的用法示例。
在下文中一共展示了Being::getSpeed方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: informPlayer
//.........这里部分代码省略.........
enterMsg.writeString(q->getName());
}
break;
case OBJECT_NPC:
{
NPC *q = static_cast< NPC * >(o);
enterMsg.writeShort(q->getNPC());
enterMsg.writeString(q->getName());
}
break;
default:
assert(false); // TODO
}
gameHandler->sendTo(p, enterMsg);
}
if (opos != oold)
{
flags |= MOVING_POSITION;
}
// Send move messages.
moveMsg.writeShort(oid);
moveMsg.writeByte(flags);
if (flags & MOVING_POSITION)
{
moveMsg.writeShort(opos.x);
moveMsg.writeShort(opos.y);
// We multiply the sent speed (in tiles per second) by ten
// to get it within a byte with decimal precision.
// For instance, a value of 4.5 will be sent as 45.
moveMsg.writeByte((unsigned short) (o->getSpeed() * 10));
}
}
// Do not send a packet if nothing happened in p's range.
if (moveMsg.getLength() > 2)
gameHandler->sendTo(p, moveMsg);
if (damageMsg.getLength() > 2)
gameHandler->sendTo(p, damageMsg);
// Inform client about status change.
p->sendStatus();
// Inform client about health change of party members
for (CharacterIterator i(map->getWholeMapIterator()); i; ++i)
{
Character *c = *i;
// Make sure its not the same character
if (c == p)
continue;
// make sure they are in the same party
if (c->getParty() == p->getParty())
{
int cflags = c->getUpdateFlags();
if (cflags & UPDATEFLAG_HEALTHCHANGE)
{
MessageOut healthMsg(GPMSG_BEING_HEALTH_CHANGE);
healthMsg.writeShort(c->getPublicID());
healthMsg.writeShort(c->getHealth());
gameHandler->sendTo(p, healthMsg);