I am trying to convert my app from DBP to DarkGDK.Net, currently I am just trying to get the tile map to display but am having issues when trying to read in the image and split it into tiles to load into sprites. Below is the code I am using for reading the image and make the sprites:
Imports DarkGDK
Module Routines
Dim spriteMap1 As DarkGDK.Basic2D.Image
Dim spriteHolder As Basic2D.Bitmap
Public mySprites() As Basic2D.Sprite
Friend Sub load_spritepages() '*********************** Loads the HUD and Spritepage ***********************
Dim i As Integer
Dim j As Integer
Dim imageGet() As Basic2D.Image
Dim imageHolder As Basic2D.Image
'load image "media/Templar_Sprites01.png",3,1 `Sprite page - uses image 3.
spriteMap1 = New DarkGDK.Basic2D.Image("media/RPGquest2.png") 'Sprite page - uses image 3.
spriteHolder = New Basic2D.Bitmap(320, 512) 'create bitmap 1,320,512 - Create a temporary bitmap to paste it to. (could use image width?)
spriteHolder.SetCurrent() 'set current bitmap 1 `Go to that bitmap.
spriteMap1.Paste(0, 0, 1) 'paste image 3,0,0,1 Paste the image ready for grabbing sections of it. Black is transparent.
spriteMap1.Delete() 'delete image 3 `Free up image 3 for possible later use (sprites need their parent image retained?)
'Load first TileImage and break into Sprites starting at 100
For i = 0 To 15 'The number of rows (4 in this case)
For j = 0 To 9 'The number of columns (21)
imageGet((i * 10) + j + 100) = New Basic2D.Image(j * 32, i * 32, (j + 1) * 32, (i + 1) * 32) <===== Here is where null exception comes in
'get image (i*10)+j+100,j*32,i*32,(j+1)*32,(i+1)*32 Sprites start at 100. Sprites are 32*32, ~ 155 sprites
mySprites((i * 10) + j + 100) = New Basic2D.Sprite(0, 0, imageGet((i * 10) + j + 100)) 'sprite (i*10)+j+100,0,0,(i*10)+j+100 'Create the sprite
'hide(sprite(i * 10) + j + 100) Hide it again (we'll use it to paste later)
Next j
Next i
imageHolder = New DarkGDK.Basic2D.Image("media/inventorybox2.png")
mySprites(5) = New Basic2D.Sprite(0, 0, imageHolder) 'It'll be sprite 5
imageHolder = New DarkGDK.Basic2D.Image("media/TemplarQuestHUD.png")
mySprites(1) = New Basic2D.Sprite(0, 0, imageHolder) 'It'll be sprite 1
imageHolder = New DarkGDK.Basic2D.Image("media/templarquest_scroll.png")
mySprites(2) = New Basic2D.Sprite(0, 0, imageHolder) 'It'll be sprite 2
' load image "templarquest_rip.png",4,1
' sprite 3,0,0,4
' hide sprite 3
Basic2D.Sprite.HideAll()
'set current bitmap 0 `Go back to the proper screen (bitmap 0)
spriteHolder.Delete() 'delete bitmap 1 Delete the temporary bitmap
End Sub