¡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
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
Últimos temas
» [AYUDA]Hootshot de moghunter
por Rudy_kinneas Hoy a las 01:06

» Necesito Script
por BreinLand entertainment Hoy a las 00:03

» El poder oculto (Segunda entrega)
por alex1633 Ayer a las 23:18

» Holaaa a tod@s!!!
por RiKennedy-Maker Ayer a las 21:53

» Tutorial Interactivo [Uso de interruptores]
por alex1633 Ayer a las 19:39

» Hola mucho gusto
por Hk Diamond Ayer a las 13:49

» SoraDeathss se presenta!
por chronoMxx Ayer a las 07:50

» {AYUDA}Blizz-ABS Script
por chronoMxx Ayer a las 06:45

» las cosas como son...
por Bleuw Ayer a las 04:18

» Busco artistas graficos para proyecto serio
por Rudy_kinneas 2016-12-02, 20:52

Afiliados
Estadísticas
Tenemos 3381 miembros registrados.
El último usuario registrado es Hk Diamond.

Nuestros miembros han publicado un total de 79765 mensajes en 11247 argumentos.
Navega con Google Chrome
[DESCARGA]

Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

 :: RPG Maker :: Ayuda RPG

Ver el tema anterior Ver el tema siguiente Ir abajo

Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por Ledai el 2013-06-17, 19:47

Qué tengo que añadirle para que en vez de la tecla A, sean las flechas de dirección las que pulsas una vez cada accion???

Código:
Input.trigger?(Input::X)

EDIT:
Lo encontré, sirve poner:

UP------Arriba
LEFT------Izquierda
DOWN---abajo
RIGHT------derecha

Para XP, VX y Ace

Edita Wecoc: Para el VX también va igual la cosa xD


Última edición por La-espada-de-Auron el 2013-06-20, 20:00, editado 2 veces

Ledai
Aventurero
Aventurero

0/3

Créditos 1364

Gracias : 124

http://ahurallg.blogspot.com.es/

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por Wecoc el 2013-06-17, 22:18

Vaya, te auto-ayudaste... xD
Solo como extra, si quieres que se pulse una flecha cualquiera de las 4, puedes poner esto

Código:
Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN) or Input.trigger?(Input::LEFT) or Input.trigger?(Input::RIGHT)

o bien simplemente lo siguiente

Código:
Input.trigger?(Input.dir4)

Si usas lo de Llamar Script, con lo limitadito que es en cuanto a espacio, seguramente tarde o temprano agradecerás ese atajo xD

Bueno solo era eso... =D Asdf,
Wecochii Zouveleki

Wecoc
Administrador
Administrador



Créditos 8263

Gracias : 372

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por Leaser el 2013-06-17, 22:32

Pequeña pregunta, para que quede más claro a cualquiera que lea el tema.
Para qué Maker sirve eso? O sirve para todos los que soportan scripts?

Como no está aclarado quizás alguno no sepa bien si usarlo o no y cree más temas sobre lo mismo.

Saludos!

Leaser
Principiante
Principiante

0/3

Créditos 1009

Gracias : 3

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por Ledai el 2013-06-17, 22:55

Wecoc, me vino de perlas ese añadido que me pasaste, en especial el resumido... ¿¿tienes más de esos comandos pequeñitos de script para poner en las llamadas, cosas curiosas como esa para los engine???

Me vendía bien una mini-guía de cositas así, pues suelen solucionar la vida mucho Xp

Leaser, ya edité el post diciendo que es para el XP

Ledai
Aventurero
Aventurero

0/3

Créditos 1364

Gracias : 124

http://ahurallg.blogspot.com.es/

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por Ledai el 2013-06-19, 00:13

Siento revivir el tema, pero necesito el codigo para hacer los mismo que:
Código:
Input.trigger?(Input.dir4)

Pero con las teclas pulsadas permanentemente...

Ledai
Aventurero
Aventurero

0/3

Créditos 1364

Gracias : 124

http://ahurallg.blogspot.com.es/

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por orochii el 2013-06-19, 01:01

Código:
Input.trigger?(keycode)
Revisa si una tecla ha sido presionada.

Código:
Input.press?(keycode)
Revisa si una tecla está siendo presionada.

Código:
Input.repeat?(keycode)
Revisa si la tecla está siendo presionada, con un cierto intervalo o espera.

Y esos son todos,
Orochii Zouveleki

orochii
Caballero Shiro
Caballero Shiro

0/3

Créditos 6045

Gracias : 266

http://drekirokr.weebly.com/

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por Leaser el 2013-06-20, 19:18

Posteo de nuevo en este tema para informar que esos comandos funcionan también en ACE, lo digo para aquellos que lean el tema y piensen que es solo para XP.

Probé los comandos y funcionan correctamente. Por lo que asumo que si funcionan tanto para XP como para ACE, es bastante seguro pensar que también funcionen en VX (pero no me hago cargo si no funcionan en ese xD).

Leda, después si querés podés modificar el tema para agregar que funciona también en ACE (o no, como lo creas conveniente).

Saludos!

Leaser
Principiante
Principiante

0/3

Créditos 1009

Gracias : 3

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por Ledai el 2013-06-20, 22:29

Hecho Leaser ^_^!!!

Gracias orochii, los probaré en un rato que tenga. 
Me serán útiles.

Ledai
Aventurero
Aventurero

0/3

Créditos 1364

Gracias : 124

http://ahurallg.blogspot.com.es/

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por Ledai el 2013-06-24, 19:58

orochii escribió:
Código:
Input.repeat?(keycode)
Revisa si la tecla está siendo presionada, con un cierto intervalo o espera.

Siento revivir el tema de nuevo, pero es para aclarar algo que no sé...

Cómo hago para establecer el periodo de tiempo a presionar la tecla????

Y de paso cual es la tecla que tengo que pulsar para ver el cuadrante de configuracion de teclas del maker??
la Fqué??

Ledai
Aventurero
Aventurero

0/3

Créditos 1364

Gracias : 124

http://ahurallg.blogspot.com.es/

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por Wecoc el 2013-06-24, 20:16

A mi se me ocurre que al pulsar (trigger?) la tecla se active un interruptor. Luego en un proceso paralelo con condición ese interruptor, pones que si pasado cierto tiempo puesto en un comando Esperar aún está pulsada, haga algo xD
Lo que pasa es que para ello necesitarías saber también cuando deja de ser presionada para desactivar el interruptor (también en un proceso paralelo). Para ello no hay ningún código en el Input default pero sí en otros Input.


Código:
#------------------------------------------------------------------------------
# Input
#------------------------------------------------------------------------------
# By vgvgf
#------------------------------------------------------------------------------

module Input
  DOWN=2
  LEFT=4
  RIGHT=6
  UP=8
  A=11
  B=12
  C=13
  X=14
  Y=15
  Z=16
  L=17
  R=18
  SHIFT=21
  CTRL=22
  ALT=23
  F5=25
  F6=26
  F7=27
  F8=28
  F9=29
  @GetKeyState=Win32API.new("user32", "GetAsyncKeyState", "i", "i")
  def self.getstate(key)
    return (@GetKeyState.call(key)&0x8000)>0
  end
  def self.update
    if @keystate
      for i in 0...256
        @newstate=self.getstate(i)
        @triggerstate[i]=(@newstate&&@keystate[i]==0)
        @releasestate[i]=(!@newstate&&@keystate[i]>0)
        @keystate[i]=@newstate ? @keystate[i]+1 : 0
      end   
    else
      @keystate=[]
      @triggerstate=[]
      @releasestate=[]
      for i in 0...256
        @keystate[i]=self.getstate(i) ? 1 : 0
        @triggerstate[i]=false
        @releasestate[i]=false
      end
    end
  end
  def self.buttonToKey(button)
   case button # Teclas
    when Input::DOWN
     return [0x28] # Abajo
    when Input::LEFT
     return [0x25] # Izquierda
    when Input::RIGHT
     return [0x27] # Derecha
    when Input::UP
     return [0x26] # Arriba
    when Input::A
     return [0x5A,0x10] # Z, Shift
    when Input::B
     return [0x58,0x1B] # X, ESC
    when Input::C
     return [0x43,0x0d,0x20] # C, ENTER, Espacio
    when Input::X
     return [0x41] # A
    when Input::Y
     return [0x53] # S
    when Input::Z
     return [0x44] # D
    when Input::L
     return [0x51,0x21] # Q, RePág
    when Input::R
     return [0x57,0x22] # W, AvPág
    when Input::SHIFT
     return [0x10] # Shift
    when Input::CTRL
     return [0x11] # Ctrl
    when Input::ALT
     return [0x12] # Alt
    when Input::F5
     return [0x74] # F5
    when Input::F6
     return [0x75] # F6
    when Input::F7
     return [0x76] # F7
    when Input::F8
     return [0x77] # F8
    when Input::F9
     return [0x78] # F9
    else
     return []
   end
  end
  def self.dir4
   button=0
   repeatcount=0
   if self.press?(Input::DOWN) && self.press?(Input::UP)
     return 0
   end
   if self.press?(Input::LEFT) && self.press?(Input::RIGHT)
     return 0
   end
   if $game_switches[7] == true
     return 0
   end

   for b in [Input::DOWN,Input::LEFT,Input::RIGHT,Input::UP]
    rc=self.count(b)
    if rc>0
     if repeatcount==0 || rc<repeatcount
      button=b
      repeatcount=rc
     end
    end
   end
   return button
  end
  def self.dir8
   buttons=[]
   for b in [Input::DOWN,Input::LEFT,Input::RIGHT,Input::UP]
    rc=self.count(b)
    if rc>0
     buttons.push([b,rc])
    end
   end
   if buttons.length==0
    return 0
   elsif buttons.length==1
    return buttons[0][0]
   elsif buttons.length==2
    if (buttons[0][0]==Input::DOWN && buttons[1][0]==Input::UP)
     return 0
    end
    if (buttons[0][0]==Input::LEFT && buttons[1][0]==Input::RIGHT)
     return 0
    end
   end
   buttons.sort!{|a,b| a[1]<=>b[1]}
   updown=0
   leftright=0
   for b in buttons
    if updown==0 && (b[0]==Input::UP || b[0]==Input::DOWN)
     updown=b[0]
    end
    if leftright==0 && (b[0]==Input::LEFT || b[0]==Input::RIGHT)
     leftright=b[0]
    end
   end
   if updown==Input::DOWN
    return 1 if leftright==Input::LEFT
    return 3 if leftright==Input::RIGHT
    return 2
   elsif updown==Input::UP
    return 7 if leftright==Input::LEFT
    return 9 if leftright==Input::RIGHT
    return 8
   else
    return 4 if leftright==Input::LEFT
    return 6 if leftright==Input::RIGHT
    return 0
   end
  end
  def self.count(button)
   for btn in self.buttonToKey(button)
     c=self.repeatcount(btn)
     return c if c>0
   end
   return 0
  end
  def self.trigger?(button) # Pulsar tecla (da igual si la mantienes pulsada,
    # solo lo contará como una vez.
   return self.buttonToKey(button).any? {|item| self.triggerex?(item) }
  end
   def self.triggerex?(key)
    return false if !@triggerstate
    return @triggerstate[key]
  end

  def self.repeat?(button) # Pulsar tecla y mantener pulsada
   return self.buttonToKey(button).any? {|item| self.repeatex?(item) }
  end
   def self.repeatex?(key)
    return false if !@keystate
    return @keystate[key]==1 || (@keystate[key]>20 && (@keystate[key]&1)==0)
  end

  def self.press?(button) # Pulsar tecla sin mantener pulsada (si la manetienes
    # lo contará como si la hubieras pulsado muchas veces seguidas)
   
    return self.count(button)>0
  end
  def self.pressex?(key)
    return self.repeatcount(key)>0
  end

  def self.release?(button) # Se activa solo cuando dejas de pulsar la tecla
    return self.buttonToKey(button).any? {|item| self.releaseex?(item) }
  end
  def self.releaseex?(key)
    return false if !@releasestate
    return @releasestate[key]
  end
 
  def self.repeatcount(key)
    return 0 if !@keystate
    return @keystate[key]
  end
end



En éste que es el que utilizo yo, a parte de los códigos que ya te hemos dicho que funcionan igual, existe un Input.release?(tecla) que mira cuando ésa tecla deja de ser presionada.


Sobre tu segunda pregunta, es F1, segunda pestaña xD

Wecoc
Administrador
Administrador



Créditos 8263

Gracias : 372

Volver arriba Ir abajo

¿Código de cada tecla?

Mensaje por Juanxdxd el 2013-10-26, 14:23

Ahora siento yo revivir este tema, y no se si debería hablar aquí, pero me acabo de registrar por que tengo problemas con scripts y veo que en esta página hay bastante gente que sabe. Bueno al tema:
Me descargue un script de salto + animación de aquí
http://www.makerpalace.com/t6216-salto-animacion
y en el script quiero saltar con la tecla espacio y me gustaría saber el código de cada una de las letras en el Ace.
En otro script de salto me aparecia (:X) y al lado me ponía en ingles que era la "a". Y no me vale poner 0x40 o ningún numero.
Por favor ayuda.
PD: Tengo los siguientes scripts: YAE System Options 1.0, un script de opciones en Game Over (no viene con nombre),  Hud pasado al Ace por HUNTER, YAE Ace Save Engine v1.01, Mouse System Buttons 1.1,
menú titulo transparente (JMB GISOKA), Full Screen Promt 1.0, Glitchfinder's Key Input Module para VX (este ya comentare mi problema), GaryCXJk - Free Movement v0.86 y WASD movement 1.1 (otro con problemas).

Juanxdxd
Iniciado
Iniciado

0/3

Créditos 3

Gracias : 2

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por Ledai el 2013-10-26, 14:35

Con el juego abierto, presiona F1 y verás una ventana, en la ultima pestaña encontrarás varias letras y sus correspondencias.

Creo que en el Ace también lo tiene...

Ledai
Aventurero
Aventurero

0/3

Créditos 1364

Gracias : 124

http://ahurallg.blogspot.com.es/

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por Juanxdxd el 2013-10-26, 14:41

La-espada-de-Auron escribió:Con el juego abierto, presiona F1 y verás una ventana, en la ultima pestaña encontrarás varias letras y sus correspondencias.

Creo que en el Ace también lo tiene...
Eso se me había olvidado comentarlo, el F1 no me sirve para los controles wasd y ya he probado poniendo
(:Space) y el juego arranca, pero al dar al espacio no salta.
Pongo aquí el script:
#===============================================================================
# By:HUNTER / Name Script:Jump + Animation / Version:1.0
#===============================================================================
# Autor Forum:www.hunter-maker.net
#===============================================================================

class Game_Player < Game_Character
 
 alias hnt_update update

 def update
   hnt_update
   update_animation
   if Input.trigger?(:X) # Tecla que hace que el personaje salte
     jump_hnt_input if passable?(@x,@y,@direction)
     @animation_id = 0 # Id de la animacion
     @move_speed = 4 # Velocidad del Salto
     @balloon_id = 0 # Elije el icono que se muestra encima del personaje elije 0 para no mostrar el icono
     end
   end
 
 # No modifiquen nada apartir de aqui
 def jump_hnt_input
   case @direction
   when 2
     jump(0,1)
     when 4
       jump(-1,0)
       when 6
         jump(1,0)
         when 8
           jump(0,-1)
         end
       end
     end  
# Fin:

Juanxdxd
Iniciado
Iniciado

0/3

Créditos 3

Gracias : 2

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por Juanxdxd el 2013-10-26, 14:55

Vale, ya he hecho que funcione, me acabo de dar cuenta de que X = A por el F1 del juego y he puesto Espacio = R y ahora si salta.
Pero he tenido que borrar el script de Free movement.
Me da error en la linea 675:
Código:
  #--------------------------------------------------------------------------
  # * New: Get Pos List Length
  #--------------------------------------------------------------------------
           def pos_list_size
(675)    @pos_list.size
          end

Juanxdxd
Iniciado
Iniciado

0/3

Créditos 3

Gracias : 2

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por PROmaster el 2013-10-26, 20:26

Una duda: ¿Y para tener que pulsar dos teclas a la vez?

PROmaster
Principiante
Principiante

0/3

Créditos 324

Gracias : 0

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por silvanash el 2013-10-26, 20:49

if Input.trigger?(tecla) and Input.trigger?(tecla)

Creo que con eso debería funcionar.

silvanash
Aventurero
Aventurero

0/3

Créditos 1417

Gracias : 176

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por PROmaster el 2013-10-26, 20:51

silvanash escribió:if Input.trigger?(tecla) and Input.trigger?(tecla)

Creo que con eso debería funcionar.
Gracias ^^

PROmaster
Principiante
Principiante

0/3

Créditos 324

Gracias : 0

Volver arriba Ir abajo

Re: Pulsar la tecla una vez 4 direcciones [XP/VX/ACE]

Mensaje por Contenido patrocinado Hoy a las 01:54


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 :: RPG Maker :: Ayuda RPG

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