1. Pascal / Говнокод #19106

    −43

    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
    86. 86
    87. 87
    88. 88
    89. 89
    TBattleBot = class(TUnit)
       fLetaet,fPlyvet:boolean; fBMSpeed:integer;//skorost' kadrov
       fCBMm:integer;//количество картинок MOVE
       fCBMl:integer;//count lestnica
       fCBMu:integer;//count up lestnica
       fCBMa:integer;//count attack              //
       fCBMd:integer;//count damage
       fCBMk:integer;//count kill
       fMxSp,fMySp,fLxSp,fLySp,fUxSp,fUySp:integer;//skorosti
       fBShow:boolean;
       fxSnarad,fySnarad:integer;//x y vypuskaemogo snarada otnositelno 0:0-fxbm:fybm
       fSxSpeed,fSySpeed:integer;//skorost' snarada
       fSPZh:integer;//PZh snarada
       fSlvl:integer;//lvl snarada    :;
       fSBMSpeed:integer;
       fSxbm,fSybm,fSxr,fSyr,fSxb,fSyb,fSWidthbm,fSHeightbm,fSWidthr,fSHeightr:integer;//har snarada
       fAlgoritm:array [1..10] of TAlgoritm;
       fST:integer;//summa vremeni algoritmov
       fCA:integer;//kolvo povtorov algoritmov
       fTAlgoritm:integer;//Tekushchii algoritm
       fDamage:integer; //ataka
       fDefence:integer;//zashchyta
       fStructure:integer;
       fTStructure:integer;//HP
       Constructor Create(xbm,ybm,xr,yr,Widthr,Heightr,xb,yb,
       CBMm,CBMl,CBMu,CBMa,CBMd,CBMk,BMSpeed,
       xSnarad,ySnarad,Sxr,Syr,Sxb,Syb,SxSpeed,SySpeed,SPZh,Slvl,SBMSpeed,
       SWidthbm,SHeightbm,SWidthr,SHeightr,
       MxSp,MySp,LxSp,LySp,UxSp,UySp,
       c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,Damage,Defence,Structure,TStructure:integer;
       StBM:string;Stan,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10:char;
       Levo,Letaet,Plyvet:boolean);
       Procedure Attack(Alvl:integer);
      end;
    //....
    Constructor TBattleBot.Create(xbm,ybm,xr,yr,Widthr,Heightr,xb,yb,
    CBMm,CBMl,CBMu,CBMa,CBMd,CBMk,BMSpeed,
    xSnarad,ySnarad,Sxr,Syr,Sxb,Syb,SxSpeed,SySpeed,SPZh,Slvl,SBMSpeed,
    SWidthbm,SHeightbm,SWidthr,SHeightr,
    MxSp,MySp,LxSp,LySp,UxSp,UySp,
    c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,Damage,Defence,Structure,TStructure:integer;
    StBM:string;Stan,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10:char;
    Levo,Letaet,Plyvet:boolean);
    begin
    inherited Create(xbm,ybm,xr,yr,Widthr,Heightr,xb,yb,StBM,Stan,Levo);
    fBMSpeed:=BMSpeed;
    fStan:=Stan;
    fCBMm:=CBMm;
    fCBMl:=CBMl;
    fCBMa:=CBMa;
    fCBMd:=CBMd;
    fCBMk:=CBMk;
    fLevo:=Levo;
    fLetaet:=Letaet;
    fPlyvet:=Plyvet;
    fxSnarad:=xSnarad;
    fySnarad:=ySnarad;
    fSxr:=Sxr;
    fSyr:=Syr;
    fSxb:=Sxb;
    fSyb:=Syb;
    fSxSpeed:=SxSpeed;
    fSySpeed:=SySpeed;
    fSPZh:=SPZh;
    fSlvl:=Slvl;
    fSBMSpeed:=SBMSpeed;
    fSWidthbm:=SWidthbm;
    fSHeightbm:=SHeightbm;
    fSWidthr:=SWidthr;
    fSHeightr:=SHeightr;
    fMxSp:=MxSp;
    fMySp:=MySp;
    fLxSp:=LxSp;
    fLySp:=LySp;
    fUxSp:=UxSp;
    fUySp:=UySp;
    fAlgoritm[1].Chastota:=c1;
    fAlgoritm[2].Chastota:=c2;
    //...
    fAlgoritm[1].NStan:=s1;
    fAlgoritm[2].NStan:=s2;
    //...
    fCA:=0;
    fTAlgoritm:=1;
    fDamage:=Damage;
    fDefence:=Defence;
    fStructure:=Structure;
    fTStructure:=TStructure;
    end;

    Так говнокодил мой друг реалтаймовую игрушку.
    Описание юнита.

    Запостил: Janycz, 29 Ноября 2015

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

    • Выдержка из рецензии:

      ...Отличный стиль именования, из которого сразу понятно какая переменная за что отвечает.
      Автор также показал владение двумя языками, использовав оба для написания комментариев. Для удобства чтения кода программистами, не имеющими возможность включить поддержку русского языка, используется транслитеррация кириллических символов в латинские...
      Ответить
    • > fLetaet,fPlyvet:boolean;
      Загадка: Летает, но не птица. Плывёт, но не рыба.
      Ответить
    • Такой порядок полей будет легче запоминаться:
      fCBMm:integer;//количество картинок MOVE
      fCBMu:integer;//count up lestnica
      fCBMd:integer;//count damage
      fCBMa:integer;//count attack              //
      fCBMk:integer;//count kill
      Ответить
    • Давно паскаль умеет в крестовые однострочные комментарии?
      Ответить

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