Mundo Maker
¡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
» Sword Heros Art´s Work
por Gacoro Hoy a las 16:25

» [XP] Elnard Radar
por orochii Hoy a las 15:55

» [Colectivo] ¡El terrible mapa n00b!
por Wecoc Hoy a las 15:14

» Ayuda para desactivar un HUD y activarlo
por alex1633 Hoy a las 14:53

» [VX] [Ayuda] Editar textos del archivo RGSS202E.dll
por Oscar92player Hoy a las 11:06

» Imagen fija en un sitio
por xXIsrael0499Xx Hoy a las 10:04

» Maratón Maker - ¡RESULTADOS! ¡Sí, los hay!
por orochii Hoy a las 03:51

» Ayuda rpg maker MV
por orochii Hoy a las 03:49

» Buenas, gente!
por orochii Hoy a las 03:44

» AYUDA!!!1 POKEMON CON OBJETO
por orochii Hoy a las 03:39

Afiliados
Estadísticas
Tenemos 3762 miembros registrados.
El último usuario registrado es KinGzMC.

Nuestros miembros han publicado un total de 85762 mensajes en 12213 argumentos.

¿Cómo bloquear una tecla?

Ver el tema anterior Ver el tema siguiente Ir abajo

¿Cómo bloquear una tecla?

Mensaje por alfregameplayy el 2013-07-29, 12:10

Hola a todos, tengo una duda, y es que estoy trabajando en un proyecto en 2D de plataformas en el que solo se tiene que ir a derecha e izquierda, entonces ¿cómo bloqueo las teclas arriba y abajo?
Graciass :)
avatar
alfregameplayy
Iniciado
Iniciado

0/3

Créditos 47

Gracias : 2

Volver arriba Ir abajo

Re: ¿Cómo bloquear una tecla?

Mensaje por orochii el 2013-07-29, 19:35

Se puede hacer un edit simple al Game_Player.
Código:
class Game_Player
#--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    # Remember whether or not moving in local variables
    last_moving = moving?
    # If moving, event running, move route forcing, and message window
    # display are all not occurring
    unless moving? or $game_system.map_interpreter.running? or
          @move_route_forcing or $game_temp.message_window_showing
      # Move player in the direction the directional button is being pressed
      case Input.dir4
      #when 2
        #move_down
      when 4
        move_left
      when 6
        move_right
      #when 8
        #move_up
      end
    end
    # Remember coordinates in local variables
    last_real_x = @real_x
    last_real_y = @real_y
    super
    # If character moves down and is positioned lower than the center
    # of the screen
    if @real_y > last_real_y and @real_y - $game_map.display_y > CENTER_Y
      # Scroll map down
      $game_map.scroll_down(@real_y - last_real_y)
    end
    # If character moves left and is positioned more let on-screen than
    # center
    if @real_x < last_real_x and @real_x - $game_map.display_x < CENTER_X
      # Scroll map left
      $game_map.scroll_left(last_real_x - @real_x)
    end
    # If character moves right and is positioned more right on-screen than
    # center
    if @real_x > last_real_x and @real_x - $game_map.display_x > CENTER_X
      # Scroll map right
      $game_map.scroll_right(@real_x - last_real_x)
    end
    # If character moves up and is positioned higher than the center
    # of the screen
    if @real_y < last_real_y and @real_y - $game_map.display_y < CENTER_Y
      # Scroll map up
      $game_map.scroll_up(last_real_y - @real_y)
    end
    # If not moving
    unless moving?
      # If player was moving last time
      if last_moving
        # Event determinant is via touch of same position event
        result = check_event_trigger_here([1,2])
        # If event which started does not exist
        if result == false
          # Disregard if debug mode is ON and ctrl key was pressed
          unless $DEBUG and Input.press?(Input::CTRL)
            # Encounter countdown
            if @encounter_count > 0
              @encounter_count -= 1
            end
          end
        end
      end
      # If C button was pressed
      if Input.trigger?(Input::C)
        # Same position and front event determinant
        check_event_trigger_here([0])
        check_event_trigger_there([0,1,2])
      end
    end
  end
end
Lo que hice fue comentar cuatro líneas, éstas específicamente.
Código:
      #when 2
        #move_down
      #when 4
        #move_up

Otra opción, por engines, sería hacer un evento automático que maneje el movimiento del personaje. Y de paso por engines uno hace el resto de las cosas que necesitaría el sistema por plataformas.

Igual pregúntale a Leda xD,
Orochii Zouveleki
avatar
orochii
Reportero

0/3

Créditos 6798

Gracias : 356

Volver arriba Ir abajo

Re: ¿Cómo bloquear una tecla?

Mensaje por alfregameplayy el 2013-07-29, 20:31

Gracias, probé lo del engine que me parecía más fácil y me funciono :)
avatar
alfregameplayy
Iniciado
Iniciado

0/3

Créditos 47

Gracias : 2

Volver arriba Ir abajo

Re: ¿Cómo bloquear una tecla?

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


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