设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 526|回复: 0
打印 上一主题 下一主题

[已经过期] 关于脚本不懂的地方

[复制链接]

Lv1.梦旅人

梦石
0
星屑
55
在线时间
461 小时
注册时间
2014-7-23
帖子
232
跳转到指定楼层
1
发表于 2016-12-13 15:49:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 qq546431664 于 2016-12-13 16:00 编辑

这是个队友援助的脚本,谁能帮我看下,这个脚本能不能用事件实现按下C键的指令,
或者说在脚本的192-208行能不能用事件执行,其实我的意思就是想直接通过事件停
止队友的援助回到玩家身边,不想通过按键来实现,真的我自己都不知道我在说什么。

RUBY 代码复制
  1. #===============================================================================
  2. # * Falcao Pearl ABS script shelf # 3
  3. #
  4. # This script handles some battler settings and the keys definitions
  5. #===============================================================================
  6.  
  7. module Key
  8.  
  9.  
  10. # Pearl ABS Input system, there is a full keayboard build in with this system,
  11. # you can use keys from A throught Z, and number between 1 throught 9
  12.  
  13. # Type            Key         Display name      
  14.   Weapon   =  [PearlKey::J,      'J']            # Weapon usage
  15.   Armor    =  [PearlKey::H,      'H']            # Armor usage
  16.   Item     =  [PearlKey::K,      'K']            # Item  usage
  17.   Item2    =  [PearlKey::L,      'L']            # Item2 usage
  18.   Skill    =  [PearlKey::U,      'U']            # Skill usage
  19.   Skill2   =  [PearlKey::I,      'I']            # Skill2 usage
  20.   Skill3   =  [PearlKey::O,      'O']            # Skill3 usage
  21.   Skill4   =  [PearlKey::P,      'P']            # Skill4 usage
  22.  
  23.   # Follower attack toggle
  24.   Follower =  [PearlKey::C,      'C']
  25.  
  26.   # Quick tool selection key
  27.   QuickTool = PearlKey::Z
  28.  
  29.   # Player select call key
  30.   PlayerSelect = PearlKey::V
  31.  
  32.   # Sound played when success guarding
  33.   GuardSe = "Hammer"
  34.  
  35. end
  36.  
  37.  
  38. module Vocab
  39.  
  40.   # Buff/Debuff
  41.   BuffAdd         = "%s's %s up!"
  42.   DebuffAdd       = "%s's %s down!"
  43.   BuffRemove      = "%s's %s to normal."
  44.  
  45. end
  46.  
  47.  
  48. #-------------------------------------------------------------------------------
  49. # Game player adds
  50. class Game_Player < Game_Character
  51.   attr_accessor :projectiles, :damage_pop, :anime_action, :enemy_drops
  52.   attr_accessor :refresh_status_icons, :refresh_buff_icons, :mouse_over
  53.   attr_accessor :refresh_skillbar, :pearl_menu_call, :reserved_swap
  54.   attr_accessor :new_map_id
  55.   alias falcaopearl_initialize initialize
  56.   def initialize
  57.     @projectiles = []
  58.     @damage_pop = []
  59.     @anime_action = []
  60.     @enemy_drops = []
  61.     @press_timer = 0
  62.     @mouse_over = 0
  63.     @mouse_exist = defined?(Map_Buttons).is_a?(String)
  64.     @refresh_skillbar = 0
  65.     @pearl_menu_call = [sym = nil, 0]
  66.     @reserved_swap = []
  67.     falcaopearl_initialize
  68.   end
  69.  
  70.   alias falcaopearl_poses_refresh refresh
  71.   def refresh
  72.     return if @knockdown_data[0] > 0
  73.     falcaopearl_poses_refresh
  74.   end
  75.  
  76.   def any_collapsing?
  77.     return true if @colapse_time > 0
  78.     @followers.each {|f| return true if f.visible? and f.colapse_time > 0}
  79.     return false
  80.   end
  81.  
  82.   # check if any follower is fighting
  83.   def follower_fighting?
  84.     @followers.each do |f|
  85.       next unless f.visible?
  86.       return true if f.targeted_character != nil
  87.     end
  88.     return false
  89.   end
  90.  
  91.   # check if game party in combat mode
  92.   def in_combat_mode?
  93.     return true if follower_fighting? || battler_acting?
  94.     return false
  95.   end
  96.  
  97.   # get battler
  98.   def battler
  99.     return actor
  100.   end
  101.  
  102.   def update_state_effects
  103.     battler.dead? ? return : super
  104.   end
  105.  
  106.   def trigger_tool?(key, type)
  107.     return true if type == :keys && PearlKey.trigger?(key)
  108.     return true if @mouse_exist && Mouse.trigger?(0) && type == :mouse &&
  109.     @mouse_over == key
  110.     return false
  111.   end
  112.  
  113.   def all_jump(x, y)
  114.     jumpto_tile(x, y)
  115.     @followers.each {|f| f.jumpto_tile(x, y)}
  116.   end
  117.  
  118.   alias falcaopearl_it_update update
  119.   def update
  120.     update_pearl_battle_set
  121.     falcaopearl_it_update
  122.   end
  123.  
  124.   # pearl battle update
  125.   def update_pearl_battle_set
  126.     @projectiles.each {|projectile| projectile.update}
  127.     @pearl_menu_call[1] -= 1 if @pearl_menu_call[1] > 0
  128.     update_tool_usage
  129.     update_menu_buttons
  130.   end
  131.  
  132.   if $imported["Falcao Interactive System Lite"]
  133.     alias falcaopearl_int player_start_falling
  134.     def player_start_falling
  135.       return if @hookshoting[1]
  136.       falcaopearl_int
  137.     end
  138.   end
  139.  
  140.   # get on vehicle
  141.   alias falcaopearl_get_on_vehicle get_on_vehicle
  142.   def get_on_vehicle
  143.     return if follower_fighting?
  144.     falcaopearl_get_on_vehicle
  145.   end
  146.  
  147.   def update_tool_usage
  148.     return if PearlSkillBar.hidden?
  149.     return unless normal_walk?
  150.     unless actor.equips[0].nil?
  151.       use_weapon(actor.equips[0].id) if trigger_tool?(Key::Weapon[0], :keys)
  152.       use_weapon(actor.equips[0].id) if trigger_tool?(1, :mouse)
  153.     end
  154.     unless actor.equips[1].nil?
  155.       use_armor(actor.equips[1].id) if trigger_tool?(Key::Armor[0], :keys)
  156.       use_armor(actor.equips[1].id) if trigger_tool?(2, :mouse)
  157.     end
  158.     unless actor.assigned_item.nil?
  159.       use_item(actor.assigned_item.id) if trigger_tool?(Key::Item[0], :keys)
  160.       use_item(actor.assigned_item.id) if trigger_tool?(3, :mouse)
  161.     end
  162.     unless actor.assigned_item2.nil?
  163.       use_item(actor.assigned_item2.id) if trigger_tool?(Key::Item2[0], :keys)
  164.       use_item(actor.assigned_item2.id) if trigger_tool?(4, :mouse)
  165.     end
  166.     unless actor.assigned_skill.nil?
  167.       use_skill(actor.assigned_skill.id) if trigger_tool?(Key::Skill[0], :keys)
  168.       use_skill(actor.assigned_skill.id) if trigger_tool?(5, :mouse)
  169.     end
  170.     unless actor.assigned_skill2.nil?
  171.       use_skill(actor.assigned_skill2.id) if trigger_tool?(Key::Skill2[0],:keys)
  172.       use_skill(actor.assigned_skill2.id) if trigger_tool?(6, :mouse)
  173.     end
  174.     unless actor.assigned_skill3.nil?
  175.       use_skill(actor.assigned_skill3.id) if trigger_tool?(Key::Skill3[0],:keys)
  176.       use_skill(actor.assigned_skill3.id) if trigger_tool?(7, :mouse)
  177.     end
  178.     unless actor.assigned_skill4.nil?
  179.       use_skill(actor.assigned_skill4.id) if trigger_tool?(Key::Skill4[0],:keys)
  180.       use_skill(actor.assigned_skill4.id) if trigger_tool?(8, :mouse)
  181.     end
  182.     update_followers_trigger unless $game_map.interpreter.running?
  183.   end
  184.  
  185.   def update_followers_trigger
  186.     if PearlKernel::SinglePlayer and trigger_tool?(Key::Follower[0], :keys)
  187.       return if @knockdown_data[0] > 0
  188.       force_cancel_actions
  189.       @pearl_menu_call = [:tools, 2]
  190.       return
  191.     end
  192.     make_battle_followers if trigger_tool?(Key::Follower[0], :keys)
  193.     make_battle_followers if trigger_tool?(9, :mouse)
  194.     if PearlKey.press?(Key::Follower[0]) || @mouse_exist && Mouse.press?(0) &&
  195.       @mouse_over == 9
  196.       @press_timer += 1
  197.       if @press_timer == 3 * 60
  198.         @followers.each do |f|
  199.           next unless f.visible?
  200.           next if f.targeted_character.nil?
  201.           f.turn_toward_player
  202.           f.targeted_character = nil
  203.           f.pop_damage('Scape')
  204.         end
  205.       end
  206.     else
  207.       @press_timer = 0 if @press_timer != 0
  208.     end
  209.   end
  210.  
  211.   def make_battle_followers
  212.     @followers.each do |f|
  213.       next unless f.visible?
  214.       next if f.fo_tool.nil? || f.battler.dead?
  215.       if f.targeted_character.nil?
  216.         if f.fo_tool.tool_data("User Graphic = ", false).nil?
  217.           if f.fo_tool.is_a?(RPG::Skill) || fo_tool.is_a?(RPG::Item)
  218.             # has no data but is a benefical skill
  219.             if f.fo_tool.scope == 0 || f.fo_tool.scope.between?(7, 11)
  220.               f.setup_followertool_usage
  221.             else
  222.               f.balloon_id = PearlKernel::FailBalloon
  223.             end
  224.           else
  225.             f.balloon_id = PearlKernel::FailBalloon
  226.             next
  227.           end
  228.         else
  229.           #has data
  230.           f.setup_followertool_usage
  231.         end
  232.       end
  233.     end
  234.   end
  235.  
  236.   # menu buttons update
  237.   def update_menu_buttons
  238.     return if $game_map.interpreter.running?
  239.     return if @pearl_menu_call[1] > 0
  240.     if PearlKey.trigger?(Key::QuickTool)
  241.       return if @knockdown_data[0] > 0
  242.       force_cancel_actions
  243.       @pearl_menu_call = [:tools, 2]
  244.     end
  245.     if !PearlKernel::SinglePlayer and PearlKey.trigger?(Key::PlayerSelect)
  246.       @pearl_menu_call = [:character, 2]
  247.     end
  248.   end
  249.  
  250.   def set_skill(id)
  251.     actor.assigned_skill = $data_skills[id]
  252.   end
  253.  
  254.   alias falcao_pearl_movable movable?
  255.   def movable?
  256.     return if force_stopped? || @blowpower[0] > 0
  257.     falcao_pearl_movable
  258.   end
  259.  
  260.   alias falcaopearl_perform_transfer perform_transfer
  261.   def perform_transfer
  262.     if $game_map.map_id !=  @new_map_id
  263.       pearl_abs_global_reset
  264.     end
  265.     falcaopearl_perform_transfer
  266.  
  267.  
  268.     @followers.each {|f|
  269.     next unless f.visible?
  270.     if f.battler.deadposing != nil
  271.       f.battler.deadposing != $game_map.map_id ? f.transparent = true :
  272.       f.transparent = false
  273.       f.knockdown_data[0] = 10 #if follower.battler.deadposing != nil
  274.       f.knowdown_effect(1)
  275.     end}
  276.   end
  277.  
  278.   alias falcaopearl_start_map start_map_event
  279.   def start_map_event(x, y, triggers, normal)
  280.     $game_map.events_xy(x, y).each do |event|
  281.       return if event.has_token?
  282.     end  
  283.     falcaopearl_start_map(x, y, triggers, normal)
  284.   end
  285. end
  286.  
  287. # game party
  288. class Game_Party < Game_Unit
  289.   attr_accessor :actors
  290.   def set_skill(actor_id, sid, slot)
  291.     actor = $game_actors[actor_id] ; skill = $data_skills[sid]
  292.     return unless actor.skill_learn?(skill)
  293.     case slot
  294.     when Key::Skill[1].to_sym  then actor.assigned_skill  = skill
  295.     when Key::Skill2[1].to_sym then actor.assigned_skill2 = skill
  296.     when Key::Skill3[1].to_sym then actor.assigned_skill3 = skill
  297.     when Key::Skill4[1].to_sym then actor.assigned_skill4 = skill
  298.     end
  299.   end
  300.  
  301.   def set_item(actor_id, item_id, slot)
  302.     actor = $game_actors[actor_id] ; item = $data_items[item_id]
  303.     return unless has_item?(item)
  304.     case slot
  305.     when Key::Item[1].to_sym  then actor.assigned_item   = item
  306.     when Key::Item2[1].to_sym then actor.assigned_item2  = item
  307.     end
  308.   end
  309. end
  310.  
  311. #--------------------------------------------------------
  312. class Game_Battler < Game_BattlerBase
  313.   attr_reader   :state_steps
  314.   attr_accessor :buff_turns, :buffs, :used_item, :deadposing
  315.   attr_accessor :skill_cooldown,:item_cooldown,:weapon_cooldown, :armor_cooldown
  316.  
  317.   alias falcaopearl_battler_ini initialize
  318.   def initialize
  319.     @skill_cooldown = {}
  320.     @item_cooldown = {}
  321.     @weapon_cooldown = {}
  322.     @armor_cooldown = {}
  323.     falcaopearl_battler_ini
  324.   end
  325.  
  326.   alias falcaopearl_revive revive
  327.   def revive
  328.     if SceneManager.scene_is?(Scene_Item) || SceneManager.scene_is?(Scene_Skill)
  329.       $game_temp.pop_w(180, 'Pearl ABS',
  330.       'You cannot revive from menu!')
  331.       return
  332.     end
  333.     falcaopearl_revive
  334.     @deadposing = nil
  335.   end
  336.  
  337.   alias falcaopearl_addnew add_new_state
  338.   def add_new_state(state_id)
  339.     falcaopearl_addnew(state_id)
  340.      if self.is_a?(Game_Actor)
  341.       $game_player.refresh_skillbar = 4
  342.     end
  343.   end
  344.  
  345.   def tool_ready?(item)
  346.     return false if item.is_a?(RPG::Skill)  and @skill_cooldown[item.id]
  347.     return false if item.is_a?(RPG::Item)   and @item_cooldown[item.id]
  348.     return false if item.is_a?(RPG::Weapon) and @weapon_cooldown[item.id]
  349.     return false if item.is_a?(RPG::Armor)  and @armor_cooldown[item.id]
  350.     return true
  351.   end
  352.  
  353.   def apply_cooldown(item, value)
  354.     @skill_cooldown[item.id]  = value if item.is_a?(RPG::Skill)
  355.     @item_cooldown[item.id]   = value if item.is_a?(RPG::Item)
  356.     @weapon_cooldown[item.id] = value if item.is_a?(RPG::Weapon)
  357.     @armor_cooldown[item.id]  = value if item.is_a?(RPG::Armor)
  358.   end
  359.  
  360.   # Make the steps settings to seconds for states if used in the scene map
  361.   alias falcaopearl_stepsset reset_state_counts
  362.   def reset_state_counts(state_id)
  363.     falcaopearl_stepsset(state_id)
  364.     state = $data_states[state_id]
  365.     @state_steps[state_id] = state.steps_to_remove * 60 if
  366.     SceneManager.scene_is?(Scene_Map)
  367.   end
  368.  
  369.   # make the buff turns per seconds if used in the scene map
  370.   alias falcaopearl_buffs overwrite_buff_turns
  371.   def overwrite_buff_turns(param_id, turns)
  372.     if SceneManager.scene_is?(Scene_Map)
  373.       time = turns * 60
  374.       @buff_turns[param_id] = time if @buff_turns[param_id].to_i < time
  375.       return
  376.     end
  377.     falcaopearl_buffs(param_id, turns)
  378.   end
  379.  
  380.   # make the item occasion to always in the map
  381.   alias falcaopearl_occasion_ok occasion_ok?
  382.   def occasion_ok?(item)
  383.     return true if SceneManager.scene_is?(Scene_Map) ||
  384.     SceneManager.scene_is?(Scene_QuickTool) ||
  385.     SceneManager.scene_is?(Scene_CharacterSet)
  386.     falcaopearl_occasion_ok(item)
  387.   end
  388.  
  389.   # apply the usability settings (used to refresh the skill bar icons)
  390.   alias falcaopearl_usablecheck use_item
  391.   def use_item(item)
  392.     falcaopearl_usablecheck(item)
  393.     self.apply_usability if self.is_a?(Game_Actor)
  394.   end
  395.  
  396.   # melee attack apply used with invoked tools
  397.   def melee_attack_apply(user, item_id)
  398.     item_apply(user, $data_skills[item_id])
  399.   end
  400.  
  401.   alias falcaopearl_itemapply item_apply
  402.   def item_apply(user, item)
  403.     @used_item = item
  404.     falcaopearl_itemapply(user, item)
  405.   end
  406. end
  407.  
  408. #-------------------------------------------------------------------------------
  409. # Game followers adds
  410.  
  411. class Game_Follower < Game_Character
  412.  
  413.   def battler
  414.     return actor
  415.   end
  416.  
  417.   alias falcaopearl_f_poses_refresh refresh
  418.   def refresh
  419.     return if @knockdown_data[0] > 0
  420.     falcaopearl_f_poses_refresh
  421.   end
  422.  
  423.  
  424.   def update_state_effects
  425.     battler.dead? ? return : super
  426.   end
  427.  
  428.   # Make the followers inpassable if they are in battle state
  429.   alias falcaopearl_follower_update update
  430.   def update
  431.     if $game_player.followers.gathering? || $game_player.hookshoting[1] ||
  432.       @hookshoting[1]
  433.       @through = true
  434.     else
  435.       @through = false if @through
  436.     end
  437.     falcaopearl_follower_update
  438.  
  439.     @transparent = lying_down? if visible? and $game_player.normal_walk?
  440.     @transparent = false if $game_player.using_custom_g
  441.  
  442.   end
  443.  
  444.   def lying_down?
  445.     return true if !battler.deadposing.nil?  &&
  446.     battler.deadposing != $game_map.map_id
  447.     return false
  448.   end
  449.  
  450.   # avoid the followers to chase the preceding character in battle
  451.   alias falcaopearl_chase_preceding_character chase_preceding_character
  452.   def chase_preceding_character
  453.     return if @blowpower[0] > 0
  454.     return if @targeted_character != nil
  455.     if visible? and $game_player.follower_fighting?
  456.       return if fo_tool.nil?
  457.       return if battler.dead?
  458.     end
  459.  
  460.  
  461.     $game_player.reserved_swap.each {|i|
  462.  
  463.     if i == battler.id
  464.       swap_dead_follower
  465.       $game_player.reserved_swap.delete(i)
  466.     end}
  467.  
  468.  
  469.     jumpto(0) if @targeted_character.nil? && !obj_size?($game_player, 6) &&
  470.     !stopped_any?
  471.     falcaopearl_chase_preceding_character
  472.   end
  473.  
  474.   def stopped_any?
  475.     $game_player.followers.each do |follower|
  476.       return true if follower.force_stopped?
  477.     end
  478.     return false
  479.   end
  480.  
  481.   # set up a target for followers
  482.   def setup_target
  483.     for event in $game_map.event_enemies
  484.       if event.on_battle_screen? && event.enemy_ready?
  485.         if $game_player.obj_size?(event, PearlKernel::PlayerRange) and
  486.           !event.being_targeted
  487.           @targeted_character = event
  488.           event.being_targeted = true
  489.           break
  490.         end
  491.       end
  492.     end
  493.   end
  494.  
  495.   def move_straight(d, turn_ok = true)
  496.     return if force_stopped?
  497.     super
  498.   end
  499.  
  500.   def move_diagonal(horz, vert)
  501.     return if force_stopped?
  502.     super
  503.   end
  504.  
  505.   alias falcaoabs_gather gather?
  506.   def gather?
  507.     return true if !battler.deadposing.nil?
  508.     falcaoabs_gather
  509.   end
  510. end
  511.  
  512. #-------------------------------------------------------------------------------
  513. # Game Actor adds
  514.  
  515. class Game_Actor < Game_Battler
  516.   attr_accessor :assigned_skill, :assigned_item, :primary_use
  517.   attr_accessor :assigned_skill2, :assigned_item2, :usability
  518.   attr_accessor :assigned_skill3, :assigned_skill4
  519.   alias falcaopearl_cooldown_setup setup
  520.   def setup(actor_id)
  521.     @usability = [nil, nil, nil, nil, nil, nil, nil, nil]
  522.     @primary_use = 1
  523.     falcaopearl_cooldown_setup(actor_id)
  524.   end
  525.  
  526.   # player walk
  527.   alias falcaopearl_on_player_walk on_player_walk
  528.   def on_player_walk
  529.     @result.clear
  530.     check_floor_effect
  531.     return
  532.     falcaopearl_on_player_walk
  533.   end
  534.  
  535.   #usability refresher
  536.   def apply_usability
  537.     apply_usabilityto_melee(0) # weapon
  538.     apply_usabilityto_melee(1) # armor
  539.     @usability[2] = usable?(@assigned_item) if !@assigned_item.nil?
  540.     @usability[3] = usable?(@assigned_item2) if !@assigned_item2.nil?
  541.     @usability[4] = usable?(@assigned_skill) if !@assigned_skill.nil?
  542.     @usability[5] = usable?(@assigned_skill2) if !@assigned_skill2.nil?
  543.     @usability[6] = usable?(@assigned_skill3) if !@assigned_skill3.nil?
  544.     @usability[7] = usable?(@assigned_skill4) if !@assigned_skill4.nil?
  545.   end
  546.  
  547.   def apply_usabilityto_melee(index)
  548.     if !equips[index].nil?
  549.       invoke = equips[index].tool_data("Tool Invoke Skill = ")
  550.       if invoke != nil and invoke != 0 and index == 0
  551.         @usability[index] = usable?($data_skills[invoke])
  552.       elsif index == 0
  553.         @usability[index] = usable?($data_skills[1])
  554.       end
  555.       if invoke != nil and invoke != 0 and index == 1
  556.         @usability[index] = usable?($data_skills[invoke])
  557.       elsif index == 1
  558.         @usability[index] = usable?($data_skills[2])
  559.       end
  560.     end
  561.   end
  562. end
  563.  
  564. #-------------------------------------------------------------------------------
  565. # Game character adds, the agro system
  566.  
  567. class Game_Character < Game_CharacterBase
  568.  
  569.   # agro to follower turn towars player
  570.   alias pearlagro_turn_toward_player turn_toward_player
  571.   def turn_toward_player
  572.     if self.is_a?(Game_Event) and self.agroto_f != nil
  573.       turn_toward_character(self.agroto_f)
  574.       return
  575.     end
  576.     pearlagro_turn_toward_player
  577.   end
  578.  
  579.   # agro to follower turn away from player
  580.   alias pearlagro_turn_away_from_player turn_away_from_player
  581.   def turn_away_from_player
  582.     if self.is_a?(Game_Event) and self.agroto_f != nil
  583.       turn_away_from_character(self.agroto_f)
  584.       return
  585.     end
  586.     pearlagro_turn_away_from_player
  587.   end
  588.  
  589.   # agro to game follower move toward player
  590.   alias pearlagro_move_toward_player move_toward_player
  591.   def move_toward_player
  592.     if self.is_a?(Game_Event) and self.agroto_f != nil
  593.       move_toward_character(self.agroto_f)
  594.       return
  595.     end
  596.     pearlagro_move_toward_player
  597.   end
  598.  
  599.   # agro away from follower
  600.   alias pearlagro_move_away_from_player move_away_from_player
  601.   def move_away_from_player
  602.     if self.is_a?(Game_Event) and self.agroto_f != nil
  603.       move_away_from_character(self.agroto_f)
  604.       return
  605.     end
  606.     pearlagro_move_away_from_player
  607.   end
  608. end
  609.  
  610. # enemy
  611. class Game_Enemy < Game_Battler
  612.   attr_accessor :battler_graphic, :breath_enable, :object, :collapse_type
  613.   attr_accessor :die_animation, :kill_weapon, :kill_armor, :kill_item
  614.   attr_accessor :kill_skill, :body_sized, :esensor, :boss_hud, :k_back_dis
  615.   attr_reader   :lowhp_10, :lowhp_25, :lowhp_50, :lowhp_75, :lowhp_99
  616.   alias falcaopearl_enemy_ini initialize
  617.   def initialize(index, enemy_id)
  618.     falcaopearl_enemy_ini(index, enemy_id)
  619.     @kill_weapon = []
  620.     @kill_armor = []
  621.     @kill_item = []
  622.     @kill_skill = []
  623.  
  624.     @battler_graphic = enemy.tool_data("Enemy Battler = ",false) == "true"
  625.     @breath_enable = enemy.tool_data("Enemy Breath = ",false) == "true"
  626.     [url=home.php?mod=space&uid=578904]@OBJECT[/url] = enemy.tool_data("Enemy Object = ", false) == "true"
  627.     @collapse_type = enemy.tool_data("Enemy Collapse Type = ", false)
  628.     @die_animation = enemy.tool_data("Enemy Die Animation = ")
  629.     @body_sized = enemy.tool_data("Enemy Body Increase = ")
  630.     @boss_hud = enemy.tool_data("Enemy Boss Bar = ", false) == "true"
  631.     @esensor = enemy.tool_data("Enemy Sensor = ")
  632.     @esensor = PearlKernel::Sensor if @esensor.nil?
  633.     @body_sized = 0 if @body_sized.nil?
  634.     @k_back_dis = enemy.tool_data("Enemy Knockback Disable = ",false) == "true"
  635.  
  636.     @lowhp_99 = enemy.tool_data("Enemy Lowhp 99% Switch = ")   
  637.     @lowhp_75 = enemy.tool_data("Enemy Lowhp 75% Switch = ")
  638.     @lowhp_50 = enemy.tool_data("Enemy Lowhp 50% Switch = ")
  639.     @lowhp_25 = enemy.tool_data("Enemy Lowhp 25% Switch = ")
  640.     @lowhp_10 = enemy.tool_data("Enemy Lowhp 10% Switch = ")
  641.     apply_kill_with_settings
  642.   end
  643.  
  644.   def apply_kill_with_settings
  645.     wtag = enemy.tool_data("Enemy Kill With Weapon = ", false)
  646.     @kill_weapon = wtag.split(",").map { |s| s.to_i } if wtag != nil
  647.     atag = enemy.tool_data("Enemy Kill With Armor = ", false)
  648.     @kill_armor = atag.split(",").map { |s| s.to_i } if atag != nil
  649.     itag = enemy.tool_data("Enemy Kill With Item = ", false)
  650.     @kill_item = itag.split(",").map { |s| s.to_i } if itag != nil
  651.     stag = enemy.tool_data("Enemy Kill With Skill = ", false)
  652.     @kill_skill = stag.split(",").map { |s| s.to_i } if stag != nil
  653.   end
  654.  
  655.   def has_kill_with?
  656.     !@kill_weapon.empty? || !@kill_armor.empty? || !@kill_item.empty? ||
  657.     !@kill_skill.empty?
  658.   end
  659. end
  660.  
  661. # make refresh
  662. class Game_BattlerBase
  663.   alias falcaopearl_erasestate erase_state
  664.   def erase_state(state_id)
  665.     falcaopearl_erasestate(state_id)
  666.     if self.is_a?(Game_Actor)
  667.       $game_player.refresh_skillbar = 4
  668.     end
  669.   end
  670. end
  671.  
  672. class Game_Followers
  673.   def synchronize(x, y, d)
  674.     each do |follower|
  675.       next if follower.visible? and follower.battler.deadposing != nil
  676.       follower.moveto(x, y)
  677.       follower.set_direction(d)
  678.     end
  679.   end
  680. end
  681.  
  682. class Game_Interpreter
  683.   alias falcaopearl_intsystem_command_201 command_201
  684.   def command_201
  685.     return if $game_player.any_collapsing?
  686.     falcaopearl_intsystem_command_201
  687.   end
  688. end
  689. #-------------------------------------------------------------------------------


您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-17 01:30

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表