Tuesday, January 22, 2013

New update for BB 1.5 and HBF

Here is the what's new:

Framework)

  • TLayer new method HasAttribute()
  • TGraphicDriver  new method Clear()
  • TGraphicDriver.Available() improved (still need to be improved)
  • New TSprite effect seInverse
  • In a layer the items now can have a priority
  • TLayer.Render() now calls UpdateCollider() (this is mandatory!)
  • New method TLayer.FindAttribute()
  • TSprite.SetIndex() does not longer calls UpdateCollider(), this should be a manual call (like in layer.render)
  • Layers in sprites are associate with a weak reference
  • TSimpleSprite.Assign() assign more variables...
  • In TSpriteEngine when the cache is clear, the related surfaces are destroyed
  • New method TLayer.SetView()
  • View in Layer is created by default not calculated all the time
  • TBackground now uses horizontal and vertical speed 
  • TBackground now has a new control to avoid infinite loops when width = 0
  • Button pressed in joystick fixed
  • Animations now can read ColorKey
  • Layer implement slopes
  • ISurface new GetCRC and RetrieveHeights
  • New AnimationType atRandom
  • Cache moved from TGraphicDriver to TSpriteEngine
  • New TSpriteEngine.GetSurface() method
  • New TLayer.GetCellsAt() method
  • New TSimpleSprite.SetFullBB() method
  • TSprite.SetIndex() now uses the engine cache
  • New ILayer.GetCellsAt()
  • TSpriteEngine now has a default Z to apply to related sprites 
  • TSpriteEngine now has a priority, so Z can be added or subtracted
  • TLayer set Z to TSpriteEngine when rendering an attached sprite engine 
  • The graphics engine now sorts the buffers per supplied Z (this helps a lots when rendering with ColorKeys)
  • TRenderBuffer and TBufferAttributes merged into one single class
  • In TLayer, Zoom property is spread across all items 
  • When a sprite is paused, the timeout is also paused
  • Remove GetSolid/SetSolid from sprites 
  • -Added the concept of vars (key/value) to sprites, so one can freely create variables with values and then get the values
  • Sprites now have the DeleteVar() / FindVar()
  • ISprite now declares GetAttachedSprite and SetAngleSpeed
  • New GetSpeedFromAngle() in BB.Math 
  • TSound
    • New class functions in order to retrieve min/max Volume/Panning 
    • Sounds now have DSBCAPS_CTRLVOLUME and DSBCAPS_CTRLPAN set by default
    • All calls to DirectSound now set the LastCode error

HBF)

  • New snow attribute, used in level 12
  • New animation when picking coins
  • SpawnAttributes() refactored
  • Some associations are done via TInterfaceHelper.WeakIntf() in order to avoid weird runtime errors
  • CalculateGravity() returns more info
  • Blob dies when lands on lava or water
  • Game.Clear() now calls more methods
  • Added more debug info
  • Fixed some weird collisions with hero and tiles at the top of the screen when there is also a tile underneath
  • Created a new attribute CHECKPOINT, so is easier to distinguish while coding the map start and the map checkpoints
  • New animation when collecting a coin
  • Game is able to detect the scroll direction via attributes
  • Fixed a 1 frame Layer.Y error
  • All maps now have the direction attributes set 
  • Spikes now set the sound according to position and distance
  • New class TSoundDispatcher, all samples are played via that class
  • Joystick support
  • Background now has a 0.25 horizontal speed
  • Background can be paused
  • Sound can be switch off via .ini
  • Fixed some weird top collisions 
  • Items (moving tiles) are treated as static tiles in order to avoid dead collisions
  • OnOff items can be paused
  • Minor map changes
  • New TSpike with volume and panning
  • Hero now has 3 lives
  • When all coins are collected, hero gains a new life
  • Walkside tapes implemented (ugly sprite)
  • Music can be toggle with F1
  • Sound can be toggle with F2
  • Hero now applies acceleration and friction properly
  • Some maps now have slopes
  • Hero interact properly with slopes
  • Collision left/right now return the X impact point
  • Collision lef/right now use the GetCellsAt method
  • All Sprite.Z now are set as constants
  • Ice is tested with both feet
  • Game.Run() cleaned
  • Climb ladders is working when the top exit is also a tile (LADDER_TOP)
  • New unit Constants
  • Added springs (level 12)
  • Use of new vars specially for items (solid, platform, spring, tape, etc), they are used as tags
  • Some methods renamed for better understanding
  • Block items can push us also from left/right
  • Creating items and breaking items now are returned immediately as Collision
  • Handling moving platforms now takes into account hero's vertical velocity
  • ITape removed
  • Extra jump has another sample
  • New unit star 
  • New checkpoint system (much easier)
  • New direction ball (experiment)
  • Now doors have to be opened with a key
  • Fixed again some hero collision issues
  • New unit and class checkpoint
  • New class TPickup root for items than can be picked up
  • New unit and class rays 
Basicly adding new features to the "game" and improving the engine.








No comments:

Post a Comment