#encoding:utf-8 #============================================================================== # ■ 人物动态待机 # (仅支持png中只包含一个角色的图) # # 这是一个《多帧4_8方图,4_8向行走》插件的配套插件 # 会自动寻找待机图片(依据行走图文件) # 当有待机图片时,在角色等待时会播放待机图片动画 # 当没有待机图片时,在角色等待时不会播放任何动画,也不会提示。 # #------------------------------------------------------------------------------ #使用说明: # 必须与行走图文件配套,注意校准 # 行走图文件名:name@D#DD%DD.png 其中%DD可选 # 待机图文件名:name_w@D#DD%DD.png 其中%DD可选 # # 以上name必须相同(大小写也要相同),D或DD的值可以不同。 # # 待机图文件放在characters文件夹下。 # # ★停下多久播放待机动画,在代码开头设置 # # 配套插件须放在主插件《多帧4_8方图,4_8向行走》之下 #------------------------------------------------------------------------------ # by rmav (有任何问题请毫无顾忌滴提出) # # v1.09 配合跑步插件 #============================================================================== $imported ||= {} $imported[:rmav_walk_wait] = 20140204.1 module Rmav #--------待机选项---------# Opt_wait={ #停下多久播放待机动画,默认为90约1.5秒左右 stop_count: 15, #推荐取值范围12至120 play_speed: 0.5, #播放速度,越大越快 #要开启事件人物待机动画,建议把上面stop_count设小,如5或15 all_wait_anime: true, #是否开启所有人物待机效果(含事件人物) } end class Game_CharacterBase alias_method :init_org_charBase_rmav_2, :initialize def initialize init_org_charBase_rmav_2 init_waiting end def init_waiting(wait_enable=Rmav::Opt_wait[:all_wait_anime]) @wait_enable=wait_enable @waiting_name=nil @character_name_org=nil @waiting_name=nil end def waiting? @wait_enable&&stopping? &&!@character_name.empty? \ && @stop_count>Rmav::Opt_wait[:stop_count] end def waiting_play? waiting? && @waiting_name end #-------------------------------------------------------------------------- # ● 更新等待、跑步、行走 #-------------------------------------------------------------------------- def update_charName_wrw if waiting? if @waiting_name @character_name=@waiting_name elsif @waiting_name==nil @waiting_name=false @character_name_org||=@character_name @character_name_org=~%r{(.+)\@\d{1,2}\#\d{1,2}} if $1 @waiting_name=Rmav::CharNames[:wait][$1] if @waiting_name @character_name=@waiting_name else @waiting_name=false end end end elsif $imported[:rmav_walk_run]&&running_play? @character_name=@running_name else @character_name=@character_name_org if @character_name_org end end #-------------------------------------------------------------------------- # ● 更新画面 #-------------------------------------------------------------------------- alias_method :update_org_charBase_rmav_2,:update def update update_charName_wrw update_org_charBase_rmav_2 end #-------------------------------------------------------------------------- # ● 更新步行/踏步动画 #-------------------------------------------------------------------------- alias_method :update_animation_org_rmav_2,:update_animation def update_animation if waiting_play? @wait_anime=true else @wait_anime=false end update_animation_org_rmav_2 end #-------------------------------------------------------------------------- # ● 更新动画计数 #-------------------------------------------------------------------------- alias_method :update_anime_count_org_rmav_2,:update_anime_count def update_anime_count if @wait_anime @anime_count += Rmav::Opt_wait[:play_speed] return end update_anime_count_org_rmav_2 end #-------------------------------------------------------------------------- # ● 更新动画图案 #-------------------------------------------------------------------------- alias_method :update_anime_pattern_org_rmav_2,:update_anime_pattern def update_anime_pattern if @wait_anime @pattern = (@pattern + 1) % (@fmt_sign?@fmt_sign[1]:4) return end update_anime_pattern_org_rmav_2 end end class Game_Player alias_method :initialize_org_rmav_2,:initialize def initialize initialize_org_rmav_2 @wait_enable=true end #-------------------------------------------------------------------------- # ● 刷新 #-------------------------------------------------------------------------- alias_method :refresh_org_rmav_2,:refresh def refresh init_waiting(true) refresh_org_rmav_2 end end class Game_Follower alias_method :follower_initialize_org_rmav_2, :initialize def initialize(member_index, preceding_character) follower_initialize_org_rmav_2(member_index, preceding_character) @wait_enable=true end #-------------------------------------------------------------------------- # ● 刷新 #-------------------------------------------------------------------------- alias_method :refresh_org_rmav_2,:refresh def refresh init_waiting(true) refresh_org_rmav_2 end end class Game_Event #-------------------------------------------------------------------------- # ● 清除事件页的设置 #-------------------------------------------------------------------------- alias_method :clear_page_settings_org_rmav_2,:clear_page_settings def clear_page_settings clear_page_settings_org_rmav_2 init_waiting end #-------------------------------------------------------------------------- # ● 设置事件页的设置 #-------------------------------------------------------------------------- alias_method :setup_page_settings_org_rmav_2,:setup_page_settings def setup_page_settings setup_page_settings_org_rmav_2 init_waiting end end
1.png (50.7 KB, 下载次数: 27)
百里_飞柳 发表于 2025-5-17 11:24
你可以在范例的脚本列右键,选择全局搜索,然后搜下 CharNames 看看
总感觉还有一个配套的脚本你没有复制, ...
欢迎光临 Project1 (https://rpg.blue/) | Powered by Discuz! X3.1 |