扫码支付

购买商品:
商品价格:

价格读取中

支付方式:
微信

请扫码进行支付

支付宝

请扫码进行支付

二维码已过期,请点击刷新

  • 课程> 移动开发> Android
  • 【游戏】植物大战僵尸开发教学

  • 由百度云提供技术支持
    课程目录
    • 1. 1.搭建View代码 (免费)
    • 16:32
    • 2. 2.在View的子线程不能更新UI线程 (免费)
    • 9:47
    • 3. 3.搭建SurfaceView代码 (免费)
    • 14:03
    • 4. 4.绘制移动的文字&图片 (免费)
    • 24:47
    • 5. 5.绘制屏幕适配的背景图片 (免费)
    • 31:55
    • 6. 6.封装面板模型对象 (免费)
    • 25:27
    • 7. 7.绘制面板 (免费)
    • 5:39
    • 8. 8.绘制面板上面的对象&传递触屏事件
    • 12:20
    • 9. 9.触屏区域的判断
    • 19:04
    • 10. 10.定义按放&跑道对象
    • 17:34
    • 11. 11.产生一个等待按放到跑道的对象
    • 11:09
    • 12. 12.移动按放状态的对象
    • 14:25
    • 13. 13.把等待按放的对象变成跑道对象
    • 9:41
    • 14. 14.显示跑道对象的不同图片
    • 5:14
    • 15. 1.找到合适位置进行安放的分析
    • 4:13
    • 16. 2.绘制单元格行列格子线
    • 13:38
    • 17. 3.找到合适位置才进行安放到跑道
    • 24:40
    • 18. 4.如果当前的单元格位置已经安放了植物就不能在安放
    • 5:37
    • 19. 5.跑道里面的向日葵一定时间产生阳光
    • 22:59
    • 20. 6.定义常量存放收集&消失阳光的时间
    • 6:14
    • 21. 7.阳光的收集操作
    • 20:11
    • 22. 8.处理分值
    • 15:17
    • 23. 9.处理子弹
    • 12:04
    • 24. 10.添加僵尸对象模型
    • 9:06
    • 25. 11.随机产生僵尸
    • 18:19
    • 26. 12.僵尸发出矩形碰撞检测
    • 35:49
    • 27. 13.小结
    • 1:06
    • 【课程类型】实战教学 【难度级别】高级 【适合人群】所有人
    • 【课程介绍】
      课程模仿《植物大战僵尸》游戏进行同步学习设计,采用Android之SurfaceView绘图容器进行开发设计,从设计到编码,到完成,详细的展示了游戏的开发过程,设计细节,实现细节,在实战中学习,结合理论讲解,使得学员能在实战中得到锻炼,积累经验,升华自己。
    • 【课程目标】
      完成《植物大战僵尸》游戏,通过实战,掌握游戏的组成,掌握SurfaceView绘图容器,以及SurfaceView 与View的区别。
    • 【课程计划】
      课程分两天:第一天绘制页面元素;重点是SurfaceView搭建流程。 第二天处理业务流程。
    全部评价(3
    好评(3
    中评(0
    差评(0
    发表评价
    第15集,当空格里有向日葵,再往里拖入按照视频里面的即便拖不进去放开手仍然会停在跑道里面向日葵上,解决思路:当空格里存在植物时,拖不进去,并且想松开手,那么按理说你手中拖动的应该会消失,所以建议把 addPlan里emplaces.clear();这一句放在函数后面(for循环外,),这样不论是否把植物放入跑道,你手中的映像同样会消失。 //1.怎样找到合适的位置,才安放 public void addPlan(Seed seed) { for(Map.Entry entry : ConfigUtils.plantPoints.entrySet()){ int key = entry.getKey(); Point value = entry.getValue(); int x = Math.abs(value.x - seed.getLocationX()); int y = Math.abs(value.y - seed.getLocationY()); if(plantMaps.get(key) != nul
    2016-11-25 18:47:35
    [追加评论]说错了,是第18集
    使用Iterator.remove方法进行删除,测试了30分钟没有问题哦;或者在遍历增删地方都加上synchronized或者使用Collections.synchronizedList @flashhh
    2015-06-11 15:32:49
    老师,你好,在看植物大战僵尸这个游戏开发的时候,我发现一个问题,就是即使使用了迭代器,在移除生命值为0的阳光对象时,仍旧会出现java.util.ConcurrentModificationException这个异常,我上网查了一下解决办法,就是使用迭代器的remove()方法删除,使用这个方法之后,我测试了一下,虽然不会出现卡顿现象,这种异常也不会出现了,但是我仍不敢确定这么做在多线程中会不会出现问题,虽然线程中有加锁,不知老师是怎么认为的呢?希望老师可以给出回复,谢谢老师
    2015-06-09 20:48:27
    蓝声强
    1课程14050学员
    8年J2EE项目经验,擅长Spring,EJB3,JPA,Hibernate, iBatis,Struts1/2,JBPM,Lucene等J2EE系列技术框架及Android技术;数据库设计、JAVA设计模式、UML等; EhCache,OSCache,Memcached等缓存框架,深入研究AppFuse,SpringSide集成框架。曾参与开发卫生系统协同办公软件,卫生系统门户网站,卫生信息统计系统,人力资源系统 ,SNS交友网站等;具备极其丰富的教学理论与项目实践开发相结合的实战经验。
    所属机构:源码时代