Graphics3D 800,600,32,2
SetBuffer BackBuffer()
;########################################
Include "sprite candy.bb"
Include "blitzsys.bb"
;########################################
Global Camera = CreateCamera()
Global MainHUD = HUD_Create(Camera)
;########################################
Type TObject
Field LeftPart
Field MainPart
Field RightPart
Field Layer
Field LayerWidth
Field LayerHeight
Field Resource
Field Percentage
Field Path$
End Type
;########################################
Function ControlObjects()
XPosition = 0
For Objects.TObject = Each TObject
HUD_PositionObject(Objects\LeftPart, XPosition, 0)
XPosition = XPosition + HUD_GetObjectWidth(Objects\LeftPart)
HUD_PositionObject(Objects\MainPart, XPosition,0)
XPosition = XPosition + HUD_GetObjectWidth(Objects\MainPart)
HUD_PositionObject(Objects\RightPart, XPosition,0)
XPosition = XPosition + HUD_GetObjectWidth(Objects\RightPart)
Next
End Function
;########################################
Function ChangePercentage(ObjHandle, percent)
TempObject.TObject = Object.TObject(ObjHandle)
If TempObject\MainPart <> 0 Then
HUD_RemoveObject(TempObject\LeftPart)
HUD_RemoveObject(TempObject\MainPart)
HUD_RemoveObject(TempObject\RightPart)
End If
TempObject\LeftPart = HUD_CreateImage(TempObject\Layer, 0, 0,0,0,(Float#(percent)/100.0)*Float#(TempObject\LayerWidth))
TempObject\MainPart = HUD_CreateImage(TempObject\Layer,0,0,((Float#(percent)/100.0))*Float#(TempObject\LayerWidth),0,TempObject\LayerWidth-(((Float(percent)/100.0)*TempObject\LayerWidth)*2))
TempObject\RightPart = HUD_CreateImage(TempObject\Layer,0,0,((Float#(percent)/100.0)*TempObject\LayerWidth)+(TempObject\LayerWidth-(2*(Float(percent)/100.0)*TempObject\LayerWidth)),0,(Float(percent)/100.0)*TempObject\LayerWidth)
TempObject\Percentage = percent
HUD_SetObjectOrigin(TempObject\LeftPart, -1,-1)
HUD_SetObjectOrigin(TempObject\MainPart, -1,-1)
HUD_SetObjectOrigin(TempObject\RightPart, -1,-1)
HUD_SetObjectSize(TempObject\LeftPart, (Float#(HUD_GetObjectWidth(TempObject\LeftPart))/Float#(TempObject\LayerHeight)*300.0),300)
HUD_SetObjectSize(TempObject\MainPart, (Float#(HUD_GetObjectWidth(TempObject\MainPart))/Float#(HUD_GetObjectHeight(TempObject\MainPart))*350.0),300)
HUD_SetObjectSize(TempObject\RightPart, (Float#(HUD_GetObjectWidth(TempObject\RightPart))/Float#(HUD_GetObjectHeight(TempObject\RightPart))*350.0),300)
End Function
;########################################
Function AddImage(path$)
TempObject.TObject = New TObject
TempObject\Path$ = path$
TempObject\Resource = HUD_LoadImageResource(path$)
TempObject\Layer = HUD_CreateLayer(MainHUD, TempObject\Resource)
TempImage = LoadImage(path$)
TempObject\LayerWidth = ImageWidth(TempImage)
TempObject\LayerHeight = ImageHeight(TempImage)
FreeImage(TempImage)
ChangePercentage(Handle(TempObject), 10)
Return Handle(TempObject)
End Function
;########################################
Function MoveObjectUp(ObjHandle)
ObjectBefore.TObject = Before Object.TObject(ObjHandle)
End Function
;########################################
AddImage("C (10).JPG")
;########################################
Repeat
;########################################
HUD_Update()
ControlObjects()
RenderWorld
Flip
Cls
;########################################
Until KeyHit(1)
;########################################
;(Float#(ImageWidth(TempImage))/Float#(ImageHeight(TempImage)))*300.0,300