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


Wątek zamknięty 
[VX] Maksymalny Poziom
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 


Wiadomości w tym wątku
Maksymalny Poziom - MrCorniszon - 26-12-13, 18:53
RE: Maksymalny Poziom - Gorn5 - 26-12-13, 20:23
RE: Maksymalny Poziom - Ayene - 27-12-13 20:09

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.