"PHP" / Говнокод #2261 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
function onbot($who) {
    $crime = 5;
    $crime_ar=array();
    for($i=0;$i<=$crime;$i++) {
        $crime_ar[$i]=$i;}
    for($i=$crime+1;$i<=100;$i++) {
        $crime_ar[$i]="empty";
    }
    $crime_numer=rand(0,100);
    $is_crime="0";
    for($i=0;$i<=100;$i++) {
        if($crime_numer==$crime_ar[$i]) {
            $is_crime="1";
        }
    }
    if($is_crime == 1) {
        $at = rand(1,4);
        if($at == 1) {$attacker = 'gorg1';}
        if($at == 2) {$attacker = 'gorg2';}
        if($at == 3) {$attacker = 'gorg3';}
        if($at == 4) {$attacker = 'gorg4';}
        attack($who,$attacker,'1');
        die();
    }
}

function attack($who,$attacker,$dif) {
    ..........................................
    if($attacker == "gorg1") {
        $prototype = "Рядовой Горг";
        $name = "Рядовой Горг";}
    if($attacker == "gorg2") {
        $prototype = "Горг-Лейтенант";
        $name = "Горг-Лейтенант";}
    if($attacker == "gorg3") {
        $prototype = "Горг-Капитан";
        $name = "Горг-Капитан";}
    if($attacker == "gorg4") {
        $prototype = "Горг Подполковник";
        $name = "Горг Подполковник";}
    $mine_id=$db["id"];
    // далее идет заполнение таблиц, для "блоя"
    }
}

Разбираюсь в онлайн игре. Архитектура самой игры на высшем уровне!

dicos dicos, (Updated )

Комментарии (1, +1)

"PHP" / Говнокод #2260 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
<?php

/*========================ПРОВЕРКА НА ПОЛУЧЕНИЕ АПА/ЛЕВЕЛА=======*/

function testUp($who) {

    $data=mysql_fetch_array(mysql_query("SELECT level,exp,next_up,ups,money FROM users WHERE login='$who'"));
    $player_exp=$data["exp"];
    $level=$data["level"];
    $exp_table=array();
    $exp_table[0]="20";
    $exp_table[1]="75";
    $exp_table[2]="190";
    $exp_table[3]="390";
.........................................................
    $exp_table[95]="37872105";
    $exp_table[96]="65916370";
    $exp_table[97]="121680315";
    $exp_table[98]="232883620";
    $exp_table[99]="454965645";
    $exp_table[100]="454965645";

    $stat_table=array();
    $stat_table[0]="4";
    $stat_table[1]="4";
    $stat_table[2]="4";
..........................................................
    $stat_table[98]="4";
    $stat_table[99]="4";
    $stat_table[100]="4";

    $money_table=array();
    $money_table[0]="2";
    $money_table[1]="2";
    $money_table[2]="6";
    $money_table[3]="12";
.........................................................
    $money_table[97]="243864";
    $money_table[98]="478660";
    $money_table[99]="946412";
    $money_table[100]="1000000";

    $level_table=array();
    $level_table[0]="0";
    $level_table[1]=$exp_table[0];
    $level_table[2]=$exp_table[1];
    $level_table[3]=$exp_table[2];
    $level_table[4]=$exp_table[3];
    $level_table[5]=$exp_table[4];
......................................................
    $level_table[98]=$exp_table[97];
    $level_table[99]=$exp_table[98];
    $level_table[100]=$exp_table[99];
    $level_table[101]=$exp_table[100];
// дальше идет малопонятный код
?>

Делаю доработку браузерной игры от одного умельца.

dicos dicos, (Updated )

Комментарии (2, +2)

Си диез / Говнокод #2259 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
if (Files[i].NeedCompression)
 {
       CompressFile(Files[i], Files[i].FileNameWithPath);
}
       else
{
       CompressFile(Files[i], Files[i].FileNameWithPath);
}

Если файл нужно сжать, сжимаем, или сжимаем :D
ps:// 3 года назад писал подобие архиватора, за компрессию отвечала библиотека zlib.net

nolka4 nolka4, (Updated )

Комментарии (5, +5)

"PHP" / Говнокод #2258 Ссылка на оригинал

0

  1. 1
  2. 2
<p>Всего сообщений: <?=$msg->{0}[0]['count']?></p>
<p>Новых: <?=$msg->{0}[0]['countNew']?></p>

Вот честнейшее слово, именно так. Пока загадка, почему и откуда. как будет время — разберусь. Как будет время настроение — разберусь. Если кто-то наткнётся — прошу прощения.

Shock Shock, (Updated )

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

Jawa / Говнокод #2256 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
String tempFileName = "someFileName";
URL url = SomeClass.class.getClassLoader().getResource(".");
File currentFolder = new File(url.getFile());
if(currentFolder.isDirectory()){
   File parentFolder = currentFolder.getParentFile();
   for (String file:parentFolder.list()) {
      if(file.equals("temp")){
         File targetFolder = new File(parentFolder.getAbsolutePath()+"\\"+file+"\\"+tempFileName);
         if(!targetFolder.exists()) {
	targetFolder.mkdir();
         }
         this.pathToTempFile = parentFolder.getAbsolutePath()+"\\"+file+"\\"+tempFileName;
      }
   }
}

Поиск директории для создания временных файлов вместо использования File.createTempFile(prefix, suffix)

eroese eroese, (Updated )

Комментарии (3, +3)

Си диез / Говнокод #2255 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
private string GetDefaultPolicyNameFromRegistry()
    {
        string registryControlCenterKeyName;
        RegistryKey key;
        try
        {
            if (System.Runtime.InteropServices.Marshal.SizeOf(typeof(IntPtr)) == 8)
                registryControlCenterKeyName = "SOFTWARE\\Wow6432Node\\xxx\\ControlCenter\\";
            else
                registryControlCenterKeyName = "SOFTWARE\\xxx\\ControlCenter\\";

            key = Registry.LocalMachine.OpenSubKey(registryControlCenterKeyName); ;

        }
        catch (Exception ex)
        {
            throw new ArgumentException("Registry open 'ControlCenter' key error: " + ex.Message);
        }

       return (string)key.GetValue("DefaultPolicy");
    }

Замечательно проверили на возможность исключений в ветке реестра с помощью try catch.. И также замечательно вынесли получение нужного значения из try catch
Как результат - после обновления не открываются две страницы, на которых можно было бы создать, просмотреть и етк нужное значение в реестре. Нормальная работа приложения гарантировано заблокирована.

Проверка битности системы тоже хорошая)

eiskalt eiskalt, (Updated )

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

Куча говна / Говнокод #2254 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
if formnaam='UBI_LABELS'
	do sqlcode with 'exec sp_kaartbak_overzicht ?mloginid, ?formnaam, ?mfilter0, ?mfilter1, ?mfilter2, ?mfilter3, ?mfilter4, ?mfilter5, ?mfilter6, ;
	?mfilter7,?mfilter8,?vnaam,?tnaam, ?vpartijnr, ?tpartijnr, ?vlokatie,?tlokatie,?vdatum, ?tdatum, ?mkg, ?moptie1','novzkrt1', 'ovzkaartbak.prg'
else
	do sqlcode with 'exec sp_kaartbak_overzicht ?mloginid, ?formnaam, ?mfilter0, ?mfilter1, ?mfilter2, ?mfilter3, ?mfilter4, ?mfilter5, ?mfilter6, ;
	?mfilter7,?mfilter8,?vnaam,?tnaam, ?vpartijnr, ?tpartijnr, ?vlokatie,?tlokatie,?vdatum, ?tdatum, ?mkg, ?moptie1','novzkrt1', 'ovzkaartbak.prg'
endif

Visual FoxPro. Иллюзия выбора.

bolkhovsky bolkhovsky, (Updated )

Комментарии (6, +6)

Сборный / Говнокод #2252 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
  90. 90
  91. 91
  92. 92
  93. 93
  94. 94
  95. 95
  96. 96
  97. 97
  98. 98
  99. 99
  100. 100
format ELF


include 'macros.inc'


public main


extrn printf
extrn puts
extrn exit
extrn strtok
extrn getenv
extrn strcmp
extrn strtol
extrn strcpy
; Функции для общения с БД
extrn get_version ; ремейк на mysql_get_client_info()
extrn get_product_by_single_name_ex

CGI_HEADER db "Content-Type: text/html", 13,10, "X-Powered-by: FASM (Flat Assembler 1.68)",13,10,0
QUERY_STRING db ?
REQUEST_METHOD db ?

	query_str_env_req	db	"QUERY_STRING", 0
	request_method_env_req	db	"REQUEST_METHOD", 0	
	RM_GET db "GET", 0
	RM_POST db "POST",0

NO_ACTION_ERROR_MSG db "No action", 0



q_token db "="
r_token db "&"


; Константы ACTION
	AC_VERSION equ 0; Инфа о версии и копирайте

	AC_PRODUCT_ID_BY_SINGLE_NAME equ 1; ID продукта по полному совпадению имени
	

section '.text' executable
_start:

	main:
	ccall puts, CGI_HEADER
	ccall getenv, request_method_env_req
	push eax
	;c
	xor eax, eax
	pop eax
	ccall strcmp, eax, RM_GET ; TODO: ЗМЕНИТЬ НА POST!!!1111
	cmp eax, 0
	jne quit
	
	;Что прислали в Action. ( ТОЛЬКО GET )
	
	ccall getenv, query_str_env_req
	ccall strcpy, QUERY_STRING, eax
	ccall strtok, QUERY_STRING, q_token
	push eax
	ccall strcmp, eax, "act"
	cmp eax, 0
	jne no_act
	je act
no_act:
	ccall puts, NO_ACTION_ERROR_MSG
	jmp quit
act:
	
	
	; Узнаём, что за опция в act
	pop eax;
	ccall strtok, 0, q_token
	ccall strtol, eax, 0, 10
	cmp eax, AC_VERSION
	je version_put
	cmp eax, AC_PRODUCT_ID_BY_SINGLE_NAME
	je product_id_by_single_name
	jne quit

version_put:
	; версия - из mysql
	ccall puts, "Web kernel v0.1. (c) 2009 by Sergei V. Adoniew ( <a href="/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="5e3f323a343f3c3f3a1e273f702c2b">[email protected]</a> ) with MySQL: "
	ccall get_version
	ccall puts, eax
	jmp quit

product_id_by_single_name:

	
	;НА Входе: name=%docname%
	;НА Выходе id
	
	; дробим строку на a=b разделителем &
 	ccall getenv, "QUERY_STRING"
	;у нас в eax вся строка

Собственный пьяный высер на фасме ( FASM ).

Обратить внимание на ветвление:)

AlDjabad AlDjabad, (Updated )

Комментарии (60, +60)