Jump to content
Rpg²S Forum

*Stat Distribution System


Amos_MHF
 Share

Recommended Posts

Stat Distribution System

Descrizione




Autore



AllegatiBlizzard, traduzione by Amos_MHF




Istruzioni per l'uso

Inseritelo in una nuova classe sopra il Main, dopodiché seguite le istruzioni nello script.


Demo:
Link (Mediafire)

Script:

#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# Stat Distribution System by Blizzard
# Tradotto da Amos_MHF http://www.rpg2s.net/
# Versione: 1.33b
# Tipo: Actor Attribute Modifier
# Data: 25.3.2007
# Data v1.1b: 6.4.2007
# Data v1.2b: 22.8.2007
# Data v1.3b: 12.9.2007
# Data v1.33b: 5.11.2007
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# 
# Compatibilità:
# 
#   99% compatibile con SDK v1.x. 80% compatibile con SDK 2.x.
#   Danneggerà i vecchi salvataggi.
#   Può causare problemi con sistemi personalizzati di level-up.
#   99% compatibile con qualsiasi altro script.
# 
# 
# Caratteristiche:
# 
#   - distribuzione di punti tra statistiche diverse
#   - finestra di conferma alla fine della distribuzione
#   - chiama automaticamente la "caller scene" dopo la distribuzione
#   - aggiunge/toglie facilmente punti premendo DESTRA/SINISTRA
#   - tieni premuto Q per aggiungere 10 punti alla volta
#   - tieni premuto W per aggiungere 100 punti alla volta
#   - uno Stat Distribution System che funziona come dovrebbe...
# 
# 
# Configurazione:
# 
#   Configura seguendo le istruzioni.
# 
#   STARTING_POINTS    - quanti punti deve avere l'eroe al livello 1
#   POINTS_PER_LEVEL   - punti guadagnati per ogni livello
#   DISPLAY_ICON       - visualizza un'icona sulla mappa se almeno un eroe
#                        ha dei punti da distribuire
#   ICON_DATA          - opzioni personalizzabili per l'icone: [X, Y, OPACITY]
#                        i valori predefiniti sono [612, 452, 192]
#   OWN_ICON           - usa un'icona personalizzata (nella cartella Icons,
#                        chiamata "point_notify")
#   EVASION            - il nome mostrato per l'Evasione
#   STR_LIMIT          - la massima STR possibile
#   DEX_LIMIT          - la massima DEX possibile
#   AGI_LIMIT          - la massima AGI possibile
#   INT_LIMIT          - la massima INT possibile
#   WINDOW_MODE        - true per avere le finestre a sinistra,
#                        false per averle a destra
#   AUTOMATIC_CALL     - true per chiamare la scene dopo una battaglia con
#                        almeno un eroe salito di livello
#   AUTOMATIC_MAP_CALL - true per chiamare la scene dopo un level-up di almeno
#                        un eroe sulla mappa
# 
# 
#   Puoi aggiungere punti manualmente con la seguente sintassi:
# 
#     $game_party.actors[X].add_stat_points(Z)
#     $game_actors[Y].add_stat_points(Z)
# 
#   O puoi rimuoverne:
# 
#     $game_party.actors[X].remove_stat_points(Z)
#     $game_actors[Y].remove_stat_points(Z)
# 
#   X - posizione dell'eroe nel party (INIZIA DA ZERO!)
#   Y - ID dell'eroe nel database
#   Z - numero di punti
# 
#   Puoi chiamare questa scene con il comando evento Call Script inserendo:
# 
#     $scene = Scene_Points.new
# 
# 
# Nota bene:
# 
#   Diminuire il livello di un eroe non farà diminuire i suoi punti.
#   Dovrai farlo manualmente.
# 
# 
# Se trovi dei bug, segnalalo qui:
# http://www.chaosproject.co.nr
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 
module BlizzCFG
 
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# INIZIO Configurazione
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  STARTING_POINTS = 20
  POINTS_PER_LEVEL = 10
  DISPLAY_ICON = true
  ICON_DATA = [612, 452, 192]
  OWN_ICON = false
  EVASION = 'EVA'
  STR_LIMIT = 999
  DEX_LIMIT = 999
  AGI_LIMIT = 999
  INT_LIMIT = 999
  WINDOW_MODE = true
  AUTOMATIC_CALL = false
  AUTOMATIC_MAP_CALL = false
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# FINE Configurazione
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  ATTR_LIMITS = [sTR_LIMIT, DEX_LIMIT, AGI_LIMIT, INT_LIMIT]
  # ensures compatibility
  $stat_system = 1.33
 
end
 
#==============================================================================
# Array
#==============================================================================
 
class Array
 
  def sum
    result = 0
    self.each {|i| result += i if i.is_a?(Numeric)}
    return result
  end
 
end
 
#==============================================================================
# Game_Actor
#==============================================================================
 
class Game_Actor < Game_Battler
 
  attr_reader :points
 
  alias setup_sds_later setup
  def setup(actor_id)
    @points = BlizzCFG::STARTING_POINTS
    setup_sds_later(actor_id)
  end
 
  alias exp_sds_later exp=
  def exp=(exp)
    old_level = @level
    exp_sds_later(exp)
    add_stat_points((@level - old_level) * BlizzCFG::POINTS_PER_LEVEL)
  end
 
  def add_stat_points(val)
    @points += val if val > 0
  end
 
  def remove_stat_points(val)
    @points = [@points-val, 0].max
  end
 
end
 
#==============================================================================
# Window_Base
#==============================================================================
 
class Window_Base < Window
 
  def draw_actor_battler(actor, x, y)
    bitmap = RPG::Cache.battler(actor.battler_name, actor.battler_hue)
    cw, ch = bitmap.width, bitmap.height
    src_rect = Rect.new(0, 0, cw, ch)
    self.contents.blt(x - cw/2, y - ch/2, bitmap, src_rect)
  end
 
  alias draw_actor_parameter_sds_later draw_actor_parameter
  def draw_actor_parameter(actor, x, y, type)
    if type == 7
      self.contents.font.color = system_color
      self.contents.draw_text(x, y, 120, 32, BlizzCFG::EVASION)
      self.contents.font.color = normal_color
      self.contents.draw_text(x + 120, y, 36, 32, actor.eva.to_s, 2)
    else
      draw_actor_parameter_sds_later(actor, x, y, type)
    end
  end
 
end
 
#==============================================================================
# Window_Distribution_Status
#==============================================================================
 
class Window_Distribution_Status < Window_Base
 
  attr_accessor :actor
 
  def initialize(actor)
    super(BlizzCFG::WINDOW_MODE ? 160 : 0, 0, 480, 480)
    @actor = actor
    self.contents = Bitmap.new(width - 32, height - 32)
    if $fontface != nil
      self.contents.font.name = $fontface
      self.contents.font.size = $fontsize
    elsif $defaultfonttype != nil
      self.contents.font.name = $defaultfonttype
      self.contents.font.size = $defaultfontsize
    end
    refresh
  end
 
  def refresh
    self.contents.clear
    unless @actor == nil
      draw_actor_battler(@actor, 280, 120)
      draw_actor_name(@actor, 4, 0)
      draw_actor_class(@actor, 4, 32)
      draw_actor_level(@actor, 4, 64)
      draw_actor_state(@actor, 4, 96)
      self.contents.font.color = system_color
      self.contents.draw_text(4, 128, 80, 32, 'EXP')
      self.contents.draw_text(4, 160, 80, 32, 'al Level-Up')
      self.contents.font.color = normal_color
      self.contents.draw_text(4, 128, 156, 32, @actor.exp_s, 2)
      self.contents.draw_text(4, 160, 156, 32, @actor.next_rest_exp_s, 2)
      draw_actor_hp(@actor, 4, 224, 172)
      draw_actor_sp(@actor, 4, 256, 172)
      draw_actor_parameter(@actor, 4, 320, 0)
      draw_actor_parameter(@actor, 4, 352, 1)
      draw_actor_parameter(@actor, 4, 384, 2)
      draw_actor_parameter(@actor, 4, 416, 7)
      self.contents.font.color = system_color
      self.contents.draw_text(240, 240, 96, 32, 'Equip')
      draw_item_name($data_weapons[@actor.weapon_id], 240, 288)
      draw_item_name($data_armors[@actor.armor1_id], 240, 320)
      draw_item_name($data_armors[@actor.armor2_id], 240, 352)
      draw_item_name($data_armors[@actor.armor3_id], 240, 384)
      draw_item_name($data_armors[@actor.armor4_id], 240, 416)
    end
  end
 
end
 
#==============================================================================
# Window_Distribution
#==============================================================================
 
class Window_Distribution < Window_Selectable
 
  attr_accessor :actor
  attr_reader   :points
 
  def initialize(actor)
    super(BlizzCFG::WINDOW_MODE ? 0 : 480, 160, 160, 320)
    self.contents = Bitmap.new(width - 32, height - 32)
    if $fontface != nil
      self.contents.font.name = $fontface
      self.contents.font.size = $fontsize
    elsif $defaultfonttype != nil
      self.contents.font.name = $defaultfonttype
      self.contents.font.size = $defaultfontsize
    end
    self.active, self.index, = false, 0
    @item_max, @actor, @att, @points = 4, actor, [0, 0, 0, 0], 0
    refresh
  end
 
  def set_new_attributes
    @actor.str += @att[0]
    @actor.dex += @att[1]
    @actor.agi += @att[2]
    @actor.int += @att[3]
    @actor.remove_stat_points(@points)
  end
 
  def actor=(actor)
    @actor = actor
    @att[0] = @att[1] = @att[2] = @att[3] = @points = 0
  end
 
  def refresh
    self.contents.clear
    unless @actor == nil
      self.contents.font.color = system_color
      self.contents.draw_text(52, 0, 72, 32, 'DP', 2)
      self.contents.draw_text(4, 32, 120, 32, $data_system.words.str)
      self.contents.draw_text(4, 96, 120, 32, $data_system.words.dex)
      self.contents.draw_text(4, 160, 120, 32, $data_system.words.agi)
      self.contents.draw_text(4, 224, 120, 32, $data_system.words.int)
      self.contents.font.color = normal_color
      self.contents.draw_text(4, 0, 48, 32, "#{actor.points-@points}", 2)
      self.contents.draw_text(36, 64, 56, 32, "#{@actor.str+@att[0]}", 2)
      self.contents.draw_text(36, 128, 56, 32, "#{@actor.dex+@att[1]}", 2)
      self.contents.draw_text(36, 192, 56, 32, "#{@actor.agi+@att[2]}", 2)
      self.contents.draw_text(36, 256, 56, 32, "#{@actor.int+@att[3]}", 2)
      self.contents.font.size += 8
      self.contents.font.bold = true
      (0...4).each {|i|
          self.contents.draw_text(0, (i + 1) * 64 - 8, 32, 42, '«', 2)
          self.contents.draw_text(96, (i + 1) * 64 - 8, 32, 42, '»')}
      self.contents.font.bold = false
      self.contents.font.size -= 8
    end
  end
 
  def add_points(num)
    attr = [@actor.str, @actor.dex, @actor.agi, @actor.int]
    if @points < @actor.points &&
        attr[index]+@att[index] < BlizzCFG::ATTR_LIMITS[index]
      @points = [@points + num, @actor.points].min
      @att[index] = [@att[index]+num, @points+@att[index]-@att.sum].min
      return true
    end
    return false
  end
 
  def remove_points(num)
    if @points > 0 && @att[index] > 0
      @points = [@points - num, 0].max
      @att[index] = [@att[index] - num, 0].max
      return true
    end
    return false
  end
 
  def update
    super
    return unless self.active
    if Input.press?(Input::R)
      if Input.repeat?(Input::RIGHT)
        if add_points(100)
          $game_system.se_play($data_system.cursor_se)
          refresh
        else
          $game_system.se_play($data_system.buzzer_se)
        end
      elsif Input.repeat?(Input::LEFT)
        if remove_points(100)
          $game_system.se_play($data_system.cursor_se)
          refresh
        else
          $game_system.se_play($data_system.buzzer_se)
        end
      end
    elsif Input.press?(Input::L)
      if Input.repeat?(Input::RIGHT)
        if add_points(10)
          $game_system.se_play($data_system.cursor_se)
          refresh
        else
          $game_system.se_play($data_system.buzzer_se)
        end
      elsif Input.repeat?(Input::LEFT)
        if remove_points(10)
          $game_system.se_play($data_system.cursor_se)
          refresh
        else
          $game_system.se_play($data_system.buzzer_se)
        end
      end
    elsif Input.repeat?(Input::RIGHT)
      if add_points(1)
        $game_system.se_play($data_system.cursor_se)
        refresh
      else
        $game_system.se_play($data_system.buzzer_se)
      end
    elsif Input.repeat?(Input::LEFT)
      if remove_points(1)
        $game_system.se_play($data_system.cursor_se)
        refresh
      else
        $game_system.se_play($data_system.buzzer_se)
      end
    end
  end
 
  def update_cursor_rect
    if @index < 0 || !self.active
      self.cursor_rect.empty
    else
      self.cursor_rect.set(32, (@index+1)*64, 64, 32)
    end
  end
 
end
 
#==============================================================================
# Window_Sure
#==============================================================================
 
class Window_Sure < Window_Command
 
  attr_accessor :actor
 
  def initialize(width, commands)
    commands.push('')
    super
    @item_max, self.index = commands.size - 1, 0
    self.x, self.y, self.z = 320-self.width/2, 240-self.height/2, 10000
    refresh
  end
 
  def refresh
    super
    self.contents.font.color = system_color
    self.contents.draw_text(4, 0, self.contents.width - 8, 32, 'Sei sicuro?', 1)
  end
 
  def draw_item(index, color)
    self.contents.font.color = color
    rect = Rect.new(4, 32 * (index+1), self.contents.width - 8, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    self.contents.draw_text(rect, @commands[index], 1)
  end
 
  def update_cursor_rect
    if @index < 0
      self.cursor_rect.empty
    else
      self.cursor_rect.set(32, (@index+1)*32, self.contents.width - 64, 32)
    end
  end
 
end
 
#==============================================================================
# Scene_Points
#==============================================================================
 
class Scene_Points
 
  def initialize
    @actor, @scene = $game_party.actors[0], $scene.class
  end
 
  def main
    commands = ['Distribuzione', 'Prossimo', 'Precedente', 'Fine']
    @command_window = Window_Command.new(160, commands)
    @command_window.x = (BlizzCFG::WINDOW_MODE ? 0 : 480)
    @status_window = Window_Distribution_Status.new(@actor)
    @distro_window = Window_Distribution.new(@actor)
    Graphics.transition
    loop do
      Graphics.update
      Input.update
      update
      break if $scene != self
    end
    Graphics.freeze
    [@command_window, @status_window, @distro_window].each {|win| win.dispose}
  end
 
  def make_sure_window
    commands = ['Annulla', 'Accetta cambiamenti', 'Annulla cambiamenti']
    @sure_window = Window_Sure.new(256, commands)
  end
 
  def update
    if @command_window.active
      @command_window.update
      update_main_command
    elsif @sure_window != nil
      @sure_window.update
      update_sure
    elsif @distro_window.active
      @distro_window.update
      if Input.trigger?(Input::B)
        $game_system.se_play($data_system.cancel_se)
        @command_window.active, @distro_window.active = true, false
      end
    end
  end
 
  def update_main_command
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      if @distro_window.points != 0
        @command_window.index, @command_window.active = 3, false
        make_sure_window
      else
        $scene = @scene.new
      end
    elsif Input.trigger?(Input::C)
      $game_system.se_play($data_system.decision_se)
      case @command_window.index
      when 0 then @command_window.active, @distro_window.active = false, true
      when 1
        if @distro_window.points != 0
          @command_window.active = false
          make_sure_window
        else
          i = (@actor.index+1) % $game_party.actors.size
          @actor = @status_window.actor = @distro_window.actor = $game_party.actors[i]
          [@status_window, @distro_window].each {|win| win.refresh}
          @distro_window.index = 0
        end
      when 2
        if @distro_window.points != 0
          @command_window.active = false
          make_sure_window
        else
          i = (@actor.index+$game_party.actors.size-1) % $game_party.actors.size
          @actor = @status_window.actor = @distro_window.actor = $game_party.actors[i]
          [@status_window, @distro_window].each {|win| win.refresh}
          @distro_window.index = 0
        end
      when 3
        if @distro_window.points != 0
          @command_window.active = false
          make_sure_window
        else
          $scene = @scene.new
        end
      end
    end
  end
 
  def update_sure
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @sure_window.dispose
      @sure_window, @command_window.active = nil, true
    elsif Input.trigger?(Input::C)
      $game_system.se_play($data_system.decision_se)
      case @command_window.index
      when 1
        if @sure_window.index > 0
          @distro_window.set_new_attributes if @sure_window.index == 1
          i = (@actor.index+1) % $game_party.actors.size
          @actor = @status_window.actor = @distro_window.actor = $game_party.actors[i]
          [@status_window, @distro_window].each {|win| win.refresh}
        end
        @sure_window.dispose
        @sure_window, @command_window.active = nil, true
      when 2
        if @sure_window.index > 0
          @distro_window.set_new_attributes if @sure_window.index == 1
          i = (@actor.index+$game_party.actors.size-1) % $game_party.actors.size
          @actor = @status_window.actor = @distro_window.actor = $game_party.actors[i]
          [@status_window, @distro_window].each {|win| win.refresh}
        end
        @sure_window.dispose
        @sure_window, @command_window.active = nil, true
      when 3
        if @sure_window.index > 0
          @distro_window.set_new_attributes if @sure_window.index == 1
          $scene = @scene.new
        end
        @sure_window.dispose
        @sure_window, @command_window.active = nil, true
      end
    end
  end
 
end
 
#==============================================================================
# Scene_Battle
#==============================================================================
 
class Scene_Battle
 
  alias main_sds_later main
  def main
    main_sds_later
    if BlizzCFG::AUTOMATIC_CALL &&
        $game_party.actors.any? {|actor| actor.points > 0}
      $scene = Scene_Points.new
    end
  end
 
end
 
#==============================================================================
# Scene_Map
#==============================================================================
 
class Scene_Map
 
  alias main_sds_later main
  def main
    main_sds_later
    @notify.dispose if @notify != nil
  end
 
  alias upd_sds_later update
  def update
    check_icon if BlizzCFG::DISPLAY_ICON
    upd_sds_later
    if BlizzCFG::AUTOMATIC_MAP_CALL &&
        $game_party.actors.any? {|actor| actor.points > 0}
      $scene = Scene_Points.new
    end
  end
 
  def check_icon
    if $game_party.actors.any? {|actor| actor.points > 0}
      if @notify == nil
        @notify = RPG::Sprite.new
        if BlizzCFG::OWN_ICON
          @notify.bitmap = RPG::Cache.icon('point_notify')
        else
          @notify.bitmap = Bitmap.new(24, 24)
          @notify.bitmap.fill_rect(0, 0, 24, 24, Color.new(255, 255, 255))
          @notify.bitmap.fill_rect(22, 1, 2, 23, Color.new(0, 0, 0))
          @notify.bitmap.fill_rect(1, 22, 23, 2, Color.new(0, 0, 0))
          @notify.bitmap.set_pixel(23, 0, Color.new(0, 0, 0))
          @notify.bitmap.set_pixel(0, 23, Color.new(0, 0, 0))
          @notify.bitmap.fill_rect(2, 2, 20, 20, Color.new(0, 0, 224))
          @notify.bitmap.fill_rect(4, 10, 16, 4, Color.new(255, 255, 255))
          @notify.bitmap.fill_rect(10, 4, 4, 16, Color.new(255, 255, 255))
          @notify.opacity = BlizzCFG::ICON_DATA[2]
        end
        @notify.x, @notify.y = BlizzCFG::ICON_DATA[0, 2]
        @notify.z = 5000
        @notify.blink_on
      end
      @notify.update
    elsif @notify != nil
      @notify.dispose
      @notify = nil
    end
  end
 
end 

 

 


Bugs e Conflitti Noti

99% compatibile con SDK v1.x. 80% compatibile con SDK 2.x.
Danneggerà i vecchi salvataggi.
Può causare problemi con sistemi personalizzati di level-up.

Edited by Apo
applicato tag code

Partecipante al Rpg2s.net Game Contest 2008/2009
http://www.rpg2s.net/contest/GameContest0809/gc0809-bannerino.jpg
Gioco in Sviluppo: Oromis' Tale

Premi Rpg2s.net Game Contest 2008/2009:
http://www.rpg2s.net/gif/GC_programmazione2.gif Miglior Programmazione XP: 2°
http://www.rpg2s.net/gif/GC_premio3.gif Longevità: 3°

Hiken... Tsubame Gaeshi!

Link to comment
Share on other sites

Bello script, Amos!

Traduzione ben fatta, complimenti ^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

Funziona anche senza, quella è la compatibilità, le SDK non sono necessarie ^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

  • 3 weeks later...
Il link non mi va :/

Iscriviti sul mio canale youtube -

https://www.youtube.com/channel/UCYOxXExvlXiOFfYD1fTFpww?view_as=subscriber

Seguimi su Instagram -

https://www.instagram.com/ancestralguitarist/

---------------------------------------------------------------------------------------------------------------------------------------
Contest vinti
---------------------------------------------------------------------------------------------------------------------------------------

FACE CONTEST # 3
BANNER CONTEST #69

Link to comment
Share on other sites

Il link non mi va :/

A me va, eccome. o__o

Partecipante al Rpg2s.net Game Contest 2008/2009
http://www.rpg2s.net/contest/GameContest0809/gc0809-bannerino.jpg
Gioco in Sviluppo: Oromis' Tale

Premi Rpg2s.net Game Contest 2008/2009:
http://www.rpg2s.net/gif/GC_programmazione2.gif Miglior Programmazione XP: 2°
http://www.rpg2s.net/gif/GC_premio3.gif Longevità: 3°

Hiken... Tsubame Gaeshi!

Link to comment
Share on other sites

  • 1 month later...

Bellissimo script....avrei bisogno di un suggerimento per renderlo ancora più perfetto per il mio gioco XD.

Come si fa a fare che tutto questo sistema funzioni solo per il primo membro del party?

Ossia, vorrei che non fosse possibile aumentare le statistiche degli altri membri

Dopo un test dei nostri esperti (Alato, Blake e havana24) abbiamo scoperto che ad interesse risponde interesse: cioè se voi dimostrate di essere interessati a ciò che creano gli altri, questi saranno stimolati a continuare a creare! E' un concetto semplice ma estremamente sottovalutato, basta vedere quanti topic di bei giochi sono caduti nel dimenticatoio e sono stati cagati solo da poche persone (prendiamo per esempio il fantastico gioco di Vech che vi invito a vedere nella sezione RM2k).Perciò quello che dobbiamo fare è: leggere, leggere, leggere, postare, postare, postare! E questo non significa postare a caso, ma leggere per bene il progetto di qualcuno, le domande poste, le creazioni grafiche e musicali, e fare dei post in cui si propongano miglioramenti, si critichino le brutture, si esaltino le bellezze, si aiutino gli oppressi etc etcBASTA AL MAKING ITALIANO CHE VA A ROTOLI! DIAMOCI UNA SVEGLIATA!!Per dimostrarvi ciò che sto esponendo vi riporto che la volta in cui abbiamo provato (Alato, Blake e havana24) a fare una cosa di questo genere, c'è costata un pomeriggio ma il giorno dopo abbiamo ottenuto il numero massimo di utenti online mai raggiunto!!! Ma soprattutto ciò significa che l'interesse riguardo al making era stato, almeno momentaneamente, risvegliato!!Voi pensate che eravamo solo in 3 a cercare tutti i topic e ravvivarli (con sincerità e senza i soliti falsi "Oh che bello.", ma anche con critiche per lavori incompleti o assurdi) e abbiamo ottenuto quel grande risultato: se lo facessimo tutti non sarebbe una cosa potentissima?!?BASTA ALLE SOLITE BANALI DISCUSSIONI SULLA DECADENZA DEI GIOCHI!! FACCIAMOLI STI GIOCHI!!!Chi è contrario a questa cosa, può pure continuare così ma è una persona che col making non ha nulla a che fare, ma chi crede nel making inizi ora, immediatamente a seguire questa linea di pensiero!Ma chi è d'accordo, chi davvero ci tiene al making, incolli questo Manifesto nella propria firma!! Mettete anche voi questa firma!!
Link to comment
Share on other sites

Prova così alla riga 433 elimina prossimo e precedente poi vai un pò più giù dove ci sono i when ed elimina when1 e when2

http://img256.imageshack.us/img256/7639/ihateyou.gif

Un uomo senza religione è come un pesce senza bicicletta.

http://img18.imageshack.us/img18/3668/decasoft1.png

http://rpg2s.net/gif/SCContest1Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gif

Link to comment
Share on other sites

  • 2 years later...

bellissimo sto script. Però ti chiedo un favore.

Siccome io utilizzo il BS Enhanced ver. 5.0 di Minkoff quando lo script si avvia mi mostra in alto a destra il character con tutti i suoi 16 frames. Si può modificare lo script in modo da nascondere il chara o da far vedere solo un frame? grazie in anticipo ;)

Link to comment
Share on other sites

Prova ad incollare questo snippet sotto lo script:

class Window_Base < Window
# Posizione del centro dell'immagine del Battler
BT_OX = 80
BT_OY = 80
# Usa l'immagine del Battler ? Mettere   false   per non mostrare niente dove andrebbe il battler . . .
BT_SHOW = true

  def draw_actor_battler(actor, x, y)
    bitmap = RPG::Cache.battler(actor.battler_name, actor.battler_hue)
    cw, ch = (bitmap.width / 4), (bitmap.height / 10)
    src_rect = Rect.new(0, 0, cw, ch)
    self.contents.blt(x + BT_OX - cw/2, y + BT_OY - ch/2, bitmap, src_rect) if BT_SHOW
  end
end

 

 

Non ho ben presente le differenze tra l'uso del battler in questo script rispetto alla battaglia, quindi probabilmente dovrai aggiustare i due valori di centratura del Battler (BT_OX e BT_OY) . . .

Forse è troppo piccola come immagine, preferisci (è possibile, con ulteriore modifica) usare una picture, magari, invece del battler ?

Edited by Apo
applicato tag code

 


SCRIPT RGSS (RPG Maker XP) VINTAGE LIBRARY [2018+]


Breaking (in ogni senso) News: "Treno deraglia per via del seno di Sakurai Aoi . . ." - Info nello spoiler !!

 


http://afantasymachine.altervista.org/_altervista_ht/NOOOOOOOOOilMIOtreninooooo_500.gif


Non riesco a smettere di essere affascinato da immagini come questa . . .

http://anime.vl-vostok.ru/art/photos2011/17/78049800/wall_VladAnime_WWA_1885-1680x1050.jpg


Alcuni wallpapers che faccio ruotare sul mio vecchio PC . . .


http://afantasymachine.altervista.org/_altervista_ht/gits_window.jpg

http://afantasymachine.altervista.org/_altervista_ht/madoka_group01.jpg
http://afantasymachine.altervista.org/_altervista_ht/arisu_picipici_01.jpg
http://afantasymachine.altervista.org/_altervista_ht/phantom_wp01_einzwei.jpg


La parte più spassosa della mia vita è quando gli altri cercano di spiegarmi i miei pensieri . . .


BBCode Testing


Typeface & Size



Link to comment
Share on other sites

class Window_Base < Window
  def draw_actor_battler(actor, x, y)
    bitmap = RPG::Cache.picture(actor.battler_name)
    cw, ch = bitmap.width, bitmap.height
    src_rect = Rect.new(0, 0, cw, ch)
    self.contents.blt(x - cw/2, y - ch/2, bitmap, src_rect)
  end
end

 

 

La picture deve avere lo stesso nome dell'immagine usata come battler

Edited by Apo
applicato tag code

 


SCRIPT RGSS (RPG Maker XP) VINTAGE LIBRARY [2018+]


Breaking (in ogni senso) News: "Treno deraglia per via del seno di Sakurai Aoi . . ." - Info nello spoiler !!

 


http://afantasymachine.altervista.org/_altervista_ht/NOOOOOOOOOilMIOtreninooooo_500.gif


Non riesco a smettere di essere affascinato da immagini come questa . . .

http://anime.vl-vostok.ru/art/photos2011/17/78049800/wall_VladAnime_WWA_1885-1680x1050.jpg


Alcuni wallpapers che faccio ruotare sul mio vecchio PC . . .


http://afantasymachine.altervista.org/_altervista_ht/gits_window.jpg

http://afantasymachine.altervista.org/_altervista_ht/madoka_group01.jpg
http://afantasymachine.altervista.org/_altervista_ht/arisu_picipici_01.jpg
http://afantasymachine.altervista.org/_altervista_ht/phantom_wp01_einzwei.jpg


La parte più spassosa della mia vita è quando gli altri cercano di spiegarmi i miei pensieri . . .


BBCode Testing


Typeface & Size



Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...