Project1
标题:
帮忙解决行走14帧,待机10帧的问题。
[打印本页]
作者:
liuziyuan201019
时间:
2012-5-1 10:58
标题:
帮忙解决行走14帧,待机10帧的问题。
本帖最后由 忧雪の伤 于 2012-5-1 13:42 编辑
那啥,如题,
行走图是14帧的,待机动画是10帧的。
待机脚本这个:
#==============================================================================
# ■ Game_Character (分割定义 1)
#------------------------------------------------------------------------------
# 处理角色的类。本类作为 Game_Player 类与 Game_Event
# 类的超级类使用。
#==============================================================================
class Game_Character
attr_accessor :time
#--------------------------------------------------------------------------
# ● 初始化对像
#--------------------------------------------------------------------------
alias old_ini initialize
def initialize
old_ini
@time = 0
end
end
#==============================================================================
# ■ Game_Player
#------------------------------------------------------------------------------
# 处理主角的类。事件启动的判定、以及地图的滚动等功能。
# 本类的实例请参考 $game_player。
#==============================================================================
class Game_Player < Game_Character
TIME_LIMIT = 2 # 抓耳挠腮前的等待时间 (好象也不是帧…不知道是什么单位了)
#--------------------------------------------------------------------------
# ● 画面更新
#--------------------------------------------------------------------------
def update
# 本地变量记录移动信息
last_moving = moving?
if @time == TIME_LIMIT
@character_name = @character_name + "_W"
@scratch = true
@step_anime = true
@time = TIME_LIMIT + 1
elsif @time < TIME_LIMIT
@scratch = false
@step_anime = false
end
if @scratch == false
@old_pic = @character_name
end
# 移动中、事件执行中、强制移动路线中、
# 信息窗口一个也不显示的时候
unless moving? or $game_system.map_interpreter.running? or
@move_route_forcing or $game_temp.message_window_showing
# 如果方向键被按下、主角就朝那个方向移动
case Input.dir4
when 2
move_down
@time = 0
@scratch = false
@character_name = @old_pic
when 4
move_left
@time = 0
@scratch = false
@character_name = @old_pic
when 6
move_right
@time = 0
@scratch = false
@character_name = @old_pic
when 8
move_up
@time = 0
@scratch = false
@character_name = @old_pic
end
end
# 本地变量记忆坐标
last_real_x = @real_x
last_real_y = @real_y
super
# 角色向下移动、画面上的位置在中央下方的情况下
if @real_y > last_real_y and @real_y - $game_map.display_y > CENTER_Y
# 画面向下卷动
$game_map.scroll_down(@real_y - last_real_y)
end
# 角色向左移动、画面上的位置在中央左方的情况下
if @real_x < last_real_x and @real_x - $game_map.display_x < CENTER_X
# 画面向左卷动
$game_map.scroll_left(last_real_x - @real_x)
end
# 角色向右移动、画面上的位置在中央右方的情况下
if @real_x > last_real_x and @real_x - $game_map.display_x > CENTER_X
# 画面向右卷动
$game_map.scroll_right(@real_x - last_real_x)
end
# 角色向上移动、画面上的位置在中央上方的情况下
if @real_y < last_real_y and @real_y - $game_map.display_y < CENTER_Y
# 画面向上卷动
$game_map.scroll_up(last_real_y - @real_y)
end
# 不在移动中的情况下
unless moving?
@time += 1 if @time < TIME_LIMIT
# 上次主角移动中的情况
if last_moving
# 与同位置的事件接触就判定为事件启动
result = check_event_trigger_here([1,2])
# 没有可以启动的事件的情况下
if result == false
# 调试模式为 ON 并且按下 CTRL 键的情况下除外
unless $DEBUG and Input.press?(Input::CTRL)
# 遇敌计数下降
if @encounter_count > 0
@encounter_count -= 1
end
end
end
end
# 按下 C 键的情况下
if Input.trigger?(Input::C)
# 判定为同位置以及正面的事件启动
check_event_trigger_here([0])
check_event_trigger_there([0,1,2])
end
end
end
end
复制代码
还有呢,用了一个行走图帧数改变的脚本。
贴上来不合适,上工程。
Project1.rar
(599.2 KB, 下载次数: 120)
2012-5-1 10:57 上传
点击文件名下载附件
解决方法1:
把那个待机图改成14帧的,流畅可循环即可……(众人怒)
解决方法2:
改脚本,只要能使用就行。
感谢,感谢…… dsu_plus_rewardpost_czw
作者:
未名之雪
时间:
2012-5-1 13:20
Scripts.rxdata
(125.41 KB, 下载次数: 92)
2012-5-1 13:19 上传
点击文件名下载附件
已经帮你改好了,主要是改了Sprite_Character【YZ改】 这个脚本页
(于是楼主当了一回伸手党对不)
作者:
liuziyuan201019
时间:
2012-5-1 16:18
本帖最后由 liuziyuan201019 于 2012-5-1 16:19 编辑
未名之雪 发表于 2012-5-1 13:20
已经帮你改好了,主要是改了Sprite_Character【YZ改】 这个脚本页
(于是楼主当了一回伸手党对不) ...
伸手党是不错,但是……好吧,至少我能帮助的我都帮了呢……心满意足
那个,都改了哪里呢?
作者:
[email protected]
时间:
2012-5-1 17:52
14帧待机动画吗?
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1