登录 立即注册
金钱:

Code4App-iOS开发-iOS 开源代码库-iOS代码实例搜索-iOS特效示例-iOS代码例子下载-Code4App.com

查看: 38|回复: 6

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

[复制链接]

209

主题

209

帖子

1867

金钱

手工艺人

发表于 2018-1-11 14:43:04 | 显示全部楼层 |阅读模式

        

        打开Arm.h,在其接口中添加一个新方法:

[Java] 查看源文件 复制代码
-(void)armShoot;

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

[Java] 查看源文件 复制代码
-(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的中线重合:

        

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

        这里采用较简单的方式:在玩家触摸结束时发射子弹:vcD4NCjxwcmUgY2xhc3M9"brush:java;">
-(void)touchEnded: (CCTouch *)touch withEvent: (CCTouchEvent *)event{
    [self armShoot];
}</pre>

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

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

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

        

        请先忽略中间那些方块和篮筐,别急!马上就要说到它们了 ;)

        


                                               

18

主题

6639

帖子

1872

金钱

iOS大神

Rank: 6Rank: 6

发表于 2018-1-11 14:46:29 | 显示全部楼层
code4app好的代码demo真的很多,谢谢啦~

14

主题

6638

帖子

1097

金钱

iOS大神

Rank: 6Rank: 6

发表于 2018-1-11 14:49:46 | 显示全部楼层
写的真的很不错

0

主题

6628

帖子

-507

金钱

限制会员

发表于 2018-1-11 14:52:36 | 显示全部楼层
我是来学习的

23

主题

6660

帖子

1066

金钱

iOS大神

Rank: 6Rank: 6

分享大神

发表于 2018-1-11 14:59:04 | 显示全部楼层
code4app好的代码demo真的很多,谢谢啦~

3

主题

6647

帖子

444

金钱

攻城狮

Rank: 3Rank: 3

发表于 2018-1-11 15:09:32 | 显示全部楼层
虽不明,但觉厉...

18

主题

6657

帖子

1780

金钱

iOS大神

Rank: 6Rank: 6

发表于 2018-1-11 15:10:46 | 显示全部楼层
小弟学习了~支持,支持
*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

关闭

每日头条

通过邮件订阅最新 Code4App 信息
上一条 /4 下一条

广告投放| Github|申请友链|手机版|Code4App ( 粤ICP备15117877号-1 )

快速回复 返回顶部 返回列表