Save-Point
Equipment TP Reset ACE - Printable Version

+- Save-Point (https://www.save-point.org)
+-- Forum: Material Development (https://www.save-point.org/forum-8.html)
+--- Forum: Scripts Database (https://www.save-point.org/forum-39.html)
+---- Forum: RPGMaker VX/VXAce (RGSS2/3) Engines (https://www.save-point.org/forum-117.html)
+---- Thread: Equipment TP Reset ACE (/thread-8588.html)



Equipment TP Reset ACE - kyonides - 11-01-2022

Equipment TP Reset ACE

by Kyonides Arkanthes

Introduction

Thinking Did you ever wanted to make your heroes lose all of their TP for changing specific types of equipment?
Shocked Now you can do that!

Here's how you do it:

Leave a note in your favorite Actor's note box like the following:

<equip tp reset: As,Many,Positions,As,Deemed,Necessary>

Translation:

<equip tp reset: 0,2>
<equip tp reset: 0,1,3>

That's it! Grinning

Thinking What happens if an actor has no such note?
Tongue sticking out Nothing. It's business as usual.

Code:
# * Equipment TP Reset ACE - Note Version
#   Scripter : Kyonides Arkanthes
# * Overwritten method: Game_Actor#change_equip

# * Instructions * #

# Leave a note in the Actor's Note Box:
# <equip tp reset: As,Many,Positions,As,Deemed,Necessary>

# Nothing will happen if a given Actor has no such note.

class Game_Actor
  TP_RESET_SLOTS_REGEX = /<equip tp reset: (...)>/i
  def change_equip(slot_id, item)
    return unless trade_item_with_party(item, equips[slot_id])
    return if item && equip_slots[slot_id] != item.etype_id
    @equips[slot_id].object = item
    actor.note[TP_RESET_SLOTS_REGEX]
    slot_ids = $1.to_s.split(/,/).map(&:to_i)
    @tp = 0 if slot_ids.include?(slot_id)
    refresh
  end
end

Terms & Conditions

Free as in Beer beer and as in Shocked speech.
Just don't forget to mention me in your game credits. Winking