if $imported[:ve_pixel_movement]
class Sprite_Character < Sprite_Base
#--------------------------------------------------------------------------
# * Definição de bitmap do tile
#--------------------------------------------------------------------------
alias :set_bitmap_ve_test :set_bitmap
def set_bitmap
set_bitmap_ve_test
return if @character.follower?
setup_rect_sprite(@character.bw * 32, @character.bh * 32)
end
alias :set_tile_bitmap_ve_test :set_tile_bitmap
def set_tile_bitmap
set_tile_bitmap_ve_test
setup_rect_sprite(32, 32)
end
def setup_rect_sprite(w, h)
@rect_sprite.dispose if @rect_sprite
@rect_sprite = Sprite_Base.new(self.viewport)
@rect_sprite.bitmap = Bitmap.new(w, h)
rect1 = Rect.new(0, 0, w, h)
rect2 = Rect.new(1, 1, w - 2, h - 2)
@rect_sprite.bitmap.fill_rect(rect1, Color.new(255, 64, 64, 255))
@rect_sprite.bitmap.fill_rect(rect2, Color.new(255, 64, 64, 96))
end
alias :update_position_ve_test :update_position
def update_position
update_position_ve_test
if @rect_sprite
@rect_sprite.x = @character.screen_x - @character.bw * 32 / 2
@rect_sprite.y = @character.screen_y - @character.bh * 32 + @character.shift_y
@rect_sprite.z = @character.screen_z + 1
end
end
alias :dispose_ve_test :dispose
def dispose
@rect_sprite.dispose if @rect_sprite
dispose_ve_test
end
end
end