VB Code:
Public Function Resize(Optional Width = -1, Optional Height = -1) As Boolean
#If APP_RELEASE Then
On Error GoTo Err:
#End If
Dim tTiles() As TileType
Dim L As Long
Dim X As Long
Dim Y As Long
If Width < 0 Then
Let Width = Header.Width
End If
If Height < 0 Then
Let Height = Header.Height
End If
ReDim tTiles(LayerMax, Header.Width, Header.Height) As TileType
For L = 0 To LayerMax
For X = 0 To Header.Width
For Y = 0 To Header.Height
Let tTiles(L, X, Y) = Tiles(L, X, Y)
Next Y
Next X
Next L
ReDim Tiles(LayerMax, Width, Height) As TileType
For L = 0 To LayerMax
For X = 0 To Width
For Y = 0 To Height
If X <= Header.Width And Y <= Header.Height Then
Let Tiles(L, X, Y) = tTiles(L, X, Y)
Else
Let Tiles(L, X, Y).ResourceX = L * -1
Let Tiles(L, X, Y).ResourceY = L * -1
End If
Next Y
Next X
Next L
Erase tTiles
Let Header.Width = Width
Let Header.Height = Height
Let Resize = True
Exit Function
Err:
ReDim Tiles(LayerMax, Header.Width, Header.Height) As TileType
For L = 0 To LayerMax
For X = 0 To Header.Width
For Y = 0 To Header.Height
Let Tiles(L, X, Y) = tTiles(L, X, Y)
Next Y
Next X
Next L
Erase tTiles
End Function