Labels

Blitz3D Forums/Blitz3D Beginners Area/Labels

PowerPC603(Posted 2009) [#1]
Hi,

For my Arkanoid game, I'm creating the levels based on the data in data-statements.
But there will be more than 100 levels in the final game.
I'm using a massive Select Case to restore the correct data-block for each level.
	; Select the level data-block
	Select Level
		Case 1 : Restore Level001
		Case 2 : Restore Level002
		Case 3 : Restore Level003
		Case 4 : Restore Level004
;		Case 5 : Restore Level005
;		Case 6 : Restore Level006
;		Case 7 : Restore Level007
;		Case 8 : Restore Level008
;		Case 9 : Restore Level009
;		Case 10 : Restore Level010
;		Case 11 : Restore Level011
;		Case 12 : Restore Level012
;		Case 13 : Restore Level013
;		Case 14 : Restore Level014
;		Case 15 : Restore Level015
;		Case 16 : Restore Level016
;		Case 17 : Restore Level017
;		Case 18 : Restore Level018
;		Case 19 : Restore Level019
;		Case 20 : Restore Level020
;		Case 21 : Restore Level021
;		Case 22 : Restore Level022
;		Case 23 : Restore Level023
;		Case 24 : Restore Level024
;		Case 25 : Restore Level025
;		Case 26 : Restore Level026
;		Case 27 : Restore Level027
;		Case 28 : Restore Level028
;		Case 29 : Restore Level029
;		Case 30 : Restore Level030
;		Case 31 : Restore Level031
;		Case 32 : Restore Level032
;		Case 33 : Restore Level033
;		Case 34 : Restore Level034
;		Case 35 : Restore Level035
;		Case 36 : Restore Level036
;		Case 37 : Restore Level037
;		Case 38 : Restore Level038
;		Case 39 : Restore Level039
;		Case 40 : Restore Level040
;		Case 41 : Restore Level041
;		Case 42 : Restore Level042
;		Case 43 : Restore Level043
;		Case 44 : Restore Level044
;		Case 45 : Restore Level045
;		Case 46 : Restore Level046
;		Case 47 : Restore Level047
;		Case 48 : Restore Level048
;		Case 49 : Restore Level049
;		Case 50 : Restore Level050
;		Case 51 : Restore Level051
;		Case 52 : Restore Level052
;		Case 53 : Restore Level053
;		Case 54 : Restore Level054
;		Case 55 : Restore Level055
;		Case 56 : Restore Level056
;		Case 57 : Restore Level057
;		Case 58 : Restore Level058
;		Case 59 : Restore Level059
;		Case 60 : Restore Level060
;		Case 61 : Restore Level061
;		Case 62 : Restore Level062
;		Case 63 : Restore Level063
;		Case 64 : Restore Level064
;		Case 65 : Restore Level065
;		Case 66 : Restore Level066
;		Case 67 : Restore Level067
;		Case 68 : Restore Level068
;		Case 69 : Restore Level069
;		Case 70 : Restore Level070
;		Case 71 : Restore Level071
;		Case 72 : Restore Level072
;		Case 73 : Restore Level073
;		Case 74 : Restore Level074
;		Case 75 : Restore Level075
;		Case 76 : Restore Level076
;		Case 77 : Restore Level077
;		Case 78 : Restore Level078
;		Case 79 : Restore Level079
;		Case 80 : Restore Level080
;		Case 81 : Restore Level081
;		Case 82 : Restore Level082
;		Case 83 : Restore Level083
;		Case 84 : Restore Level084
;		Case 85 : Restore Level085
;		Case 86 : Restore Level086
;		Case 87 : Restore Level087
;		Case 88 : Restore Level088
;		Case 89 : Restore Level089
;		Case 90 : Restore Level090
;		Case 91 : Restore Level091
;		Case 92 : Restore Level092
;		Case 93 : Restore Level093
;		Case 94 : Restore Level094
;		Case 95 : Restore Level095
;		Case 96 : Restore Level096
;		Case 97 : Restore Level097
;		Case 98 : Restore Level098
;		Case 99 : Restore Level099
;		Case 100 : Restore Level100
;		Case 101 : Restore Level101
;		Case 102 : Restore Level102
;		Case 103 : Restore Level103
;		Case 104 : Restore Level104
;		Case 105 : Restore Level105
;		Case 106 : Restore Level106
;		Case 107 : Restore Level107
;		Case 108 : Restore Level108
;		Case 109 : Restore Level109
;		Case 110 : Restore Level110
;		Case 111 : Restore Level111
;		Case 112 : Restore Level112
;		Case 113 : Restore Level113
;		Case 114 : Restore Level114
;		Case 115 : Restore Level115
;		Case 116 : Restore Level116
;		Case 117 : Restore Level117
;		Case 118 : Restore Level118
;		Case 119 : Restore Level119
;		Case 120 : Restore Level120
;		Case 121 : Restore Level121
;		Case 122 : Restore Level122
;		Case 123 : Restore Level123
;		Case 124 : Restore Level124
;		Case 125 : Restore Level125
	End Select


I've commented out levels 5-125 because they don't exist yet.

But is there another way to do this?

Or should I go for reading the data from external files?


big10p(Posted 2009) [#2]
Or should I go for reading the data from external files?
Yes


PowerPC603(Posted 2009) [#3]
I thought as much :)

I only have 4 levels now, but the levels.bb file is already having 829 lines of data-statements (also some comments between the sections).

When the levels are complete, I could end up with about 25.000 lines of data-statements.
That would take alot of time to compile i guess.

I was hoping to pull it off with Data-statements, to keep the number of external files limited, but I guess there is no other option.

It will also be easier to maintain, as you don't need to recompile the entire program if you change one value in the data-statements.

Thanks.