1. ActionScript / Говнокод #12958

    −93

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    private function showTick():void {
        d=getTimer() - startT;
        if (d<ACT_TIME) {
            if(d<=200){
                //scale up
                sprite.scaleX = 0.3+(d/200)*0.7;
                sprite.scaleY = 0.3+(d/200)*0.7;
            }else if(d>200 && d<500){
                sprite.scaleX = 1;
                sprite.scaleY = 1;
            }
            if(d<=300){
                sprite.alpha = d/300;
                //alpha up
            }else if(d>300 && d<500){
                sprite.alpha = 1;
            }
            if(d>=500 && d<=800){
                //scale down
                sprite.scaleX = 1-((d-500)/300);
                sprite.scaleY = 1-((d-500)/300);
                sprite.alpha = 1-((d-500)/300);
            }else if(d>800){
                sprite.scaleX = 0;
                sprite.scaleY = 0;
                sprite.alpha = 0;
            }
    
        }else {
            EnterFrame.removeAction(this._action);
            this._action = null;
        }
    }

    Хотела поменять скорость анимации текста... Уже не хочу.

    Запостил: kyzi007, 01 Мая 2013

    Комментарии (13) RSS

    • Магия чисел...
      Ответить
    • почти все ветки взаимоисключены. кроме смены альфа канала.

      для упрощения можно сделать что-то типа. сначала `d = d / 100;` (те `<=` меня слегка смущают - там может +/-1 где понадобится). потом просто swich/case по значениям d от 1 до 8, плюс дефолт, т.е. case на каждую фазу анимации. код че делать в фазе надо, выводится достаточно просто из ГК.
      Ответить
    • d=getTimer() - startT;
      d *= animationDurationScaleFactor;
      Нэ?
      Ответить
      • [offtopic]
        > animationDurationScaleFactor
        Чую, чую, эппловским духом повеяло. Там тоже любят длинные имена. В совокупности с синтаксисом Objective C это порождает совершенно чудные портянки кода, которые кажутся пропущенными через обфускатор.
        Ну вот почему не animationRate, скажем? Блин, глаза же потом разъезжаются от таких названий...
        [/offtopic]
        Ответить
        • Хотел, чтобы название переменной было понятно без дополнительного комментария )
          Ответить
          • Я понял, просто намедни пришлось порыться в эппловской части нашего движка. Вот и прорвало.
            Простите, дяденька, больше не буду. :)
            Ответить
    • о, к условиям еще и математика. супер. и это в анимационной среде.
      я понимаю, если бы это был Си под ДОСом.
      Ответить
      • о, к условиям еще и математика. супер. и это в анимационной среде.
        о, к условиям еще и математика. супер. и это в легковом автомобиле.
        о, к условиям еще и математика. супер. и это в микроволновой печи.

        Честно говоря, не понял смысла комментария. Сейчас программируется все, что угодно, почему нельзя анимационную среду? Тем более, что эта среда уже давно используется для чего угодно - от видеоплееров до игр.
        Ответить
        • Медленно осознаю, что прочитал популярную лекцию о программировании на сайте, где только одни программисты и обитают. :)
          Но в таком случае я и вовсе не понимаю смысл исходного комментария.
          Ответить
        • > Честно говоря, не понял смысла комментария
          Ну, видимо, Лур имеет в виду то, что в такой системе всяко должны быть более адекватные и простые способы запилить анимацию, нежели смесь магических чисел, условий и математики. Что-нибудь более декларативное.
          Ответить
    • * g o a t s e x * g o a t s e x * g o a t s e x *
      g                                               g  
      o /     \             \            /    \       o
      a|       |             \          |      |      a
      t|       `.             |         |       :     t
      s`        |             |        \|       |     s
      e \       | /       /  \\\   --__ \\       :    e
      x  \      \/   _--~~          ~--__| \     |    x  
      *   \      \_-~                    ~-_\    |    *
      g    \_     \        _.--------.______\|   |    g
      o      \     \______// _ ___ _ (_(__>  \   |    o
      a       \   .  C ___)  ______ (_(____>  |  /    a
      t       /\ |   C ____)/      \ (_____>  |_/     t
      s      / /\|   C_____)       |  (___>   /  \    s
      e     |   (   _C_____)\______/  // _/ /     \   e
      x     |    \  |__   \\_________// (__/       |  x
      *    | \    \____)   `----   --'             |  *
      g    |  \_          ___\       /_          _/ | g
      o   |              /    |     |  \            | o
      a   |             |    /       \  \           | a
      t   |          / /    |         |  \           |t
      s   |         / /      \__/\___/    |          |s
      e  |           /        |    |       |         |e
      x  |          |         |    |       |         |x
      * g o a t s e x * g o a t s e x * g o a t s e x *
      Ответить

    Добавить комментарий