haha ok I think I have it this time.
#==============================================================================
#@++ graphic modification 8 traverse ver. 1.01 ++
#@@Script by Para Dog
#@@http://2d6.parasite.jp/
#------------------------------------------------------------------------------
# Tilt movement is made possible by pushing the top and bottom key and the left and right key simultaneously,
# In gGraphics/Charactersh folder
# When g(the first character name) +_quarterh there is a file of the name which is said,
# You use as graphics of the slanted portable time. (Example: 001-Fighter01_quarter)
#------------------------------------------------------------------------------
#[Note in regard to installation]
#When it jointly uses with ggraphic modification dashh, this script
# The dash script compared to please put under.
# As for graphics file name of slanted direction dash g(the first character name)+_dash_quarterh
# It becomes.
#==============================================================================
#==============================================================================
# ¡ Game_Player
#==============================================================================
class Game_Player < Game_Character
#--------------------------------------------------------------------------
# - Frame renewal
#--------------------------------------------------------------------------
alias update_para_quarter update
def update
update_para_quarter
unless moving? or $game_system.map_interpreter.running? or
@move_route_forcing or $game_temp.message_window_showing
# •ûŒüƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ê‚Ä‚¢‚ê‚ÎA‚»‚Ì•ûŒü‚ÖƒvƒŒƒCƒ„[‚ðˆÚ“®
case Input.dir8
when 1 # ‰º‚Ɉړ®
move_lower_left
when 3 # ‰E‰º‚Ɉړ®
move_lower_right
when 7 # ã‚Ɉړ®
move_upper_left
when 9 # ‰Eã‚Ɉړ®
move_upper_right
end
end
end
end
#==============================================================================
# ¡ Sprite_Character
#==============================================================================
class Sprite_Character < RPG::Sprite
#--------------------------------------------------------------------------
# - Frame renewal
#--------------------------------------------------------------------------
alias update_para_quarter update
def update
update_para_quarter
if @tile_id == 0
if (@character.direction - 2) % 2 == 1
# ŽÎ‚߉摜‚Ì—L–³‚ðƒ`ƒFƒbƒN
if quarter_graphic_exist?(@character)
# ŽÎ‚߉摜‚ðƒZƒbƒg
if character.dash_on and dash_quarter_graphic_exist?(@character)
@character_name = @character.character_name + "_dash_quarter"
else
@character_name = @character.character_name + "_quarter"
end
self.bitmap = RPG::Cache.character(@character_name,
@character.character_hue)
# Œü‚«‚ðŽæ“¾
case @character.direction
when 1
n = 0
when 3
n = 2
when 7
n = 1
when 9
n = 3
end
else
@character.direction = @character.sub_direction
# ŽÎ‚߉摜‚ª‘Ý‚µ‚È‚¢‚Æ‚«‚ÌŒü‚«
n = (@character.direction - 2) / 2
end
# “]‘—Œ³‚Ì‹éŒ`‚ðÝ’è
sx = @character.pattern * @cw
sy = n * @ch
self.src_rect.set(sx, sy, @cw, @ch)
else
self.bitmap = RPG::Cache.character(@character.character_name,
@character.character_hue)
# “]‘—Œ³‚Ì‹éŒ`‚ðÝ’è
sx = @character.pattern * @cw
sy = (@character.direction - 2) / 2 * @ch
self.src_rect.set(sx, sy, @cw, @ch)
end
end
end
#--------------------------------------------------------------------------
# › ŽÎ‚߉摜‚Ì—L–³‚ðƒ`ƒFƒbƒN
#--------------------------------------------------------------------------
def quarter_graphic_exist?(character)
# “Ç‚Ýž‚݃eƒXƒg
begin
RPG::Cache.character(character.character_name.to_s + "_quarter", character.character_hue)
rescue
return false
end
return true
end
#--------------------------------------------------------------------------
# › ŽÎ‚߃_ƒbƒVƒ…‰æ‘œ‚Ì—L–³‚ðƒ`ƒFƒbƒN
#--------------------------------------------------------------------------
def dash_quarter_graphic_exist?(character)
# “Ç‚Ýž‚݃eƒXƒg
begin
RPG::Cache.character(character.character_name.to_s + "_dash_quarter", character.character_hue)
rescue
return false
end
return true
end
end
#==============================================================================
# ¡ Game_Character
#==============================================================================
class Game_Character
#--------------------------------------------------------------------------
# œ ŒöŠJƒCƒ“ƒXƒ^ƒ“ƒX•Ï”
#--------------------------------------------------------------------------
attr_accessor :direction # Œü‚«
attr_accessor :sub_direction # ŽÎ‚߉摜‚ª‘Ý‚µ‚È‚¢‚Æ‚«‚ÌŒü‚«
#--------------------------------------------------------------------------
# œ ‰º‚Ɉړ®
#--------------------------------------------------------------------------
def move_lower_left
# Œü‚«ŒÅ’è‚Å‚È‚¢ê‡
unless @direction_fix
@sub_direction = @direction
@direction = 1
# ‰EŒü‚«‚¾‚Á‚½ê‡‚Í‚ðAãŒü‚«‚¾‚Á‚½ê‡‚͉º‚ðŒü‚
@sub_direction = (@sub_direction == 6 ? 4 : @sub_direction == 8 ? 2 : @sub_direction)
end
# ‰º¨A¨‰º ‚Ì‚Ç‚¿‚ç‚©‚̃R[ƒX‚ª’Ês‰Â”\‚Èê‡
if (passable?(@x, @y, 2) and passable?(@x, @y + 1, 4)) or
(passable?(@x, @y, 4) and passable?(@x - 1, @y, 2))
# À•W‚ðXV
@x -= 1
@y += 1
# •à”‘‰Á
increase_steps
end
end
#--------------------------------------------------------------------------
# œ ‰E‰º‚Ɉړ®
#--------------------------------------------------------------------------
def move_lower_right
# Œü‚«ŒÅ’è‚Å‚È‚¢ê‡
unless @direction_fix
@sub_direction = @direction
@direction = 3
# Œü‚«‚¾‚Á‚½ê‡‚͉E‚ðAãŒü‚«‚¾‚Á‚½ê‡‚͉º‚ðŒü‚
@sub_direction = (@sub_direction == 4 ? 6 : @sub_direction == 8 ? 2 : @sub_direction)
end
# ‰º¨‰EA‰E¨‰º ‚Ì‚Ç‚¿‚ç‚©‚̃R[ƒX‚ª’Ês‰Â”\‚Èê‡
if (passable?(@x, @y, 2) and passable?(@x, @y + 1, 6)) or
(passable?(@x, @y, 6) and passable?(@x + 1, @y, 2))
# À•W‚ðXV
@x += 1
@y += 1
# •à”‘‰Á
increase_steps
end
end
#--------------------------------------------------------------------------
# œ ã‚Ɉړ®
#--------------------------------------------------------------------------
def move_upper_left
# Œü‚«ŒÅ’è‚Å‚È‚¢ê‡
unless @direction_fix
@sub_direction = @direction
@direction = 7
# ‰EŒü‚«‚¾‚Á‚½ê‡‚Í‚ðA‰ºŒü‚«‚¾‚Á‚½ê‡‚Íã‚ðŒü‚
@sub_direction = (@sub_direction == 6 ? 4 : @sub_direction == 2 ? 8 : @sub_direction)
end
# ã¨A¨ã ‚Ì‚Ç‚¿‚ç‚©‚̃R[ƒX‚ª’Ês‰Â”\‚Èê‡
if (passable?(@x, @y, 8) and passable?(@x, @y - 1, 4)) or
(passable?(@x, @y, 4) and passable?(@x - 1, @y, 8))
# À•W‚ðXV
@x -= 1
@y -= 1
# •à”‘‰Á
increase_steps
end
end
#--------------------------------------------------------------------------
# œ ‰Eã‚Ɉړ®
#--------------------------------------------------------------------------
def move_upper_right
# Œü‚«ŒÅ’è‚Å‚È‚¢ê‡
unless @direction_fix
@sub_direction = @direction
@direction = 9
# Œü‚«‚¾‚Á‚½ê‡‚͉E‚ðA‰ºŒü‚«‚¾‚Á‚½ê‡‚Íã‚ðŒü‚
@sub_direction = (@sub_direction == 4 ? 6 : @sub_direction == 2 ? 8 : @sub_direction)
end
# 㨉EA‰E¨ã ‚Ì‚Ç‚¿‚ç‚©‚̃R[ƒX‚ª’Ês‰Â”\‚Èê‡
if (passable?(@x, @y, 8) and passable?(@x, @y - 1, 6)) or
(passable?(@x, @y, 6) and passable?(@x + 1, @y, 8))
# À•W‚ðXV
@x += 1
@y -= 1
# •à”‘‰Á
increase_steps
end
end
#--------------------------------------------------------------------------
# › ƒ_ƒbƒVƒ…ƒXƒNƒŠƒvƒg“±“ü”»’è
#--------------------------------------------------------------------------
def dash_on
if @dash_on != nil
return @dash_on
else
return false
end
end
end
Ok maybe it's right this time and thanks for your patience.