cocos2d-x开发: 场景实体(entity)管理(2)
来源:未知 责任编辑:责任编辑 发表时间:2015-09-16 20:03 点击:次
p>
p> 1 local entity = class( "entity", nil )
p> 2
p> 3 entity.debug_mode_ = true
p> 4 entity.debug_color_ = cc.c4f( 0, 1, 0, 1 )
p> 5 entity.callback_list_ = {}
p> 6 entity.runtime_id_ = nil
p> 7
p> 8 function entity:set_debug_mode( mode )
p> 9 self.debug_mode_ = mode
p>10 end
p>11
p>12 function entity:get_debug_mode()
p>13 return self.debug_mode_
p>14 end
p>15
p>16 function entity:set_debug_color( color )
p>17 self.debug_color_ = color
p>18 end
p>19
p>20 function entity:get_debug_color()
p>21 return self.debug_color_
p>22 end
p>23
p>24 function entity:set_runtime_id( runtime_id )
p>25 self.runtime_id_ = runtime_id
p>26 end
p>27
p>28 function entity:get_runtime_id()
p>29 return self.runtime_id_
p>30 end
p>31
p>32 function entity:register_callback( callback, target )
p>33 if callback == nil then
p>34 return
p>35 end
p>36
p>37 for _, v_t in ipairs( self.callback_list_ ) do
p>38 if v_t[1] == callback and v_t[2] == target then
p>39 return
p>40 end
p>41 end
p>42
p>43 table.insert( self.callback_list_, { callback, target } )
p>44 end
p>45
p>46 function entity:remove_callback( callback, target )
p>47 if callback == nil then
p>48 return
p>49 end
p>50
p>51 for index, v_t in ipairs( self.callback_list_ ) do
p>52 if v_t[1] == callback and v_t[2] == target then
p>53 table.remove( self.callback_list_, index )
p>54 end
p>55 end
p>56 end
p>57
p>58 function entity:update( dt )
p>59 local callback
p>60 local target
p>61 for _, v_t in ipairs( self.callback_list_ ) do
p>62 callback = v_t[1]
p>63 target = v_t[2]
p>64 if target ~= nil then
p>65 callback( target, dt )
p>66 else
p>67 callback( dt )
p>68 end
p>69 end
p>70 end
p>71
p>72 return entity
p>
p>
p>
p>这是一个基类的实现,不算复杂,也很好理解,就没什么好说的了.为什么要写一个entity base类呢? 因为现在的项目可能会用序列帧,也可能会用骨骼动画. 如果是骨骼动画的话,那么所有的action都比较好处理, bounding_box也很好获得.相应的接口就是
相关新闻>>
- Cocos2d-x中 发起http请求
- cocos2d-x-3.3-018-游戏摇杆joystick源码分享
- cocos2dx背景透明处理
- cocos2d-x 3.2 之 别踩白块(第一篇)
- Cocos2d-x回调函数 Lambda表达式
- Cocos2d-x虚拟摇杆控制精灵上下左右运动----之游戏开发《赵云要
- Cocos2d-x 3.2 大富翁游戏项目开发-第七部分 获取角色路径_2
- Cocos2d-x 自定义按钮类控制精灵攻击----之游戏开发《赵云要格斗
- Cocos2d-x 3.2 大富翁游戏项目开发-第七部分 获取角色路径_3
- Cocos2d-x 3.2 大富翁游戏项目开发-第八部分 角色按路径行走
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>
您可能感兴趣的文章
- UIViewController的retainCount(Object C)
- cocos2d-x在mac下配置安卓开发环境
- quick-cocos2d-x教程12:实现文本和密码输入界面
- Cocos2d-x3.0游戏实例之《别救我》第八篇——TiledMap实现关卡编
- 《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之
- symbian UI开发小结(一)
- 五 手游开发神器 cocos2d-x editor 之贴图(TexturePacker)
- Cocos2d-x3.0 文件处理
- cocos2dx V3.2 mac os Xcode6.1 环境配置
- cocos2d-x-3.0 alpha1与C++11练习三:飞镖忍者,如何移动精灵及