Профиль
Информация Управление
Здравствуйте, уважаемый посетитель. К сожалению, Вы не были распознаны форумом, как зарегистрированный пользователь. Для полноценного использования возможностей нашего форума вам необходимо зарегистрироваться. Если вы уже зарегистрированы на форуме, то вам необходимо пройти авторизацию, используя Ваш логин и пароль. Зарегистрированные пользователи получают возможность возможность общения на нашем форуме.


[Новые сообщения · Правила форума · RSS ]
  • Страница 1 из 1
  • 1
Форум » PAWN-скриптинг в San-Andreas Multiplayer » Флейм » Говнокод или суперархитектура (Как не надо скриптить)
Говнокод или суперархитектура
OKStyle Дата: Воскресенье, 03.11.2013, 13:58 | Сообщение # 1
Архивариус
Группа: Администраторы
Зарегистрирован: 19.02.2011
Сообщений: 125
Репутация: 8
Статус: Offline
Почему сервер лагает?
Код
public OnPlayerUpdate(playerid)
{
<...>
    for(new i = GetMaxPlayers() - 1; i != -1; i--)
    {
     <...>
    }
<...>
}


Как не надо делать
Код
public OnPlayerUpdate(playerid)
{
<...>
    static SPEEDPLAYER[MAX_PLAYERS];
<...>
}


Для тех, кто не понял с первого раза
Код
public OnPlayerText(playerid, text[])
{
<...>
    if(realchat)
    {
     if(gPlayerLogged [playerid]== 0) { return false; }
     if(gPlayerLogged [playerid]== 0) { return false; }
     <...>
    }
<...>
}


Отключаем синхронизацию игрока
Код
public OnPlayerUpdate(playerid)
{
<...>
    if(Works [playerid]== true && JobCP [playerid]== 2)
    {
     if(!GetPlayerAnimationIndex(playerid)) return 0;
     <...>
    }
<...>
}


Убер-огромное имя юзера
Код
new plname[255];
GetPlayerName(playerid, plname, sizeof(plname));


Расширяем границы возможного
Код
new string[128];
format(string, 256, <...>);


Потерянный аргумент
Код
format(string, 128, "Вы забрали оружие у %s", name, idd);


Ваш кэп
Код
case 2://Бампера
{
    new listitems[] = "[0] Cултан\n[1] Элегия\n[2] Flash\n[3] Jester\n[4] Uranus\n[5] Remington\n[6] Бродвей\n[7] Саванна\n[8] Торнадо";
    SPD(playerid, 6008, DIALOG_STYLE_LIST, "Спойлеры", listitems, "Выбрать", "<< Назад");
}


Гениальный античит
Код
forward CheckObjects();
public CheckObjects()
{
    for(new i = 1; i < 3000; i++)
    {
     if(i > 2504)//тупо если превышает ваше количество объектов удалять их
     {
      DestroyDynamicObject(i);
      printf("Object ID: %d", i);
     }
    }
    return 1;
}


Убойная логика
Код
if (hours == 0){SetWorldTime(0);}
if (hours == 1){SetWorldTime(1);}
if (hours == 2){SetWorldTime(2);}
if (hours == 3){SetWorldTime(3);}
if (hours == 4){SetWorldTime(4);}
if (hours == 5){SetWorldTime(5);}
if (hours == 6){SetWorldTime(6);}
if (hours == 7){SetWorldTime(7);}
if (hours == 8){SetWorldTime(8);}
if (hours == 9){SetWorldTime(9);}
if (hours == 10){SetWorldTime(10);}
if (hours == 11){SetWorldTime(11);}
if (hours == 12){SetWorldTime(12);}
if (hours == 13){SetWorldTime(13);}
if (hours == 14){SetWorldTime(14);}
if (hours == 15){SetWorldTime(15);}
if (hours == 16){SetWorldTime(16);}
if (hours == 17){SetWorldTime(17);}
if (hours == 18){SetWorldTime(18);}
if (hours == 19){SetWorldTime(19);}
if (hours == 20){SetWorldTime(20);}
if (hours == 21){SetWorldTime(21);}
if (hours == 22){SetWorldTime(22);}
if (hours == 23){SetWorldTime(23);}
if (hours == 24){SetWorldTime(24);}


А могло быть иначе?
Код
new arc;
if(arc == 0)
{
<...>
}


Для пущей уверенности
Код
GetPlayerTransfer[playerid] = strval(inputtext);
new giverid = GetPlayerTransfer[playerid];


 
Форум » PAWN-скриптинг в San-Andreas Multiplayer » Флейм » Говнокод или суперархитектура (Как не надо скриптить)
  • Страница 1 из 1
  • 1
Поиск:

Сайт управляется системой uCoz