Advertisement
roninator2

Hime Enemy Class Addon - Skills

Dec 15th, 2024
29
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 4.61 KB | None | 0 0
  1. # ╔═════════════════════════════════════╦════════════════════╗
  2. # ║ Title: Include class skills to enemy║  Version: 1.00     ║
  3. # ║ Author: Roninator2                  ║                    ║
  4. # ╠═════════════════════════════════════╬════════════════════╣
  5. # ║ Function:                           ║   Date Created     ║
  6. # ║                                     ╠════════════════════╣
  7. # ║   Add class skills to enemy skills  ║    31 May 2022     ║
  8. # ╚═════════════════════════════════════╩════════════════════╝
  9. # ╔══════════════════════════════════════════════════════════╗
  10. # ║ Addon for Hime Enemy Classes script                      ║
  11. # ╚══════════════════════════════════════════════════════════╝
  12. # ╔══════════════════════════════════════════════════════════╗
  13. # ║ Instructions:                                            ║
  14. # ║   Plug and play                                          ║
  15. # ║                                                          ║
  16. # ║   Script will add any skills in the class to the         ║
  17. # ║   enemies skill list                                     ║
  18. # ╚══════════════════════════════════════════════════════════╝
  19. # ╔══════════════════════════════════════════════════════════╗
  20. # ║ Terms of use:                                            ║
  21. # ║ Free for all uses in RPG Maker except nudity             ║
  22. # ╚══════════════════════════════════════════════════════════╝
  23.  
  24. class Game_Enemy < Game_Battler
  25.   #--------------------------------------------------------------------------
  26.   # * Create Battle Action
  27.   #--------------------------------------------------------------------------
  28.   def make_class_actions
  29.     $data_classes[enemy.class_id].learnings.each { |s|
  30.       skl = RPG::Enemy::Action.new
  31.       skl.skill_id = s.skill_id
  32.       enemy.actions.push(skl)
  33.     }
  34.   end
  35.     if $imported['ARC-AdvAIConditions']
  36.         #--------------------------------------------------------------------------
  37.         # ● Select an action
  38.         #--------------------------------------------------------------------------
  39.         def make_actions
  40.             super
  41.             return if @actions.empty?
  42.             if enemy.class_id != 0
  43.                 make_class_actions
  44.             end
  45.             action_list = enemy.actions.select {|a| action_valid?(a) }
  46.             # Process turn patterns
  47.             unless enemy.t_patterns.keys.empty?
  48.                 if turn_patterns_ok?
  49.                     action_list = make_turn_patterns_list.select {|a| action_valid?(a)}
  50.                 end
  51.             end
  52.             # End Process turn patterns
  53.             return if action_list.empty?
  54.             # Process absolute rating
  55.             absolute_list = action_list.reject {|a| a.rating != ARC::ABSOLUTE_RATING}
  56.             unless absolute_list.empty?
  57.                 @actions.each do |action|
  58.                     action.set_enemy_action(absolute_list[rand(absolute_list.size)])
  59.                 end
  60.                 return
  61.             end
  62.             # Normal method end
  63.             rating_max = action_list.collect {|a| a.rating }.max
  64.             rating_zero = rating_max - 3
  65.             action_list.reject! {|a| a.rating <= rating_zero }
  66.             @actions.each do |action|
  67.                 action.set_enemy_action(select_enemy_action(action_list, rating_zero))
  68.             end
  69.         end
  70.     else
  71.         def make_actions
  72.             super
  73.             return if @actions.empty?
  74.             if enemy.class_id != 0
  75.                 make_class_actions
  76.             end
  77.             action_list = enemy.actions.select {|a| action_valid?(a) }
  78.             return if action_list.empty?
  79.             rating_max = action_list.collect {|a| a.rating }.max
  80.             rating_zero = rating_max - 3
  81.             action_list.reject! {|a| a.rating <= rating_zero }
  82.             @actions.each do |action|
  83.                 action.set_enemy_action(select_enemy_action(action_list, rating_zero))
  84.             end
  85.         end
  86.     end
  87. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement