¡Bienvenid@ a Mundo Maker!

¿Quieres aprender todo sobre el RPG Maker?



Regístrate y forma parte de Mundo Maker.
Conectarse

Recuperar mi contraseña

Temas importantes
----------------------------------------
Páginas con recursos RPG Maker
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
Afiliados
Estadísticas
Tenemos 4120 miembros registrados.
El último usuario registrado es Miky Joe.

Nuestros miembros han publicado un total de 61511 mensajes en 8169 argumentos.
Quedada del ChatBox

Navega con Google Chrome
[DESCARGA]

[XP] Insertar Nombre (version Wecoc)

 :: RPG Maker :: Scripts

Ver el tema anterior Ver el tema siguiente Ir abajo

[XP] Insertar Nombre (version Wecoc)

Mensaje por Wecoc el 2011-03-26, 20:41

Es un edit muy simple del "Insertar nombre" de Falcao. Funciona con el teclado normal.
Imagen:


Código:
Código:
#========================================================================#
#  #*****************#          Name Input V 1.0  Falcao script Permite #
#  #*** By Falcao ***#          usar el teclado completo para editar    #
#  #*****************#          el nombre de los personajes.            #
#        RMXP                                                          #
# makerpalace.onlinegoo.com      Date 11/27/2009                        #
#========================================================================#

#------------------------------------------------------------------------
# Editado por: Wecoc
#-------------------------------------------------------------------------


module FalVocab
Map_Background = true
end


module FalInput
 
  Teclas = {
  #Numbers
  1=>  [cero  = 0x30, "0", "0"],
  2=>  [one  = 0x31, "1", "1"],
  3=>  [two  = 0x32, "2", "2"],
  4=>  [three = 0x33, "3", "3"],
  5=>  [four  = 0x34, "4", "4"],
  6=>  [five  = 0x35, "5", "5"],
  7=>  [six  = 0x36, "6", "6"],
  8=>  [seven = 0x37, "7", "7"],
  9=>  [eight = 0x38, "8", "8"],
  10=> [nine  = 0x39, "9", "9"],
 
  # Letras
  11=> [a    = 0x41, "A", "a"],
  12=> [b    = 0x42, "B", "b"],
  13=> [c    = 0x43, "C", "c"],
  14=> [d    = 0x44, "D", "d"],
  15=> [e    = 0x45, "E", "e"],
  16=> [f    = 0x46, "F", "f"],
  17=> [g    = 0x47, "G", "g"],
  18=> [h    = 0x48, "H", "h"],
  19=> [i    = 0x49, "I", "i"],
  20=> [j    = 0x4A, "J", "j"],
  21=> [k    = 0x4B, "K", "k"],
  22=> [l    = 0x4C, "L", "l"],
  23=> [m    = 0x4D, "M", "m"],
  24=> [n    = 0x4E, "N", "n"],
  25=> [o    = 0x4F, "O", "o"],
  26=> [p    = 0x50, "P", "p"],
  27=> [q    = 0x51, "Q", "q"],
  28=> [r    = 0x52, "R", "r"],
  29=> [s    = 0x53, "S", "s"],
  30=> [t    = 0x54, "T", "t"],
  31=> [u    = 0x55, "U", "u"],
  32=> [v    = 0x56, "V", "v"],
  33=> [w    = 0x57, "W", "w"],
  34=> [x    = 0x58, "X", "x"],
  35=> [y    = 0x59, "Y", "y"],
  36=> [z    = 0x5A, "Z", "z"],
 
  # -- non- useless
  37=> [back  = 0x08, " ", " "],
  38=> [space = 0x20, " ", " "],
  39=> [caps  = 0x14, " ", " "],
  40=> [enter = 0x0D, " ", " "],
  41=> [guion = 0x6D, "-", "-"],
 
  # OEM
  42=> [shift = 16, " ", " "],
  43=> [oem1  = 189, "_", "_"],
  44=> [oem2  = 222, "'", "'"],
  45=> [oem3  = 188, ",", ","],
  46=> [oem4  = 190, ".", "."],
  47=> [oem5  = 191, "/", "/"],
 
  }
 
  Keyboard_Acces = Win32API.new("user32","GetAsyncKeyState",['i'],'i')
 
  def self.get_key(key)
    Keyboard_Acces.call(key) & 0x01 == 1
  end
end

class NameEdit < Window_Base
  include FalVocab
  def initialize(actor, char_max)
    super(0, 305, 340, 100)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.z = 9998
    @actor = actor
    @char_max = char_max
    $falcao_apply = false
    @text = ""
    @wait_count = 0
    @text_temp = []
    @cursor_opa = 255
    @caps_lock = 2
    $registro_t = "Falcao"
    self.opacity = 0
    refresh
  end
  def refresh
    self.contents.clear
    self.contents.font.size = 20
    draw_name
    draw_cursor
    self.contents.font.color = normal_color
  end
 
  def draw_name
    self.contents.font.color = normal_color
    for i in FalInput::Teclas.values
      if FalInput.get_key(i[0])
        next if i[0] == 16
        if $falcao_apply; write_name; return; end
        if i[0] == 0x14 and @caps_lock == 1
          @caps_lock = 2
        elsif i[0] == 0x14 and @caps_lock == 2
          @caps_lock = 1
        end
        if i[0] == 0x0D #enter key
          $falcao_apply = true
          $game_system.se_play($data_system.decision_se)
          if @text != ""
            @actor.name = @text
            $game_actors[@actor.id].name = @text
            $registro_t = @text
          else
            $scene = Scene_Map.new
            return
          end
          return
        end
        unless i[0] == 0x08 or i[0] == 0x14 || @text_temp.size == @char_max
          @text += i[@caps_lock]
          @text_temp.push(@text)
        end
        if i[0] == 0x08 #Backspace
          @text = @text_temp[@text_temp.size - 2]
          @text_temp.delete_at(@text_temp.size - 1)
          @text = "" if @text.nil?
        end
      end
    end
    write_name
  end
 
  def write_name
    @cw = contents.text_size(@text).width + 115
    x = 200 - @cw / 2
    self.contents.draw_text(x, 0, self.width, 32, @text) rescue nil
    return
  end
 
  def draw_cursor
    return if $falcao_apply
    @text_temp.size == @char_max ? add = -10 : add = 0
    @wait_count += 1
    case      @wait_count
    when 1;  @cursor_opa = 255 # 1
    when 15;  @cursor_opa = 0  # 20
    when 30;  @wait_count = 0  # 50
    end
    x = 85 + @cw / 2
    self.contents.fill_rect(x + add, 25, 8, 2, Color.new(192, 224, 255,
    @cursor_opa))
  end
end

class Scene_Name
  def initialize
    @tone_rescue = $game_screen.tone
  end
  def main
    @viewport1 = Viewport.new(0, 0, 640, 480)
    @viewport1.z = 200
    @spriteset = Spriteset_Map.new
    actor = $data_actors[$game_temp.name_actor_id]
    @edit_name = NameEdit.new(actor, $game_temp.name_max_char)
    Graphics.transition
    loop do
      Graphics.update
      update
      if $scene != self
        break
      end
    end
    Graphics.freeze
    @spriteset.dispose
    @edit_name.dispose
    @viewport1.dispose
    $game_player.refresh
  end
  def update
    @viewport1.update
    if $falcao_apply
      Input.update
    end
    @edit_name.refresh
    if Input.trigger?(Input::A)
      $game_system.se_play($data_system.buzzer_se)
      @delay = 10
    end
    if @delay != nil;  @delay -= 1
      if (@delay == 1)
        $falcao_apply = false;  @delay = nil
      end
    end
    if Input.trigger?(Input::C)
      $scene = Scene_Map.new
      return
    end
  end
end

class Font
  alias falcaoBest3_font initialize
  def initialize
    falcaoBest3_font
    if $scene.is_a?(Scene_Name)
      self.name = "Courier New"
      self.size = 20
    end
  end
end

Demo:
megaupload.com P49FIWI0


Última edición por Wecoc el 2011-03-26, 23:23, editado 2 veces

Wecoc
Moderador
Moderador



Créditos 5813

Gracias: 68

http://www.mundo-maker.com

Volver arriba Ir abajo

Re: [XP] Insertar Nombre (version Wecoc)

Mensaje por Clark-CLK el 2011-03-26, 20:45

El nombre se inserta con el teclado?? Si es así seria muy bueno, creo que solo habia uno así y creo que lo hizo falcao, por eso pregunto ^_^
Lo que me gusta más es la idea de insertar el nombre dentro de una caja de texto, donde creo que van apareciendo las letras y el teclado justo debajo.

Wong Wong!!

Clark-CLK
Veterano
Veterano

0/3

Créditos 1351

Gracias: 3

http://ahoperpg-maker.ucoz.es

Volver arriba Ir abajo

Re: [XP] Insertar Nombre (version Wecoc)

Mensaje por orochii el 2011-03-26, 22:27

Bueno, no es el único que exista que se inserte con el teclado. Existe también uno llamado simplemente "Modyfied Scene Name" (el typo es porque así viene nombrado dentro del script x'D), de Cyclope.
Spoiler:
No lo pongo directamente porque tendré que revisar si hay prohibiciones respecto a sharin', si saben a lo que me refiero .-.

Link externo

En fin, volviendo al tema, el cambio me agrada mucho :D. El tecladillo y la cara del personaje con ese estilo se ven muy agradables.

Será esperar el demo, porque supongo que eso no se dibuja solo (a menos que use la "aplicación de Blizzard" xDDD, algún día se las presento aunque sea linkeado).

Bonito aporte,
Orochii Zouveleki

orochii
Shiro
Shiro

0/3

Créditos 5200

Gracias: 102

http://drekirokr.weebly.com/

Volver arriba Ir abajo

Re: [XP] Insertar Nombre (version Wecoc)

Mensaje por Onuba el 2011-03-27, 05:25

Está muy bueno el script, el único problema es que tienes que hacer una imagen, guardarla en pictures, y ponerla mediante un evento, pero vamos, ni que fuera tanto problema, ¿no?

Onuba
Soñador
Soñador

0/3

Créditos 188

Gracias: 2

http://planeta-maker.creaforo.net/

Volver arriba Ir abajo

Re: [XP] Insertar Nombre (version Wecoc)

Mensaje por Wecoc el 2011-03-27, 05:37

Onuba escribió:Está muy bueno el script, el único problema es que tienes que hacer una imagen, guardarla en pictures, y ponerla mediante un evento, pero vamos, ni que fuera tanto problema, ¿no?
Puedes hacerlo con un "Insertar Mensaje" y dejarlo sin texto para que lo del Script quede encima, creo. Pero sí, queda mucho mejor con Picture. xD

Wecoc
Moderador
Moderador



Créditos 5813

Gracias: 68

http://www.mundo-maker.com

Volver arriba Ir abajo

Re: [XP] Insertar Nombre (version Wecoc)

Mensaje por 427008 el 2011-03-27, 06:25

una chica duda,este script mmmm puede cambiar el texto de los otros mensajes ?

por ejemplo en alguna parte del juego tu pones el nombre del personaje:

427008:Debemos encontrar a mmmmmm rybbu[el nombre del heroe] XD

y si al principio pones ese script y te cambias de nombre el [rybbu]

tambien cambiara ?


427008
Baneado

3/3

Créditos 214

Gracias: 2

Volver arriba Ir abajo

Re: [XP] Insertar Nombre (version Wecoc)

Mensaje por Wecoc el 2011-03-27, 14:38

No sé si he entendido bien la pregunta... Puedes probarlo tú mismo con la demo de base ahora que está disponible xD Creo que te refieres a poner el nombre del personaje normal, para hacer eso, en vez de Rybbu tienes que poner \N[1] donde 1 es el ID (número en el orden donde lo has puesto en la Base de Datos) del personaje. Es decir, funciona como siempre. En la misma demo lo puse también.

Lo que sí puede hacerse es un elección en la que poner nombre a un personaje, al que en la base de datos hemos llamado por ejemplo "Elección". Ej:
Código:
- ¿Vienes con nosotros?
Poner nombre Personaje : Elección - 2 letras
Condiciones y efectos: Personaje (Elección) Nombre 'Si'
  - ¡Muy bien!
Excepción
  Condiciones y efectos: Personaje (Elección) Nombre 'Ok'
  - ¡Muy bien!
Excepción
  Condiciones y efectos: Personaje (Elección) Nombre 'No'
  - Qué pena...
Excepción
  - ¿Qué dices?
FIN
FIN
FIN
xDD

Wecoc
Moderador
Moderador



Créditos 5813

Gracias: 68

http://www.mundo-maker.com

Volver arriba Ir abajo

Re: [XP] Insertar Nombre (version Wecoc)

Mensaje por picoro el 2011-03-27, 16:05

Buenisimo...

Se agradece el aporte notworthy

picoro
Baneado

3/3

Créditos 122

Gracias: 2

Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 :: RPG Maker :: Scripts

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