理想状态.png (299.85 KB, 下载次数: 8)
理想状态
事件设置1.png (23.72 KB, 下载次数: 7)
事件设置1
事件设置2.png (24.86 KB, 下载次数: 11)
事件设置2
地图.png (22.86 KB, 下载次数: 9)
地图
class Spr_qte < RPG::Sprite def initialize(pic,q1,q2,r1,r2,time) super() self.bitmap = RPG::Cache.picture(pic) self.ox = self.bitmap.width / 2 self.oy = self.bitmap.height / 2 @_move_time = 0 @move_p = [] f1 = r1[0]..r2[0] f2 = r1[1]..r2[1] @q = [q1,q2,f1.to_a,f2.to_a,time] @turn = false reset end def move(x,y,time) @move_p = [x || self.x,y || self.y,self.x,self.y,time] @_move_time = time end def reset self.x,self.y,self.z = @q[0][0],@q[0][1],9800 move(@q[1][0],@q[1][1],@q[4]) end def stop @old_move_time = @_move_time @_move_time = 0 end def go @_move_time = @old_move_time @old_move_time = nil end def input_ok? return (@q[2].include?(self.x) and @q[3].include?(self.y)) end def update super if @_move_time > 0 @_move_time -= 1 #x,y,oldx,oldy,time new_x = 1.0 * (@move_p[0] - @move_p[2]) / @move_p[4] * \ (@move_p[4] - @_move_time) + @move_p[2] new_y = 1.0 * (@move_p[1] - @move_p[3]) / @move_p[4] * \ (@move_p[4] - @_move_time) + @move_p[3] self.x = Integer(new_x) self.y = Integer(new_y) return end if @old_move_time.nil? if @turn move(@q[1][0],@q[1][1],@q[4]) @turn = false else move(@q[0][0],@q[0][1],@q[4]) @turn = true end end end end class Interpreter def qte_on(图片名,起点,终点,判定点1,判定点2,time) @w = Spr_qte.new(图片名,起点,终点,判定点1,判定点2,time) loop do Graphics.update $scene.instance_variable_get(:@spriteset).update $game_system.update @w.update Input.update if Input.repeat?(Input::C) return @w.input_ok? end end end def qte_off return if @w.nil? @w.dispose @w.bitmap.dispose end end
代码出错.png (7.22 KB, 下载次数: 7)
foghidecrab 发表于 2022-5-17 17:57
条件分歧里脚本填的这个,我塞的图片是叫B1了:qte_on("B1",[0,240],[640,240],[320,240],[600,240])
脚本 ...
欢迎光临 Project1 (https://rpg.blue/) | Powered by Discuz! X3.1 |