赞 | 21 |
VIP | 0 |
好人卡 | 0 |
积分 | 47 |
经验 | 9447 |
最后登录 | 2024-7-5 |
在线时间 | 387 小时 |
Lv3.寻梦者
- 梦石
- 0
- 星屑
- 4721
- 在线时间
- 387 小时
- 注册时间
- 2012-11-8
- 帖子
- 276
|
本帖最后由 qq634488405 于 2022-5-20 13:35 编辑
Sprite_Battler里添加实例变量
attr_accessor :offset_x
attr_accessor :offset_y
初始化里
@offset_x,@offset_y = 0
update里
self.x = @battler.screen_x + @offset_x
self.y = @battler.screen_y + @offset_y
在Spriteset_Battle的initialize方法- # 前面略
- # 生成计时器块
- @timer_sprite = Sprite_Timer.new
- @before_battle = true
- # 刷新画面
- update
- @before_battle = false
复制代码
初始化的时候指定@before_battle作为正式战斗开始前的标志
在Spriteset_Battle的update方法里根据@before_battle标志动作战斗图
在初始化的时候会调用一次update,此时会移动战斗图,初始化完成后@before_battle = false
- # 前面略
- # 刷新战斗者的活动块
- for sprite in @enemy_sprites + @actor_sprites
- if @before_battle
- for i in 1..40
- # 向左向上为减
- sprite.offset_x -= 1
- sprite.offset_y -= 1
- sprite.update
- Graphics.update
- end
- else
- sprite.update
- end
- end
- # 后面略
复制代码 |
|