1. Лучший говнокод

    В номинации:
    За время:
  2. Pascal / Говнокод #3328

    +107

    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
    var
      OGTC: cardinal; // для сверки с таймером
    
    procedure CheckPhys;
    begin
      if OGTC < GetTickCount then begin
        Phys;   // тут считается вся игровая физика и все изменения состояний. Звуки тоже здесь.
        Inc(OGTC, dT);
      end;
    end;
    
    procedure Graph;     // процедура отрисовки графики
    var
      i: integer;
    begin
      CheckPhys;
      for i := 0 to ItemCount - 1 do with Items[i]^ do CopyPosition := Position; // делаем копию состояния перед отрисовкой мира!
      for i := 0 to ItemCount - 1 do begin
        ShowItem(Items[i]^);           // рисуем элемент мира
        CheckPhys;                     // проверяем, не пора ли снова считать физику
      end;
    end;
    
    procedure OnIdle;
    begin
      if PlayingGame then Graph;
    end;

    Надо, чтобы в игре скорость игрового процесса не зависела от тормозов графики. Даже когда кадр долго рисуется, звуки и движения делаются строго по таймеру. Создавать лишний поток мне в лом, и вообще я дико боюсь приколов с синхронизациями и так далее. Поэтому сделал такую хрень. Сэмулировал многопоточность банальным однопоточным кодом.

    TarasB, 26 Мая 2010

    Комментарии (129)
  3. Куча / Говнокод #29177

    0

    1. 1
    Политота #36

    #6: (vanished) https://govnokod.xyz/_26648
    #7: https://govnokod.ru/26673 https://govnokod.xyz/_26673
    #8: https://govnokod.ru/27052 https://govnokod.xyz/_27052
    #9: (vanished) https://govnokod.xyz/_27852
    #10: https://govnokod.ru/28060 https://govnokod.xyz/_28060
    #11: https://govnokod.ru/28091 https://govnokod.xyz/_28091
    #12: https://govnokod.ru/28103 https://govnokod.xyz/_28103
    #13: https://govnokod.ru/28144 https://govnokod.xyz/_28144
    #14: https://govnokod.ru/28270 https://govnokod.xyz/_28270
    #15: https://govnokod.ru/28341 https://govnokod.xyz/_28341
    #16: https://govnokod.ru/28379 https://govnokod.xyz/_28379
    #17: https://govnokod.ru/28394 https://govnokod.xyz/_28394
    #18: https://govnokod.ru/28440 https://govnokod.xyz/_28440
    #19: https://govnokod.ru/28572 https://govnokod.xyz/_28572
    #20: https://govnokod.ru/28656 https://govnokod.xyz/_28656
    #21: (vanished) https://govnokod.xyz/_28666
    #22: https://govnokod.ru/28676 https://govnokod.xyz/_28676
    #23: https://govnokod.ru/28684 https://govnokod.xyz/_28684
    #24: https://govnokod.ru/28691 https://govnokod.xyz/_28691
    #25: https://govnokod.ru/28698 https://govnokod.xyz/_28698
    #26: https://govnokod.ru/28704 https://govnokod.xyz/_28704
    #27: https://govnokod.ru/28711 https://govnokod.xyz/_28711
    #28: https://govnokod.ru/28721 https://govnokod.xyz/_28721
    #29: https://govnokod.ru/28728 https://govnokod.xyz/_28728
    #30: (vanished) https://govnokod.xyz/_28747
    #31: https://govnokod.ru/28757 https://govnokod.xyz/_28757
    #32: https://govnokod.ru/28770 https://govnokod.xyz/_28770
    #33: https://govnokod.ru/28835 https://govnokod.xyz/_28835
    #34: https://govnokod.ru/28924 https://govnokod.xyz/_28924
    #35: https://govnokod.ru/29080 https://govnokod.xyz/_29080

    nepeKamHblu_nemyx, 11 Сентября 2025

    Комментарии (128)
  4. bash / Говнокод #27268

    0

    1. 1
    $ find ~ -name .git -type d -prune -printf "***\n%p\n***\n" -exec git -C '{}/..' status  \;

    MAKAKA, 21 Февраля 2021

    Комментарии (128)
  5. JavaScript / Говнокод #27106

    0

    1. 1
    https://tproger.ru/articles/frontend-roadmap-2021/

    Как много надо учить ради того, чтобы клепать красивые формочки.
    Они там совсем ебанулись?

    YpaHeLI_, 12 Ноября 2020

    Комментарии (128)
  6. C++ / Говнокод #25292

    −1

    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
    std::optional<int64_t> readNumber(const wchar_t *&str)
    {
        const wchar_t *origStr = str;
    
        if (*str == L'-' || *str == L'+') {
            str++;
            if (!std::iswdigit(*str)) {
                str--;
                return {};
            }
        } else {
            if (!std::iswdigit(*str)) {
                return {};
            }
        }
    
        while (std::iswdigit(*str)) {
            str++;
        }
    
        return wcstoll(origStr, NULL, 10);
    }

    А всё потому, что доки по «wcstoll» надо читать!

    gost, 07 Января 2019

    Комментарии (128)
  7. ActionScript / Говнокод #25139

    −3

    1. 1
    Как дела в 2019 году?

    Экшскрипт сгнил.

    3oJIoTou_xyu, 03 Декабря 2018

    Комментарии (128)
  8. JavaScript / Говнокод #17156

    +156

    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
    var old = 47;
    
            function getRate() {
                $.ajax({
                      url: "http://query.yahooapis.com/v1/public/yql?q=select%20%2a%20from%20yahoo.finance.xchange%20where%20pair%20in%20%28%22USDRUB%22%29&env=store://datatables.org/alltableswithkeys",
                      dataType: "text"
                }).done(function(msg) {
                    var value = /<Rate>(.+)<\/Rate>/.exec(msg)[1];
                    //$("#p-rate").html(/<Rate>(.+)<\/Rate>/.exec(msg)[1]);
                    $("#p-rate").html(value);
                    if(value > old) $("#p-message").html("МНЕ ОТ ЭТОГО ТОЛЬКО ЛУЧШЕ! ТОЛЬКО НА ПОЛЬЗУ!");
                    else if(value < old) $("#p-message").html("СКАЛЕН! СКАЛЕН!");
                    else $("#p-message").html("МНОГОХОДОВОЧКА!");
                    old = value;
                });
            }
    
            setInterval(getRate,1500);

    gost, 24 Ноября 2014

    Комментарии (128)
  9. Java / Говнокод #14305

    +142

    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
    public class PDFVPage
    {
    
    ....
    
        public int GetX()
        {
            return m_x;
        }
    
        public int GetY()
        {
            return m_y;
        }

    Либа Android PDF :)

    kovel, 31 Декабря 2013

    Комментарии (128)
  10. JavaScript / Говнокод #12251

    +160

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    for(var i = 0, l = requestParams.length; i < l; i++) {
        var param_pair = requestParams[i];
    
        key = encodeURIComponent(param_pair[0]);
        val = param_pair[1];
        if ( val && val.constructor.toString().match(/array/i) ) {
            val = val.join('+');
        }
        // ...
    }

    Кусочек велосипеда, который заменяет функционал jQuery.ajax

    Если вдруг наш параметр оказался массивом ... ну что ж еще с ним сделать кроме как соединить через "+". Обратите внимание на саму проверку.

    Elvenfighter, 05 Декабря 2012

    Комментарии (128)
  11. Си / Говнокод #3508

    −157

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    uint16_t (*tArray16[20])[16]; 
    uint16_t (*tArray64[5])[64]; 
    //////
    где-то в начале это malocaется
    //////
    for( i = 0; i < 25; i++ )
    { ....
        free( h->tArray16[i] );
    }

    это работает. т.к. структуры идут в памяти последовательно

    3.14159265, 18 Июня 2010

    Комментарии (128)