[RPG VXA] Patch for Falcao Pearl ABS Liquid v3

Devildimos

I ruin memes for a living
Veteran
Joined
Jul 11, 2014
Messages
82
Reaction score
172
First Language
Eglish
Primarily Uses
RMVXA
Hello everyone.
After some weeks of trying to figure out how to add a switch to pause state count and cooldown count for Pearl ABS.
I tried several edits on my own but I guess simply placing a "if switch" did not do the trick.
I am using Falcao Pearl ABS Liquid V3 and Bug Fixes for Falcao's Pearl ABS Liquid v3 by Sixth. Which I believe mainly cause the colldown and states to count down per second. I am using more from Sixth that modify the pearl abs. But they all are linked to the scripts I linked.
I want to put a switch so that if it is false that the count down for both cooldowns, state effect trigger and the state count down is paused until the switch is true.
On top of that I want to be able to adjust the amount of time a count down will trigger. For example now it is 60 frames I would like to be able to adjust that to a number I find fitting within my game.

I need this for a "on map turn based" Roguelike style. Where cooldowns and states are triggered after a turn. Therefore I believe placing a switch is the best way around while using the Pearl ABS.

Thank you :D

Edit:
I figure out where to place the switch for State and Cooldown. It is working pretty good now.

How it works: whenever the player moves or does an action the switch 3 will trigger and lasts for 5 frames for all events to do their turn. I change the number "-= 1" to 12 so that my turn would be seen as 5 frames(1 second). I am still testing this I might make it 10 frames but it might slow down the gameplay.
Down below I have the edits for those that are interested.
I guess there might even be a way to improve my clumsy edits. XD
So feel free to help :)

Where is says "Edit by DD" is what I have modified.
Code:
  # cooldown update
  def eval_cooldown(operand)
      if $game_switches[3] == true# Edit by DD
    for sub in operand
      sub.skill_cooldown.each {|sid, sv| # skill
      if sub.skill_cooldown[sid] > 0
        sub.skill_cooldown[sid] -= 12# Edit by DD
        sub.skill_cooldown.delete(sid) if sub.skill_cooldown[sid] == 0
      end}
      sub.item_cooldown.each {|iid, iv| # item
      if sub.item_cooldown[iid] > 0
        sub.item_cooldown[iid] -= 12# Edit by DD
        sub.item_cooldown.delete(iid) if sub.item_cooldown[iid] == 0
      end}
      sub.weapon_cooldown.each {|wid, wv| # weapon
      if sub.weapon_cooldown[wid] > 0
        sub.weapon_cooldown[wid] -= 12# Edit by DD
        sub.weapon_cooldown.delete(wid) if sub.weapon_cooldown[wid] == 0
      end}
      sub.armor_cooldown.each {|aid, av| #armor
      if sub.armor_cooldown[aid] > 0
        sub.armor_cooldown[aid] -= 12# Edit by DD
        sub.armor_cooldown.delete(aid) if sub.armor_cooldown[aid] == 0
      end}
    end
    end# Edit by DD
  end
Code:
  def update_state_action_steps
    # New way of handling Regen features!
    if battler.alive?
      if $game_switches[3] == true # edit by DD
      if Graphics.frame_count % 5 == 0 && battler.features_sum(22, 7) != 0.0#60 == 0
        battler.regenerate_hp
        if battler.dead?
          @colapse_time = 80
          if $imported && $imported["SixthABSBattleRoyale"]
            self.aggro_data = {} #if target.battler.is_a?(Game_Actor)
            @agroto_f = nil
            @chasetime = 0 if self.is_a?(Game_Event)
            $game_map.battler_data_ko << self if !$game_map.battler_data_ko.include?(self)
            $game_map.battler_data.delete(self) if $game_map.battler_data.include?(self)
          end
        end
        end# edit by DD
          unless self.battler.is_a?(Game_Enemy) && self.battler.object == true
          pop_damage if battler.pop_fix[:hp] == true && check_popup_enable(:hp)
        end
      end

      
      if Graphics.frame_count % 5 == 2 && battler.features_sum(22, 8) != 0.0#60 == 20
        battler.regenerate_mp
        pop_damage if battler.pop_fix[:mp] == true && check_popup_enable(:mp)
      end
      if Graphics.frame_count % 5 == 3 && battler.features_sum(22, 9) != 0.0#60 == 40
        battler.regenerate_tp
        pop_damage(battler.trg) if battler.pop_fix[:tp] == true && check_popup_enable(:tp)
      end
    end
 
    for state in battler.states
      if state.remove_by_walking
        if !battler.state_steps[state.id].nil? &&
          if $game_switches[3] == true # edit by DD
          battler.state_steps[state.id] > 0
          battler.state_steps[state.id] -= 12# edit by DD
        end
        if battler.state_steps[state.id] == 0
          battler.remove_state(state.id)
          pop_damage
        end
        end# edit by DD
 
Last edited:

IneptAttoney_08

Dimas Ridwan AP
Veteran
Joined
Mar 1, 2019
Messages
146
Reaction score
29
First Language
Indonesia
Primarily Uses
RMVXA
I write this script for you. Read the description first. Don't forget to credit me.
I will Post this script on RGSS3 Scripts (RMVX Ace) Forum Later.
I hope you like this script.
Ruby:
#===============================================================================
# * Falcao Pearl ABS Liquid V3 Cooldown Stopper
#===============================================================================
# Author: IneptAttorney
# Date: 22 July 2020
# Required: Falcao Pearl ABS Liquid v3
#===============================================================================
# * Description
#   This script allows you to stop the cooldown of equipment or state by using a
#   switch.
#===============================================================================
# * Terms of Use
#   Credit IneptAttorney on your project! Free for commercial and non-commercial
#   Project.
#===============================================================================
# * Usage
#   Set the configuration Below. Turn on the switch to stop the cooldown of the
#   tools.
#===============================================================================
module INEPTATTRNY
 
  #----------------------------------------------------
  # * Switch to stop Skills Cooldown
  #----------------------------------------------------
  SKILL_CD_SWITCH = 1
  #----------------------------------------------------
  # * Switch to stop Items Cooldown
  #----------------------------------------------------
  ITEM_CD_SWITCH = 2
  #----------------------------------------------------
  # * Switch to stop Weapons Cooldown
  #----------------------------------------------------
  WEAPON_CD_SWITCH = 3
  #----------------------------------------------------
  # * Switch to stop Armors Cooldown
  #----------------------------------------------------
  ARMOR_CD_SWITCH = 4
  #----------------------------------------------------
  # * Switch to stop States Cooldown
  #----------------------------------------------------
  STATE_CD_SWITCH = 5
 
end
#===============================================================================
# * Configuration Ends!
#===============================================================================
class Game_CharacterBase
  def update_state_action_steps
    for state in battler.states
      if state.remove_by_walking
        if !battler.state_steps[state.id].nil? &&
          battler.state_steps[state.id] > 0
          battler.state_steps[state.id] -= 1 if $game_switches[INEPTATTRNY::STATE_CD_SWITCH] == false
        end
        if battler.state_steps[state.id] == 0
          battler.remove_state(state.id)
          pop_damage
        end
      end
      if state.restriction == 4
        @stopped_movement = 10
        @pattern = 2 if @knockdown_data[0] == 0
      end
      state.features.each do |feature|
        if feature.code == 22
          @knockdown_data[0] =10 if state.restriction == 4 && feature.data_id==1
          next unless feature.data_id.between?(7, 9)
          apply_regen_state(state, feature.data_id)
        end
      end
    end
  end
end
#===============================================================================
class << Input
  # cooldown update
  def eval_cooldown(operand)
    for sub in operand
      if $game_switches[INEPTATTRNY::SKILL_CD_SWITCH] == false
        sub.skill_cooldown.each {|sid, sv| # skill
        if sub.skill_cooldown[sid] > 0
          sub.skill_cooldown[sid] -= 1
          sub.skill_cooldown.delete(sid) if sub.skill_cooldown[sid] == 0
        end}
      end
      if $game_switches[INEPTATTRNY::ITEM_CD_SWITCH] == false
      sub.item_cooldown.each {|iid, iv| # item
        if sub.item_cooldown[iid] > 0
          sub.item_cooldown[iid] -= 1
          sub.item_cooldown.delete(iid) if sub.item_cooldown[iid] == 0
        end}
      end
      if $game_switches[INEPTATTRNY::WEAPON_CD_SWITCH] == false
      sub.weapon_cooldown.each {|wid, wv| # weapon
        if sub.weapon_cooldown[wid] > 0
          sub.weapon_cooldown[wid] -= 1
          sub.weapon_cooldown.delete(wid) if sub.weapon_cooldown[wid] == 0
        end}
      end
      if $game_switches[INEPTATTRNY::ARMOR_CD_SWITCH] == false
      sub.armor_cooldown.each {|aid, av| #armor
        if sub.armor_cooldown[aid] > 0
          sub.armor_cooldown[aid] -= 1
          sub.armor_cooldown.delete(aid) if sub.armor_cooldown[aid] == 0
        end}
      end
    end
  end
end
 

Devildimos

I ruin memes for a living
Veteran
Joined
Jul 11, 2014
Messages
82
Reaction score
172
First Language
Eglish
Primarily Uses
RMVXA
Thank you very much. IneptAttoney_08 <3
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

How many parameters is 'too many'??
Yay, now back in action Happy Christmas time, coming back!






Back in action to develop the indie game that has been long overdue... Final Fallacy. A game that keeps on giving! The development never ends as the developer thinks to be the smart cookie by coming back and beginning by saying... "Oh bother, this indie game has been long overdue..." How could one resist such? No-one c
So I was playing with filters and this looked interesting...

Versus the normal look...

Kind of gives a very different feel. :LZSexcite:
To whom ever person or persons who re-did the DS/DS+ asset packs for MV (as in, they are all 48x48, and not just x2 the pixel scale) .... THANK-YOU!!!!!!!!! XwwwwX

Forum statistics

Threads
105,853
Messages
1,016,986
Members
137,561
Latest member
visploo100
Top