Движеща се кола :)
Привет. Отворете Флаш документ и нарисувайте колата, която искате да анимирате. Превърнете я в символ ( F8 или десен бутон – conver to symbol) Moovie Clip . Маркираите новосъздадения символ и натиснете F9. Използваме AS1
Копираите този код там :
onClipEvent (enterFrame) {
if (this._x > 600){
this._x = 0
}
if (this._x < 0){
this._x =600
}
if (this._y > 400){
this._y = 0
}
if (this._y < 0){
this._y = 400
}
// кара колата да се движи напред
if (Key.isDown(Key.UP)) {
speed = (speed + .4);
}
// кара колата да се движи назад
if (Key.isDown(Key.DOWN)) {
speed -= .1;
}
if (Math.abs(speed)>99999) {
speed *= .7;
}
// променя въртенето на колата
if (Key.isDown(Key.LEFT)) {
_rotation -= 15;
}
if (Key.isDown(Key.RIGHT)) {
_rotation += 15;
}
// изчислява въртенето
speed *= .98;
x = Math.sin(_rotation*(Math.PI/180))*speed;
y = Math.cos(_rotation*(Math.PI/180))*speed*-1;
_x += x;
_y += y;
}Кода е взаймстван от pixel2life , аз съм нанесъл някои корекции.
Защото урока ви хареса ето и един подобрен скрипт 🙂
onClipEvent (enterFrame) {
// кара колата да се движи напред
if (Key.isDown(Key.UP)) {
speed = (speed + .4);
}
// кара колата да се движи назад
if (Key.isDown(Key.DOWN)) {
speed -= .1;
}
if (Key.isDown(Key.SPACE)) {
if (speed > 0 ) {
speed = speed - 1
} else {
speed = speed + 1
}
}
// лимит на скоростта
if (Math.abs(speed)>99999999999999999999999999) {
speed *= .7;
}
// променя въртенето на колата
if (Key.isDown(Key.LEFT)) {
_rotation -= 13;
}
if (Key.isDown(Key.RIGHT)) {
_rotation += 13;
}
// изчислява въртенето
speed *= .98;
x = Math.sin(_rotation*(Math.PI/180))*speed;
y = Math.cos(_rotation*(Math.PI/180))*speed*-1;
if (!_root.land.hitTest(_x+x, _y+y, true)) {
var score:Number = 100
_x += x;
_y += y;
} else {
score= score - 1
speed *= -.6;
}
_root.scale_mc._xscale = 100 + score*20
if (_root.scale_mc._xscale <10 ){
_root.scale_mc._xscale = 0
_root.gotoAndStop (2);
}
}Промените тук : има 2 ключови фрейма със скрипт на тях :
stop ();На първия е колата + едно ново мууви клипче на име land , което е оградата и един ‘бар’ за кръвта широк 100 пиксела (мууви клип) с име scale_mc . На фрейм 2 има текст „Game Over“ + бутон със скрипт :
on (press) {
gotoAndStop (1)
}SPACE e спирачка. Ако някой не разбира, а има желание да доразбере – нека пита !
(не претендирам, че кода е написан по най-добрия начин, но определено е направен по най лесния за разбиране).
Въпроси във форума.
Наздраве




