赞 | 7 |
VIP | 20 |
好人卡 | 0 |
积分 | 16 |
经验 | 11472 |
最后登录 | 2024-7-10 |
在线时间 | 526 小时 |
Lv3.寻梦者 宛若
- 梦石
- 0
- 星屑
- 1568
- 在线时间
- 526 小时
- 注册时间
- 2007-8-19
- 帖子
- 1493
|
本帖最后由 逸豫 于 2010-7-7 19:05 编辑
- class Scene_Demo
- def main
- @tip = Sprite.new(Viewport.new(0,0,640,480))
- @tip.bitmap = Bitmap.new(12*32,32)
- @tip.bitmap.draw_text(0,0,12*32,32,"这只是精灵移动的演示",1)
- @sprite = Sprite.new(Viewport.new(0,0,640,480))
- @sprite.bitmap = Bitmap.new("Graphics/Battlers/001-Fighter01")
- @start_x = 0
- @start_y = 0
- @sprite.x = @start_x
- @sprite.y = @start_y
- @final_x = 100
- @final_y = 100
- # 执行过渡
- Graphics.transition
- # 主循环
- loop do
- # 刷新游戏画面
- Graphics.update
- # 刷新输入信息
- Input.update
- # 刷新画面
- update
- # 如果切换画面就中断循环
- if $scene != self
- break
- end
- end
- # 准备过渡
- Graphics.freeze
- @tip.dispose
- @sprite.dispose
- end
- def update
- if Input.trigger?(Input::B)
- # 演奏取消 SE
- $game_system.se_play($data_system.cancel_se)
- # 切换的地图画面
- $scene = Scene_Map.new
- return
- end
- if @sprite.x != @final_x #如果精灵的坐标与最终坐标不相等
- @sprite.x -= 1 if @sprite.x > @final_x
- @sprite.x += 1 if @sprite.x < @final_x
- end
- if @sprite.y != @final_y #如果精灵的坐标与最终坐标不相等
- @sprite.y -= 1 if @sprite.y > @final_y
- @sprite.y += 1 if @sprite.y < @final_y
- end
- end
- end
复制代码 于是,你要的移动图片也可以来了……- class Scene_Demo
- def main
- @tip = Sprite.new(Viewport.new(0,0,640,480))
- @tip.bitmap = Bitmap.new(12*32,32)
- @tip.bitmap.draw_text(0,0,12*32,32,"这只是精灵移动的演示",1)
- @sprite = RPG::Sprite.new(Viewport.new(0,0,640,480))
- #@sprite.bitmap = Bitmap.new("Graphics/Battlers/001-Fighter01")
- @sprite.loop_animation($data_animations[5])
- @start_x = 0
- @start_y = 0
- @sprite.x = @start_x
- @sprite.y = @start_y
- @final_x = 100
- @final_y = 100
- # 执行过渡
- Graphics.transition
- # 主循环
- loop do
- # 刷新游戏画面
- Graphics.update
- # 刷新输入信息
- Input.update
- # 刷新画面
- update
- # 如果切换画面就中断循环
- if $scene != self
- break
- end
- end
- # 准备过渡
- Graphics.freeze
- @tip.dispose
- @sprite.dispose
- end
- def update
- @sprite.update
- if Input.trigger?(Input::B)
- # 演奏取消 SE
- $game_system.se_play($data_system.cancel_se)
- # 切换的地图画面
- $scene = Scene_Map.new
- return
- end
- if @sprite.x != @final_x #如果精灵的坐标与最终坐标不相等
- @sprite.x -= 1 if @sprite.x > @final_x
- @sprite.x += 1 if @sprite.x < @final_x
- end
- if @sprite.y != @final_y #如果精灵的坐标与最终坐标不相等
- @sprite.y -= 1 if @sprite.y > @final_y
- @sprite.y += 1 if @sprite.y < @final_y
- end
- if @sprite.x == @final_x && @sprite.y == @final_y
- @sprite.loop_animation(nil)
- end
- end
- end
-
复制代码 这是特别有爱的动画版…… |
评分
-
查看全部评分
|