本文整理汇总了C++中IActor::hit方法的典型用法代码示例。如果您正苦于以下问题:C++ IActor::hit方法的具体用法?C++ IActor::hit怎么用?C++ IActor::hit使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IActor
的用法示例。
在下文中一共展示了IActor::hit方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: update
void Bullet::update(float deltatime)
{
Vector2D newLocation = this->getLocation() + deltatime * this->speed * Vector2D(this->getRotation());
WARN_IF(!this->getOwnerWorld(), "Not assigned OwnerWorld for bullet");
Vector2D traceLocation(ZERO_VECTOR);
IActor *trasedActor = RayTrace::trace(this->getOwnerWorld(), this->getLocation(), newLocation, &traceLocation);
// if there nothing to hit
if (trasedActor == nullptr)
{
this->setLocation(newLocation);
}
else // bullet is hiting some actor
{
trasedActor->hit(this, 10.f, Vector2D(this->getRotation()) * this->speed * 0.01f);
this->speed = 0.0f;
this->destroy();
}
// bullet will be destroyed after 10 second
if (this->getLifetime() > 10.f)
{
this->destroy();
}
Actor::update(deltatime);
}