mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2026-07-22 07:37:00 +00:00
Update 6.8
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
class Sprite_Bicycle < Sprite_Wearable
|
||||
def initialize(player_sprite, filename, action, viewport)
|
||||
super
|
||||
@relative_z = -1
|
||||
end
|
||||
|
||||
def update(action, filename, color)
|
||||
if @player_sprite.biking?
|
||||
filename = $PokemonGlobal.bike_trick ? getOverworldBicycleTrickFilename : getOverworldBicycleFilename
|
||||
end
|
||||
super(action, filename, color)
|
||||
end
|
||||
|
||||
|
||||
def animate(action, frame = nil)
|
||||
@action = action
|
||||
current_frame = @player_sprite.character.pattern if !frame
|
||||
direction = @player_sprite.character.direction
|
||||
check_bike_trick
|
||||
crop_spritesheet(direction, current_frame)
|
||||
adjust_layer()
|
||||
set_sprite_position(@action, direction, current_frame)
|
||||
end
|
||||
|
||||
def check_bike_trick
|
||||
if @player_sprite.biking?
|
||||
correct_filename = $PokemonGlobal.bike_trick ? getOverworldBicycleTrickFilename : getOverworldBicycleFilename
|
||||
if correct_filename != @filename
|
||||
bike_color = $Trainer.bike_color || 0
|
||||
if pbResolveBitmap(correct_filename)
|
||||
@wearableBitmap = AnimatedBitmap.new(correct_filename, bike_color)
|
||||
@sprite.bitmap = @wearableBitmap.bitmap
|
||||
end
|
||||
@filename = correct_filename
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def crop_spritesheet(direction, current_frame)
|
||||
sprite_x = ((current_frame)) * @frameWidth
|
||||
sprite_y = ((direction - 2) / 2) * @frameHeight
|
||||
@sprite.src_rect.set(sprite_x, sprite_y, @frameWidth, @frameHeight)
|
||||
end
|
||||
|
||||
def set_sprite_position(action, direction, current_frame)
|
||||
@sprite.x = @player_sprite.x
|
||||
@sprite.y = @player_sprite.y
|
||||
if $PokemonGlobal.bike_trick # to compensate for the offset applied to the player
|
||||
@sprite.y += Sprite_Player::ACRO_BIKE_TRICK_POSITION_OFFSET
|
||||
end
|
||||
@sprite.ox = @player_sprite.ox
|
||||
@sprite.oy = @player_sprite.oy
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user