Hatte grad nichts besseres zu tun und ohnehin vor, ein kleines Battle-Enhancement zu schreiben. Darum hast du hier dein Script, welches diesen Wunsch erfüllt. Allerdings macht dieses bis jetzt wirklich noch nichts anderes, als einfach eben den Schaden bzw. die Heilung umzukehren, wenn der jeweilige Battler in einem bestimmten Status ist (entsprechend so einen State in der Datenbank erstellen, dürfte aber in den Kommentaren des Scripts ausführlich genug beschrieben sein.
#===============================================================================
# _______ _____ ____ ____ _____ _______ _________
# | __ \ / _ \ | \ / | / _ \ / ___ \ | |
# | | \ \ / / \ \ | | \ / | | / / \ \ / / \__\ | ______|
# | | \ \ / / \ \ | |\ \/ /| | / / \ \ | | | |___
# | | ) )| |_____| || | \ / | || |_____| || | _____ | ___|
# | | / / | _____ || | \__/ | || _____ || | |__ || |______
# | |__/ / | | | || | | || | | | \ \___/ / | |
# |_______/ |__| |__||__| |__||__| |__| \_______/ |_________|
#
#===============================================================================
#
# MK3 - Phoenix Power Productions Presents: Enhanced Damage, V 1.0
# Credits: An Michael Funkel
# Letztes Update: Mittwoch, 04.08.2010
# Level: Leicht
#
# Dieses Script erweitert das Standard-KS um die Möglichkeit, umgekehrten Scha-
# den durch einen bestimmten Status zu verhängen.
#
#===============================================================================
# Updates:
# ----------------------------------------------------------------------------
# o 04.08.2010 - Beginn und Fertigstellung des Projekts auf V 1.0
#===============================================================================
# Installation und Anleitung
#===============================================================================
#
# Platziere das Script unter Material und über Main.
# Es arbeitet mit dem Standard-KS, wie es mit anderen KS funktioniert ist unklar,
# dürfte aber mit jedem KS funktionieren, welches die normale Game_Battler-Class
# nutzt.
# Um dieses Script zu verwenden, muss in der Database ein State definiert werden,
# welcher einem Kampfteilnehmer zugefügt werden muss, damit er umgekehrten Scha-
# den erleidet, sprich: Nimmt er Schaden wird er geheilt, wird er geheilt, nimmt
# er Schaden.
# Zur Bestimmung der ID des Stats einfach zur Konfiguration hier im Script run-
# terscrollen (unter module MK3) und den Wert von REVDAM_STATE entsprechend ein-
# tragen.
#
#===============================================================================
#
# Kompatibilität
# - Overwrites: Game_Battler: execute_damage
#
#===============================================================================
#
# Freigegeben für jede nicht-kommerzielle Verwendung, bei kommerzieller Verwen-
# dung möchte ich informiert werden.
# Kontakt: rpgvx.net, unter Nick Michael Funkel
# Dieses Script darf nicht auf anderen Websites angeboten werden, als jenen, auf
# denen ich es publiziert habe.
#
#===============================================================================
module MK3
module BATTLE
module DAMAGE # Konfiguration des Scripts
# Diese Zahl bestimmt die ID des Status, unter welchem der Battler stehen
# muss, damit der Schaden, den er erleidet, umgekehrt wird.
REVDAM_STATE = 17
end
end
end # Modul
#===============================================================================
# MK3 Phoenix Power Productions übernimmt keinerlei Haftung für sämtliche Schä-
# den, die an Material oder Personen entstehen, wenn die Zeilen unterhalb dieses
# Kommentars verändert werden.
#===============================================================================
$imported = {} if $imported == nil
$imported["MK_Damage"] = true
class Game_Battler
include MK3::BATTLE::DAMAGE
#--------------------------------------------------------------------------
# * Damage Reflection
# user : User of skill or item
# @hp_damage, @mp_damage, or @absorbed must be calculated before this
# method is called.
#--------------------------------------------------------------------------
def execute_damage(user)
if @hp_damage > 0 # Damage is a positive number
remove_states_shock # Remove state due to attack
end
self.hp -= !@states.include?(REVDAM_STATE) ? @hp_damage : -@hp_damage
self.mp -= @mp_damage
if @absorbed # If absorbing
user.hp += @hp_damage
user.mp += @mp_damage
end
end
end # Game_Battler
#===============================End of Script==================================#
Aber wie gesagt, dieses Script macht momentan wirklich nichts, als einfach den Wert umzuwandeln. Beispielsweise bei Zombie ist es ja eigentlich so, dass nur Heileffekte umgekehrt werden. Wenn du also noch Sonderwünsche hast, bin ich jederzeit bereit, das Script entsprechend zu vergrößern (ist sowieso vorsorglich so aufgebaut, dass man es leicht erweitern kann).