Code:
action player_walk() {
	var anim_percent = 0;
	var grounddist, key_space_released = 0;
	VECTOR speed,temp;
	vec_set(speed,nullvector);
	wait(1);
	vec_set(temp,vector(-15,-15,-20)); // die bounding box setzen
	vec_scale(temp,my.scale_x); //falls der spieler im level eine andere größe als 1 hat
	vec_set(my.min_x,temp);

	vec_set(temp,vector(15,15,20)); // die bounding box setzen
	vec_scale(temp,my.scale_x); //falls der spieler im level eine andere größe als 1 hat
	vec_set(my.max_x,temp);
	my.z += 232;

	while(1)	{
		
		if(!key_space) { key_space_released = 1; } // endlose Sprungwiederholung bei gedrückter Taste verhindern
		
		if(key_a || key_d) {
			my.pan = 180*key_a;
			anim_percent += 8*time_step;
			ent_animate(me, "run", anim_percent, ANM_CYCLE);
		}
		else {
			anim_percent += 4*time_step;
			ent_animate(me, "stand", anim_percent, ANM_CYCLE);
		}

		speed.x += (45*(key_d-key_a)-speed.x)/3*time_step; // sanftes beschleunigen
		
		grounddist = c_trace(my.x,vector(my.x,my.y,my.z-150),IGNORE_ME | USE_BOX);
		grounddist = clamp(grounddist+150*(!trace_hit),-5,150);

		
		if(grounddist < 10 && speed.z <= 0) {

			my.z -= grounddist-5;
			speed.z = 0;
			if(key_space && key_space_released) {
				speed.z = 50;
			}
		}
		else { speed.z += maxv((-60-speed.z)/5,-7)*time_step; }
		


		c_move(my,nullvector, vector(speed.x*time_step,0,speed.z*time_step),GLIDE);
		
		
		//Cameraposition
		camera.x = 100+my.x;
		camera.y = -2500;
		camera.z = 400+my.z;
		camera.pan = 90;
		camera.tilt = -5;
		wait(1);
	}
}



Ich hab dir mal ein neues Skript geschrieben, ist vllt. ein wenig ausgereifter als das alte. Zentriere aber bitte dein Model in Med um den Ursprung und setze es in WED höher, damit es nicht durch den Boden fällt. Dann kannst du in der player-action my.z += 230 o.ä. entfernen.


"Falls das Resultat nicht einfach nur dermassen gut aussieht, sollten Sie nochmal von vorn anfangen..." - Manual

Check out my new game: Pogostuck: Rage With Your Friends