我都快忘记上一次写博客是什么时候了。
捕鱼达人,打飞机游戏阶段性知识点总结:
碰撞检测反过来用,特别是用于精灵越界删除的时候,特别省事:
思路:与其拿鱼的坐标跟上下左右四个边界坐标去对比,不如直接画个框,跟鱼类的包围盒做碰撞检测。框的大小及边缘参考鱼类的起始位置设计。
/*鱼类越界删除*/
Rect rect(-1.0f, -1.0f, visibleSize.width+2, visibleSize.height+2);
if (!(rect.intersectsRect(fish->getBoundingBox())))
{
removeFish();
}
时刻保持函数封装的意识:
字符串也可以当成函数的参数进项传递,这样就可以少写好多个for循环。
void Fish::addAnimation(Sprite* p, int value, char* url){...}
switch (typeOfFish)
{
case 1: addAnimation(fish,10,