Maksymalny Poziom
Aktualny czas: 28-04-26, 17:12 Witaj! Przejdź do zakładki Logowanie lub Rejestracja


Wątek zamknięty 
[VX] Maksymalny Poziom
MrCorniszon Offline
*


Liczba postów: 9
Dołączył: 18-06-13

Pomógł: 0



Post: #1
Maksymalny Poziom

Witam. Jak ograniczyć poziom postaci? Wiem że w Ace się da ustawić to w menu ale nie widziałem takiej opcji w VX. Chcę żeby 9 poziom był maksymalnym.
26-12-13 18:53
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Gorn5 Offline
*


Liczba postów: 141
Dołączył: 07-11-13

Pomógł: 1



Post: #2
RE: Maksymalny Poziom

Właśnie później chciałem się o to samo zapytać :)
Więc wie ktoś jak takie coś zrobić?
(Ten post był ostatnio modyfikowany: 26-12-13 20:24 przez Gorn5.)
26-12-13 20:23
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


Liczba postów: 758
Dołączył: 09-04-13

Pomógł: 112



Post: #3
RE: Maksymalny Poziom

Można skorzystać z tego:
module FINAL_LVL  
  ACTOR_FINAL_LEVEL = [] # ← NIE USUWAĆ
  
  # Konfiguracja poszczególnych bohaterów:
  # ACTOR_FINAL_LEVEL[ID postaci] = maksymalny poziom
  
  ACTOR_FINAL_LEVEL[1] = 40
  ACTOR_FINAL_LEVEL[2] = 50

  # Domyślny poziom postaci, jeśli nie skonfigurowano powyżej
  DEFAULT_FINAL_LEVEL = 50
end

#------------------------------------------------------------------------------#

#==============================================================================

class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  # * Calculate Experience
  #--------------------------------------------------------------------------
  def make_exp_list
    @exp_list = Array.new(final_level + 2)
    @exp_list[1] = @exp_list[final_level + 1] = 0
    m = actor.exp_basis
    n = 0.75 + actor.exp_inflation / 200.0
    (2..final_level).each { |i|
      @exp_list[i] = @exp_list[i-1] + Integer(m)
      m *= 1 + n
      n *= 0.9
    }
  end
  #--------------------------------------------------------------------------
  # * Final Level
  #--------------------------------------------------------------------------
  def final_level
    n = FINAL_LVL::ACTOR_FINAL_LEVEL[self.id]
    return (n != nil ? n : FINAL_LVL::DEFAULT_FINAL_LEVEL)
  end
  #--------------------------------------------------------------------------
  # * Change Level
  #     level : new level
  #     show  : Level up display flag
  #--------------------------------------------------------------------------
  def change_level(level, show)
    level = [[level, final_level].min, 1].max
    change_exp(@exp_list[level], show)
  end
end

class Scene_File < Scene_Base
  #--------------------------------------------------------------------------
  # * Read Save Data
  #     file : file object for reading (opened)
  #--------------------------------------------------------------------------
  alias read_save_data_final_lvl read_save_data
  def read_save_data(file)
    read_save_data_final_lvl(file)
    (1...$data_actors.size).each { |i|
      actor = $game_actors[i]
      actor.make_exp_list
      if actor.level > actor.final_level
        while actor.level > actor.final_level
          actor.level_down
        end
        actor.change_level(actor.final_level, false)
      end
    }
  end
end

[Obrazek: aye_furniture_pres.png]
27-12-13 20:09
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Wątek zamknięty 


Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości

Kontakt | Ultima Forum | Wróć do góry | Wróć do forów | Wersja bez grafiki | RSS
Powered By MyBB. © 2013 MyBB Group. All Rights Reserved.
Skórka by Ayene.