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

    −281.8

    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
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    //////////////////////   обработчик onEnterFrame
    onEnterFrame = function () {
    	switch (_currentframe) {
    		case 4 :
    			if (go_5) {
    				btn_right._visible = true;
    			} else {
    				btn_right._visible = false;
    			}
    			if (txt_area2.txt.text == "") {
    				ready.enabled = false;
    				ready._alpha = 30;
    			} else {
    				ready.enabled = true;
    				ready._alpha = 100;
    			}
    			break;
    		case 5 :
    			if (table2._height > 460) {
    				mc_scroll._visible = true;
    			} else {
    				mc_scroll._visible = false;
    				table2._y = 460 / 2 - table2._height / 2;
    			}
    			if (reit_end == 0) {
    				btn_right._visible = false;
    			} else {
    				btn_right._visible = true;
    			}
    			break;
    		case 8 :
    			btn_left._visible = false;
    			break;
    		case 6 :
    			if (chek_was_became() == 1) {
    				btn_right._visible = true;
    			} else {
    				btn_right._visible = false;
    			}
    			break;
    		case 11 :
    			if (go_12) {
    				btn_right._visible = true;
    			} else {
    				btn_right._visible = false;
    			}
    			if (chto.txt.text == "") {
    				ready2.enabled = false;
    				ready2._alpha = 30;
    			} else {
    				ready2.enabled = true;
    				ready2._alpha = 100;
    			}
    			if (planning == 1) {
    				btn_right._visible = false;
    			}
    			break;
    		case 12 :
    			if (sims.txt2.text == "" || sims.txt3.text == "") {
    				ok.enabled = false;
    				ok._alpha = 30;
    			} else {
    				ok.enabled = true;
    				ok._alpha = 100;
    			}
    			break;
    		case 14 :
    			if (table._height > 590) {
    				mc_scroll2._visible = true;
    			} else {
    				mc_scroll2._visible = false;
    				table._y = 590 / 2 - table._height / 2 + 42;
    			}
    			break;
    		case 16 :
    			if (color1.txt2.text == "" || color2.txt2.text == "" || color3.txt2.text == "") {
    				btn_right.enabled = false;
    				btn_right._alpha = 30;
    			} else {
    				btn_right.enabled = true;
    				btn_right._alpha = 100;
    			}
    			break;
    	}
    };

    Офигенно содержательный комментарий, который сразу объясняет весь блок.

    Запостил: guest, 27 Апреля 2009

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

    • Alice:
      Самый обычный код
      Ответить
    • Gaen:
      Alice, похоже человек, который это написал, тоже так думал. А у меня этого говна теперь >20k строк.
      Нет, вы правда считаете нормальным вешать на onEnterFrame огромный switch, который проверяет, что же делать в текущем кадре? При том что каждый кадр плюс к этому ещё обвешан тоннами логики, и все они зависят друг от друга.
      Ответить
    • Kensay:
      Всё от приложения зависит. По-моему, тут основной косяк в нежелании использовать функции.
      Ответить
    • Gaen:
      Приложение - психологический тест. Энное количество кадров (в данном модуле - 17), каждый со своей интерактивностью. Здесь гораздо лучшей практикой является разложить код по соответствующим кадрам - тогда сразу видно, какой код к чему относится, а на что он вообще не влияет.
      Сейчас я имею всю логику прописанную на первом кадре в таком вот виде, и вся графика тоже валяется там же, нужные части прячутся/показываются по ходу.
      http://img404.imageshack.us/img404/5407/mess.png
      Ответить
      • "http://img404.imageshack.us/img404/5407/mess.png"
        ах-ты-ж-мать-его-так
        Ответить
    • aaa:
      такой код ещё както можно повесить на нажатие кнопки или переключение кадра
      но никак не на onEnterFrame
      Ответить

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