mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-09 06:04:59 +00:00
More renaming and rearranging, fixed typo from earlier commit, tweaked splash and title screen code
This commit is contained in:
65
Data/Scripts/014_Trainers/003_Trainer_Sprites.rb
Normal file
65
Data/Scripts/014_Trainers/003_Trainer_Sprites.rb
Normal file
@@ -0,0 +1,65 @@
|
||||
#===============================================================================
|
||||
# Walking charset, for use in text entry screens and load game screen
|
||||
#===============================================================================
|
||||
class TrainerWalkingCharSprite < SpriteWrapper
|
||||
def initialize(charset,viewport=nil)
|
||||
super(viewport)
|
||||
@animbitmap = nil
|
||||
self.charset = charset
|
||||
@animframe = 0 # Current pattern
|
||||
@frame = 0 # Frame counter
|
||||
self.animspeed = 5 # Animation speed (frames per pattern)
|
||||
end
|
||||
|
||||
def charset=(value)
|
||||
@animbitmap.dispose if @animbitmap
|
||||
@animbitmap = nil
|
||||
bitmapFileName = sprintf("Graphics/Characters/%s",value)
|
||||
@charset = pbResolveBitmap(bitmapFileName)
|
||||
if @charset
|
||||
@animbitmap = AnimatedBitmap.new(@charset)
|
||||
self.bitmap = @animbitmap.bitmap
|
||||
self.src_rect.set(0,0,self.bitmap.width/4,self.bitmap.height/4)
|
||||
else
|
||||
self.bitmap = nil
|
||||
end
|
||||
end
|
||||
|
||||
def altcharset=(value) # Used for box icon in the naming screen
|
||||
@animbitmap.dispose if @animbitmap
|
||||
@animbitmap = nil
|
||||
@charset = pbResolveBitmap(value)
|
||||
if @charset
|
||||
@animbitmap = AnimatedBitmap.new(@charset)
|
||||
self.bitmap = @animbitmap.bitmap
|
||||
self.src_rect.set(0,0,self.bitmap.width/4,self.bitmap.height)
|
||||
else
|
||||
self.bitmap = nil
|
||||
end
|
||||
end
|
||||
|
||||
def animspeed=(value)
|
||||
@frameskip = value*Graphics.frame_rate/40
|
||||
end
|
||||
|
||||
def dispose
|
||||
@animbitmap.dispose if @animbitmap
|
||||
super
|
||||
end
|
||||
|
||||
def update
|
||||
@updating = true
|
||||
super
|
||||
if @animbitmap
|
||||
@animbitmap.update
|
||||
self.bitmap = @animbitmap.bitmap
|
||||
end
|
||||
@frame += 1
|
||||
if @frame>=@frameskip
|
||||
@animframe = (@animframe+1)%4
|
||||
self.src_rect.x = @animframe*@animbitmap.bitmap.width/4
|
||||
@frame -= @frameskip
|
||||
end
|
||||
@updating = false
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user