2命中检测敌人的sdlc++
2 Hit detection on enemys SDL c++
嘿,伙计们在我的SDL游戏中得到了这个2命中碰撞,只适用于敌人的前排,有时它接管了'maxHit'变量。不知道为什么这是我到目前为止所拥有的:Collideswith()工作得很好,这只适用于一次命中,只需要一种方法来增加数组中每个敌人AKA外星人的某种计数器。
int maxHit = 2;
int hitCount = 0;
// Detect collisions
for(auto p : projectiles)
{
for(auto a : aliens)
{
if(p->CollidesWith(a) && hitCount == maxHit)
{
p->HandleCollision();
a->HandleCollision();
}
if(p->CollidesWith(a) && hitCount != maxHit)
{
++hitCount;
}
}
}
- 交换循环
- 在"aliens"循环中声明
hitCount
例句:
for(auto a : aliens)
{
for(auto p : projectiles)
{
int hitCount = 0;
//...
}
}
你也可能想要改写你的if子句来更清楚地陈述你的意图(并提高性能):
if(p->CollidesWith(a))
{
if(hitCount == maxHit)
{
// ...
}
else
{
// ...
}
}
相关文章:
- 我正在使用快速 JSON 为C++回合制 RPG 解析对象敌人,并且遇到了一些奇怪的错误
- 向有射程的敌人发射子弹
- 在GLUT中每秒产生2个敌人
- C++ 按生命对敌人进行分类
- 团结敌人 AI 脚本 C#
- 我该如何制造更多的敌人?SDL2/C++
- 敌人不会跟随玩家。SDL2/C++
- OpenGL - 2D敌人不旋转面对玩家
- 敌人幽灵实例/非唯一对象
- 错误 C2280.尝试引用已删除的函数.尝试从其数据结构中删除敌人和激光时出现此错误
- 2D敌人阵列在创建时崩溃
- 敌人逻辑|子弹重置
- sdlc++ ttf链接器错误
- 敌人角色和子弹之间的碰撞- (Cocos2dx, c++, Android)
- c++停止敌人精灵相互移动
- 子弹只会杀死第一个敌人
- 崩溃,在控制台应用程序上,试图绘制敌人,越界(遵循视频教程)
- C++ DirectX11 2d 游戏:阻止敌人精灵相互移动
- 当用矢量数学将某物移动到一个点时,敌人到达那里然后消失
- 2命中检测敌人的sdlc++