Raven BellamyVie Mar 15, 2013 2:03 pm
Usuario Nv9
Hola aqui dejo un script es de caminar en diagonal como dice ahi en el titulo no les dejo imagenes porque
bueno seria muy dificil
Ok miren deben agregar a ensima del main este script
Luego en la clase Game_Player reemplazen el método move_by_input por este:
bueno seria muy dificil
Ok miren deben agregar a ensima del main este script
- Código:
#--------------------------------------------------------------------------
#Para moverse abajo a la izquierda
#--------------------------------------------------------------------------
def move_down_left(turn_ok = true)
if passable?(@x-1, @y+1) # 通行可能
turn_down
@y = $game_map.round_y(@y+1)
@real_y = (@y-1)*256
@x = $game_map.round_x(@x-1)
@real_x = (@x+1)*256
increase_steps
@move_failed = false
else # 通行不可能
turn_down if turn_ok
check_event_trigger_touch(@x, @y+1) # 接触イベントの起動判定
@move_failed = true
end
end
#--------------------------------------------------------------------------
#Para moverse arriba a la izquierda
#--------------------------------------------------------------------------
def move_up_left(turn_ok = true)
if passable?(@x-1, @y-1) # 通行可能
turn_up
@y = $game_map.round_y(@y-1)
@real_y = (@y+1)*256
@x = $game_map.round_x(@x-1)
@real_x = (@x+1)*256
increase_steps
@move_failed = false
else # 通行不可能
turn_up if turn_ok
check_event_trigger_touch(@x, @y+1) # 接触イベントの起動判定
@move_failed = true
end
end
#--------------------------------------------------------------------------
#Para moverse abajo a la derecha
#--------------------------------------------------------------------------
def move_down_right(turn_ok = true)
if passable?(@x+1, @y+1) # 通行可能
turn_down
@y = $game_map.round_y(@y+1)
@real_y = (@y-1)*256
@x = $game_map.round_x(@x+1)
@real_x = (@x-1)*256
increase_steps
@move_failed = false
else # 通行不可能
turn_down if turn_ok
check_event_trigger_touch(@x, @y+1) # 接触イベントの起動判定
@move_failed = true
end
end
#--------------------------------------------------------------------------
#Para moverse arriba a la derecha
#--------------------------------------------------------------------------
def move_up_right(turn_ok = true)
if passable?(@x+1, @y-1) # 通行可能
turn_up
@y = $game_map.round_y(@y-1)
@real_y = (@y+1)*256
@x = $game_map.round_x(@x+1)
@real_x = (@x-1)*256
increase_steps
@move_failed = false
else # 通行不可能
turn_up if turn_ok
check_event_trigger_touch(@x, @y+1) # 接触イベントの起動判定
@move_failed = true
end
end
Luego en la clase Game_Player reemplazen el método move_by_input por este:
- Código:
def move_by_input
return unless movable?
return if $game_map.interpreter.running?
case Input.dir8
when 1
move_down_left
when 2
move_down
when 3
move_down_right
when 4
move_left
when 6
move_right
when 7
move_up_left
when 8
move_up
when 9
move_up_right
end
end