HABS !!!!

Code:
ANGLE angle;



action my_wheel1()
 {
 	
	pXent_settype(me,PH_RIGID,PH_CONVEX);
  
	ENTITY* shape1 = ent_create("add_shape2.mdl",vector(120,0,0),NULL); // Simple box für die Zähne
	set(shape1, VISIBLE);
	
   c_setminmax(me);
	
	// Insgesamt 5 Zähne werden Gebraucht mit 10° anfangs Winkel

	var i;
	for (i=10; i<360; i+=72) {
		//shape1.x=30;
		shape1.pan = i;
		pXent_addshape(me, shape1, PH_BOX);
	}

	pXent_removeshape(me, 0); // entfernt eine zuvor hinzugefügte PH_SPHERE Form 
	
	pXent_setbodyflag(me,NX_BF_KINEMATIC,1); // aktiviert kinematische Steuerung
		pXent_setbodyflag(shape1,NX_BF_KINEMATIC,1); 
	
	// Steuerung Schleife
	ANGLE angle;
	
	while(1) 
	{
	
			angle.pan += -4* time_step;  	 
			pXent_rotate(shape1, vector(me.x+120,0,0), vector(angle.pan,0,0));	
		
		
		wait(1);
	}
}

action my_wheel2()
 {
 	
	pXent_settype(me,PH_RIGID,PH_CONVEX);
  
	ENTITY* shape2 = ent_create("add_shape2.mdl",vector(-120,0,0),NULL); // Simple box für die Zähne
	set(shape2, VISIBLE);
	
   c_setminmax(me);
	
	// Insgesamt 5 Zähne werden Gebraucht mit 10° anfangs Winkel

	var i;
	for (i=10; i<360; i+=72) {
		//shape1.x=30;
		shape2.pan = i;
		pXent_addshape(me, shape2, PH_BOX);
	}

	pXent_removeshape(me, 0); // entfernt eine zuvor hinzugefügte PH_SPHERE Form 
	
	pXent_setbodyflag(me,NX_BF_KINEMATIC,1); // aktiviert kinematische Steuerung
		pXent_setbodyflag(shape2,NX_BF_KINEMATIC,1); 
	
	// Steuerung Schleife
	ANGLE angle;
	
	while(1) 
	{
	
			angle.pan += -4* time_step;  	 
			pXent_rotate(shape2, vector(-120,0,0), vector(angle.pan,0,0));	
		
		
		wait(1);
	}
}



action my_wheel3()
 {
 	
	pXent_settype(me,PH_RIGID,PH_CONVEX);
  
	ENTITY* shape3 = ent_create("add_shape2.mdl",vector(0,120,0),NULL); // Simple box für die Zähne
	set(shape3, VISIBLE);
	
   c_setminmax(me);
	
	// Insgesamt 5 Zähne werden Gebraucht mit 10° anfangs Winkel

	var i;
	for (i=10; i<360; i+=72) {
		//shape1.x=30;
		shape3.pan = i;
		pXent_addshape(me, shape3, PH_BOX);
	}

	pXent_removeshape(me, 0); // entfernt eine zuvor hinzugefügte PH_SPHERE Form 
	
	pXent_setbodyflag(me,NX_BF_KINEMATIC,1); // aktiviert kinematische Steuerung
		pXent_setbodyflag(shape3,NX_BF_KINEMATIC,1); 
	
	// Steuerung Schleife
	ANGLE angle;
	
	while(1) 
	{
	
			 angle.pan += -4* time_step;  	 
			pXent_rotate(shape3, vector(0,120,0), vector(angle.pan,0,0));	
		
		
		wait(1);
	}
}

action my_wheel4()
 {
 	
	pXent_settype(me,PH_RIGID,PH_CONVEX);
  
	ENTITY* shape4 = ent_create("add_shape2.mdl",vector(0,-120,0),NULL); // Simple box für die Zähne
	set(shape4, VISIBLE);
	
   c_setminmax(me);
	
	// Insgesamt 5 Zähne werden Gebraucht mit 10° anfangs Winkel

	var i;
	for (i=10; i<360; i+=72) {
		//shape1.x=30;
		shape4.pan = i;
		pXent_addshape(me, shape4, PH_BOX);
	}

	pXent_removeshape(me, 0); // entfernt eine zuvor hinzugefügte PH_SPHERE Form 
	
	pXent_setbodyflag(me,NX_BF_KINEMATIC,1); // aktiviert kinematische Steuerung
		pXent_setbodyflag(shape4,NX_BF_KINEMATIC,1); 
	
	// Steuerung Schleife
	ANGLE angle;
	
	while(1) 
	{
	
		 	angle.pan += -4* time_step;   
			pXent_rotate(shape4, vector(0,-120,0), vector(angle.pan,0,0));	
		
		
		wait(1);
	}
}



action test_block()
{

  pXent_settype(me,PH_RIGID,PH_CONVEX);
	
	
 ENTITY* mechanik1 = ent_create ("block.mdl", vector(0,0,0), my_wheel1);
 ENTITY* mechanik2 = ent_create ("block.mdl", vector(0,0,0), my_wheel2);
 ENTITY* mechanik3 = ent_create ("block.mdl", vector(0,0,0), my_wheel3);
 ENTITY* mechanik4 = ent_create ("block.mdl", vector(0,0,0), my_wheel4);
  
  c_setminmax(me);
  
  pXent_setbodyflag(me,NX_BF_KINEMATIC,1); // aktiviert kinematische Steuerung

  pXent_setbodyflag(mechanik1,NX_BF_KINEMATIC,1); // aktiviert kinematische Steuerung
  pXent_setbodyflag(mechanik2,NX_BF_KINEMATIC,1); // aktiviert kinematische Steuerung
  pXent_setbodyflag(mechanik3,NX_BF_KINEMATIC,1); // aktiviert kinematische Steuerung
  pXent_setbodyflag(mechanik4,NX_BF_KINEMATIC,1); // aktiviert kinematische Steuerung
  
 // pXent_setbodyflag(mechanik5,NX_BF_KINEMATIC,1); // aktiviert kinematische Steuerung
 	
	// Steuerung Schleife
  	
	while(1) 
	{
		   angle.pan += -3* time_step;  
		   
	  		pXent_rotate(mechanik1, nullvector, vector(angle.pan,0,0));	
		   pXent_rotate(mechanik2, nullvector, vector(angle.pan,0,0));	
		   pXent_rotate(mechanik3, nullvector, vector(angle.pan,0,0));	
			pXent_rotate(mechanik4, nullvector, vector(angle.pan,0,0));	
					
        
	
		
		wait(1);     	
  }


}