So hier stelle ich euch mal ein neues Script von mir zur Verfügung...
Das Xtended Equipment by Hamsterhai...
Was kann es?
Durch einfache Notiz in der Database kann es beim ausrüsten..
- Skills lernen (beim abrüsten verlernen)
- Dem Spieler eine neue Grafik geben
- Einen bestimmten Wert eines Attributs erfordern
- Bestimmten Level erfordern
Die Funktionen sind im Script nachzulesen ;)
v1.1#-------------------------------------------------------------------------------
#
# Xtended Equipment
# code by HamsterHai aka. Sartekk
# Released 16.11.2010
# version 1.1
#
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# * Funktionen... (In der Notiz)
#
# E_Level = X
# Der Charakter muss Level X sein, um das Item ausrüsten zu können
#
# E_Attack = X
# Erfordert, dass das Attribut ATK des Charakters = X ist
#
# E_Defense = X
# Erfordert, dass das Attribut DEF des Charakters = X ist
#
# E_Spirit = X
# Erfordert, dass das Attribut SPI des Charakters = X ist
#
# E_Agility = X
# Erfordert, dass das Attribut AGI des Charakters = X ist
#
# T_Skill = ID
# Solange das Item ausgerüstet ist, kann der Character den Skill[ID]
#
# New_Graphic = XY
# Ändert die Grafik des Charakters in XY
#
# New_GIndex = X
# Ändert den Characterset-Index in X
#
# New_Face = XY
# Ändert die Face-Grafik des Charakters in XY
#
# New_FIndex = X
# Ändert den Faceset-Index in X
#
# * Es ist ratsam, Groß-/Klein-Schreibung zu berücksichtigen!!!
#
#-------------------------------------------------------------------------------
class Game_Actor < Game_Battler
alias check_for_params equippable?
def equippable?(item)
return false if item.e_level != nil and self.level < item.e_level
return false if item.e_atk != nil and self.atk < item.e_atk
return false if item.e_def != nil and self.def < item.e_def
return false if item.e_spi != nil and self.spi < item.e_spi
return false if item.e_agi != nil and self.agi < item.e_agi
check_for_params(item)
end
end
class Scene_Equip < Scene_Base
alias ews_t_skill update_item_selection
def update_item_selection
@ews_equipped = @actor.equips[@equip_window.index]
if Input.trigger?(Input::C)
@ews_item = @item_window.item
if @ews_equipped != nil and @ews_equipped.t_skill != nil
@actor.forget_skill(@ews_equipped.t_skill)
end
if @ews_item != nil and @ews_item.t_skill != nil
@actor.learn_skill(@ews_item.t_skill)
end
@new_look = false
#-------------------------------------------------------------------------------
@gra = $game_temp.actor_list[@actor.id][0]
if @ews_item != nil
if @ews_item.g_change != nil
@gra = @ews_item.g_change;@new_look = true
if @gra.include?('Self')
@gra.slice!(0,4)
@gra.insert(0,'$' + @actor.name)
else
@gra = @ews_item.g_change;@new_look = true
end
else
@new_look = true
@gra = $game_temp.actor_list[@actor.id][0]
if @gra.include?('Self')
@gra.slice!(0,4)
@gra.insert(0,'$' + @actor.name)
else
@new_look = true
@gra = $game_temp.actor_list[@actor.id][0]
end
end
else
if @ews_equipped.g_change != nil
@new_look = true
@gra = $game_temp.actor_list[@actor.id][0]
else
@new_look = true
@gra = $game_temp.actor_list[@actor.id][0]
end
end
#-------------------------------------------------------------------------------
@gri = $game_temp.actor_list[@actor.id][1]
if @ews_item != nil
if @ews_item.gi_change != nil
@gri = @ews_item.gi_change;@new_look = true
else
@new_look = true
@gri = $game_temp.actor_list[@actor.id][1]
end
else
if @ews_equipped.gi_change != nil
@new_look = true
@gri = $game_temp.actor_list[@actor.id][1]
end
end
#-------------------------------------------------------------------------------
@fa = $game_temp.actor_list[@actor.id][2]
if @ews_item != nil
if @ews_item.f_change != nil
@fa = @ews_item.f_change;@new_look = true
else
@new_look = true
@fa = $game_temp.actor_list[@actor.id][2]
end
else
if @ews_equipped.f_change != nil
@new_look = true
@fa = $game_temp.actor_list[@actor.id][2]
end
end
#-------------------------------------------------------------------------------
@fi = $game_temp.actor_list[@actor.id][3]
if @ews_item != nil
if @ews_item.fi_change != nil
@fi = @ews_item.fi_change;@new_look = true
else
@new_look = true
@fi = $game_temp.actor_list[@actor.id][3]
end
else
if @ews_equipped.fi_change != nil
@new_look = true
@fi = $game_temp.actor_list[@actor.id][3]
end
end
#p(@gra,@gri,@fa,@fi)
#-------------------------------------------------------------------------------
if @new_look == true
@actor.set_graphic(@gra,@gri,@fa,@fi)
$game_player.refresh
end
end
ews_t_skill
end
end
module RPG
class BaseItem
def e_level
self.note.each_line { |line|
return line.gsub('E_Level = ', '').chomp.to_i if line.include?('E_Level = ')
}
return nil
end
def e_atk
self.note.each_line { |line|
return line.gsub('E_Attack = ', '').chomp.to_i if line.include?('E_Attack = ')
}
return nil
end
def e_def
self.note.each_line { |line|
return line.gsub('E_Defense = ', '').chomp.to_i if line.include?('E_Defense = ')
}
return nil
end
def e_spi
self.note.each_line { |line|
return line.gsub('E_Spirit = ', '').chomp.to_i if line.include?('E_Spirit = ')
}
return nil
end
def e_agi
self.note.each_line { |line|
return line.gsub('E_Agility = ', '').chomp.to_i if line.include?('E_Agility = ')
}
return nil
end
def t_skill
self.note.each_line { |line|
return line.gsub('T_Skill = ', '').chomp.to_i if line.include?('T_Skill = ')
}
return nil
end
def g_change
self.note.each_line { |line|
return line.gsub('New_Graphic = ', '').chomp.to_s if line.include?('New_Graphic = ')
}
return nil
end
def gi_change
self.note.each_line { |line|
return line.gsub('New_GIndex = ', '').chomp.to_i if line.include?('New_GIndex = ')
}
return nil
end
def f_change
self.note.each_line { |line|
return line.gsub('New_Face = ', '').chomp.to_s if line.include?('New_Face = ')
}
return nil
end
def fi_change
self.note.each_line { |line|
return line.gsub('New_FIndex = ', '').chomp.to_i if line.include?('New_FIndex = ')
}
return nil
end
end
end
class Game_Temp
attr_accessor :actor_list
alias graphic_change_new_start initialize
def initialize
graphic_change_new_start
@actor_list = {}
end
end
class Game_Actor < Game_Battler
alias save_origin_gras initialize
def initialize(actor_id)
save_origin_gras(actor_id)
cn = @character_name
ci = @character_index
fn = @face_name
fi = @face_index
$game_temp.actor_list[actor_id] = [cn,ci,fn,fi]
end
end
Fix-Log
Fix-Log
v1.1 - Error behoben bei anderem Grafikname(Blöder Fehler aber auch -.-)
KEIN "" Zur Notiz!!!!
Achso etwas noch:
Solltet ihr ein charset benutzen, welches den Namen eures Helden hat... wie z.b. $Held und wollt mit einer Rüstung die Grafik $Held_Rüstung verwenden, könnt ihr als Notiz auch einfach folgendes benutzen:
New_Graphic = Self_Rüstung
Alle Fehler und Bugs bitte melden! (damit sie behoben werden können)
+Credit-Eintrag wäre nett =)
mfG Hamster
Ergebnis als Screenshots:
(http://img694.imageshack.us/img694/8027/equipz.jpg)
(http://img259.imageshack.us/img259/7789/fehlera.jpg)
mfG Atego