Egret 背景移动
时间: 2024-04-25 19:22:40 浏览: 22
在Egret中,实现背景移动可以采用以下几种方式。第一种方式是在PC端的模拟类游戏中常见的方式,即背景固定,角色在背景上移动。这种方式在移动端的游戏中比较少见,因为屏幕较小,背景固定即可满足需求。\[1\]
第二种方式是在移动端比较常见的方式,即角色固定在屏幕中间,需要移动时只需要移动背景同时播放角色跑步的动画即可达到角色移动的效果。这种方式可以通过获取点击背景的坐标evt.stageX和evt.stageY,然后计算横坐标evt.stageX、角色的x坐标this.player.x和纵坐标evt.stageY、角色的y坐标this.player.y的偏移值,通过这两个偏移值与当前背景位置this.bg.x和this.bg.y按相应移动方向计算出背景移动的距离bg_move_x和bg_move_y。\[2\]
第三种方式是将第一种和第二种方式结合起来,是如今最常见的方式。先是背景固定,角色自由移动,当移动到屏幕边缘时,背景移动来扩大角色的视野,或者先是角色居中背景移动,当背景将要离开屏幕边缘时,角色再移动。这种方式可以通过在背景移动函数中根据bg_move_x和bg_move_y的值来实现背景的移动。每次背景只移动一小段距离,直到到达目的地才取消移动。当玩家突然点击背景的另一个坐标时,可以重新计算bg_move_x和bg_move_y,然后再侦听移动帧事件来调用背景移动函数。\[3\]
总结起来,Egret中实现背景移动可以根据游戏需求选择不同的方式,包括背景固定、角色移动和背景移动的组合方式。具体的实现方法可以根据游戏的具体情况进行调整。
#### 引用[.reference_title]
- *1* *2* *3* [2D的RPG游戏人物角色移动代码(以egret游戏引擎、TypeScript语言为例)](https://blog.csdn.net/a727911438/article/details/52821798)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]