1. Java / Говнокод #5396

    +145

    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
    switch (this.gameState) {
        case 2: // '\002'
        case 3: // '\003'
          this.setGameState(4);
          return;
        case 6: // '\006'
          this.setGameState(4);
          return;
        case 4: // '\004'
          switch (keyevent.getKeyCode()) {
          case 80: // 'P'
            this.setGameState(6);
            return;
          case 37: // '%'
            this.changePukSpeed(-1, 0);
            return;
          case 39: // '\''
            this.changePukSpeed(1, 0);
            return;
          case 38: // '&'
            this.changePukSpeed(0, -1);
            return;
          case 40: // '('
            this.changePukSpeed(0, 1);
            return;
          }
          // fall through
        case 5: // '\005'
        default:
          return;
        }

    хитрая логика

    Запостил: Lure Of Chaos, 26 Января 2011

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

    • а сколько можно максимально вкладывать switch'и ?..
      никто не пробовал?..
      Ответить
      • Вероятно, что так же как if'ы. У MS в VC было 256, если не ошибаюсь.
        Ответить
        • помнится кому-то, кажись тут на говнокоде, не хватило 256 ifов
          Ответить
    • На каждую хитрую логику найдётся свой case с changePukSpeed'ом...
      Ответить
    • "changePukSpeed" доставил))
      Говнистость во вложенном свиче, или что?
      Ответить
      • Мало того, так PukSpeed это ещё и двухмерный вектор походу!!1
        Ответить
    • Конечный автомат. В данном случае конечно какашки, но ДКА довольно часто используется. В C# yield return генерирует его по коду
      Ответить

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