x

Uso de cookies

Utilizamos cookies propias y de terceros para mejorar nuestros servicios y mostrarle publicidad relacionada con sus preferencias mediante el análisis de sus hábitos de navegación.
Si continúa navegando, consideramos que acepta su uso. Puede obtener más información, o bien conocer cómo cambiar la configuración, en nuestra Política de cookies

Buscar ...
Portal · Foros · Noticias · Páginas · Calendario · Nuevos mensajes · Buscar · Imágenes · Avatares · Usuarios · Fisgona
Scripts RPG Maker XP "Dudas, problemas y pedidos"
MundoDeluxe · Foros · Zona RPG Maker XP · Scripts RPG Maker XP "Dudas, problemas y pedidos"
Pedido: quitar "Save" en el menú!
Haz clic para ver el perfil del usuariobathory123
Usuario VIP
Usuario VIP
Mensajes: 207
·
#1 ·

Quiero quitar la categoría "save" en el menú... para que sólo se pueda guardar con un npc, thks =D ojalá alguien sepa como.

<3








Haz clic para ver el perfil del usuariokyonides-arkanthos
Super Moderador
Super Moderador
Mensajes: 4.683
·
#2 ·

Para un scripter es tan simple como dejar como comentario todo lo que diga Guardar o Save en el script de Scene_Menu. Además al inicio hay una lista, ahí puedes hacer una de dos cosas, o se reemplaza por otra opción o se borra. Claro está que eso implica que hay que hacer algunos cambiecillos más adelante en ese mismo script que dudo que la mayoría pueda hacerlos, un scripter tendría que encargarse del asunto.

Primero te recomiendo que busques entre los scripts publicados a ver si ya existe alguno, pues este tipo de pedido y otros similares no eran tan raros tiempo atrás.

Si pasado un tiempo prudencial no puedes encontrarlo, ahí veré si me da tiempo de modificarlo para ti, pero me daría cosa solo modificarlo para que solo haga algo menos que el script original.



MIS SCRIPTS - NORMAS MUNDODELUXE

No puedo deprimirme, el descaro no me lo permite.

Then nivo Kizne shes plageren day ses spegai derenos... os ves meno Noyno kel enael...
[Soy un kitsune y deseo vivir y jugar eternamente... o por muchos años como mínimo...]

kitsune solitario, no concede entrevistas ni participa en proyectos, dejó proyectos por falta de inspiración y mera pereza
_______________________________________
Aviso publicitario gratuito. No nos molesta incomodar a nuestros potenciales clientes las 24 horas del día. De todos modos el disgusto es suyo.
Haz clic para ver el perfil del usuariobathory123
Usuario VIP
Usuario VIP
Mensajes: 207
·
#3 ·

No pude encontrar ningún Script Para Xp sobre el tema =( Lo máximo es para Ace o VX, y no usos esos. Intenté experimentar con un juego nuevo tratar de quitarle la opcion en scene_menu, y lo unico que hice fue estragos hahaha.








Haz clic para ver el perfil del usuariokyonides-arkanthos
Super Moderador
Super Moderador
Mensajes: 4.683
·
#4 ·

Entiendo, pero entonces quedaría un espacio vacío en el menú. ¿Qué iría ahí?



MIS SCRIPTS - NORMAS MUNDODELUXE

No puedo deprimirme, el descaro no me lo permite.

Then nivo Kizne shes plageren day ses spegai derenos... os ves meno Noyno kel enael...
[Soy un kitsune y deseo vivir y jugar eternamente... o por muchos años como mínimo...]

kitsune solitario, no concede entrevistas ni participa en proyectos, dejó proyectos por falta de inspiración y mera pereza
_______________________________________
Aviso publicitario gratuito. No nos molesta incomodar a nuestros potenciales clientes las 24 horas del día. De todos modos el disgusto es suyo.
Haz clic para ver el perfil del usuariobathory123
Usuario VIP
Usuario VIP
Mensajes: 207
·
#5 ·

Serpia genial una opcion que diga "Opciones".

Que al meterte, salga una ventana que tenga: Cambiar skin, Cambiar a pantalla completa, activar Huds, etc. Aunq seria genial una opcion que sea "señalar entradas": Se me ocurrio una idea y es dejar eventos en blanco con una pagina adicional que se activa con un interruptor, el cual hace q cuando se active muestre flechitas en las puertas o entradas para señalarle al jugador que eso de ahí se puede entrar. Obviamente, el jugador puede activar o desactivar esa opción desde el menú.








Haz clic para ver el perfil del usuariokyonides-arkanthos
Super Moderador
Super Moderador
Mensajes: 4.683
·
#6 ·

De momento esto lo que llevo hecho:

Código:
# * Scene Menu Modificado
module CONFIG
  # Opciones Principales
  MAIN_OPTIONS = [$data_system.words.item]
  MAIN_OPTIONS << $data_system.words.skill
  MAIN_OPTIONS << $data_system.words.equip
  MAIN_OPTIONS << "Estado"
  MAIN_OPTIONS << "Opciones"
  MAIN_OPTIONS << "Terminar"
  # Opciones Secundarias
  NEW_OPTIONS = ["Cambiar Skin"]
  NEW_OPTIONS << "Activar HUDs"
  NEW_OPTIONS << "Flechas"
end

class Scene_Menu
  def main
    # Make command window
    @command_window = Window_Command.new(160, CONFIG::MAIN_OPTIONS)
    @command_window.index = @menu_index
    # If number of party members is 0
    if $game_party.actors.size == 0
      # Disable items, skills, equipment, and status
      @command_window.disable_item(0)
      @command_window.disable_item(1)
      @command_window.disable_item(2)
      @command_window.disable_item(3)
    end
    # If save is forbidden
    if $game_system.save_disabled
      # Disable save
      @command_window.disable_item(4)
    end
    # Make play time window
    @playtime_window = Window_PlayTime.new
    @playtime_window.x = 0
    @playtime_window.y = 224
    # Make steps window
    @steps_window = Window_Steps.new
    @steps_window.x = 0
    @steps_window.y = 320
    # Make gold window
    @gold_window = Window_Gold.new
    @gold_window.x = 0
    @gold_window.y = 416
    # Make status window
    @status_window = Window_MenuStatus.new
    @status_window.x = 160
    @status_window.y = 0
    @options_window = Window_Command.new(160, CONFIG::NEW_OPTIONS)
    @options_window.index = 0
    @options_window.y = 160
    # Execute transition
    Graphics.transition
    # Main loop
    loop do
      # Update game screen
      Graphics.update
      # Update input information
      Input.update
      # Frame update
      update
      # Abort loop if screen is changed
      break if $scene != self
    end
    # Prepare for transition
    Graphics.freeze
    # Dispose of windows
    @command_window.dispose
    @playtime_window.dispose
    @steps_window.dispose
    @gold_window.dispose
    @status_window.dispose
    @options_window.dispose
  end

  def update
    # Update windows
    @command_window.update
    @playtime_window.update
    @steps_window.update
    @gold_window.update
    @status_window.update
    @options_window.update
    # If command window is active: call update_command
    if @command_window.active
      update_command
      return
    end
    # If status window is active: call update_status
    if @status_window.active
      update_status
      return
    end
    # If settings window is active: call update_options
    if @options_window.active
      update_options
      return
    end
  end

  def update_command
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Switch to map screen
      $scene = Scene_Map.new
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      # If command other than save or end game, and party members = 0
      if $game_party.actors.size == 0 and @command_window.index < 4
        # Play buzzer SE
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      # Branch by command window cursor position
      case @command_window.index
      when 0  # item
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to item screen
        $scene = Scene_Item.new
      when 1  # skill
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @status_window.active = true
        @status_window.index = 0
      when 2  # equipment
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @status_window.active = true
        @status_window.index = 0
      when 3  # status
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @status_window.active = true
        @status_window.index = 0
      when 4  # Options
        $game_system.se_play($data_system.decision_se)
        # Switch to next settings menu
        @command_window.active = false
        @options_window.active = true
      when 5  # end game
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to end game screen
        $scene = Scene_End.new
      end
      return
    end
  end

  def update_options
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Make command window active
      @command_window.active = true
      @options_window.active = false
      @options_window.index = -1
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      # Branch by command window cursor position
      case @command_window.index
      when 1  # ???
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        
      when 2  # ???
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        
      when 3  # ???
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        
      end
      return
    end
  end
end

Las opciones se modifican donde dice NEW_OPTIONS siguiendo los ejemplos que ya están ahí.

De momento las opciones extras son:

  • Cambiar Skin
  • Activar HUDs
  • Flechas

Como no puedo adivinar qué es lo que utilizará para hacer realidad todo eso, no puedo continuar el desarrollo del script. Tampoco sé si le agregará otras opciones viables.



MIS SCRIPTS - NORMAS MUNDODELUXE

No puedo deprimirme, el descaro no me lo permite.

Then nivo Kizne shes plageren day ses spegai derenos... os ves meno Noyno kel enael...
[Soy un kitsune y deseo vivir y jugar eternamente... o por muchos años como mínimo...]

kitsune solitario, no concede entrevistas ni participa en proyectos, dejó proyectos por falta de inspiración y mera pereza
_______________________________________
Aviso publicitario gratuito. No nos molesta incomodar a nuestros potenciales clientes las 24 horas del día. De todos modos el disgusto es suyo.
Haz clic para ver el perfil del usuariokyonides-arkanthos
Super Moderador
Super Moderador
Mensajes: 4.683
·
#7 ·

Bueno aquí traigo una nueva versión del script, ya lo puede probar. Como es de suponerse, no podrá acceder a ningún nuevo menú por el simple hecho de que no me ha dicho cuáles son esos scripts que le permitirán hacer eso o cómo quiere que se vean.

Código:
# * Scene Menu Modificado
module CONFIG
  system_data = load_data("Data/System.rxdata")
  # Opciones Principales
  MAIN_OPTIONS = [system_data.words.item]
  MAIN_OPTIONS << system_data.words.skill
  MAIN_OPTIONS << system_data.words.equip
  MAIN_OPTIONS << "Estado"
  MAIN_OPTIONS << "Opciones"
  MAIN_OPTIONS << "Terminar"
  # Opciones Secundarias
  NEW_OPTIONS = ["Cambiar Skin"]
  NEW_OPTIONS << "Activar HUDs"
  NEW_OPTIONS << "Flechas"
  system_data = nil
end

class Scene_Menu
  def main
    # Make command window
    @command_window = Window_Command.new(160, CONFIG::MAIN_OPTIONS)
    @command_window.index = @menu_index
    # If number of party members is 0
    if $game_party.actors.size == 0
      # Disable items, skills, equipment, and status
      @command_window.disable_item(0)
      @command_window.disable_item(1)
      @command_window.disable_item(2)
      @command_window.disable_item(3)
    end
    # If save is forbidden
    if $game_system.save_disabled
      # Disable save
      @command_window.disable_item(4)
    end
    # Make play time window
    @playtime_window = Window_PlayTime.new
    @playtime_window.x = 0
    @playtime_window.y = 224
    # Make steps window
    @steps_window = Window_Steps.new
    @steps_window.x = 0
    @steps_window.y = 320
    # Make gold window
    @gold_window = Window_Gold.new
    @gold_window.x = 0
    @gold_window.y = 416
    # Make status window
    @status_window = Window_MenuStatus.new
    @status_window.x = 160
    @status_window.y = 0
    @options_window = Window_Command.new(160, CONFIG::NEW_OPTIONS)
    @options_window.visible = false
    @options_window.index = 0
    @options_window.x = 160
    @options_window.y = 128
    @options_window.z = @status_window.z + 50
    # Execute transition
    Graphics.transition
    # Main loop
    loop do
      # Update game screen
      Graphics.update
      # Update input information
      Input.update
      # Frame update
      update
      # Abort loop if screen is changed
      break if $scene != self
    end
    # Prepare for transition
    Graphics.freeze
    # Dispose of windows
    @command_window.dispose
    @playtime_window.dispose
    @steps_window.dispose
    @gold_window.dispose
    @status_window.dispose
    @options_window.dispose
  end

  def update
    # Update windows
    @command_window.update
    @playtime_window.update
    @steps_window.update
    @gold_window.update
    @status_window.update
    @options_window.update
    # If command window is active: call update_command
    if @command_window.active
      update_command
      return
    end
    # If status window is active: call update_status
    if @status_window.active
      update_status
      return
    end
    # If settings window is active: call update_options
    if @options_window.active
      update_options
      return
    end
  end

  def update_command
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Switch to map screen
      $scene = Scene_Map.new
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      # If command other than save or end game, and party members = 0
      if $game_party.actors.size == 0 and @command_window.index < 4
        # Play buzzer SE
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      # Branch by command window cursor position
      case @command_window.index
      when 0  # item
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to item screen
        $scene = Scene_Item.new
      when 1  # skill
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @status_window.active = true
        @status_window.index = 0
      when 2  # equipment
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @status_window.active = true
        @status_window.index = 0
      when 3  # status
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @status_window.active = true
        @status_window.index = 0
      when 4  # Options
        $game_system.se_play($data_system.decision_se)
        # Switch to next settings menu
        @command_window.active = false
        @options_window.active = true
        @options_window.visible = true
        @options_window.index = 0
      when 5  # end game
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to end game screen
        $scene = Scene_End.new
      end
      return
    end
  end

  def update_options
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Make command window active
      @command_window.active = true
      @options_window.visible = false
      @options_window.active = false
      @options_window.index = -1
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      # Branch by command window cursor position
      case @command_window.index
      when 1  # ???
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        
      when 2  # ???
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        
      when 3  # ???
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        
      end
      return
    end
  end
end


MIS SCRIPTS - NORMAS MUNDODELUXE

No puedo deprimirme, el descaro no me lo permite.

Then nivo Kizne shes plageren day ses spegai derenos... os ves meno Noyno kel enael...
[Soy un kitsune y deseo vivir y jugar eternamente... o por muchos años como mínimo...]

kitsune solitario, no concede entrevistas ni participa en proyectos, dejó proyectos por falta de inspiración y mera pereza
_______________________________________
Aviso publicitario gratuito. No nos molesta incomodar a nuestros potenciales clientes las 24 horas del día. De todos modos el disgusto es suyo.
Haz clic para ver el perfil del usuariobathory123
Usuario VIP
Usuario VIP
Mensajes: 207
·
#8 ·

Omg genial!

Pero tengo 2 script. Uno; el de número de victorias, el cual el script interfiere y me pone número de pasos. El otro; Kyo Shop Gems, el cual me muestra oro y "gemas" en mi caso honor. Los dos, se dejan de ver en el menú cuando pongo el script, obviamente no es que me de error. Pienso que sería muy dificil hacerlo acoplar.

Kyo Shop Gems:

=begin
KyoShop Gems XP
by Kyonides-Arkanthos alias Kyonides, Shadowball
v 1.0.1 - 02.17.2010 - New Features and Bug Fix
v 1.0.0 - 02.16.2010

Num de victorias por Shadowball.

Código:
#==============================
#  Ventana_Estadísiticas v 1.0
#  por shadowball
#  08.02.2008
#==============================
class Ventana_Estadísticas < Window_Base
  def initialize
    super(0, 320, 160, 96)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.z = 104
    refresh
  end  def refresh
    self.contents.clear
    self.contents.font.color = system_color
    self.contents.draw_text(0, -8, 120, 32, 'Victorias')
    self.contents.font.color = normal_color
    self.contents.draw_text(4, -8, 120, 32, $shb_victorias.to_s, 2)
    self.contents.font.color = system_color
    self.contents.draw_text(0, 14, 120, 32, 'Derrotas')
    self.contents.font.color = normal_color
    self.contents.draw_text(4, 14, 120, 32, $shb_derrotas.to_s, 2)
    self.contents.font.color = system_color
    self.contents.draw_text(0, 36, 120, 32, 'Escapes')
    self.contents.font.color = normal_color
    self.contents.draw_text(113, 36, 120, 32, $shb_escapes.to_s)
  end
end#=============================
#  *  Scene_title Add-on
#=============================
class Scene_Title
  alias shb_cng command_new_game
  def command_new_game
    shb_cng
    $shb_victorias = 0
    $shb_escapes = 0
    $shb_derrotas = 0
  end
end#=============================
#  *  Scene_Menu Add-on
#=============================
class Scene_Menu
  alias shb_sm_main main
  def main
    @estadisticas = Ventana_Estadísticas.new
    @estadisticas
    shb_sm_main
    @estadisticas.dispose
  end
 
  alias shb_sm_up update
  def update
    shb_sm_up
    # Si presionas Repág alias PageUp o Q, la ventana estadísticas desaparece
    if Input.trigger?(Input::L)
      @estadisticas.visible = true if @estadisticas.visible == false
      @estadisticas.visible = false if @estadisticas.visible == true
    end
  end
end#================================
#    Scene_Save Add-on
#================================
class Scene_Save
  alias shb_write_save_data write_save_data
  def write_save_data(file)
    shb_write_save_data(file)
    # Esto sirve para que guarde las variables globales en el archivo
    Marshal.dump($shb_victorias, file)
    Marshal.dump($shb_derrotas, file)
    Marshal.dump($shb_escapes, file)
  end
end#================================
#    Scene_Load Add-on
#================================
class Scene_Load
  alias shb_read_save_data read_save_data
  def read_save_data(file)
    shb_read_save_data(file)
    # Esto sirve para que cargue las variables globales del archivo
    $shb_victorias = Marshal.load(file)
    $shb_derrotas  = Marshal.load(file)
    $shb_escapess  = Marshal.load(file)
  end
end#=============================
#  *  Scene_Battle Mini Add-on
#=============================
class Scene_Battle
  def battle_end(result)
    # Clear in battle flag
    $game_temp.in_battle = false
    # Clear entire party actions flag
    $game_party.clear_actions
    # Remove battle states
    for actor in $game_party.actors
      actor.remove_states_battle
    end
    # Clear enemies
    $game_troop.enemies.clear
    # Call battle callback
    if $game_temp.battle_proc != nil
      $game_temp.battle_proc.call(result)
      $game_temp.battle_proc = nil
    end
    case result
    when 0 # victoria (confirmado)
      $shb_victorias += 1
    when 1 # escape # según Enterbrain derrota...
      $shb_escapes += 1
    when 2 # derrota # según Enterbrain escape...
      $shb_derrotas += 1
    end
    # Switch to map screen
    $scene = Scene_Map.new
  end
end

att: Fernando.








Haz clic para ver el perfil del usuariokyonides-arkanthos
Super Moderador
Super Moderador
Mensajes: 4.683
·
#9 · · Editado por kyonides-arkanthos

Primero me gustaría saber cuál es el sistema de batallas que utilizará. Si no es el que viene por defecto, mi script no le será de mucha ayuda. Tendría que crear una versión para ese otro sistema de batallas.

Si es el que viene por defecto, entonces con descargar esta nueva versión le servirá.

DESCARGA DE DEMO

El enlace anterior ya caducó.



MIS SCRIPTS - NORMAS MUNDODELUXE

No puedo deprimirme, el descaro no me lo permite.

Then nivo Kizne shes plageren day ses spegai derenos... os ves meno Noyno kel enael...
[Soy un kitsune y deseo vivir y jugar eternamente... o por muchos años como mínimo...]

kitsune solitario, no concede entrevistas ni participa en proyectos, dejó proyectos por falta de inspiración y mera pereza
_______________________________________
Aviso publicitario gratuito. No nos molesta incomodar a nuestros potenciales clientes las 24 horas del día. De todos modos el disgusto es suyo.
Haz clic para ver el perfil del usuariobathory123
Usuario VIP
Usuario VIP
Mensajes: 207
·
#10 ·

Peor en si creo q interfiere es con los dos script q te mencione arriba, el kyo shop y el de victorias, derrotas y escapes.

Empero, mi sistema de batalla es el siguiente:

â– Action Battle System
#-------------------------------------------------------------------------- ----
#  By: Near Fantastica
# Date: 07/2/05
# Version 2

Obviamente tambien mi juego tiene el sistema de batalla de turnos predeterminado para los jefes finales.








Haz clic para ver el perfil del usuariokyonides-arkanthos
Super Moderador
Super Moderador
Mensajes: 4.683
·
#11 ·

Bueno me fijé en el asunto y para resolverlo lanzo una nueva versión del demo de KyoShopGems XP.

DESCARGA EL DEMO



MIS SCRIPTS - NORMAS MUNDODELUXE

No puedo deprimirme, el descaro no me lo permite.

Then nivo Kizne shes plageren day ses spegai derenos... os ves meno Noyno kel enael...
[Soy un kitsune y deseo vivir y jugar eternamente... o por muchos años como mínimo...]

kitsune solitario, no concede entrevistas ni participa en proyectos, dejó proyectos por falta de inspiración y mera pereza
_______________________________________
Aviso publicitario gratuito. No nos molesta incomodar a nuestros potenciales clientes las 24 horas del día. De todos modos el disgusto es suyo.
Haz clic para ver el perfil del usuariobathory123
Usuario VIP
Usuario VIP
Mensajes: 207
·
#12 ·

Uff... aunq  muero por ese que estas scripteando de las gemas.

<3








Haz clic para ver el perfil del usuariokyonides-arkanthos
Super Moderador
Super Moderador
Mensajes: 4.683
·
#13 · · Editado por kyonides-arkanthos

Nueva Versión del Script de Menú + Ventana Estadísticas Incluido En UNO SOLO

Código:
# * Ventana Estadísticas 1.2.1 + Scene Menu Modificado
#   Scripter : Kyonides-Arkanthos

#   Los Windowskins deben tener nombres como '001-Blue' o '010-Vanguard'. En el
#   juego aparecerán en ese mismo orden.

module KyoBattleStats
  # Mostrar Victorias
  SHOW_VICTORIES = true
  # Mostrar Derrotas
  SHOW_DEFEATS   = true
  # Mostrar Escapes o Huidas
  SHOW_ESCAPES   = true
  # Leyendas para Batallas, Victorias, Derrotas, Escapes
  LABELS = ['Batallas', 'Victorias', 'Derrotas', 'Escapes']
end

module Config
  system_data = load_data("Data/System.rxdata")
  # Opciones Principales
  MAIN_OPTIONS = [system_data.words.item] # Objetos en la BD
  MAIN_OPTIONS << system_data.words.skill # Habilidad en la BD
  MAIN_OPTIONS << system_data.words.equip # Equipamiento en la BD
  MAIN_OPTIONS << "Estado"
  MAIN_OPTIONS << "Opciones"
  MAIN_OPTIONS << "Terminar"
  # Opciones Secundarias
  NEW_OPTIONS = ["Cambiar Skin"]
  NEW_OPTIONS << "Activar HUDs"
  NEW_OPTIONS << "Flechas"
  NEW_OPTIONS << "Ver Pasos"
  NEW_OPTIONS << "Ver Tiempo"
  # Leyenda de Tiempo de Juego
  PLAYTIME = "Tiempo"
  # Leyenda de Pasos Dados
  STEPS = "Pasos"
  # Ver Ventana de Dinero : SI = true, NO = false
  GOLD_WINDOW_VISIBLE = false
  # Número de Líneas Visibles del Menú de Windowskins
  SKIN_MENU_MAX = 11
  SKINDIR = 'Graphics/Windowskins/'
  windowskins = Dir[SKINDIR+'*']
  WINDOWSKINS = windowskins.map{|s| s.gsub(/#{SKINDIR}/,'') }
  WINDOWSKIN_NAMES = WINDOWSKINS.map{|s| s.gsub(/\d+\-|\.\w+/,'') }
  system_data = windowskins = nil
end

class Sprite
  def x_y(x, y); self.x, self.y = x, y; end
end

class Sprite_KyoGold < Sprite
  def initialize
    super
    self.bitmap = Bitmap.new(160, 60)
    self.x, self.y, self.z = 0, 0, 1#Posicion_Moneda
    self.visible = true
    @gold_word = $data_system.words.gold
    update
  end
 
  def dispose
    self.bitmap.dispose if !self.bitmap.nil?
    super
  end
 
  def update
    super
    if $game_party.gold != @gold or $game_party.gems != @gems
      self.bitmap.clear # Clear window contents
      gold_bitmap = RPG::Cache.picture('goldspritesmall') # Sprite Back
      gold_icon = RPG::Cache.icon('032-Item01')
      gems_icon = RPG::Cache.icon('035-Item04')
      rect = Rect.new(0, 0, 160, 60)
      self.bitmap.blt(0, 0, gold_bitmap, rect)
      self.bitmap.blt(132, 4, gold_icon, rect)
      self.bitmap.blt(132, 32, gems_icon, rect)
      self.bitmap.draw_text(0, 0, 124, 32, $game_party.gold.to_s, 2)
      self.bitmap.draw_text(0, 28, 124, 32, $game_party.gems.to_s, 2)
      self.bitmap.font.color.set(120, 100, 120)
      #self.bitmap.draw_text(0, 0, 128, 32, @gold_word, 2)
      #self.bitmap.draw_text(0, 28, 128, 32, KyoMoney::GEMS, 2)
      @gold, @gems = $game_party.gold, $game_party.gems
    end
  end
end

class Window_PlayTime < Window_Base
  def initialize
    super(0, 0, 160, 80)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end

  def refresh
    self.contents.clear
    self.contents.font.color = system_color
    self.contents.draw_text(4, -4, 120, 28, Config::PLAYTIME)
    @total_sec = Graphics.frame_count / Graphics.frame_rate
    hour = @total_sec / 60 / 60
    min = @total_sec / 60 % 60
    sec = @total_sec % 60
    text = sprintf("%02d:%02d:%02d", hour, min, sec)
    self.contents.font.color = normal_color
    self.contents.draw_text(4, 24, 120, 28, text, 2)
  end
end

class Window_Steps < Window_Base
  def initialize
    super(0, 0, 160, 80)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end

  def refresh
    self.contents.clear
    self.contents.font.color = system_color
    self.contents.draw_text(4, -4, 120, 28, Config::STEPS)
    self.contents.font.color = normal_color
    self.contents.draw_text(4, 24, 120, 28, $game_party.steps.to_s, 2)
  end
end

class Window_SkinSelect < Window_Selectable
  def initialize
    new_height = [352, Config::SKIN_MENU_MAX * 32].min
    super(160, 64, 320, new_height)
    @item_max = Config::WINDOWSKIN_NAMES.size
    refresh
    self.index = $game_system.windowskin_index
  end

  def windowskin() Config::WINDOWSKINS[self.index] end

  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    self.contents = Bitmap.new(width - 32, row_max * 32)
    (0...@item_max).each {|i| draw_item(i) }
  end

  def draw_item(index)
    rect = Rect.new(4, 32 * index, self.contents.width - 8, 32)
    self.contents.draw_text(rect, Config::WINDOWSKIN_NAMES[index])
  end
end

class Game_System
  attr_accessor :battle_stats, :battle_stats_visible, :windowskin_index
  alias kyon_battle_stats_gm_sys_init initialize
  def initialize
    kyon_battle_stats_gm_sys_init
    @windowskin_index = 0
    @battle_stats = [0,0,0,0] # Total Batallas, Ganadas, Perdidas, Escapes
    show_victory = KyoBattleStats::SHOW_VICTORIES
    show_defeat = KyoBattleStats::SHOW_DEFEATS
    show_escape = KyoBattleStats::SHOW_ESCAPES
    @battle_stats_visible = [true, show_victory, show_defeat, show_escape]
  end
end

class Ventana_Estadisticas < Window_Base
  def initialize
    @stats = $game_system.battle_stats
    @stats_visible = $game_system.battle_stats_visible
    row_max = @stats_visible.map{|bool| bool == true }.size
    x, y = $game_temp.in_battle ? [240, 0] : [0, 302]
    super(x, y, 160, row_max * 21 + 32)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.z = 104
    self.opacity = $game_temp.in_battle ? 120 : 255
    refresh
  end

  def refresh
    labels = KyoBattleStats::LABELS
    self.contents.clear
    y = -30
    labels.size.times do |n| next unless @stats_visible[n]
      y += 22
      self.contents.font.color = system_color
      self.contents.draw_text(0, y, 120, 32, labels[n])
      self.contents.font.color = normal_color
      self.contents.draw_text(0, y, 120, 32, @stats[n].to_s, 2)
    end
  end
end

class Scene_Menu
  def main
    start
    # Execute transition
    Graphics.transition
    # Main loop
    loop do
      # Update game screen
      Graphics.update
      # Update input information
      Input.update
      # Frame update
      update
      # Abort loop if screen is changed
      break if $scene != self
    end
    # Prepare for transition
    Graphics.freeze
    # Dispose of windows
    @command_window.dispose
    @playtime_window.dispose
    @steps_window.dispose
    @status_window.dispose
    @options_window.dispose
    @windowskins_window.dispose
    @gold_sprite.dispose
    @estadisticas.dispose
  end

  def start
    @initial_skin = $game_system.windowskin_name
    # Make command window
    @command_window = Window_Command.new(160, Config::MAIN_OPTIONS)
    @command_window.index = @menu_index
    # If number of party members is 0
    if $game_party.actors.size == 0
      # Disable items, skills, equipment, and status
      @command_window.disable_item(0)
      @command_window.disable_item(1)
      @command_window.disable_item(2)
      @command_window.disable_item(3)
    end
    # If save is forbidden
    if $game_system.save_disabled
      # Disable save
      @command_window.disable_item(4)
    end
    # Make play time window
    @playtime_window = Window_PlayTime.new
    @playtime_window.x = 0
    @playtime_window.y = 224
    # Make steps window
    @steps_window = Window_Steps.new
    @steps_window.x = 0
    @steps_window.y = 224
    @steps_window.visible = false
    # Make gold window
    @gold_sprite = Sprite_KyoGold.new # Make gold sprite
    @gold_sprite.x_y(0, 418)
    # Make status window
    @status_window = Window_MenuStatus.new
    @status_window.x = 160
    @status_window.y = 0
    @options_window = Window_Command.new(160, Config::NEW_OPTIONS)
    @options_window.visible = false
    @options_window.active = false
    @options_window.index = 0
    @options_window.x = 160
    @options_window.y = 128
    @options_window.z = @status_window.z + 50
    @windowskins_window = Window_SkinSelect.new
    @windowskins_window.z = @options_window.z + 50
    @windowskins_window.visible = false
    @windowskins_window.active = false
    @estadisticas = Ventana_Estadisticas.new
    
  end

  def update
    # Update windows
    @command_window.update
    @playtime_window.update
    @steps_window.update
    @status_window.update
    @options_window.update
    @windowskins_window.update
    @estadisticas.update
    # Si presionas Repag alias PageUp o Q, la ventana estadisticas desaparece
    if Input.trigger?(Input::L)
      @estadisticas.visible = !@estadisticas.visible
      return
    end
    # If command window is active: call update_command
    if @command_window.active
      update_command
      return
    end
    # If status window is active: call update_status
    if @status_window.active
      update_status
      return
    end
    # If settings window is active: call update_options
    if @options_window.active
      update_options
      return
    end
    # If windowskins window is active: call update_windowkin
    if @windowskins_window.active
      update_windowskin
      return
    end
  end

  def update_command
    # If B button was pressed
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      # Switch to map screen
      $scene = Scene_Map.new
      return
    # If C button was pressed
    elsif Input.trigger?(Input::C)
      # If command other than save or end game, and party members = 0
      if $game_party.actors.size == 0 and @command_window.index < 4
        # Play buzzer SE
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      # Branch by command window cursor position
      case @command_window.index
      when 0  # item
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to item screen
        $scene = Scene_Item.new
      when 1  # skill
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @status_window.active = true
        @status_window.index = 0
      when 2  # equipment
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @status_window.active = true
        @status_window.index = 0
      when 3  # status
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @status_window.active = true
        @status_window.index = 0
      when 4  # Options
        $game_system.se_play($data_system.decision_se)
        # Switch to next settings menu
        @command_window.active = false
        @options_window.active = true
        @options_window.visible = true
        @options_window.index = 0
      when 5  # end game
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to end game screen
        $scene = Scene_End.new
      end
      return
    end
  end

  def update_options
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Make command window active
      @command_window.active = true
      @options_window.visible = false
      @options_window.active = false
      @options_window.index = -1
      return
    # If C button was pressed
    elsif Input.trigger?(Input::C)
      # Branch by command window cursor position
      case @options_window.index
      when 0  # ???
        $game_system.se_play($data_system.decision_se)
        @windowskins_window.index = $game_system.windowskin_index
        @windowskins_window.active = true
        @windowskins_window.visible = true
        @options_window.active = false
        @options_window.visible = false
      when 1  # ???
        $game_system.se_play($data_system.decision_se)
        
      when 2  # ???
        $game_system.se_play($data_system.decision_se)
        
      when 3  # Ver Pasos
        $game_system.se_play($data_system.decision_se)
        @playtime_window.visible = false
        @steps_window.visible = true
      when 4  # Ver Tiempo
        $game_system.se_play($data_system.decision_se)
        @steps_window.visible = false
        @playtime_window.visible = true
      end
      return
    end
  end

  def update_windowskin
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @windowskins_window.index = -1
      @windowskins_window.visible = false
      @windowskins_window.active = false
      @options_window.active = true
      @options_window.visible = true
      $game_system.windowskin_name = @initial_skin
      return
    elsif Input.trigger?(Input::C)
      $game_system.se_play($data_system.decision_se)
      @initial_skin = @windowskins_window.windowskin
      $game_system.windowskin_index = @windowskins_window.index
      @windowskins_window.visible = false
      @windowskins_window.active = false
      @options_window.active = true
      @options_window.visible = true
      return
    elsif Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN)
      $game_system.se_play($data_system.cursor_se)
      $game_system.windowskin_name = @windowskins_window.windowskin
    end
  end
end
#=============================
#  *  Scene_Battle Mod
class Scene_Battle
  include KyoBattleStats
  alias kyon_battle_stats_main main
  def main
    $game_temp.in_battle = true
    @battle_stats = Ventana_Estadisticas.new
    @battle_stats.visible = false
    kyon_battle_stats_main
    @battle_stats.dispose
  end

  alias kyon_battle_stats_scn_battle_start_phase5 start_phase5
  def start_phase5
    kyon_battle_stats_scn_battle_start_phase5
      $game_system.battle_stats[0] += 1 # Total de Batallas
      $game_system.battle_stats[1] += 1 # Victoria
      @battle_stats.refresh
    @battle_stats.visible = true
  end

  def battle_end(result)
    $game_temp.in_battle = false
    $game_party.clear_actions
    $game_party.actors.each {|actor| actor.remove_states_battle }
    $game_troop.enemies.clear
    if $game_temp.battle_proc != nil
      $game_temp.battle_proc.call(result)
      $game_temp.battle_proc = nil
    end
    $game_system.battle_stats[0] += 1 if result > 0
    case result
    when 1; $game_system.battle_stats[3] += 1 # escape # segun Enterbrain derrota
    when 2; $game_system.battle_stats[2] += 1 # derrota # segun Enterbrain escape
    end
    @battle_stats.refresh
    $scene = Scene_Map.new
  end
end

Esta nueva versión incorpora el script Ventana Estadísticas dentro de sí mismo, pero también agrega la opción de cambio de Windowskin, la cual es totalmente funcional.

Solo cabe recalcar una cosa, si la partida no se guarda, pues, no hay manera de que el windowskin elegido sea el de la partida o partida de prueba anterior. Se revertiría el cambio al skin que está por defecto, el primero en la carpeta Windowskin.

Los Windowskins deben ir nombrados así:

  • 001-Blue 1
  • 002-Mascota
  • 003-Mazmorra Olvidada
  • y así sucesivamente...

Espero que esta instrucción sea bastante clara porque deberá tenerla muy en cuenta.

Si no utiliza esta versión del script, la Ventana de Estadísticas no cambiará de windowskin.



MIS SCRIPTS - NORMAS MUNDODELUXE

No puedo deprimirme, el descaro no me lo permite.

Then nivo Kizne shes plageren day ses spegai derenos... os ves meno Noyno kel enael...
[Soy un kitsune y deseo vivir y jugar eternamente... o por muchos años como mínimo...]

kitsune solitario, no concede entrevistas ni participa en proyectos, dejó proyectos por falta de inspiración y mera pereza
_______________________________________
Aviso publicitario gratuito. No nos molesta incomodar a nuestros potenciales clientes las 24 horas del día. De todos modos el disgusto es suyo.
ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
MundoDeluxe · Foros · Zona RPG Maker XP · Scripts RPG Maker XP "Dudas, problemas y pedidos"
Opciones:
Versión imprimible del tema
Subscríbete a este tema
Date de baja de este tema
Ir al subforo:  
TU NO PUEDES Escribir nuevos temas en este foro
TU NO PUEDES Responder a los temas en este foro
TU NO PUEDES Editar tus propios mensajes en este foro
TU NO PUEDES Borrar tus propios mensajes en este foro
Ahora son las 09:00 UTC-05:00
Temas similares
No se han encontrado temas similares
Siguenos
Google+ Siguenos en Feedly
Buscador avanzado
Opciones comunidad
Portal
Foros
Noticias
Páginas
Calendario
Nuevos mensajes
Buscar
Imágenes
Avatares
Estadísticas
Usuarios
Fisgona
Discord
Usuarios
Nick / Apodo:
Contraseña:
Código de seguridad:
Usuarios:
Último: Jimizuu
Hoy: 0
Ayer: 0
Total: 19.966
Usuarios conectados
Usuarios conectados:
Invitados: 40
Registrados: 0
Invisibles: 0
Total: 40
Temas recientes
Salir de evento común que está dentro de otro.
HiddenChest para XP VX y ACE
KEW XP - Enemigos + Armas
RandomEnkounters XP
GiveAway XP
Problema barra de vida y antorcha
Pregunta y petición de ayuda
Subforos
Comunidad MundoDeluxe
· General MundoDeluxe - ¿Dudas, problemas o sugerencias?
· Anuncios y noticias
· Presentate ante la comunidad
· Tema libre / Off topic
General Diseño y creación de juegos
· Análisis del diseño de creación de videojuegos.
Zona RPG Maker VX ACE
· Tutoriales RPG Maker VX Ace
· Material RPG Maker VX Ace
· ¿Dudas, problemas y pedidos RPG Maker VX o VX Ace?
· Scripts RPG Maker VX y VX Ace
Zona RPG Maker XP
· Tutoriales RPG Maker XP
· ¿Dudas, problemas y pedidos RPG Maker XP?
· Zona Scripts RPG Maker XP
· Scripts RPG Maker XP "Dudas, problemas y pedidos"
· RTP MundoDeluxe XP
Zona de Recursos
· Recursos RPG Maker XP
· Characters, Battlers, Tilesets
· Audio
· Pide recursos RPG Maker
· Tutoriales de Diseño y Creacion de Recursos
Scirra Construct 2
· Scirra Construct
· Zona de soporte y pedidos Construct
· Proyectos
Informática y entretenimiento
· Anime, series, películas y otros de Televisión
· Software y Aplicaciones
· Diseño Gráfico
· Galerías, muestras y talleres diseño gráfico
Emulación y videojuegos
· Zona videojuegos en general
· Videojuegos para moviles
· Videojuegos para PC
· Musica videojuegos
Publicidad para financiarnos
Afiliados

M 2019
lmxjvsd
29300102030405
06070809101112
13141516171819
20212223242526
27282930310102
03040506070809