PDA

Просмотр полной версии : Ошибка в движении


DrSmyrke
18.04.2010, 01:41
Прива всем.
Есть такой код:
if(Key.isDown(Key.UP)){ac+=1;sp = sp+ac;ac -= tr;}
else{ac-=tr;sp-=tr*5;if(sp<=0){sp=0;}if(ac<=0){ac=0;}}
if(Key.isDown(Key.LEFT)){if(sp>0){_root.car._rotation-=0.5;sp-=0.7;ac-=0.3;}}
if(Key.isDown(Key.RIGHT)){if(sp>0){_root.car._rotation+=0.5;sp-=0.7;ac-=0.3;}}
_root.car._x+=Math.cos(_root.car._rotation*Math.PI/180)*sp;
_root.car._y+=Math.sin(_root.car._rotation*Math.PI/180)*sp;
Хочу сделать машинку для динамического фона, но ни как не получается. Помогите плиз решить эту дилему!
Ниже файл того что у меня получилось

samana
18.04.2010, 02:04
Вот быстрый пример:
var speed = 0;
_root.onEnterFrame = function() {
if (Key.isDown(Key.LEFT)) {
car._rotation-=3;
}
if (Key.isDown(Key.RIGHT)) {
car._rotation+=3;
}
if (Key.isDown(Key.UP)) {
speed++;

}
if (Key.isDown(Key.DOWN)) {
speed--;
}
speed *= 0.9;
if (speed > 5) {
speed = 5;
} else if (speed < -5) {
speed = -5;
}

car._x += Math.cos(car._rotation * Math.PI / 180) * speed;
car._y += Math.sin(car._rotation * Math.PI / 180) * speed;
};

DrSmyrke
18.04.2010, 02:15
Извините, но машинка стала двигаться по кругу, а не как в вашем примере

DrSmyrke
18.04.2010, 02:18
Вот мой исходник

DrSmyrke
18.04.2010, 02:19
Может я что то не так делаю, помогите пожалуйста

samana
18.04.2010, 02:29
Возможно вам поможет этот ресурс http://xitri.com/2008/07/09/flash-programming-drive-a-car.html

DrSmyrke
18.04.2010, 08:56
Попробовал сделать как сказано в этой ссылке получилась ерунда какая то.

Zik.
18.04.2010, 09:08
Пример и код samana прекрасно работает, просто флеш надо обновить, а не сидеть на пятерке

DrSmyrke
18.04.2010, 23:50
я в 8-м сижу ,просто fla старый попался