Here, sorry it's late. I have a life too
Rem Project: Dark Basic Pro Project
Rem Created: Sunday, August 14, 2011
Rem ***** Main Source File *****
sync on : sync rate 60
set window on
set window title "Game Template - Version 0.1 (Alpha)"
`(change set display mode 1366, 768, 0, 1 to: set display mode 1024, 768, 0, 1)`
set display mode 1366, 768, 0, 1
set window position 0, 0
type player
id as integer
x# as float
y# as float
z# as float
xrotation# as float
yrotation# as float
zrotation# as float
startsize# as float
xsize# as float
ysize# as float
zsize# as float
movespeed# as float
maxmovespeed# as float
turnspeed# as float
maxturnspeed# as float
health# as float
maxhealth# as float
magic# as float
maxmagic# as float
endtype
type camera
id as integer
distfromplayertocamera# as float
camypositionfromplayer# as float
smooth as integer
cameracollision as boolean
endtype
type object
id as integer
x# as float
y# as float
z# as float
xrotation# as float
yrotation# as float
zrotation# as float
startsize# as float
xsize# as float
ysize# as float
zsize# as float
movespeed# as float
maxmovespeed# as float
turnspeed# as float
maxturnspeed# as float
health# as float
maxhealth# as float
magic# as float
maxmagic# as float
endtype
global player as player
player.id = 10
player.x# = 0.0
player.y# = 1.0
player.z# = 0.0
player.xrotation# = 0.0
player.yrotation# = 0.0
player.zrotation# = 0.0
`NOTE: The startsize is the size of the object when it is FIRST created
player.startsize# = 1.0
Make_Player(player.id, player.startsize#)
objstartsize# = 1.0
howmany = 50
Make_Objects(objstartsize#, howmany)
position object player.id, player.x#, player.y#, player.z#
rotate object player.id, player.xrotation#, player.yrotation#, player.zrotation#
player.movespeed# = 0.3
player.maxmovespeed# = 0.5
player.turnspeed# = 0.7
player.maxturnspeed# = 0.9
global camera as camera
camera.id = 0
camera.distfromplayertocamera# = 5.0
camera.camypositionfromplayer# = 0.5
camera.smooth = 10 `How fast the camera's interpolation speed value is ; The lower the faster
camera.cameracollision = 1
make matrix 1000, 1000, 1000, 20, 20
do
set camera to follow object position x(player.id), object position y(player.id), object position z(player.id), object angle y(player.id), camera.distfromplayertocamera#, camera.camypositionfromplayer#, camera.smooth, camera.cameracollision
`===========================================================================
`MOVEMENT
`===========================================================================
if movespeed# <= 0.0 then movespeed# = 0.5
if movespeed# > maxmovespeed# then movespeed# = maxmovespeed#
if turnspeed# <= 0.0 then turnspeed# = 1.0
if turnspeed# > maxturnspeed# then turnspeed# = maxturnspeed#
if not shiftkey()
if (keystate(17) or keystate(200)) then move object player.id, player.movespeed#
if (keystate(31) or keystate(208)) then move object player.id, -player.movespeed#
if (keystate(30) or keystate(203)) then turn object left player.id, player.turnspeed#
if (keystate(32) or keystate(205)) then turn object left player.id, -player.turnspeed#
else
if (keystate(17) or keystate(200)) then move object player.id, player.maxmovespeed#
if (keystate(31) or keystate(208)) then move object player.id, -player.maxmovespeed#
if (keystate(30) or keystate(203)) then turn object left player.id, player.maxturnspeed#
if (keystate(32) or keystate(205)) then turn object left player.id, -player.maxturnspeed#
endif
`===========================================================================
text screen width()/2-text width("player.x#: "+str$(player.x#))/2, 0, "player.x#: "+str$(player.x#)
text screen width()/2-text width("player.y#: "+str$(player.y#))/2, 20, "player.y#: "+str$(player.y#)
text screen width()/2-text width("player.z#: "+str$(player.z#))/2, 40, "player.z#: "+str$(player.z#)
text screen width()/2-text width("player.xrotation#: "+str$(player.xrotation#))/2, 60, "player.xrotation#: "+str$(player.xrotation#)
text screen width()/2-text width("player.yrotation#: "+str$(player.yrotation#))/2, 80, "player.yrotation#: "+str$(player.yrotation#)
text screen width()/2-text width("player.zrotation#: "+str$(player.zrotation#))/2, 100, "player.zrotation#: "+str$(player.zrotation#)
text screen width()/2-text width("player.startsize#: "+str$(player.startsize#))/2, 120, "player.startsize#: "+str$(player.startsize#)
text screen width()/2-text width("player.xsize#: "+str$(player.xsize#))/2, 140, "player.xsize#: "+str$(player.xsize#)
text screen width()/2-text width("player.ysize#: "+str$(player.ysize#))/2, 160, "player.ysize#: "+str$(player.ysize#)
text screen width()/2-text width("player.zsize#: "+str$(player.zsize#))/2, 180, "player.zsize#: "+str$(player.zsize#)
text screen width()/2-text width("Object Position X(player.id):"+str$(Object Position X(player.id)))/2, 200, "Object Position X(player.id):"+str$(Object Position X(player.id))
text screen width()/2-text width("Object Position Y(player.id):"+str$(Object Position Y(player.id)))/2, 220, "Object Position Y(player.id):"+str$(Object Position Y(player.id))
text screen width()/2-text width("Object Position Z(player.id):"+str$(Object Position Z(player.id)))/2, 240, "Object Position Z(player.id):"+str$(Object Position Z(player.id))
text screen width()/2-text width("Object Size(player.id, 1):"+str$(Object Size(player.id, 1)))/2, 260, "Object Size(player.id, 1):"+str$(Object Size(player.id, 1))
text screen width()/2-text width("Object Size X(player.id, 1):"+str$(Object Size X(player.id, 1)))/2, 280, "Object Size X(player.id, 1):"+str$(Object Size X(player.id, 1))
text screen width()/2-text width("Object Size Y(player.id, 1):"+str$(Object Size Y(player.id, 1)))/2, 300, "Object Size Y(player.id, 1):"+str$(Object Size Y(player.id, 1))
text screen width()/2-text width("Object Size Z(player.id, 1):"+str$(Object Size Z(player.id, 1)))/2, 320, "Object Size Z(player.id, 1):"+str$(Object Size Z(player.id, 1))
text screen width()/2-text width("Object Angle X(player.id):"+str$(Object Angle X(player.id)))/2, 340, "Object Angle X(player.id):"+str$(Object Angle X(player.id))
text screen width()/2-text width("Object Angle Y(player.id):"+str$(Object Angle Y(player.id)))/2, 360, "Object Angle Y(player.id):"+str$(Object Angle Y(player.id))
text screen width()/2-text width("Object Angle Z(player.id):"+str$(Object Angle Z(player.id)))/2, 380, "Object Angle Z(player.id):"+str$(Object Angle Z(player.id))
sync
loop
Function Make_Player(p_id as integer, p_startsize# as float)
if (p_id = 0) then end
make object cube p_id, p_startsize#
EndFunction
Function Make_Objects(o_startsize# as float, howmany as integer)
for x = 1 to howmany
if object exist(x) = 0
make object cube x, o_startsize#
color object x, rgb(rnd(255), rnd(255), rnd(255))
position object x, rnd(255), 1, rnd(255)
endif
next x
EndFunction
CHECK OUT MY WEBSITE AT http://imageposeidon.com/ !