仿仙剑连击
# 仿仙剑连击# by 快感炮王## 老衲最近闲的蛋疼,不读佛经写脚本# 以前看师弟玩过仙剑4,战斗里面有个连击的设定# 某队员攻击后,有一定几率出现动画,双击后让队友对所攻击目标进行连击# 有BUG的话通知老衲吧,阿弥陀佛module DOUBLE_HIT DOUBLE_CLICK_TIME = 15 APPEAR_PROBABILITY = 100 ANIMATION_ID = 1endclassDOUBLE_HIT::DOUBLE_CLICK_TIME then @key = nil @wait_count = 0 end old_update endendclass Scene_Battlealias old_main maindef main @judge_double_hit = false old_mainendalias old_ups6 update_phase4_step6def update_phase4_step6 if rand(100) < DOUBLE_HIT::APPEAR_PROBABILITY and @active_battler.current_action.basic == 0 and $game_party.actors.size > 1 and !@target_battlers.dead? and !@judge_double_hit and @active_battler.is_a?(Game_Actor) then @double_sprite = RPG::Sprite.new @double_sprite.x = 320 @double_sprite.y = 240 @double_sprite.animation($data_animations,true) @max_hit_duration = $data_animations.frame_max @count = 0 loop do Graphics.update Input.update @count += 1 @double_sprite.update if Input.double_click?(Input::C) then double_hit_preparation break end break if @count > @max_hit_duration + 100 end end @double_sprite.dispose if @double_sprite != nil if @phase4_step == 3 then return else @judge_double_hit = false old_ups6 end end def min_cp_actor @min_cp = 65535 @actor = nil for actor in $game_party.actors if actor.cp < @min_cp and actor.cp != 0 and !actor.dead? then @min_cp = actor.cp @actor = actor end end return @actor end def double_hit_preparation @active_battler = min_cp_actor @active_battler.current_action.kind = 0 @active_battler.current_action.basic = 0 @animation1_id = @active_battler.animation1_id @animation2_id = @active_battler.animation2_id @judge_double_hit = true for target in @target_battlers target.attack_effect(@active_battler) end @phase4_step = 3 end end复制代码本帖来自P1论坛作者dbshy,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=128071若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
页:
[1]