Some stairs
// Project: models
// Created: 2018-12-07
// show all errors
SetErrorMode(2)
// set window properties
SetWindowTitle( "models" )
SetWindowSize( 1024, 768, 0 )
SetWindowAllowResize( 1 ) // allow the user to resize the window
// set display properties
SetVirtualResolution( 1024, 768 ) // doesn't have to match the window
SetOrientationAllowed( 1, 1, 1, 1 ) // allow both portrait and landscape on mobile devices
SetSyncRate( 30, 0 ) // 30fps instead of 60 to save battery
SetScissor( 0,0,0,0 ) // use the maximum available screen space, no black borders
UseNewDefaultFonts( 1 ) // since version 2.0.22 we can use nicer default fonts
//background = CreateSprite(loadimage("models.png"))
type _models
name$
pivotobject
size
red
green
blue
alpha
objects as integer[]
endtype
global models as _models[]
insertmodel("SmallChair",0,0,200,255,0)
insertmodel("Table",200,200,200,100,1)
insertmodel("TableMedium",200,200,200,100,1)
insertmodel("TableSmall",200,200,200,100,1)
insertmodel("TableTop5Edges",200,200,0,255,0)
insertmodel("Table",200,200,0,255,0)
insertmodel("TableMedium",200,200,0,255,0)
insertmodel("TableSmall",200,200,0,255,0)
insertmodel("DoubleBed",200,0,0,255,0)
insertmodel("Stairs",210,180,184,255,0)
SetObjectScale(models[8].pivotobject,2,1,2)
do
print(models.length)
SetObjectPosition(models[0].pivotobject,0,0,10)
SetObjectPosition(models[1].pivotobject,0,0,7)
SetObjectPosition(models[2].pivotobject,0,-.3,7)
SetObjectPosition(models[3].pivotobject,0,-.5,7)
SetObjectPosition(models[4].pivotobject,0,0,2)
SetObjectPosition(models[5].pivotobject,-5,0,0)
SetObjectPosition(models[6].pivotobject,0,-.3,0)
SetObjectPosition(models[7].pivotobject,5,-.5,0)
SetObjectPosition(models[8].pivotobject,-5,0,-4)
SetObjectPosition(models[9].pivotobject,-10,0,10)
RotateObjectGlobalY(models[9].pivotobject,1)
Render2DFront()
Print( ScreenFPS() )
Sync()
loop
function insertmodel(modelname$, red,green,blue, alpha, transparencyon)
modelobject as _models
size=5
modelobject.name$ = modelname$
modelobject.red=red
modelobject.green=green
modelobject.blue=blue
modelobject.alpha=alpha
currentmodelcounter=0
if modelname$="SmallChair"
//seat
modelobject.pivotobject = CreateObjectBox(size,size/4,size/2+.2)
//left arm
modelobject.objects.insert(CreateObjectBox((size/2),size/2,size/3))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),GetObjectSizeMaxY(modelobject.objects[currentmodelcounter])/2,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// right arm
modelobject.objects.insert(CreateObjectBox(size/2,size/2,size/3))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-size/2,GetObjectSizeMaxY(modelobject.objects[currentmodelcounter])/2,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// back
modelobject.objects.insert(CreateObjectBox(size,size/2+.5,size/3))
SetObjectPosition(modelobject.objects[currentmodelcounter],0.2,GetObjectSizeMaxY(modelobject.objects[currentmodelcounter])/2,size/4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject )
inc currentmodelcounter
SetObjectTransparency(modelobject.pivotobject,0)
endif
if modelname$="Table"
//table top
modelobject.pivotobject = CreateObjectBox(size-.3,size/8,size/2-.3)
SetObjectColor(modelobject.pivotobject,modelobject.red,modelobject.green,modelobject.blue,0)
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),-.5,GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),-.5,-GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-GetObjectSizeMaxX(modelobject.pivotobject),-.5,GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-GetObjectSizeMaxX(modelobject.pivotobject),-.5,-GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size,size/8,.3))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,0,-size/4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size,size/8,.3))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,0,size/4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size/2,size/8,.3))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],size/2+.5,0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size/2,size/8,.3))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-size/2-.5,0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
endif
if modelname$="TableMedium"
size=4
//table top
modelobject.pivotobject = CreateObjectBox(size-.3,size/6,size/2-.3)
SetObjectColor(modelobject.pivotobject,modelobject.red,modelobject.green,modelobject.blue,0)
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),-.5,GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),-.5,-GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-GetObjectSizeMaxX(modelobject.pivotobject),-.5,GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-GetObjectSizeMaxX(modelobject.pivotobject),-.5,-GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size,size/8,.3))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,0,-size/4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size,size/8,.3))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,0,size/4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size/2,size/8,.3))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],size/2,0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size/2,size/8,.3))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-size/2,0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
SetObjectTransparency(modelobject.pivotobject,1)
endif
if modelname$="TableSmall"
size=3
//table top
modelobject.pivotobject = CreateObjectBox(size-.3,size/4,size/2-.3)
//SetObjectPosition(modelobject.pivotobject,0,3,0)
// create leg
modelobject.objects.insert(CreateObjectBox(.1,.6,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),-.3,GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,.6,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),-.3,-GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,.6,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-GetObjectSizeMaxX(modelobject.pivotobject),-.3,GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,.6,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-GetObjectSizeMaxX(modelobject.pivotobject),-.3,-GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// Edges
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size,.1,.1))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,0,.4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size,.1,.1))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,0,-.4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size/2-.1,.1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],size/2+.5,0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size/2-.1,.1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-size/2-.5,0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
endif
if modelname$="TableTop5Edges"
size=2
//table top
modelobject.pivotobject = CreateObjectCylinder(.2,size,5)
modelobject.objects.insert(CreateObjectCylinder(size/2,size/3.0,10))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,-size/4.0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
endif
if modelname$="DoubleBed"
size=2
//table top
modelobject.pivotobject = CreateObjectBox(size,.1,size)
SetObjectColor(modelobject.pivotobject,210,180,184,255)
// head rest
modelobject.objects.insert(CreateObjectBox(.1,.8,size))
SetObjectPosition(modelobject.objects[currentmodelcounter],-1,.2,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],210,180,184,255)
inc currentmodelcounter
// quilt
modelobject.objects.insert(CreateObjectBox(size-.5,.1,size))
SetObjectPosition(modelobject.objects[currentmodelcounter],.2,.2,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],200,0,0,255)
inc currentmodelcounter
// pillow
modelobject.objects.insert(CreateObjectBox(.5,.1,size))
SetObjectPosition(modelobject.objects[currentmodelcounter],-.7,.2,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],255,255,255,255)
inc currentmodelcounter
// feet
modelobject.objects.insert(CreateObjectBox(.1,.5,.1))
SetObjectPosition(modelobject.objects[currentmodelcounter],.95,0,.95)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],210,180,184,255)
inc currentmodelcounter
// feet
modelobject.objects.insert(CreateObjectBox(.1,.5,.1))
SetObjectPosition(modelobject.objects[currentmodelcounter],.95,0,-.95)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],210,180,184,255)
inc currentmodelcounter
endif
if modelname$="Stairs"
size#=10
//table top
modelobject.pivotobject = CreateObjectBox(size#,size#/12,size#/2)
SetObjectColor(modelobject.pivotobject,210,180,184,255)
for a#=1 to size# step 1
// feet
modelobject.objects.insert(CreateObjectBox((size#)-(a#),size#/12,size#/2))
SetObjectPosition(modelobject.objects[currentmodelcounter],a#/2,a#*.4,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],210,180,184,255)
inc currentmodelcounter
next
endif
SetObjectTransparency(modelobject.pivotobject,transparencyon)
// for a=0 to modelobject.objects.length
// SetObjectColor(modelobject.objects[a],modelobject.red,modelobject.green,modelobject.blue,255)
// next
//SetObjectColor(modelobject.pivotobject,modelobject.red,modelobject.green,modelobject.blue,modelobject.alpha)
models.insert(modelobject)
endfunction
// Project: models
// Created: 2018-12-07
// show all errors
SetErrorMode(2)
// set window properties
SetWindowTitle( "models" )
SetWindowSize( 1024, 768, 0 )
SetWindowAllowResize( 1 ) // allow the user to resize the window
// set display properties
SetVirtualResolution( 1024, 768 ) // doesn't have to match the window
SetOrientationAllowed( 1, 1, 1, 1 ) // allow both portrait and landscape on mobile devices
SetSyncRate( 30, 0 ) // 30fps instead of 60 to save battery
SetScissor( 0,0,0,0 ) // use the maximum available screen space, no black borders
UseNewDefaultFonts( 1 ) // since version 2.0.22 we can use nicer default fonts
//background = CreateSprite(loadimage("models.png"))
type _models
name$
pivotobject
size
red
green
blue
alpha
objects as integer[]
endtype
global models as _models[]
insertmodel("SmallChair",0,0,200,255,0)
insertmodel("Table",200,200,200,100,1)
insertmodel("TableMedium",200,200,200,100,1)
insertmodel("TableSmall",200,200,200,100,1)
insertmodel("TableTop5Edges",200,200,0,255,0)
insertmodel("Table",200,200,0,255,0)
insertmodel("TableMedium",200,200,0,255,0)
insertmodel("TableSmall",200,200,0,255,0)
insertmodel("DoubleBed",200,0,0,255,0)
insertmodel("Stairs",210,180,184,255,0)
insertmodel("StairsWithPlatform",210,180,184,255,0)
insertmodel("Window1",210,180,184,100,1)
SetObjectScale(models[8].pivotobject,2,1,2)
a=0
for x=-5 to 5
for z=-5 to 5
if GetObjectExists(models[a].pivotobject)=1 then SetObjectPosition(models[a].pivotobject,x, 0 , z * 4)
inc a
if a>models.length then a=models.length
next
next
SetCameraPosition(1,0,20,-40)
SetCameraRotation(1,30,-0,0)
do
print(models.length)
for a=0 to models.length
RotateObjectGlobalY(models[a].pivotobject,.5)
next
Render2DFront()
Print( ScreenFPS() )
Sync()
loop
function insertmodel(modelname$, red,green,blue, alpha, transparencyon)
modelobject as _models
size=5
modelobject.name$ = modelname$
modelobject.red=red
modelobject.green=green
modelobject.blue=blue
modelobject.alpha=alpha
currentmodelcounter=0
if modelname$="SmallChair"
//seat
modelobject.pivotobject = CreateObjectBox(size,size/4,size/2+.2)
SetObjectColor(modelobject.pivotobject,modelobject.red,modelobject.green,modelobject.blue,modelobject.alpha)
//left arm
modelobject.objects.insert(CreateObjectBox((size/2),size/2,size/3))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),GetObjectSizeMaxY(modelobject.objects[currentmodelcounter])/2,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// right arm
modelobject.objects.insert(CreateObjectBox(size/2,size/2,size/3))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-size/2,GetObjectSizeMaxY(modelobject.objects[currentmodelcounter])/2,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// back
modelobject.objects.insert(CreateObjectBox(size,size/2+.5,size/3))
SetObjectPosition(modelobject.objects[currentmodelcounter],0.2,GetObjectSizeMaxY(modelobject.objects[currentmodelcounter])/2,size/4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject )
inc currentmodelcounter
SetObjectTransparency(modelobject.pivotobject,0)
endif
if modelname$="Table"
//table top
modelobject.pivotobject = CreateObjectBox(size-.3,size/8,size/2-.3)
SetObjectColor(modelobject.pivotobject,modelobject.red,modelobject.green,modelobject.blue,modelobject.alpha)
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),-.5,GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),-.5,-GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-GetObjectSizeMaxX(modelobject.pivotobject),-.5,GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-GetObjectSizeMaxX(modelobject.pivotobject),-.5,-GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size,size/8,.3))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,0,-size/4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size,size/8,.3))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,0,size/4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size/2,size/8,.3))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],size/2+.5,0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size/2,size/8,.3))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-size/2-.5,0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
endif
if modelname$="TableMedium"
size=4
//table top
modelobject.pivotobject = CreateObjectBox(size-.3,size/6,size/2-.3)
SetObjectColor(modelobject.pivotobject,modelobject.red,modelobject.green,modelobject.blue,0)
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),-.5,GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),-.5,-GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-GetObjectSizeMaxX(modelobject.pivotobject),-.5,GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-GetObjectSizeMaxX(modelobject.pivotobject),-.5,-GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size,size/8,.3))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,0,-size/4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size,size/8,.3))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,0,size/4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size/2,size/8,.3))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],size/2,0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size/2,size/8,.3))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-size/2,0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
SetObjectTransparency(modelobject.pivotobject,1)
endif
if modelname$="TableSmall"
size=3
//table top
modelobject.pivotobject = CreateObjectBox(size-.3,size/4,size/2-.3)
SetObjectColor(modelobject.pivotobject,modelobject.red,modelobject.green,modelobject.blue,modelobject.alpha)
// create leg
modelobject.objects.insert(CreateObjectBox(.1,.6,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),-.3,GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,.6,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],GetObjectSizeMaxX(modelobject.pivotobject),-.3,-GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,.6,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-GetObjectSizeMaxX(modelobject.pivotobject),-.3,GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create leg
modelobject.objects.insert(CreateObjectBox(.1,.6,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-GetObjectSizeMaxX(modelobject.pivotobject),-.3,-GetObjectSizeMaxZ(modelobject.pivotobject))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// Edges
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size,.1,.1))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,0,.4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size,.1,.1))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,0,-.4)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size/2-.1,.1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],size/2+.5,0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
// create outeredge of table
modelobject.objects.insert(CreateObjectBox(size/2-.1,.1,.1))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],-size/2-.5,0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
inc currentmodelcounter
endif
if modelname$="TableTop5Edges"
size=2
//table top
modelobject.pivotobject = CreateObjectCylinder(.2,size,5)
SetObjectColor(modelobject.pivotobject,modelobject.red,modelobject.green,modelobject.blue,modelobject.alpha)
modelobject.objects.insert(CreateObjectCylinder(size/2,size/3.0,10))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,-size/4.0,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
endif
for a=0 to modelobject.objects.length
SetObjectColor(modelobject.objects[a],modelobject.red,modelobject.green,modelobject.blue,255)
next
// SetObjectColor(modelobject.pivotobject,modelobject.red,modelobject.green,modelobject.blue,modelobject.alpha)
if modelname$="Window1"
size#=5
modelobject.pivotobject = CreateObjectBox(.3,size#/4,size#)
SetObjectColor(modelobject.pivotobject,modelobject.red,modelobject.green,modelobject.blue,255)
// frame
modelobject.objects.insert(CreateObjectBox(.3,size#/4,size#))
//SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],0,size#,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[a],modelobject.red,modelobject.green,modelobject.blue,255)
inc currentmodelcounter
modelobject.objects.insert(CreateObjectBox(.3,size#/4,size#))
SetObjectRotation(modelobject.objects[currentmodelcounter],90,0,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],0,size#/2,size#/2)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],modelobject.red,modelobject.green,modelobject.blue,255)
inc currentmodelcounter
modelobject.objects.insert(CreateObjectBox(.3,size#/4,size#))
SetObjectRotation(modelobject.objects[currentmodelcounter],90,0,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],0,size#/2,-size#/2)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],modelobject.red,modelobject.green,modelobject.blue,255)
inc currentmodelcounter
// window itself
modelobject.objects.insert(CreateObjectBox(.3,size#/2+1,size#/2+1))
SetObjectPosition(modelobject.objects[currentmodelcounter],0,size#/2,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],200,200,200,modelobject.alpha)
inc currentmodelcounter
endif
/// these have a mixture of colours
if modelname$="DoubleBed"
size=2
//table top
modelobject.pivotobject = CreateObjectBox(size,.1,size)
SetObjectColor(modelobject.pivotobject,210,180,184,255)
// head rest
modelobject.objects.insert(CreateObjectBox(.1,.8,size))
SetObjectPosition(modelobject.objects[currentmodelcounter],-1,.2,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],210,180,184,255)
inc currentmodelcounter
// quilt
modelobject.objects.insert(CreateObjectBox(size-.5,.1,size))
SetObjectPosition(modelobject.objects[currentmodelcounter],.2,.2,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],200,0,0,255)
inc currentmodelcounter
// pillow
modelobject.objects.insert(CreateObjectBox(.5,.3,size))
SetObjectPosition(modelobject.objects[currentmodelcounter],-.7,.2,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],255,255,255,255)
inc currentmodelcounter
// feet
modelobject.objects.insert(CreateObjectBox(.1,.5,.1))
SetObjectPosition(modelobject.objects[currentmodelcounter],.95,0,.95)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],210,180,184,255)
inc currentmodelcounter
// feet
modelobject.objects.insert(CreateObjectBox(.1,.5,.1))
SetObjectPosition(modelobject.objects[currentmodelcounter],.95,0,-.95)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],210,180,184,255)
inc currentmodelcounter
endif
if modelname$="Stairs"
size#=10
//table top
modelobject.pivotobject = CreateObjectBox(size#,size#/12,size#/2)
SetObjectColor(modelobject.pivotobject,210,180,184,255)
for a#=1 to size# step 1
// feet
modelobject.objects.insert(CreateObjectBox((size#)-(a#),size#/12,size#/2))
SetObjectPosition(modelobject.objects[currentmodelcounter],a#/2,a#*.4,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],210,180,184,255)
inc currentmodelcounter
next
endif
if modelname$="StairsWithPlatform"
size#=5
//table top
modelobject.pivotobject = CreateObjectBox(size#/2,size#/12,size#/2)
SetObjectColor(modelobject.pivotobject,210,180,184,255)
for a#=1 to size# step 1
// feet
modelobject.objects.insert(CreateObjectBox((size#/2),size#/12,size#/2))
// SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],a#/2,a#*.4,0)
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],210,180,184,255)
inc currentmodelcounter
next
// platform
//modelobject.objects.insert(CreateObjectBox(size#,size#/2,size#/2))
//SetObjectPosition(modelobject.objects[currentmodelcounter],size#,1,0)
//FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
//SetObjectColor(modelobject.objects[currentmodelcounter],210,180,184,255)
//inc currentmodelcounter
for a#=size# to size#*2 step 1
// feet
modelobject.objects.insert(CreateObjectBox((size#/2),a#/12,size#/2))
SetObjectRotation(modelobject.objects[currentmodelcounter],0,90,0)
SetObjectPosition(modelobject.objects[currentmodelcounter],size#/2,a#*.4,size#/12+(a#*.4))
FixObjectToObject(modelobject.objects[currentmodelcounter],modelobject.pivotobject)
SetObjectColor(modelobject.objects[currentmodelcounter],210,180,184,255)
inc currentmodelcounter
next
endif
SetObjectTransparency(modelobject.pivotobject,transparencyon)
models.insert(modelobject)
endfunction
Will work on some more over weekend