1. Си / Говнокод #25766

    +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
    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
    case 1342:
    	    {
    	        if(!response) return true;
    	        //ShowPlayerDialogEx(playerid,1342,DIALOG_STYLE_LIST, "Рыбалка","Начать / Закончить рыбалку\nНакопать червей\nПриготовить рыбу\nСъесть рыбу\nИнформация\nПомощь", "Выбор", "Выход");
    	        switch(listitem)
    	        {
    				case 0:
    				{
                        //if(!IsAtFishPlace(playerid)) return SendClientMessage(playerid,0x81DA99AA,"Вы должны находиться возле причала");
    	   				if(!GetPVarInt(playerid,"fish_began"))
    	   				{
    	   				    if(!GetPVarInt(playerid,"fish_rod")) return SendClientMessage(playerid,0x81DA99AA,"У вас нет удочки");
    				    	if(!GetPVarInt(playerid,"fish_gear")) return SendClientMessage(playerid,0x81DA99AA,"У вас нет снастей");
    				    	if(!GetPVarInt(playerid,"fish_worms")) return SendClientMessage(playerid,0x81DA99AA,"У вас нет червей");
    	   				    UpdateFish(playerid);
    	   				    PlayerTextDrawShow(playerid,FishingText[playerid]);
    	   				    SetPlayerAttachedObject(playerid, 0,18632,6,0.079376,0.037070,0.007706,181.482910,0.000000,0.000000,1.000000,1.000000,1.000000);
    				   		SetPVarInt(playerid,"fish_began",1);
    				   		DeletePVar(playerid,"fish_time");
    						DeletePVar(playerid,"fish_ready");
    					}
    					else
    					{
    					    //if(ribachit[playerid] == 1) return SendClientMessage(playerid,0x81DA99AA,"В данный момент нельзя завершить рыбалку");
                            RemovePlayerAttachedObject(playerid,0);
                            DeletePVar(playerid,"fish_began");
                            DeletePVar(playerid,"fish_ready");
                            DeletePVar(playerid,"fish_time");
                            ClearAnimations(playerid);
                            PlayerTextDrawHide(playerid,FishingText[playerid]);
    					}
    				}
    				case 1:
    				{
    				    if(!IsPlayerInRangeOfPoint(playerid, 25,1957.3359,206.6625,30.5146) && !IsPlayerInRangeOfPoint(playerid, 25,10.2461,-85.6648,3.1094) &&
    					!IsPlayerInRangeOfPoint(playerid, 25,-200.7619,6.3196,3.1094) && !IsPlayerInRangeOfPoint(playerid, 25,-1120.5344,-997.0002,129.2188) && !IsPlayerInRangeOfPoint(playerid, 25,-224.8588,-1363.7963,7.2658)) return SendClientMessage(playerid,0x81DA99AA,"Неудачное место для поиска");
    					if(random(2) == 1) ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 6.1, 0, 0, 0, 0, 0,1),  SetPVarInt(playerid,"fish_worms",GetPVarInt(playerid,"fish_worms")+10), SendClientMessage(playerid,0x81DA99AA,"Вы нашли 10 червей!"), ShowPlayerDialogEx(playerid,1342,DIALOG_STYLE_LIST, "Рыбалка","Начать / Закончить рыбалку\nНакопать червей\nПриготовить рыбу\nСъесть рыбу\nПродать рыбу\nИнформация\nПомощь", "Выбор", "Выход");
    					else return ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 6.1, 0, 0, 0, 0, 0,1), SendClientMessage(playerid,0x81DA99AA,"Вы ничего не нашли"), ShowPlayerDialogEx(playerid,1342,DIALOG_STYLE_LIST, "Рыбалка","Начать / Закончить рыбалку\nНакопать червей\nПриготовить рыбу\nСъесть рыбу\nПродать рыбу\nИнформация\nПомощь", "Выбор", "Выход");
    				}
    				case 2:
    				{
    				    if(PTEMP[playerid][pFishesPach] >= 25) return SendClientMessage(playerid,0x81DA99AA,"У вас 25 / 25 пачек рыбы");
    				    if(PTEMP[playerid][pFishes] < 20) return SendClientMessage(playerid,0x81DA99AA,"Для создания требуется 20 кг. рыбы");
    				    PTEMP[playerid][pFishesPach]++;
    				    PTEMP[playerid][pFishes]-=float(20);
    				    SendMes(playerid,0x81DA99AA,"Вы приготовили рыбу. У вас %i / 25 пачек.",PTEMP[playerid][pFishesPach]);
    				    ShowPlayerDialogEx(playerid,1342,DIALOG_STYLE_LIST, "Рыбалка","Начать / Закончить рыбалку\nНакопать червей\nПриготовить рыбу\nСъесть рыбу\nПродать рыбу\nИнформация\nПомощь", "Выбор", "Выход");
    				}
    				case 3:
    				{
                        if(PTEMP[playerid][pFishesPach] < 1) return SendClientMessage(playerid,0x81DA99AA,"Недостаточно рыбы");
                        PTEMP[playerid][pFishesPach]--;
                        PTEMP[playerid][pSatiety]=100;
                        SendMes(playerid,0x81DA99AA,"«Сытость» пополнена до 100. У вас %i / 25 пачек.",PTEMP[playerid][pFishesPach]);
                        ShowPlayerDialogEx(playerid,1342,DIALOG_STYLE_LIST, "Рыбалка","Начать / Закончить рыбалку\nНакопать червей\nПриготовить рыбу\nСъесть рыбу\nПродать рыбу\nИнформация\nПомощь", "Выбор", "Выход");
    				}
    				case 4:
    				{
    				    for(new i = 1; i <= TotalBizz; i++)
    					{
    						if(PTEMP[playerid][pFishes] < 2) return SendClientMessage(playerid,0x81DA99AA,"Недостаточно рыбы");
    						if (PlayerToPoint(10, playerid,BizzInfo[i][bBarX], BizzInfo[i][bBarY], BizzInfo[i][bBarZ]) && BizzInfo[i][bType] == 2 && GetPlayerVirtualWorld(playerid) == BizzInfo[i][bVirtualWorld])
    						{
    							PTEMP[playerid][pCash] +=floatround(PTEMP[playerid][pFishes])*5;
    							if(BizzInfo[i][bProducts]+floatround(PTEMP[playerid][pFishes]) < 2000) BizzInfo[i][bProducts]+=floatround(PTEMP[playerid][pFishes]);
    							else BizzInfo[i][bProducts]=2000;
    							format(YCMDstr,sizeof(YCMDstr), "Вы продали %.1f кг. рыбы. Выручка: %i вирт",PTEMP[playerid][pFishes],floatround(PTEMP[playerid][pFishes]));
    							SendClientMessage(playerid,0x81DA99AA,YCMDstr);
    							PTEMP[playerid][pFishes] = 0;
    							ShowPlayerDialogEx(playerid,1342,DIALOG_STYLE_LIST, "Рыбалка","Начать / Закончить рыбалку\nНакопать червей\nПриготовить рыбу\nСъесть рыбу\nПродать рыбу\nИнформация\nПомощь", "Выбор", "Выход");
    							break;
    						}
    					}
    				}

    И так ещё 2мб кода. Кому интересно глянуть полный перл - добро пожаловать на пастбин https://pastebin.com/JCyBWUVy. Язык - обрубок C для неумеющих в управление памятью, который называется Small. Сам кусок перла - часть хайлоад проекта с 1000 игроков онлайн одновременно(http://samp-rp.ru).

    Запостил: monobogdan, 16 Августа 2019

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

    • Кстати, забыл упомянуть что так ещё 2мб кода в ОДНОМ файле.
      Ответить
    • 81 DA 99 AA это цвет какой-то?
      Ответить
    • > #tryinclude

      Это как в "PHP" @include?
      Ответить
    • так это генерированый код поди
      Ответить
    • Когда-то задротил в SAMP, но смог соскочить.
      Ответить
      • Что такое "SAMP"?
        Ответить
        • "GTA San Andreas Multiplayer"
          Ответить
        • Solaris Apache Mysql Php
          Ответить
          • Кстати, вполне реальная картинка в некоторых зарубежных ВУЗах. И мускуль даже должно бы неплохо работать, учитывая отличную реализацию многопоточности в солярке
            Ответить
            • А что там за такая отличная многопоточность?
              Ответить
              • обычная хорошая многопоточность с умным шедулером
                была там за 20 лет до того, как ее завезли в другие юниксы
                Ответить
          • А «бамп» –— это BSD Apache Mysql Php?
            Ответить
    • Любой скриптинг игры - дичайшее говно. https://govnokod.xyz/_25479/
      Ответить
      • Игры не нужны.

        Именно поэтому я за "PHP".
        Ответить
    • Тут везде фолсру?
      Ответить
    • >> Кому интересно глянуть полный перл
      >>
      А полный PHP есть?
      Ответить
    • В России крупнейшая после Чернобыля ядерная катастрофа, считает американская разведка. По данным ЦРУ, уровень загрязнения является опасным для жизни не только на территории базы, но и в близлежащих населенных пунктах.

      США отслеживают сообщения о смертоносных испытаниях на российском военном полигоне в Белом море. Об этом заявил Reuters один из высокопоставленных чиновников администрации Трампа, просивший не раскрывать свое имя.

      Масштаб катастрофы, как и ее природу, в Белом доме не берутся однозначно оценить, но должностное лицо полагает, что Москва напрасно делает вид, что «все нормально».

      Тем временем израильские источники пишут, что в Центральном разведывательном управлении США считают взрыв ядерной двигательной установки для ракеты, которую испытывало Минобороны, «крупнейшей ядерной катастрофой со времен Чернобыля».

      Ранее в США предположили, что в Архангельской области взорвался прототип крылатой ракеты «Буревестник», которой Путин пугал мир, показывая мультфильмы. В результате мини-ядерного взрыва 8 августа погибли 5 специалистов «Росатома» и 10 военных.

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

      Полигон, где проводились испытания закрыт и вероятно будет закрыт навсегда.
      Ответить
      • Напомним, что в конце 2018 года CNN и Foxnews сообщили со ссылкой на неназванных официальных лиц, что анонсированная Путиным ракета находится еще лишь в стадии разработки и что США наблюдали недавно попытку запустить такую ракету, которая закончилась падением в Арктике. Ракета отработала первую ступень, и несла в себе габаритный макет ядерного двигателя и боеголовки.

        Эксперты указали, что разработка ракеты стала гораздо более проблемной, чем предполагалось заранее.

        Габаритные данные говорят о том, что данная ракета возможна только морского базирования — ни один самолет ее нести не способен. Но и пуски с корабля чреваты рядом неприятных последствий — это в первую очередь необходимость дезактивации корабля.

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

        Таким образом ракета оставляет заметный радиоактивный след, а сам двигатель после единичного пуска выгорает и не подлежит восстановлению.

        Последнее скорее всего и стало причиной катастрофы этой ядерной ракеты.

        Отдел мониторинга
        Кавказ-Центр
        Ответить
    • >> хайлоад проекта
      >> 1000 игроков онлайн одновременно
      >>
      https://www.eatliver.com/wp-content/uploads/2015/02/lol1.jpg
      Ответить
      • а что смешного?
        в 1999-м году 1000 пользователей это хайлоад
        а 10 гигабайт это бигдата
        Ответить
        • Чет смахивает на гон.
          Ответить
          • чойто гон?
            Ответить
            • Ну как бы были уже в те годы и поисковики, и ММОРПГ, и, я думаю, всякие Direct Connect, так что тысяча пользователей могла быть хайлоадом разве что за десять лет до
              Ответить
      • Ну ты как бы не забывай, что таких серверов на одной машине может быть несколько, и на каждом по 1к игроков, мой юный иксперт. И все они дрочат одну бд.
        Ответить
        • Н-но... ведь у хуйлоада не может быть бд, а только Olympic Storage Engine!
          Ответить
          • Долго думал причем тут хуй ло и почему слово не заблокировал блеклист.
            Ответить
          • В котором один из пяти демонов не запустится?
            Ответить
        • > таких серверов на одной машине может быть несколько
          сразу видно, что в хайлоаде ты как свинья в апельсинах
          Ответить
    • > C для неумеющих в управление памятью
      А DeletePVar что такое?
      Ответить
      • Там у каждого игрока есть своя key-value мапа, в которой хранятся переменные для игроков.
        DeletePVar - как раз удаляет значение из этой мапы.
        Ответить
    • Статья вот прилетела, из которой следует, что
      а) у крестовиков нет культуры опенсурса
      б) C++ lacks of a single, full-featured standard library

      https://blogs.dropbox.com/tech/2019/08/the-not-so-hidden-cost-of-sharing-code-between-ios-and-android/
      Ответить
      • > dropbox.com
        Ясно.
        Ответить
      • > C++ lacks of a single, full-featured standard library
        Надо как в «PHP», шоб вся либа была сразу в глобалах?
        Ответить
      • >sharing
        > C++
        ахахаха, на пятый год индеетс зоркий глаз узнал, что стабильного аби нету и нужно юзать C
        Ответить
        • Ага, а для разработки на C++ внезапно понадобились разработчики на C++
          Ответить

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