Últimos temas
» [MV] Jabberwock
por rojo1991 Hoy a las 3:52 am

» [Publicidad] Around me
por Turbiosoft.acho Ayer a las 12:17 pm

» ¿Como hacer que los enemigos se muevan en batalla?
por Iskachu 2000 Ayer a las 7:06 am

» Necesito un script de batalla lateral
por Greninja555 Vie Jun 14, 2019 3:42 pm

» (RMMV) Around me, crimson-stained leaves (¡Descarga disponible!)
por brrt Vie Jun 14, 2019 2:04 am

» Tutoriales engine y script VX Ace.
por micky_joe Jue Jun 13, 2019 7:49 pm

» Duda con cambio de gráficos en Ruta de Movimiento (VXAce)
por Fiquei Jue Jun 13, 2019 11:02 am

» Maker MV: como hacer respawn de misiones y objetos?
por JapoZero Jue Jun 13, 2019 7:50 am

» Zaza no konpasu (La Brújula de Zaza) [VXACE]
por Pocari Mar Jun 11, 2019 11:58 pm

» Vampiros Eternos
por elcrom Mar Jun 11, 2019 1:38 am

» Los audios importados no aparecen!!
por Shy_Cream Mar Jun 11, 2019 1:33 am

» Dudas con el combate (RPGM 2003).
por Athelstan Lun Jun 10, 2019 6:53 am


[ACE] Pop-up Window

Ir abajo

[ACE] Pop-up Window Empty [ACE] Pop-up Window

Mensaje por MasterGhost21 el Lun Ago 04, 2014 11:21 am

Holitax .3./ pues bien, hoy vengo a traeros este script que me pasó Shade por chat y que me fue de ayuda así que decidí postearlo por aquí. Este script fue hecho por Vlue, asi que denle créditos a el y tambien a ShadielTH por la traducción. Este script crea una ventana emergente que puede usarse para varias cosas y es bastante útil. Aquí dejo una screen de su funcionamiento:

Screen cutre de The Square:
[ACE] Pop-up Window KIqGGDm

Para usar el script tenéis que poner -en un evento- la función de "Llamar script" y dentro poner esto: 

pop_up(['mensaje aqui']) tambien podeis usar comandos de mensaje como \c[x], \i[x], \n[x]... pero no se si tambien podreis usar los comandos el Ace Advanced Message System porque no he probado aun

Y sin mas dilación dejo aquí el script:

Código:
  #Popup Window v1.1a
    #----------#
    #Funciones: Crea una ventana emergente (pop-up) que muestre el texto que tu quieras.
    #
    #Uso:    Llamadas de Script:
    #          pop_up(['text','text', ... ], timer(opt), x(opt), y(opt))
    #        Donde 'text' es el texto a mostrar, "timer" es el tiempo que quieres que dure y "x" e "y" es la posicion de la ventana.
    #
    #          Ejemplos:
    #          pop_up(['\i[5] Mage class unlocked!!'])
    #          pop_up(['\c[16] Class Change:\c[0]',
    #                  ' Speak to any mysterious hermit to change class!'],240)
    #
    #  Tambien puedes utilizar codigos de mensaje (\n[x], \c[x], \i[x]...). Si estos no funcionan, utiliza '' o ponlos con doble barra (\\n[x])
    #
    #----------#
    #-- Script hecho por: V.M of D.T
    #
    #- Preguntas o comentarios pueden ser:
    #    posteadas en el tema del script.
    #    mandadas por email: sumptuaryspade@live.ca [Nota del traductor: El propietario es de habla inglesa, asi que ya sabeis.]
    #    dadas por facebook: http://www.facebook.com/DaimoniousTailsGames
    #
    #- Puedes usarlo libremente en cualquier proyecto. Donaciones bien aceptadas.
    #
    #
    #
    # Script traducido al español por: ShadielTH
   
    POPUP_DURATION = 180 # Duracion por defecto de los pop-ups. Se usa si no se ha especificado un tiempo al cargarlo.
    class Popup_Window < Window_Base
      def initialize(text,timer,x,y)
        super(0,0,25,100)
        text.each do |string|
          temp_string = string.gsub(/\\[^i]\[\d{0,3}\]/) { "" }
          temp_string = temp_string.gsub(/\\i\[\d{0,3}\]/) { "  " }
          self.width = [text_size(temp_string).width+standard_padding*2+12,self.width].max
        end
        self.height = text.size * line_height + line_height
        if x.nil?
          self.x = Graphics.width / 2 - self.width / 2
        else
          self.x = x
        end
        if y.nil?
          self.y = Graphics.height / 2 - self.height / 2
        else
          self.y
        end
        @text = text
        @timer = timer
        create_contents
        refresh
        self.openness = 0
        open
      end
      def refresh
        contents.clear
        yy = 0
        @text.each do |string|
          draw_text_ex(0,yy,string)
          yy += line_height
        end
      end
      def update
        super
        @timer -= 1
        close if @timer == 0
      end
    end
   
    module Popup
      def self.init
        @queue = []
      end
      def self.add(text, timer = POPUP_DURATION, x = nil, y = nil)
        @queue.push([text,timer,x,y])
      end
      def self.queue
        @queue
      end
    end
   
    Popup.init
   
    class Scene_Base
      alias popupwin_preterminate pre_terminate
      def update_popup_window_text
        $popup.update
        $popup.close if Input.trigger?(:C)
        if !$popup.disposed? and $popup.close?
          $popup.dispose
          $popup = nil
        end
      end
      def pre_terminate
        popupwin_preterminate
        $popup.visible = false unless $popup.nil?
      end
    end
   
    class Scene_Map
      alias popupwin_update update
      def update
        popupwin_update
        update_popup_window_text unless $popup.nil?
        return if Popup.queue.empty?
        if $popup.nil? or $popup.close?
          text = Popup.queue.pop
          $popup = Popup_Window.new(text[0], text[1], text[2], text[3])
        end
      end
    end
   
    class Scene_Battle
      alias popupwin_update update_for_wait
      def update_for_wait
        popupwin_update
        update_popup_window_text unless $popup.nil?
        return if Popup.queue.empty?
        if $popup.nil? or $popup.close?
          text = Popup.queue.pop
          $popup = Popup_Window.new(text[0], text[1])
        end
      end
    end
   
   
    class Game_Interpreter
      alias popup_command_355 command_355
      def pop_up(text, timer = POPUP_DURATION, x = nil, y = nil)
        Popup.add(text, timer, x, y)
      end
      def command_355
        popup_command_355
        wait_for_popup #if SceneManager.scene.is_a?(Scene_Map)
      end
      def wait_for_popup
        Fiber.yield while !Popup.queue.empty? || $popup
      end
    end
 Es un script muy sencillo de usar y hasta el mas noob aweonao como yo puede usarlo

Y eso fue todo, me despido ewe
MasterGhost21
MasterGhost21
PJ Recurrente
PJ Recurrente

Masculino
España
RPG Maker : Ace
Mensajes : 95
Monedas : 628
Reputación : 8
Edad : 19
Localización : Deep into the shadows

Volver arriba Ir abajo

[ACE] Pop-up Window Empty Re: [ACE] Pop-up Window

Mensaje por JapoZero el Mar Ago 05, 2014 11:44 pm

NO SABES PONER IMAGENES EN EL FORO Y SE TE DESCUADRAN
Okno xD.
Me gusta como se ve, bonito script.
Al repertorio, Salu2 +1
JapoZero
JapoZero
Héroe
Héroe

Masculino
Chile
RPG Maker : MV
Mensajes : 704
Monedas : 4593
Reputación : 280
Localización : Chile

Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.