yo, i been trying to use a variable for a case statement but didn't work, i did some reseach and found out that constants do work with case statments but when i try i just returned the "CASE needs a literal parameter" error
here's my code.
select world(X_loop + top_left_block.X,Y_loop + top_left_block.Y).block
case (Stone) `surface rock
ink RGB(96,99,61),0
box block_cord.X,block_cord.Y,block_cord.X+block_size,block_cord.Y+block_size
endcase
case (Concrete_floor) `floor
ink RGB(192,192,192),0
box block_cord.X,block_cord.Y,block_cord.X+block_size,block_cord.Y+block_size
endcase
case (wall) ` wall
ink RGB(192,192,192),0 `floor
box block_cord.X,block_cord.Y,block_cord.X+block_size,block_cord.Y+block_size
ink RGB(55,55,55),0
box int(block_cord.X + (block_size/3)),int(block_cord.Y + (block_size/3)),int((block_cord.X+block_size) - (block_size/3)),int((block_cord.Y+block_size) - (block_size/3))
`north
if world(X_loop+ top_left_block.X,Y_loop+ top_left_block.Y).connectN = true
box int(block_cord.X + (block_size/3)),block_cord.Y,int((block_cord.X+block_size) - (block_size/3)),int((block_cord.Y+block_size) - (block_size/3))
endif
`east
if world(X_loop+ top_left_block.X,Y_loop+ top_left_block.Y).connectE = true
box block_cord.X ,int(block_cord.Y + (block_size/3)),int((block_cord.X+block_size) - (block_size/3)),int((block_cord.Y+block_size) - (block_size/3))
endif
`south
if world(X_loop+ top_left_block.X,Y_loop+ top_left_block.Y).connectS = true
box int(block_cord.X + (block_size/3)),int(block_cord.Y + (block_size/3)),int((block_cord.X+block_size) - (block_size/3)),block_cord.Y+block_size
endif
`west
if world(X_loop+ top_left_block.X,Y_loop+ top_left_block.Y).connectW = true
box int(block_cord.X + (block_size/3)),int(block_cord.Y + (block_size/3)),block_cord.X+block_size,int((block_cord.Y+block_size) - (block_size/3))
endif
endcase
endselect
thinking about it, it might be the way i'm declearing the constants so heres there declaration as well.
`#constant <block name> create_block("<block name>",<hardness>,<volumn>,<mass>,<is solid>)
#constant Air Create_block("Air",0,1,0,false)
the Create_block function returns a integer