#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
class Game_Actor < Game_Battler
attr_accessor :points
alias requiem_upgwnd_initialize initialize
alias requiem_upgwnd_lvlup level_up
def initialize(actor_id)
requiem_upgwnd_initialize(actor_id)
@points = 0
end
def level_up
requiem_upgwnd_lvlup
@points += Points_Gained
# gdy awans na poziom następuje poprzez bezpośrednie dodanie exp drużynie
if Ayene::OKNO_UP == true
$scene = Scene_RequiemUpgrade.new(0,false) unless $game_temp.in_battle == true
end
end
end
#------------------------------------------------------------------------------
# by Ayene
# okno ze statystykami wyświetla się po walce, gdy ktoś z drużyny ma awans
if Ayene::OKNO_UP
class Scene_Battle < Scene_Base
alias ayene_proc_vic process_victory
def process_victory
ayene_proc_vic
if $game_party.members.any? {|actor| actor.points > 0}
$scene = Scene_RequiemUpgrade.new(0,false)
else
battle_end(0)
end
end
end
end
#koniec
#------------------------------------------------------------------------------
# by Ayene
class Scene_Map < Scene_Base
alias terminate_sds_later terminate
def terminate
terminate_sds_later
@notify.dispose unless @notify.nil?
end
alias upd_sds_later update
def update
upd_sds_later
check_icon if Ayene::LEVEL_UP_ICON
end
# by Ayene
# Niewielka modyfikacja Window_Help
class Window_Help < Window_Base
def initialize (y = 0, width = 544)
super(0, y, width, WLH + 32)
end
end
# koniec
#------------------------------------------------------------------------------
class Scene_RequiemUpgrade < Scene_Base
# by Ayene
# następny / poprzedni bohater
def next_actor
@actor_index += 1
@actor_index %= $game_party.members.size
if @from_menu == true
$scene = Scene_RequiemUpgrade.new(@actor_index,true)
else
$scene = Scene_RequiemUpgrade.new(@actor_index,false)
end
end
def prev_actor
@actor_index += $game_party.members.size - 1
@actor_index %= $game_party.members.size
if @from_menu == true
$scene = Scene_RequiemUpgrade.new(@actor_index,true)
else
$scene = Scene_RequiemUpgrade.new(@actor_index,false)
end
end
# koniec
def update
super
update_menu_background
@requiem_upgwindow.update
@requiem_upgcmdwnd.update
@help_window.update
if Input.trigger?(Input::B)
Sound.play_cancel
if @from_menu
$scene = Scene_Menu.new(4)
else
$scene = Scene_Map.new
end
# by Ayene
# następny / poprzedni bohater
elsif Input.trigger?(Input::R)
Sound.play_cursor
next_actor
elsif Input.trigger?(Input::L)
Sound.play_cursor
prev_actor
# koniec
elsif Input.trigger?(Input::C)
if @actor.points > 0
Sound.play_decision
else
Sound.play_buzzer
return
end
case @requiem_upgcmdwnd.index
when 0
@actor.points -= 1
@actor.maxhp += 10
when 1
@actor.points -= 1
@actor.maxmp += 10
when 2
@actor.points -= 1
@actor.atk += 1
when 3
@actor.points -= 1
@actor.def += 1
when 4
@actor.points -= 1
@actor.spi += 1
when 5
@actor.points -= 1
@actor.agi += 1
end
end
end
def terminate
super
dispose_menu_background
@requiem_upgwindow.dispose
@requiem_upgcmdwnd.dispose
@help_window.dispose
end
end
#------------------------------------------------------------------------------
class Scene_Menu < Scene_Base
def create_command_window
s1 = Vocab::item
s2 = Vocab::skill
s3 = Vocab::equip
s4 = Vocab::status
s5 = "Poziom plus"
s6 = Vocab::save
s7 = Vocab::game_end
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6,s7])
@command_window.index = @menu_index
if $game_party.members.size == 0
@command_window.draw_item(0, false)
@command_window.draw_item(1, false)
@command_window.draw_item(2, false)
@command_window.draw_item(3, false)
end
if $game_system.save_disabled
@command_window.draw_item(4, false)
end
end
def update_command_selection
if Input.trigger?(Input::B)
Sound.play_cancel
$scene = Scene_Map.new
elsif Input.trigger?(Input::C)
if $game_party.members.size == 0 and @command_window.index < 4
Sound.play_buzzer
return
elsif $game_system.save_disabled and @command_window.index == 4
Sound.play_buzzer
return
end
Sound.play_decision
case @command_window.index
when 0
$scene = Scene_Item.new
when 1,2,3,4
start_actor_selection
when 5
$scene = Scene_File.new(true, false, false)
when 6
$scene = Scene_End.new
end
end
end
def update_actor_selection
if Input.trigger?(Input::B)
Sound.play_cancel
end_actor_selection
elsif Input.trigger?(Input::C)
$game_party.last_actor_index = @status_window.index
Sound.play_decision
case @command_window.index
when 1
$scene = Scene_Skill.new(@status_window.index)
when 2
$scene = Scene_Equip.new(@status_window.index)
when 3
$scene = Scene_Status.new(@status_window.index)
when 4
$scene = Scene_RequiemUpgrade.new(@status_window.index,true)
end
end
end
end
#------------------------------------------------------------------------------
class Scene_File < Scene_Base
def return_scene
if @from_title
$scene = Scene_Title.new
elsif @from_event
$scene = Scene_Map.new
else
$scene = Scene_Menu.new(5)
end
end
end
#------------------------------------------------------------------------------
class Scene_End < Scene_Base
def return_scene
$scene = Scene_Menu.new(6)
end
end
Kod:
Points_Gained = 5 # Points that hero will gain when level-up
Ta piątka to ilość punktów jaką dostajemy co poziom :).Oczywiście można to zmienić na np.7
Spoiler:
Kod:
@actor.points -= 1
@actor.maxhp += 10
when 1
@actor.points -= 1
@actor.maxmp += 10
when 2
@actor.points -= 1
@actor.atk += 1
when 3
@actor.points -= 1
@actor.def += 1
when 4
@actor.points -= 1
@actor.spi += 1
when 5
@actor.points -= 1
@actor.agi += 1
A w tych linijkach wybieramy ile dostajemy punktów do danej umiejętności za ja jakąś ilość punktów które dostajemy co poziom:).
No to chyba wszystko :).
Podobnie jak wcześniej podmień skrypt usunięcia zapisu na poniższy:
Spoiler:
Kod:
#==============================================================================
# ** Skrypt by Ozzma
#------------------------------------------------------------------------------
# www.ultimateam.pl
#==============================================================================
class Scene_Menu < Scene_Base
def initialize(menu_index = 0)
@menu_index = menu_index
end
def start
super
create_menu_background
create_command_window
@gold_window = Window_Gold.new(0, 360)
@status_window = Window_MenuStatus.new(160, 0)
end
def terminate
super
dispose_menu_background
@command_window.dispose
@gold_window.dispose
@status_window.dispose
end
def update
super
update_menu_background
@command_window.update
@gold_window.update
@status_window.update
if @command_window.active
update_command_selection
elsif @status_window.active
update_actor_selection
end
end
def update_command_selection
if Input.trigger?(Input::B)
Sound.play_cancel
$scene = Scene_Map.new
elsif Input.trigger?(Input::C)
if $game_party.members.size == 0 and @command_window.index < 4
Sound.play_buzzer
return
end
Sound.play_decision
case @command_window.index
when 0
$scene = Scene_Item.new
when 1,2,3,6
start_actor_selection
when 4
$scene = Scene_MonsterBook.new
when 5
$scene = Scene_Quest.new
when 7
$scene = Scene_End.new
end
end
end
def start_actor_selection
@command_window.active = false
@status_window.active = true
if $game_party.last_actor_index < @status_window.item_max
@status_window.index = $game_party.last_actor_index
else
@status_window.index = 0
end
end
def update_actor_selection
if Input.trigger?(Input::B)
Sound.play_cancel
end_actor_selection
elsif Input.trigger?(Input::C)
$game_party.last_actor_index = @status_window.index
Sound.play_decision
case @command_window.index
when 1
$scene = Scene_Skill.new(@status_window.index)
when 2
$scene = Scene_Equip.new(@status_window.index)
when 3
$scene = Scene_Status.new(@status_window.index)
when 4
$scene = Scene_RequiemUpgrade.new(@status_window.index,true)
end
end
end
end
#--------------------------------------------------------------------------
#--------------------------------------------------------------------------
class Scene_End < Scene_Base
def return_scene
$scene = Scene_Menu.new(7)
end
def update
super
update_menu_background
@command_window.update
if Input.trigger?(Input::B)
Sound.play_cancel
return_scene
elsif Input.trigger?(Input::C)
case @command_window.index
when 0
command_to_title
when 1
command_shutdown
when 2
command_cancel
end
end
end
end
A w powyższym skrypcie zmień kod w klasie class Scene_RequiemUpgrade < Scene_Base:
Kod:
$scene = Scene_Menu.new(4)
na
Kod:
$scene = Scene_Menu.new(6)
________________________ Nie ma śniegu, a na ulicach pełno bałwanów ^^
Hjehje małe przeoczenie. Teraz już wszystko będzie ok:
Spoiler:
Kod:
#==============================================================================
# ** Skrypt by Ozzma
#------------------------------------------------------------------------------
# www.ultimateam.pl
#==============================================================================
class Scene_Menu < Scene_Base
def initialize(menu_index = 0)
@menu_index = menu_index
end
def start
super
create_menu_background
create_command_window
@gold_window = Window_Gold.new(0, 360)
@status_window = Window_MenuStatus.new(160, 0)
end
def terminate
super
dispose_menu_background
@command_window.dispose
@gold_window.dispose
@status_window.dispose
end
def update
super
update_menu_background
@command_window.update
@gold_window.update
@status_window.update
if @command_window.active
update_command_selection
elsif @status_window.active
update_actor_selection
end
end
def update_command_selection
if Input.trigger?(Input::B)
Sound.play_cancel
$scene = Scene_Map.new
elsif Input.trigger?(Input::C)
if $game_party.members.size == 0 and @command_window.index < 4
Sound.play_buzzer
return
end
Sound.play_decision
case @command_window.index
when 0
$scene = Scene_Item.new
when 1,2,3,6
start_actor_selection
when 4
$scene = Scene_MonsterBook.new
when 5
$scene = Scene_Quest.new
when 7
$scene = Scene_End.new
end
end
end
def start_actor_selection
@command_window.active = false
@status_window.active = true
if $game_party.last_actor_index < @status_window.item_max
@status_window.index = $game_party.last_actor_index
else
@status_window.index = 0
end
end
def update_actor_selection
if Input.trigger?(Input::B)
Sound.play_cancel
end_actor_selection
elsif Input.trigger?(Input::C)
$game_party.last_actor_index = @status_window.index
Sound.play_decision
case @command_window.index
when 1
$scene = Scene_Skill.new(@status_window.index)
when 2
$scene = Scene_Equip.new(@status_window.index)
when 3
$scene = Scene_Status.new(@status_window.index)
when 6
$scene = Scene_RequiemUpgrade.new(@status_window.index,true)
end
end
end
end
#--------------------------------------------------------------------------
#--------------------------------------------------------------------------
class Scene_End < Scene_Base
def return_scene
$scene = Scene_Menu.new(7)
end
def update
super
update_menu_background
@command_window.update
if Input.trigger?(Input::B)
Sound.play_cancel
return_scene
elsif Input.trigger?(Input::C)
case @command_window.index
when 0
command_to_title
when 1
command_shutdown
when 2
command_cancel
end
end
end
end
________________________ Nie ma śniegu, a na ulicach pełno bałwanów ^^
Pomógł: 1 raz Dołączył: 21 Gru 2009 Posty: 85 Skąd: Nie pamiętam
Wysłany: Pon 28 Gru, 2009 20:49
nie uda sie
przynajmniej mi sie nie udalo, SaE moze Ty sprobuj cos wykombinowac bo mi sie nie udaje
________________________ _________________
_________________
Jak kraść to milinony...
Jak ruchać to księżniczki...
_________________
_________________
_________________
Pomógł: 1 raz Dołączył: 21 Gru 2009 Posty: 85 Skąd: Nie pamiętam
Wysłany: Sro 30 Gru, 2009 12:59
gra mi sie nie chce uruchomic
nic nie pisze
________________________ _________________
_________________
Jak kraść to milinony...
Jak ruchać to księżniczki...
_________________
_________________
_________________
Pomógł: 1 raz Dołączył: 06 Gru 2009 Posty: 99 Skąd: z Huty Mińskiej
Wysłany: Sro 30 Gru, 2009 13:29
Nie jestem Qukus, ale ja używam zwykłego stylu walki. Pewnie wiele osób właśnie takiego używa. To zrobisz? (wg. mnie to lepiej jest żeby to okienko pokazywało się tylko po walce, a w ogóle nie w menu)
________________________ Gość, podoba ci się moja gra? ;)
# Samowyświetlające się okno - przy każdym następnym awansie okno samo będzie
# się pojawiać
OKNO_UP = true # true / false
end
Points_Gained = 5 # Ilość punktów co poziom
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
class Game_Actor < Game_Battler
attr_accessor :points
alias requiem_upgwnd_initialize initialize
alias requiem_upgwnd_lvlup level_up
def initialize(actor_id)
requiem_upgwnd_initialize(actor_id)
@points = 0
end
def level_up
requiem_upgwnd_lvlup
@points += Points_Gained
# gdy awans na poziom następuje poprzez bezpośrednie dodanie exp drużynie
if Ayene::OKNO_UP == true
$scene = Scene_RequiemUpgrade.new(0,false) unless $game_temp.in_battle == true
end
end
end
# by Ayene
# okno ze statystykami wyświetla się po walce, gdy ktoś z drużyny ma awans
if Ayene::OKNO_UP == true
class Scene_Battle < Scene_Base
alias ayene_proc_vic process_victory
def process_victory
ayene_proc_vic
if $game_party.members.any? {|actor| actor.points > 0}
$scene = Scene_RequiemUpgrade.new(0,false)
else
battle_end(0)
end
end
end
end
# koniec
#------------------------------------------------------------------------------
class Requiem_UpgradeWindow < Window_Base
def initialize(actor)
super(0,65,320,320)
@actor = actor
update
end
# by Ayene
# Niewielka modyfikacja Window_Help
class Window_Help < Window_Base
def initialize (y = 0, width = 544)
super(0, y, width, WLH + 32)
end
end
# koniec
#------------------------------------------------------------------------------
class Scene_RequiemUpgrade < Scene_Base
# by Ayene
# następny / poprzedni bohater
def next_actor
@actor_index += 1
@actor_index %= $game_party.members.size
if @from_menu == true
$scene = Scene_RequiemUpgrade.new(@actor_index,true)
else
$scene = Scene_RequiemUpgrade.new(@actor_index,false)
end
end
def prev_actor
@actor_index += $game_party.members.size - 1
@actor_index %= $game_party.members.size
if @from_menu == true
$scene = Scene_RequiemUpgrade.new(@actor_index,true)
else
$scene = Scene_RequiemUpgrade.new(@actor_index,false)
end
end
# koniec
def update
super
update_menu_background
@requiem_upgwindow.update
@requiem_upgcmdwnd.update
@help_window.update
if Input.trigger?(Input::B)
Sound.play_cancel
if @from_menu
$scene = Scene_Menu.new(4)
else
$scene = Scene_Map.new
end
# by Ayene
# następny / poprzedni bohater
elsif Input.trigger?(Input::R)
Sound.play_cursor
next_actor
elsif Input.trigger?(Input::L)
Sound.play_cursor
prev_actor
# koniec
elsif Input.trigger?(Input::C)
if @actor.points > 0
Sound.play_decision
else
Sound.play_buzzer
return
end
case @requiem_upgcmdwnd.index
when 0
@actor.points -= 1
@actor.maxhp += 10
when 1
@actor.points -= 1
@actor.maxmp += 10
when 2
@actor.points -= 1
@actor.atk += 1
when 3
@actor.points -= 1
@actor.def += 1
when 4
@actor.points -= 1
@actor.spi += 1
when 5
@actor.points -= 1
@actor.agi += 1
end
end
end
def terminate
super
dispose_menu_background
@requiem_upgwindow.dispose
@requiem_upgcmdwnd.dispose
@help_window.dispose
end
end
#------------------------------------------------------------------------------
class Scene_Menu < Scene_Base
def create_command_window
s1 = Vocab::item
s2 = Vocab::skill
s3 = Vocab::equip
s4 = Vocab::status
s5 = "Poziom plus"
s6 = Vocab::save
s7 = Vocab::game_end
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6,s7])
@command_window.index = @menu_index
if $game_party.members.size == 0
@command_window.draw_item(0, false)
@command_window.draw_item(1, false)
@command_window.draw_item(2, false)
@command_window.draw_item(3, false)
end
if $game_system.save_disabled
@command_window.draw_item(4, false)
end
end
def update_command_selection
if Input.trigger?(Input::B)
Sound.play_cancel
$scene = Scene_Map.new
elsif Input.trigger?(Input::C)
if $game_party.members.size == 0 and @command_window.index < 4
Sound.play_buzzer
return
elsif $game_system.save_disabled and @command_window.index == 4
Sound.play_buzzer
return
end
Sound.play_decision
case @command_window.index
when 0
$scene = Scene_Item.new
when 1,2,3,4
start_actor_selection
when 5
$scene = Scene_File.new(true, false, false)
when 6
$scene = Scene_End.new
end
end
end
def update_actor_selection
if Input.trigger?(Input::B)
Sound.play_cancel
end_actor_selection
elsif Input.trigger?(Input::C)
$game_party.last_actor_index = @status_window.index
Sound.play_decision
case @command_window.index
when 1
$scene = Scene_Skill.new(@status_window.index)
when 2
$scene = Scene_Equip.new(@status_window.index)
when 3
$scene = Scene_Status.new(@status_window.index)
when 4
$scene = Scene_RequiemUpgrade.new(@status_window.index,true)
end
end
end
end
#------------------------------------------------------------------------------
class Scene_File < Scene_Base
def return_scene
if @from_title
$scene = Scene_Title.new
elsif @from_event
$scene = Scene_Map.new
else
$scene = Scene_Menu.new(5)
end
end
end
#------------------------------------------------------------------------------
class Scene_End < Scene_Base
def return_scene
$scene = Scene_Menu.new(6)
end
end
Wszystkie modyfikacje dokonane przez mnie są wyróżnione w skrypcie. Można je zmienić w razie potrzeby.
A i zostawiłam okno w menu, bo przecież jak ktoś nie rozda wszystkich punktów i przez przypadek zamknie okno ze statystykami, to będzie musiał czekać na ich rozdanie do następnego awansu. No mi by się to nie podobało Ale jeżeli komuś będzie z tym lepiej, to zamieszczę wersję bez statystyk w menu.
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum