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

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

    +159

    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
    Obj = 0;
      while (dsmodel1.tellg () < LEN)
      {
        dsmodel1.read ( (char*)&ID, 2);
        dsmodel1.read ( (char*)&length, 4);
    
        switch (ID)
        {
        case 0x4d4d: break;
        case 0xb000: break;
        case 0xb002: break;
        case 0xb010: 
    
          char ch;
                do
                {
                    dsmodel1.read ( (char*)&ch, 1);
                }while (ch != '\0' && !dsmodel1.eof ());
    
          dsmodel1.ignore (4);
          dsmodel1.read ( (char*)&father_id [Obj], 2); // айди родительского объекта в иерархии
    
          break;
    
        case 0xb013:
    
          dsmodel1.read ( (char*)&(pivot [Obj].x), 4);   //координаты точки, вокруг которой будет вращаться объект
          dsmodel1.read ( (char*)&(pivot [Obj].y), 4);
          dsmodel1.read ( (char*)&(pivot [Obj].z), 4);
          break;
    
    
        case 0xb020:                                                                             // это поле описывает перенос объекта
          dsmodel1.ignore (10);
          number_of_keys [Obj] = new DWORD;
    
          dsmodel1.read ( (char*)&(number_of_keys [Obj][0]), 4);  //сколько кадров анимации будет у объекта
          key_number [Obj] = new DWORD [number_of_keys [Obj][0]];
          frameTran [Obj] = new D3DXVECTOR3 [number_of_keys [Obj][0]];
    
          how_much_to_ignore = 0;
    
          accel_flags = 0;
          for (i = 0; i < number_of_keys [Obj][0]; i++)
          {
            dsmodel1.read ( (char*)&(key_number [Obj][i]), 4);  
            dsmodel1.read ( (char*)&(accel_flags), 2);              //это флаги сплайнов, в этом примере всегда = 0
    
            if (accel_flags && (1 << 15)) how_much_to_ignore++;
            if (accel_flags && (1 << 14)) how_much_to_ignore++;
            if (accel_flags && (1 << 13)) how_much_to_ignore++;
    //...
     dsmodel1.read ( (char*)&(frameRot [Obj][i].y), 4);    // как я понял он должен быть помещен в точку pivot (она считывалась выше в поле 0хb013)
    //...
    case 0xb030:
          dsmodel1.read ( (char*)&(hierarchy_id [Obj]), 2);            // номер объекта в иерархии, в нашем примере = номеру объекта по порядку считывания

    Полный код:

    http://www.gamedev.ru/code/forum/?id=151570

    CPPGovno, 26 Августа 2011

    Комментарии (11)
  3. C++ / Говнокод #7599

    +158

    1. 1
    2. 2
    3. 3
    typedef int IntHack;
    const intHack operator+(const intHack, const intHack)
    {

    Счастливой отладки. ^_^

    Говногость, 20 Августа 2011

    Комментарии (11)
  4. Objective C / Говнокод #7583

    −321

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    typedef double NSTimeInterval;//Убило
    typedef signed char		BOOL; //??????????????
    #define YES             (BOOL)1
    #define NO              (BOOL)0
    typedef char *STR; //????

    Кокоа - рекомендует использовать свои типы вместо стандартных, но то что я нашел в библиотеках - тут писал наверное Кэп!

    Psionic, 18 Августа 2011

    Комментарии (11)
  5. C++ / Говнокод #7575

    +147

    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
    template <typename type>
    class some
    {
    
      type val;
    public:
      some( const type &a ) : val(a)
      {  }
      template<typename t>
      some( const some<t> &a )
      {
        val = static_cast<type>(a.val);
      }
      template <typename type>
      friend class some; // иначе ошибка - нет доступа к приватному члену
    };

    Филосовский однако язык. Для того что бы все свои секреты нужно с самим собой подружиться...
    Сбрил усы - дружись с усатым...

    Enelar, 17 Августа 2011

    Комментарии (11)
  6. PHP / Говнокод #7569

    +169

    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
    // Конструктор
    [...]
    $this->Messages = array(
            1 => 'Card succesfull edited !',
            2 => 'Error, edited card !',
            3 => 'Was change succesfull.', // Тут индекс = 3
            4 => 'Was change succesfull.', // А тут = 4. Сечешь разницу?
            5 => 'Change status...',
            6 => 'Comment added succesful',
            7 => 'Comment expediated !', // Коммент ушел в экспедицию 
            8 => 'The card was droped succesgul.', // succesGul
            9 => 'Can\'t to delete this card.', // I don't to know php and to have no idea about english
            10 => 'Can\'t do upload file.',
            11 => 'File was uploaded successful.',
            12 => 'The eacuation was succesfull.', // Успешная эякуляция :O
            13 => 'Eacuation !' // Эякуляция !
        );
    [...]
    
    // Сохранение в базу
    // - Папа, папа, а SQL Injection существует? - Нет сынок..........
    $this->SUA_DB->query("INSERT INTO cards SET type='{$_POST['selector_type']}',name='{$_POST['card']}',user = '{$this->user_id}', description='{$_POST['descr']}', project='{$_POST['selector_project']}', category='{$_POST['selector_category']}' ") &
    $this->Msg->SetMsg (vsprintf($this->Messages[7],$_POST['card'])) :
    $this->Msg->SetMsg ($this->Messages[6]) &
    $this->Msg->SetError(true);
    // Из область фантастики

    Сказали чинить код парня которого недавно уволили... Пришлось переписать все заново.

    Особенно понравившиеся строки прокомментировал

    cephuo, 17 Августа 2011

    Комментарии (11)
  7. C# / Говнокод #7507

    +143

    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
    public string IsLarge
            {
                get
                {
                    return (txtValue.Style["width"] == "150px").ToString();
                }
                set
                {
                    if (value == true.ToString())
                    {
                        txtValue.Style["width"] = "150px";
                    }
                    else
                    {
                        txtValue.Style["width"] = "65px";
                    }
                }
            }

    Свойство из одного эпического веб-проекта

    daymansiege, 10 Августа 2011

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

    +147

    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
    datatypes.Float = function(inString)
    {
    	var fBytes = [];
    	for (var i=0;i<4;i++)
    	{
    		var curByte = (inString.charCodeAt(i)&255).toString(2);
    		var byteLen = curByte.length;
    		if (byteLen<8)
    		{
    			for (var bit=0;bit<(8-byteLen);bit++)
    				curByte = '0'+curByte;
    		}
    		fBytes[i] = curByte;
    	}
    	var fBits = fBytes[3]+fBytes[2]+fBytes[1]+fBytes[0];
    	var fSign = parseInt(fBits[0]) ? -1 : 1;
    	var fExp = parseInt(fBits.substring(1,9),2)-127;
    	var fMan;
    	if (fExp == -127)
    		fMan = 0;
    	else
    	{
    		fMan = 1;
    		for (i=0;i<23;i++)
    		{
    			if (parseInt(fBits[9+i])==1)
    				fMan = fMan + 1/Math.pow(2,i+1);
    		}
    		fMan = fMan.toFixed(7);
    	}
    	return(parseFloat((fSign*Math.pow(2,fExp)*fMan).toFixed(3)));
    }

    Вчера накодил, оцените говнистость.

    SiPlus, 06 Августа 2011

    Комментарии (11)
  9. Куча / Говнокод #7473

    +102

    1. 1
    org.quartz.jobStore.dontSetAutoCommitFalse=true

    config boolshit

    3.14159265, 06 Августа 2011

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

    +150

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    function Point(){
    	this.x = 0;
    	this.y = 0;
    	if(arguments.length==2){				//if parameters are 2 points
    		this.x = arguments[0] || 0;
    		this.y = arguments[1] || 0;
    	}else
    		if(arguments.length==1){			//if parameter is a point object
    			this.x = arguments[0].x;
    			this.y = arguments[0].y;
    		}
    };

    yahoo, 05 Августа 2011

    Комментарии (11)
  11. Java / Говнокод #7448

    +147

    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
    String classToType(Class cls) {
        if (cls == Point.class) {
          return "int2";
        } else if ((cls == Integer.TYPE) || (cls == Integer.class)) {
          return "int";
        } else if ((cls == Double.TYPE) || (cls == Double.class)) {
          return "double";
        } else if (cls == String.class) {
          return "String";
        } else if ((cls == Boolean.TYPE) || (cls == Boolean.class)) {
          return "boolean";
        } else {
          return null;
        }
      }

    Lure Of Chaos, 04 Августа 2011

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