Webmaster общности: Predpriemach.com | SearchEngines.bg
    web-tourist01/01/20203min00

    Движеща се кола :)

    Привет. Отворете Флаш документ и нарисувайте колата, която искате да анимирате. Превърнете я в символ ( 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 спирачка. Ако някой не разбира, а има желание да доразбере – нека пита !
    (не претендирам, че кода е написан по най-добрия начин, но определено е направен по най лесния за разбиране).

    Въпроси във форума.
    Наздраве