Not if you create a cube/box in that way, but yes it is possible.
Each mesh/limb of an object can only have one texture assigned to it. The only way to get multiple textures is to use multiple limbs.
Here's an example dice:
sync on
sync rate 60
autocam off
` Generate an image for each side of the cube
GenerateImage(1, "1")
GenerateImage(2, "2")
GenerateImage(3, "3")
GenerateImage(4, "4")
GenerateImage(5, "5")
GenerateImage(6, "6")
` Make a mesh
make object plane 1, 1.0, 1.0, 1
make mesh from object 1, 1
delete object 1
` Construct the object
` - Front
make object 1, 1, 0
offset limb 1, 0, 0.0, 0.0, -0.5
texture limb 1, 0, 1
` - Back
add limb 1, 1, 1
offset limb 1, 1, 0.0, 0.0, 0.5
rotate limb 1, 1, 180.0, 0.0, 0.0
texture limb 1, 1, 6
` - Left
add limb 1, 2, 1
offset limb 1, 2, -0.5, 0.0, 0.0
rotate limb 1, 2, 0.0, 90.0, 0.0
texture limb 1, 2, 2
` - Right
add limb 1, 3, 1
offset limb 1, 3, 0.5, 0.0, 0.0
rotate limb 1, 3, 0.0, 270.0, 0.0
texture limb 1, 3, 5
` - Bottom
add limb 1, 4, 1
offset limb 1, 4, 0.0, -0.5, 0.0
rotate limb 1, 4, 270.0, 0.0, 0.0
texture limb 1, 4, 4
` - Top
add limb 1, 5, 1
offset limb 1, 5, 0.0, 0.5, 0.0
rotate limb 1, 5, 90.0, 0.0, 0.0
texture limb 1, 5, 3
` - Recalculate the object size/bounds for collision/frustum culling purposes
set object frame 1, 0, 3
` Position the camera
position camera 0.0, 1.0, -5.0
point camera 0.0, 0.0, 0.0
` Tumble the dice
do
rotate object 1, wrapvalue( object angle x(1) + 1.5 ), wrapvalue( object angle y(1) + 1.5 ), wrapvalue( object angle z(1) + 1.5 )
sync
loop
function GenerateImage(ImageId as integer, Txt as string)
cls
text 0, 0, Txt
get image ImageId, 0, 0, text width(Txt), text height(Txt), 1
endfunction
It can be done a little easier with commands from my plug-ins, but only a little.