a little box app
// show all errors
SetErrorMode(2)
// set window properties
SetWindowTitle( "fkenect game boxingl" )
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 )
global string$
global dosock
global scale
RunApp("C:\Users\dad\Documents\AGK Projects\kenect kick ball\foot ball game\Kinect.exe","")
t=0
repeat
t=t+1
print(t)
sync()
until t=100
string$=GetDeviceIP()
dosock= ConnectSocket( string$, 27015, 500 )
scale=10
// since version 2.0.22 we can use nicer default fonts
SetPrintSize(75)
SetPrintColor(100,0,0,200)
Create3DPhysicsWorld(10)
CreateObjectPlane(1,7*scale,7*scale)
RotateObjectLocalX(1,90)
FixObjectPivot(1)
MoveObjectLocalY(1,-1*scale)
Create3DPhysicsKinematicBody(1)
SetObjectColor(1,0,0,200,200)
CreateObjectBox(2,3,30,3)
SetObjectPosition(2,-3.5*scale,-1*scale,-3.5*scale)
CreateObjectBox(3,3,30,3)
SetObjectPosition(3,3.5*scale,-1*scale,-3.5*scale)
CreateObjectBox(4,7*scale,2,2)
SetObjectPosition(4,0,-0.5*scale,-3.5*scale)
CreateObjectBox(6,7*scale,2,2)
SetObjectPosition(6,0,-0.1*scale,-3.5*scale)
CreateObjectBox(7,7*scale,2,2)
SetObjectPosition(7,0,3,-3.5*scale)
CreateObjectBox(8,2,2,7*scale)
SetObjectPosition(8,3.5*scale,-0.5*scale,0)
CreateObjectBox(9,2,2,7*scale)
SetObjectPosition(9,3.5*scale,-0.1*scale,0)
CreateObjectBox(10,2,2,7*scale)
SetObjectPosition(10,3.5*scale,3,0)
CreateObjectBox(11,2,2,7*scale)
SetObjectPosition(11,-3.5*scale,-0.5*scale,0)
CreateObjectBox(12,2,2,7*scale)
SetObjectPosition(12,-3.5*scale,-0.1*scale,0)
CreateObjectBox(13,2,2,7*scale)
SetObjectPosition(13,-3.5*scale,3,0)
dim points[20]
for t=20 to 1 step-1
points[t]=CreateObjectSphere(0.1*scale,32,32)
SetObjectColor(points[t],255,0,0,255)
Create3DPhysicsKinematicBody(points[t])
setObject3DPhysicsRestitution( points[t],2)
SetObjectCollisionMode(points[t],0)
next
global thehead_x as float
global thehead_y as float
global thehead_z as float
global thespine_x as float
global thespine_y as float
global thespine_z as float
global shouldercenter_x as float
global shouldercenter_y as float
global shouldercenter_z as float
global shoulderleft_x as float
global shoulderleft_y as float
global shoulderleft_z as float
global shoulderright_x as float
global shoulderright_y as float
global shoulderright_z as float
global leftelbow_x as float
global leftelbow_y as float
global leftelbow_z as float
global rightelbow_x as float
global rightelbow_y as float
global rightelbow_z as float
global leftwrist_x as float
global leftwrist_y as float
global leftwrist_z as float
global rightwrist_x as float
global rightwrist_y as float
global rightwrist_z as float
global lh_x as float
global lh_y as float
global lh_z as float
global rh_x as float
global rh_y as float
global rh_z as float
global hipcentre_x as float
global hipcentre_y as float
global hipcentre_z as float
global hipleft_x as float
global hipleft_y as float
global hipleft_z as float
global hipright_x as float
global hipright_y as float
global hipright_z as float
global leftknee_x as float
global leftknee_y as float
global leftknee_z as float
global rightknee_x as float
global rightknee_y as float
global rightknee_z as float
global leftankel_x as float
global leftankel_y as float
global leftankel_z as float
global rightankel_x as float
global rightankel_y as float
global rightankel_z as float
global leftfoot_x as float
global leftfoot_y as float
global leftfoot_z as float
global rightfoot_x as float
global rightfoot_y as float
global rightfoot_z as float
SetCameraRotation(1,0,1,0)
SetCameraPosition(1,0,0,5*scale)
RotateCameraLocalY(1,180)
SetClearColor(0,100,200)
//Hand_Image=loadimage("\media\Hand.png")
//RightHandModel=LoadObjectWithChildren("RHand.fbx")
//SetObjectPosition(RightHandModel,0.0,0.0,-0.07)
//SetObjectRotation(RightHandModel,0.0,180.0,90.0)
//FixObjectPivot(RightHandModel)
//SetObjectVisible(RightHandModel,1)
//SetObjectCollisionMode(RightHandModel,0)
//SetObjectImage(RightHandModel,Hand_Image,0)
//LeftHandModel=LoadObjectWithChildren("LHand.fbx")
// SetObjectPosition(LeftHandModel,0.0,0.0,-0.07)
// SetObjectRotation(LeftHandModel,0.0,180.0,270.0)
// FixObjectPivot(LeftHandModel)
// SetObjectAnimationSpeed(LeftHandModel,20)
// SetObjectVisible(LeftHandModel,1)
// SetObjectCollisionMode(LeftHandModel,0)
// SetObjectImage(LeftHandModel,Hand_Image,0)
//SetObjectScalePermanent(LeftHandModel,1.5*scale,1.5*scale,1.5*scale)
//SetObjectScalePermanent(RightHandModel,1.5*scale,1.5*scale,1.5*scale)
//RotateObjectLocalY(LeftHandModel,180)
//RotateObjectLocalY(RightHandModel,180)
for t=1 to 20
SetObjectVisible(points[t],1)
SetObjectTransparency(points[t],2)
next
SetObjectTransparency(points[8],0)
SetObjectTransparency(points[9],0)
SetObjectScale(points[8],2,2,2)
SetObjectScale(points[9],2,2,2)
for t=10 to 20
SetObjectVisible(points[t],0)
next
SetObjectVisible(points[2],0)
setobjectscale(points[1],4,4,4)
setobjectscale(points[3],2,4,2)
h1=CreateObjectSphere(6,32,32)
h2=CreateObjectSphere(4,32,32)
FixObjectToObject(h2,h1)
SetObjectTransparency(h1,2)
SetObjectTransparency(h2,2)
MoveObjectLocalY(h2,-6)
SetObjectScale(h2,1,1.5,1)
SetObjectColor(h2,0,200,0,200)
SetObjectColor(h1,0,200,0,200)
h3=CreateObjectSphere(3,32,32)
h4=CreateObjectSphere(3,32,32)
FixObjectToObject(h3,h1)
FixObjectToObject(h4,h1)
MoveObjectLocalX(h3,-4)
MoveObjectLocalX(h4,4)
MoveObjectLocaly(h3,-3)
MoveObjectLocaly(h4,-3)
SetObjectCollisionMode(h3,0)
SetObjectCollisionMode(h4,0)
MoveObjectLocaly(h1,5)
shot=0
tim=0
lr=0
im1=CreateRenderImage(300,20,0,0)
im2=CreateRenderImage(300,20,0,0)
nrg1=1024
nrg2=1024
red=MakeColor(9,200,0)
gr=MakeColor(0,200,0)
SetClearColor(255,0,0)
SetRenderToImage(im1,0)
ClearScreen()
DrawBox(0,0,nrg1,768,red,red,red,red,1)
SetRenderToScreen()
SetRenderToImage(im2,0)
ClearScreen()
DrawBox(0,0,nrg2,768,gr,gr,gr,gr,1)
SetRenderToScreen()
CreateSprite(1,im1)
SetSpritePosition(1,100,10)
CreateSprite(2,im2)
SetSpritePosition(2,600,10)
SetSkyBoxVisible(1)
SetObjectCollisionMode(points[1],1)
CreateText(1,"Player 1")
CreateText(2,"Player 2")
SetTextsize(1,60)
settextsize(2,60)
SetTextPosition(1,100,50)
SetTextPosition(2,600,50)
do
SetRenderToImage(im1,0)
ClearScreen()
DrawBox(0,0,nrg1,768,red,red,red,red,1)
SetRenderToScreen()
SetRenderToImage(im2,0)
ClearScreen()
DrawBox(0,0,nrg2,768,gr,gr,gr,gr,1)
SetRenderToScreen()
SetSpriteImage(1,im1)
SetSpriteImage(2,im2)
kenect()
if shot=0
x#=GetObjectWorldX(points[1])
y#=GetObjectWorldy(h1)
y1#=GetObjectWorldy(points[1])
z#=GetObjectWorldz(points[1])
SetObjectLookAt(h1,x#,y#,z#,0)
SetObjectLookAt(h3,x#,y1#,z#,0)
SetObjectLookAt(h4,x#,y1#,z#,0)
ox#=getobjectx(h1)
oz#=getobjectz(h1)
if ox#>x# then MoveObjectLocalx(h1,-0.1)
if ox#<x# then MoveObjectLocalx(h1,0.1)
if oz#>z# then MoveObjectLocalz(h1,-0.1)
if oz#<z#-15 then MoveObjectLocalz(h1,0.1)
r=random(1,30)
if r=10 then MoveObjectLocalZ(h1,-0.1)
if r=11 then MoveObjectLocalx(h1,01)
if r=9 then MoveObjectLocalx(h1,-01)
endif
//print (GetObjectWorldX(h1))
//print (GetObjectWorldz(h1))
r=random(1,10)
if r=5 and shot=0
shot=1
lr=Random(1,2)
tim=random(5,16)
tim2=Tim
endif
if shot=1
if lr=1 then MoveObjectLocalZ(h3,1)
if lr=2 then MoveObjectLocalZ(h4,1)
tim=tim-1
if tim=0 then shot=2
endif
if shot=2
if lr=1 then MoveObjectLocalZ(h3,-1)
if lr=2 then MoveObjectLocalZ(h4,-1)
tim2=tim2-1
if tim2=0
shot=0
lr=0
endif
endif
//print(string$)
x1#=GetObjectWorldX( points[10] )
y1#=GetObjectWorldy( points[10] )
z1#=GetObjectWorldz( points[10] )
hit1=ObjectSphereCast(0,x1#,y1#,z1#,x1#,y1#,z1#,1.5)
//print(hit1)
x2#=GetObjectWorldX( points[11] )
y2#=GetObjectWorldy( points[11] )
z2#=GetObjectWorldz( points[11] )
hit2=ObjectSphereCast(0,x2#,y2#,z2#,x2#,y2#,z2#,1.5)
//print(hit2)
x1#=GetObjectWorldX( h3 )
y1#=GetObjectWorldy( h3 )
z1#=GetObjectWorldz( h3 )
hit3=ObjectSphereCast(0,x1#,y1#,z1#,x1#,y1#,z1#,1)
//print(hit3)
x2#=GetObjectWorldX( h4 )
y2#=GetObjectWorldy( h4 )
z2#=GetObjectWorldz( h4 )
hit4=ObjectSphereCast(0,x2#,y2#,z2#,x2#,y2#,z2#,1)
if GetRawKeyPressed(32) then st=1
if st=1
if f<100 then f=f+1
if f=100 then fight=1
endif
if fight=1
if hit1=h1 and nrg2>10 then dec nrg2,10
if hit2=h1 and nrg2>10 then dec nrg2,10
if hit3=points[1] and nrg1>10 then dec nrg1,10
if hit4=points[1] and nrg1>10 then dec nrg1,10
endif
Step3DPhysicsWorld()
Sync()
loop
function kenect()
if GetSocketConnected(dosock)
a#= getSocketFloat(dosock)
a1#= getSocketFloat(dosock)
thehead_x =-getSocketFloat(dosock)*scale
thehead_y =getSocketFloat(dosock)*scale
thehead_z =getSocketFloat(dosock)*scale
a2#= getSocketFloat(dosock)
thespine_x =-getSocketFloat(dosock)*scale
thespine_y =getSocketFloat(dosock)*scale
thespine_z =getSocketFloat(dosock)*scale
a3#= getSocketFloat(dosock)
shouldercenter_x =-getSocketFloat(dosock)*scale
shouldercenter_y =getSocketFloat(dosock)*scale
shouldercenter_z =getSocketFloat(dosock)*scale
a4#= getSocketFloat(dosock)
shoulderleft_x =-getSocketFloat(dosock)*scale
shoulderleft_y =getSocketFloat(dosock)*scale
shoulderleft_z =getSocketFloat(dosock)*scale
a5#= getSocketFloat(dosock)
shoulderright_x =-getSocketFloat(dosock)*scale
shoulderright_y =getSocketFloat(dosock)*scale
shoulderright_z =getSocketFloat(dosock)*scale
a6#= getSocketFloat(dosock)
leftelbow_x =-getSocketFloat(dosock)*scale
leftelbow_y =getSocketFloat(dosock)*scale
leftelbow_z =getSocketFloat(dosock)*scale
a7#= getSocketFloat(dosock)
rightelbow_x =-getSocketFloat(dosock)*scale
rightelbow_y =getSocketFloat(dosock)*scale
rightelbow_z =getSocketFloat(dosock)*scale
a8#= getSocketFloat(dosock)
leftwrist_x =-getSocketFloat(dosock)*scale
leftwrist_y =getSocketFloat(dosock)*scale
leftwrist_z =getSocketFloat(dosock)*scale
a9#= getSocketFloat(dosock)
rightwrist_x =-getSocketFloat(dosock)*scale
rightwrist_y =getSocketFloat(dosock)*scale
rightwrist_z =getSocketFloat(dosock)*scale
a10#= getSocketFloat(dosock)
lh_x =-getSocketFloat(dosock)*scale
lh_y =getSocketFloat(dosock)*scale
lh_z =getSocketFloat(dosock)*scale
a11#= getSocketFloat(dosock)
rh_x =-getSocketFloat(dosock)*scale
rh_y =getSocketFloat(dosock)*scale
rh_z =getSocketFloat(dosock)*scale
a12#= getSocketFloat(dosock)
hipcentre_x =-getSocketFloat(dosock)*scale
hipcentre_y =getSocketFloat(dosock)*scale
hipcentre_z =getSocketFloat(dosock)*scale
a13#= getSocketFloat(dosock)
hipleft_x =-getSocketFloat(dosock)*scale
hipleft_y =getSocketFloat(dosock)*scale
hipleft_z =getSocketFloat(dosock)*scale
a14#= getSocketFloat(dosock)
hipright_x =-getSocketFloat(dosock)*scale
hipright_y =getSocketFloat(dosock)*scale
hipright_z =getSocketFloat(dosock)*scale
a15#= getSocketFloat(dosock)
leftknee_x =-getSocketFloat(dosock)*scale
leftknee_y =getSocketFloat(dosock)*scale
leftknee_z =getSocketFloat(dosock)*scale
a16#= getSocketFloat(dosock)
rightknee_x =-getSocketFloat(dosock)*scale
rightknee_y =getSocketFloat(dosock)*scale
rightknee_z =getSocketFloat(dosock)*scale
a17#= getSocketFloat(dosock)
leftankel_x =-getSocketFloat(dosock)*scale
leftankel_y =getSocketFloat(dosock)*scale
leftankel_z =getSocketFloat(dosock)*scale
a18#= getSocketFloat(dosock)
rightankel_x =-getSocketFloat(dosock)*scale
rightankel_y =getSocketFloat(dosock)*scale
rightankel_z =getSocketFloat(dosock)*scale
a19#= getSocketFloat(dosock)
leftfoot_x =-getSocketFloat(dosock)*scale
leftfoot_y =getSocketFloat(dosock)*scale
leftfoot_z =getSocketFloat(dosock)*scale
a20#= getSocketFloat(dosock)
rightfoot_x =-getSocketFloat(dosock)*scale
rightfoot_y =getSocketFloat(dosock)*scale
rightfoot_z =getSocketFloat(dosock)*scale
endif
if a#=123456789.0
//
IF round(a1#)>0 and thehead_x<>0 and thehead_y<>0 and thehead_z<>0
SetObjectPosition(points[1],thehead_x,thehead_y,thehead_z)
setcameraposition(1,thehead_x,thehead_y,thehead_z)
MoveCameraLocalZ(1,-10)
endif
IF round(a2#)>0 and thespine_x<>0 and thespine_y<>0 and thespine_z<>0
SetObjectPosition(points[2],thespine_x,thespine_y,thespine_z)
endif
IF round(a3#)>0 and shouldercenter_x<>0 and shouldercenter_y<>0 and shouldercenter_z<>0
SetObjectPosition(points[3],shouldercenter_x,shouldercenter_y,shouldercenter_z)
MoveObjectLocalY(points[3],-2)
endif
IF round(a4#)>0 and shoulderleft_x<>0 and shoulderleft_y<>0 and shoulderleft_z<>0
SetObjectPosition(points[4],shoulderleft_x,shoulderleft_y,shoulderleft_z)
endif
IF round(a5#)>0 and shoulderright_x<>0 and shoulderright_y<>0 and shoulderright_z<>0
SetObjectPosition(points[5],shoulderright_x,shoulderright_y,shoulderright_z)
endif
IF round(a6#)>0 and leftelbow_x<>0 and leftelbow_y<>0 and leftelbow_z<>0
SetObjectPosition(points[6],leftelbow_x,leftelbow_y,leftelbow_z)
endif
IF round(a7#)>0 and rightelbow_x<>0 and rightelbow_y<>0 and rightelbow_z<>0
SetObjectPosition(points[7],rightelbow_x,rightelbow_y,rightelbow_z)
endif
IF round(a8#)>0 and leftwrist_x<>0 and leftwrist_y<>0 and leftwrist_z<>0
SetObjectPosition(points[8],leftwrist_x,leftwrist_y,leftwrist_z)
endif
IF round(a9#)>0 and rightwrist_x<>0 and rightwrist_y<>0 and rightwrist_z<>0
SetObjectPosition(points[9],rightwrist_x,rightwrist_y,rightwrist_z)
endif
IF round(a10#)>0 and lh_x<>0 and lh_y<>0 and lh_z<>0
SetObjectPosition(points[10],lh_x,lh_y,lh_z)
endif
IF round(a11#)>0 and rh_x<>0 and rh_y<>0 and rh_z<>0
SetObjectPosition(points[11],rh_x,rh_y,rh_z)
endif
IF round(a12#)>0 and hipcentre_x<>0 and hipcentre_y<>0 and hipcentre_z<>0
SetObjectPosition(points[12],hipcentre_x,hipcentre_y,hipcentre_z)
endif
IF round(a13#)>0 and hipleft_x<>0 and hipleft_y<>0 and hipleft_z<>0
SetObjectPosition(points[13],hipleft_x,hipleft_y,hipleft_z)
endif
IF round(a14#)>0 and hipright_x<>0 and hipright_y<>0 and hipright_z<>0
SetObjectPosition(points[14],hipright_x,hipright_y,hipright_z)
endif
IF round(a15#)>0 and leftknee_x<>0 and leftknee_y<>0 and leftknee_z<>0
SetObjectPosition(points[15],leftknee_x,leftknee_y,leftknee_z)
endif
IF round(a16#)>0 and rightknee_x<>0 and rightknee_y<>0 and rightknee_z<>0
SetObjectPosition(points[16],rightknee_x,rightknee_y,rightknee_z)
endif
IF round(a17#)>0 and leftankel_x<>0 and leftankel_y<>0 and leftankel_z<>0
SetObjectPosition(points[17],leftankel_x,leftankel_y,leftankel_z)
endif
IF round(a18#)>0 and rightankel_x<>0 and rightankel_y<>0 and rightankel_z<>0
SetObjectPosition(points[18],rightankel_x,rightankel_y,rightankel_z)
endif
IF round(a19#)>0 and leftfoot_x<>0 and leftfoot_y<>0 and leftfoot_z<>0
SetObjectPosition(points[19],leftfoot_x,leftfoot_y,leftfoot_z)
endif
IF round(a20#)>0 and rightfoot_x<>0 and rightfoot_y<>0 and rightfoot_z<>0
SetObjectPosition(points[20],rightfoot_x,rightfoot_y,rightfoot_z)
endif
endif
endfunction