您的位置:首页 > 移动开发 > IOS开发

(NO.00003)iOS游戏简单的机器人投射游戏成形记(十)

2015-11-10 21:56 232 查看
打开Arm.h,在其接口中添加一个新方法:

-(void)armShoot;


接下来在Arm.m中实现该方法:

-(void)armShoot{
CGPoint startPoint = [self convertToWorldSpace:ccp(0, 5)];
CGPoint endPoint = [self convertToWorldSpace:ccp(20, 5)];
[_mainScene shoot:startPoint to:endPoint];
}


该方法最终调用MainScene中的shoot方法,在这之前armShoot取得子弹的弹道轨迹.弹道由起点和终点确定,因为子弹的轨迹由物理引擎决定,所以最终实际射出的是一道抛物线.

前面说过Arm的旋转施力点在手臂的中线与手的焦点,同样,子弹射出的轨迹也和Arm的中线重合:



那么在什么时候发射子弹呢?有很多种选择,比如在屏幕上创建一个发射按钮,点击时发射子弹.

这里采用较简单的方式:在玩家触摸结束时发射子弹:

-(void)touchEnded:(CCTouch *)touch withEvent:(CCTouchEvent *)event{
[self armShoot];
}


在ArmStatic类中做同样操作.这里是个不好的例子,因为有重复代码.如果编写程序中也有各种罪过,那么代码重复就是”死罪”!

不过这里先判”无罪”,因为本猫还要重构,虽然你们不一定看得到 ;)

编译运行,发射效果如下:



请先忽略中间那些方块和篮筐,别急!马上就要说到它们了 ;)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: