yes the end function is there, and I have declared hold array in the main program.. here is the Main Program code which calls this function.
Graphics3D 1024,768,16,2
Include "load.bb"
Type gameitems
Field item
Field anim1
Field anim2
Field gridx%
Field gridy%
Field points%
Field time%
Field lives%
Field ID%
Field status%
Field puzzle%
Field nextitem%
End Type
Global GX#
Global GY#
Global Current_Piece% ;use this to track what piece player should hit.
Global currlevel% ;use this to track the current level we are on.
Global countx%
Dim hold.gameitems(18)
For countx% = 0 To 18
hold.gameitems(countx%) = New gameitems
Next
GX# = 64
GY# = 64
LoadMyStuff()
Repeat
RenderWorld
Flip
Until KeyHit(1)
Then the load.bb file code is:
Function LoadMyStuff()
count% = 0
If count% = 0
hold(count%)\item = nS_LoadImage("../media/image0.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 1 Then
hold(count%)\item = nS_LoadImage("../media/image1.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 2 Then
hold(count%)\item = nS_LoadImage("../media/image2.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 3 Then
hold(count%)\item = nS_LoadImage("../media/image3.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 4 Then
hold(count%)\item = nS_LoadImage("../media/image4.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 5 Then
hold(count%)\item = nS_LoadImage("../media/image5.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 6 Then
hold(count%)\item = nS_LoadImage("../media/image6.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 7 Then
hold(count%)\item = nS_LoadImage("../media/image7.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 8 Then
hold(count%)\item = nS_LoadImage("../media/image8.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 9 Then
hold(count%)\item = nS_LoadImage("../media/image9.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 10 Then
hold(count%)\item = nS_LoadImage("../media/image10.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 11 Then
hold(count%)\item = nS_LoadImage("../media/image11.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 12 Then
hold(count%)\item = nS_LoadImage("../media/image12.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 13 Then
hold(count%)\item = nS_LoadImage("../media/image13.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 14 Then
hold(count%)\item = nS_LoadImage("../media/image14.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 15 Then
hold(count%)\item = nS_LoadImage("../media/image15.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 16 Then
hold(count%)\item = nS_LoadImage("../media/image16.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 17 Then
hold(count%)\item = nS_LoadImage("../media/image17.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
If count% = 18 Then
hold(count%)\item = nS_LoadImage("../media/image18.jpg",4,True)
hold(count%)\anim1 = nS_LoadAnimImage("../media/particle1.jpg",GX#,GY#,0,10,4,True)
hold(count%)\anim2 = nS_LoadAnimImage("../media/particle2.jpg",GX#,GY#,0,10,4,True)
hold(count%)\gridx% = -1
hold(count%)\gridy% = -1
hold(count%)\points% = 0 ;0=stopped
hold(count%)\time% = 0
hold(count%)\lives% = 0
hold(count%)\ID% = count%
hold(count%)\status% = 0 ;0=stopped
hold(count%)\puzzle% = 0 ;not a puzzle piece
hold(count%)\nextitem% = ID_free
count% = count% + 1
EndIf
End Function
Hope this helps, as I think I either have a logic error, or my blitz3d installation is messed up.