moin erstmal , ich hab mal so eine art inRage-Script / Limit-Attacken-Script gebaut
ich weiss nich obs sowas schon gibt und da ich nix gefunden hab , hab ich mir eins gebaut
edit:um verwirrungen weiter vorzubeugen beschreib ich das mal etwas besser ( hoff ich )
Beschreibung :
das script ändert sobald ein schwellwert erreicht wurde, standardmäßig 20% der maximalen hp, den standardangriff in eine vorher eingestellte fähigkeit , die fähigkeit muss dann mit der id angegeben werden, die id entsprichtig der nummer in der database, jeder fähigkeit geht , der spiel muss die fähigkeit auch net selbst können oder so, sie muss nur in der database auftauchen
ähnlich wie in final fantasy war das gedacht, wo man zb wenn man wenig leben hat den herzensbrecher auslösen kann
bei ideen und fehler einfach melden
Features :
Veränderbarer Grenzwert der Limit Attacke
Schalter um direkt in den inRage-Status zu wechseln
Einstellung :
Normal einfügen, die Einstellungen sind im Script beschrieben aber hier nochmal
$rageskill = [82,82,82,82] - Die ID's der Skills des inRage Zustands, die ID's entsprechen dem wert in der Skilldatenbank
$inrage = false - Der nächste Actor wird auf inRage geschaltet
$who = [false,false,false,false] - Gibt an welcher der Kämpfer gerade im inRage Zustand ist
$multi = 0.2 - Bestimmt den Multiplikator für die inRage grenze, wert *100 in %, zb 0.2 = 20%
Latest Change : 29.1.08
- schrift wird nun rot wenn wert unterschritten wird
- der name der limit attacke entspricht nun immer dem namen in der skilldatenbank
Screenshots :
(http://sturmf4lke.de/easy/screen/screen6.JPG)
(http://sturmf4lke.de/easy/screen/screen5.JPG)
Aktuelles Script : v0.1.1
#==============================================================================
# inRage-Script
# Version : 0.1.1
# Created by : hellMinor
# Description : This script changes your normal attack to a limit attack if
# you're health drops below a specific value. The Limit attack
# which is performed is a skill in you're skill database.
#==============================================================================
# Config
#==============================================================================
# Skill ID's of the Limit Attack
$rageskill = [83,23,43,53]
# The next Actor will be inRage and perform a limit attack
$inrage = false
# Specifies which character is currently in rage
$who = [false,false,false,false]
# Multiplier for the MaxHp value which defines the inRage barrier
$multi = 0.2
#==============================================================================
#==============================================================================
class Window_ActorCommand < Window_Command
#==============================================================================
def setup(actor,id)
s1 = Vocab::attack
s2 = Vocab::skill
s3 = Vocab::guard
s4 = Vocab::item
if actor.class.skill_name_valid
s2 = actor.class.skill_name
end
if actor.hp <= actor.maxhp*$multi || $inrage
@skill = $data_skills[$rageskill[id]]
s1 = @skill.name
$inrage = true
end
@commands = [s1,s2, s3, s4]
@item_max = 4
refresh
self.index = 0
end
#------------------------------------------------------------------------------
def draw_item(index, enabled = true)
rect = item_rect(index)
rect.x += 4
rect.width -= 8
self.contents.clear_rect(rect)
self.contents.font.color = normal_color
if @commands[index] == @commands[0] && $inrage
self.contents.font.color = Color.new(200, 1, 1, 0)
end
self.contents.font.color.alpha = enabled ? 255 : 128
self.contents.draw_text(rect, @commands[index])
end
end
#==============================================================================
class Scene_Battle < Scene_Base
#==============================================================================
def update_actor_command_selection
if Input.trigger?(Input::B)
Sound.play_cancel
prior_actor
elsif Input.trigger?(Input::C)
case @actor_command_window.index
when 0
Sound.play_decision
if $inrage
@active_battler.action.set_skill($rageskill[@active_battler.id-1])
$inrage = false
$who[@active_battler.id-1] = true
else
@active_battler.action.set_attack
end
start_target_enemy_selection
when 1
Sound.play_decision
start_skill_selection
when 2
Sound.play_decision
@active_battler.action.set_guard
next_actor
when 3
Sound.play_decision
start_item_selection
end
end
end
#------------------------------------------------------------------------------
def start_actor_command_selection
@party_command_window.active = false
id = @active_battler.id-1
@actor_command_window.setup(@active_battler,id)
@actor_command_window.active = true
@actor_command_window.index = 0
end
#------------------------------------------------------------------------------
def process_action
return if judge_win_loss
return if $game_temp.next_scene != nil
set_next_active_battler
if @active_battler == nil
turn_end
return
end
return if @active_battler.dead?
@message_window.clear
wait(5)
@active_battler.white_flash = true
unless @active_battler.action.forcing
@active_battler.action.prepare
end
if @active_battler.action.valid? || $who[@active_battler.id-1]
execute_action
$who[@active_battler.id-1] = false
end
unless @active_battler.action.forcing
@message_window.clear
remove_states_auto
display_current_state
end
@active_battler.white_flash = false
@message_window.clear
end
end