09-23-2009, 11:41 PM
AWorks Fix Walk Speed
Created by: AWorks(vgvgf)
Version: 1.00
Updated: 18/06/2009(dd/mm/yyyy)
This is one of my shortest and simplest scripts. Useful though.
Description
This script modifies the movement speed of events and the player when they walk in a diagonal direction. Normaly when a event walk in a diagonal, it will move faster than it should.
Created by: AWorks(vgvgf)
Version: 1.00
Updated: 18/06/2009(dd/mm/yyyy)
This is one of my shortest and simplest scripts. Useful though.
Description
This script modifies the movement speed of events and the player when they walk in a diagonal direction. Normaly when a event walk in a diagonal, it will move faster than it should.
Code:
#=============================================================================
# *** AWorks Fix Walk Speed XP
#=============================================================================
# Created by AWorks
# Version: 1.00.XP
# Updated: 18/06/2009 (dd/mm/yyyy)
#=============================================================================
#==== Description ====
# This script modifies the movement speed of events and the player when they
# walk in a diagonal direction.
#=============================================================================
#==============================================================================
# ** Game_Character
#==============================================================================
class Game_Character
#--------------------------------------------------------------------------
# * Update frame (move)
#--------------------------------------------------------------------------
def update_move
if @x * 128 != @real_x and @y * 128 != @real_y
distance = 2 ** @move_speed / Math.sqrt(2)
else
distance = 2 ** @move_speed
end
if @y * 128 > @real_y
@real_y = [@real_y + distance, @y * 128].min
end
if @x * 128 < @real_x
@real_x = [@real_x - distance, @x * 128].max
end
if @x * 128 > @real_x
@real_x = [@real_x + distance, @x * 128].min
end
if @y * 128 < @real_y
@real_y = [@real_y - distance, @y * 128].max
end
if @walk_anime
@anime_count += 1.5
elsif @step_anime
@anime_count += 1
end
end
end