Sieht dein Skript so aus? So muss es eigentlich funktionieren.
var player_speed;
action player_movement
{
player = my;
while(1)
{
vec_set(camera.pos,my.pos);
CAMERA.Z += 20; //Geschätzter wert
camera.tilt = max(-70,min(camera.tilt + 20 * mouse_force.y * time,70));
camera.pan -= 20 * mouse_force.x * time;
my.pan = camera.pan;
player_speed.x = 10 * (key_w - key_s) * time;
player_speed.y = 5 * (key_a - key_d) * time;
IF (key_w == 1 && key_shiftl == 1) { player_speed.x = 30 * (key_w) * time; }
vec_set (temp,my.x);
temp.z -= 1000;
trace_mode = ignore_me + ignore_passable + ignore_sprites + ignore_models + ignore_passents + use_box + activate_sonar;
temp = trace (MY.X,temp);
IF (temp > 5) { player_speed.Z = -5; }
ELSE {
IF (temp < 1) { player_speed.Z += 3; }
ELSE { player_speed.Z = 0; }
}
move_mode = ignore_you + ignore_passable;
ent_move (player_speed,nullvector);
wait(1);
if(key_w ==1 || key_s ==1)
{
ent_cycle ("walk",my.skill46);
my.skill46 += 10 * time;
my.skill46 %= 100;
}
if(key_a==1) //habe noch keinen anderen Frame!^^
{
ent_cycle ("walk",my.skill46);
my.skill46 += 10 * time;
my.skill46 %= 100;
}
if(key_d==1) //habe noch keinen anderen Frame!^^
{
ent_cycle ("walk",my.skill46);
my.skill46 += 10 * time;
my.skill46 %= 100;
}
if(key_w==1 && key_shiftl==1)
{
ent_cycle ("run",my.skill46);
my.skill46 += 10 * time;
my.skill46 %= 100;
}
}
wait(1);
}
Last edited by RedPhoenix; 04/08/07 15:28.