PDA

Просмотр полной версии : Advance GangWar



gangzone.ini
10.04.2016, 21:34
http://rgho.st/6myP2G75b/image.png

Доброго времени суток пользователи Pro-Pawn.Ru
Предостовляю вашему вниманию мод Advance GangWar.


О моде:

Текущия версия мода: 0.5;
Автор: gangzone.ini;
Жанр мода: GangWar;
Командный процессор: DC_CMD;
Хранение данных: MySQL R39-2;
Строк в моде: 4189.
Инфомарция с -d3:

Header size: 6508 bytes
Code size: 263208 bytes
Data size: 228444 bytes
Stack/heap size: 16384 bytes; estimated max. usage=1842 cells (7368 bytes)
Total requirements: 514544 bytes
VERSION 0.1:

Регистрация / Авторизация аккаунта на MySQL R39-2 - Copy Advance RP;
Входы / Выходы в интерьеры банд - Copy Advance RP;
Система чата - Copy Advance RP;
Система АФК - Copy Advance RP;
104 территории GHETTO - Copy Advance RP;
Пару административных команд - Copy Advance RP;
Добавлена команда /healme - Copy Advance RP;
Добавлена команды /mask - Copy Advance RP;
VERSION 0.2:

В регистрацию добавлена дата регистрации, IP регистрации;
Добавлено сохранение последнего вашего IP адресса;
Добавлено 2 типа чатов - Copy Advance RP.
Оптимизация мода в целом;
Сделана система AntiDriveBy - Copy Advance RP;
Теперь если Вы администратор, при авторизации это пишет - Copy Advance RP;
Добавлена система мута и тюрьмы - Copy Advance RP;
Личные настройки (чат не доделан) - Copy Advance RP;
Связь с администрацией - Copy Advance RP;
Добавлено пару административных команд - Copy Advance RP;
Система захвата территорий - Copy Advance RP;
Система рангов, идея $continue$;
Добавлен чат банды /f - Copy Advance RP;
Выдача рандомного скина при спавне;
PayDay - Copy Advance RP;
И пару мелочей;
VERSION 0.3:

Исправлен баг с мутом, теперь нельзя писать в обычный и /f чаты;
Исправлен баг с джайлом, теперь спавнит в тюрьме;
Теперь команда /jail корректно выводит причину наказания;
Теперь если у Вас кончился мут/джайл - Вам автоматически обнулится мут/джайл;
Изменены цвета/тексты некоторых сообщений - Copy Advance Rp;
Исправлен баг с /capture, флудило;
Исправлен баг с /ears;
Исправлен баг с АФК, всегда писало 59, даже если не в АФК;
Исправлен баг с PayDay - флудило до 01 минуты;
Добавлены все склады, с функционалом;
Добавлена команда /changeskin (пока что без функционала) - Copy Advance Rp;
Добавлена команда /sms - Copy Advance Rp;
Добавлена команда /time - Copy Advance Rp;
Добавлена команда /weap (Зеленые слоты не делала, это нужно только для РП сервера) - Copy Advance Rp;
Добавлена команда /respv - Copy Advance Rp;
Добавлена команда /goto - Copy Advance Rp;
Добавлена команда /get - Copy Advance Rp;
Добавлена команда /gethere - Copy Advance Rp;
Добавлен топ 10 игроков по убийствам (/mn - 10. Топ 10 игроков);
Добавлена смена ника - Copy Advance Rp;
Добавлена смена пароля - Copy Advance Rp;
Немного подправила код местами;
Теперь настройки чата работают корректно;
VERSION 0.4:

Исправлен баг с киком - кикало всех кто на сервере;
Добавлена команда /admins - Copy Advance Rp;
Добавлена система общего чата /o;
Добавлена команда для сис. админа /setadmin;
Теперь нельзя захватывать респавны банд;
Добавлены команды /veh и /delveh - Copy Advance Rp;
Добавлен анти-сбив анимации аптечки;
Добавлен анти-мат;
Добавлен килл-лист;
Добавлена команда /settime - Copy Advance Rp;
Добавлена команда /setweather - Copy Advance Rp;
Добавлена команда /hpall - Copy Advance Rp;
Добавлена команда /hp - Copy Advance Rp;
Добавлена команда /ip - Copy Advance Rp;
Добавлена команда /setscore;
Добавлено описание доступных команд;
Частично изменила код;
Для команды /changeskin добавлен функционал;
Добавлена команда /sp - Copy Advance Rp;
GodModTest - Copy Advance Rp;
Добавлена команда для сис.админа /apanel;
Добавлена система мероприятий /settp && /tp - Copy Advance Rp;
VERSION 0.5:

Добавлена система бан;
Добавлена система авто-рестарта;
Добавлена система анти-ск;
Добавлены автомобили - Scorpion RP;
Добавлено точное время (/c)(Не доделана) - Copy Advance Rp;
Исправлена команда /respv;
Исправлена команда /sp;
Исправлена команда /settime;
Добавлена приветствие при авторизации;
Добавлена команда /arang;
Добавлена команда /adm;
Добавлена команда /setvip;
Добавлена команда /vhelp;
Добавлена команда /v;
Добавлена команда /giveheal;
Теперь если Вы VIP, в общем чате будет приставка [VIP игрок];
Добавлено радио /play - Copy Advance Rp;
Добавлен мониторинг банд.

Скриншоты: https://yadi.sk/d/4G5OE1RvqsyDv
Скачать с Яндекс.Диск: https://yadi.sk/d/OzXKIhGerhikx
Pastebin: http://pastebin.com/KZ37e5uV

$continue$
10.04.2016, 21:36
Татьяна, изучите Git.
Всегда не понимал, почему скриптеры в SA-MP, просто выкладывают свой мод на хостинги?

gangzone.ini
10.04.2016, 21:37
Татьяна, изучите Git.
Всегда не понимал, почему скриптеры в SA-MP, просто выкладывают свой мод на хостинги?

Забыла про pastebin.com (http://pastebin.com/), сейчас добавлю.
//UPD
http://pastebin.com/TCS2zs2M

Иван Бубнов
10.04.2016, 22:46
Что-ж, ждем воскресенья. Надеюсь не пустые слова.

gangzone.ini
10.04.2016, 23:13
Что-ж, ждем воскресенья. Надеюсь не пустые слова.

Сегодня же выложила :dirol:

Nurick
11.04.2016, 00:51
А почему именно Advance RP??? Никогда не понимал людей которые пытаются сделать что-то похожее! Смысл делать что-то Однотипным другому. Сделал я всё по типу Advance RP(или что из известных серверов) и дальше куда с этим идти??

[ForD]
11.04.2016, 00:54
А почему именно Advance RP??? Никогда не понимал людей которые пытаются сделать что-то похожее! Смысл делать что-то Однотипным другому. Сделал я всё по типу Advance RP(или что из известных серверов) и дальше куда с этим идти??

В паблик-же =D
На хостингах только "уникальные" моды...

gangzone.ini
11.04.2016, 00:54
А почему именно Advance RP??? Никогда не понимал людей которые пытаются сделать что-то похожее! Смысл делать что-то Однотипным другому. Сделал я всё по типу Advance RP(или что из известных серверов) и дальше куда с этим идти??

Я не для себе же делаю, для паблика.
Если делать для себя дело одно, но в паблик, зачем ?)

Nurick
11.04.2016, 01:06
Я не для себе же делаю, для паблика.
Если делать для себя дело одно, но в паблик, зачем ?)

Да и для паблика зачем?? Смысла тоже нет. Да даже любой взявший на доработку этот сценарий он так же далеко не уйдёт с этим! Если честно я даже не вижу смысла в чьих то Готовых решениях. У людей фантазия огромная но воплотить они не могут это, так как грубо говоря не хватает мозгов. Лучше учиться всё на Уроках которые предоставляют пользователи. И тогда воплощать уже своё! Ну это моё субъективное мнение.

gangzone.ini
11.04.2016, 01:13
Да и для паблика зачем?? Смысла тоже нет. Да даже любой взявший на доработку этот сценарий он так же далеко не уйдёт с этим! Если честно я даже не вижу смысла в чьих то Готовых решениях. У людей фантазия огромная но воплотить они не могут это, так как грубо говоря не хватает мозгов. Лучше учиться всё на Уроках которые предоставляют пользователи. И тогда воплощать уже своё! Ну это моё субъективное мнение.

Мнение верное, но так думают долеко не все :to_take_umbrage:

iWors
11.04.2016, 04:07
А почему именно Advance RP??? Никогда не понимал людей которые пытаются сделать что-то похожее! Смысл делать что-то Однотипным другому. Сделал я всё по типу Advance RP(или что из известных серверов) и дальше куда с этим идти??
RP? Во-первых GangWar, то есть жанр другой, а во-вторых все таки копий различных модов очень много, но копия Advance GW одна была до сегодня, и это ужасный код от Thomas'a Makavelli

Excel_Smit.
11.04.2016, 07:34
RP? Во-первых GangWar, то есть жанр другой, а во-вторых все таки копий различных модов очень много, но копия Advance GW одна была до сегодня, и это ужасный код от Thomas'a Makavelli

Парень, ты кажется порталом ошибся, раз сравниваешь томаса с П-И юзерами П-П. Во-первых, код лично этого мода достаточно не плохой, разве что пару замечаний, но это не суть. Во-вторых, насколько я знаю, gangzone не стала бы пользоваться паблик скриптами, а от томаса макавели уж точно.

ПС: ТС, мне тоже кажется что мод надо чуть переделать чтоб было заметно что это GangWar :smile:


Сегодня же выложила :dirol:

Я тоже думал что в воскр. будет новая версия xD

gangzone.ini
11.04.2016, 13:54
Парень, ты кажется порталом ошибся, раз сравниваешь томаса с П-И юзерами П-П. Во-первых, код лично этого мода достаточно не плохой, разве что пару замечаний, но это не суть. Во-вторых, насколько я знаю, gangzone не стала бы пользоваться паблик скриптами, а от томаса макавели уж точно.

ПС: ТС, мне тоже кажется что мод надо чуть переделать чтоб было заметно что это GangWar :smile:



Я тоже думал что в воскр. будет новая версия xD

Я не буду пользоваться, но а как другие ?) На ГИ напиши в теме Макавели что мод дно, тебя оскорбят в доль и поперёк)

vovandolg
11.04.2016, 14:10
Скачать с YandexDisk:

А зачем тогда AntiDeAMX вшила если мод выложен для паблика, не когда не понимал таких людей)
Не сразу увидел что там в моде ркон меняется, понял теперь..
_______

#if defined MAX_PLAYERS
#undef MAX_PLAYERS
#define MAX_PLAYERS 5
#else
#define MAX_PLAYERS 5
#endif
Зачем искать задейфайнено ли MAX_PLAYERS, если в samp он по умолчанию есть и не надо беспокоится что константу украли)


#undef MAX_PLAYERS
#define MAX_PLAYERS 5

________
Анти ДБ словно портухой маленького дитя отпорол)) бывают же случаи такие когда случайно наехал или под машину спецом кто то кинулся
________
Если не ошибаюсь то в паблике смерти надо делать проверку убийцы на INVALID_PLAYER_ID(может и ошибаюсь даже, но я делал когда то для того чтобы не было ошибок при смерти где массивы убийцы)

Не буду придираться к остальным мелочам, мод прекрасный в плане пострелушек, удачного написания дальнейшего кода =)

gangzone.ini
11.04.2016, 15:24
А зачем тогда AntiDeAMX вшила если мод выложен для паблика, не когда не понимал таких людей)
Не сразу увидел что там в моде ркон меняется, понял теперь..
_______

#if defined MAX_PLAYERS
#undef MAX_PLAYERS
#define MAX_PLAYERS 5
#else
#define MAX_PLAYERS 5
#endif
Зачем искать задейфайнено ли MAX_PLAYERS, если в samp он по умолчанию есть и не надо беспокоится что константу украли)


#undef MAX_PLAYERS
#define MAX_PLAYERS 5

________
Анти ДБ словно портухой маленького дитя отпорол)) бывают же случаи такие когда случайно наехал или под машину спецом кто то кинулся
________
Если не ошибаюсь то в паблике смерти надо делать проверку убийцы на INVALID_PLAYER_ID(может и ошибаюсь даже, но я делал когда то для того чтобы не было ошибок при смерти где массивы убийцы)

Не буду придираться к остальным мелочам, мод прекрасный в плане пострелушек, удачного написания дальнейшего кода =)

Advance Rp так не считает ) Системы Advance Rp делаю.
AntiDeAMX для дольнейшей разработки, если возьмут под основу)
Блогадарю за пожелание :bye:

Иван Бубнов
11.04.2016, 16:13
Несколько придирок...

#1.

CMD:menu(playerid)
{
ShowPlayerDialog(playerid, DIALOGUE_MENU, DIALOG_STYLE_LIST, "{0099CC}Меню игрока", "\
1. Статистика\n\
2. Список команд\n\
3. Личные настройки\n\
4. Настройки безопасности\n\
5. Связь с администрацией\n\
6. Улучшение\n\
7. Правила сервера\n\
8. Изменить имя\n\
9. Дополнительно", "Выбрать", "Закрыть");
}

Может я и путаю, но DC вроде бы рекомендовал, и приводил аргументы на счет playerid, params[] (см. Мифы о PAWN скриптинге (цикл уроков)). А еще ничего не возвращается, а это ведь паблик.

#2

new
Float: max_health;
GetPlayerHealth(playerid, max_health);
if(p_virable[playerid][p_heal] == 0) return SendClientMessage(playerid, COLOR_LIGHTGREY, "У Вас нет аптечки!");
Я считаю, что переменную надо было объявить после всех проверок (и таких в моде дофига).


CMD:capture(playerid, params[])
{
for(new i = 0; i != sizeof(gz_info); i++)
{
if(OnSquared(playerid, gz_info[i][gz_coords][0], gz_info[i][gz_coords][1], gz_info[i][gz_coords][2], gz_info[i][gz_coords][3]))
{
if(p_gang[playerid] == gz_info[i][gz_gang]) return SendClientMessage(playerid, COLOR_LIGHTGREY, "Эта территория принадлежит вашей банде");
if(there_is_capture == 1) return SendClientMessage(playerid, COLOR_LIGHTGREY, "Уже происходит захват одной из зон. Дождитесь окончания!");
//switch(i)
//{
//case 8, 15, 67, 74, 90: return SendClientMessage(playerid, 0xcececeAA, "Вы не можете начать захват территорий респаувна банды!");
//}
new
Float:x = (gz_info[i][gz_coords][0]+gz_info[i][gz_coords][2])/2.0,
Float:y = (gz_info[i][gz_coords][1]+gz_info[i][gz_coords][3])/2.0,
Float:z = 0;
foreach(new a: Player)
{
switch(p_gang[playerid])
{
case 1: SetPlayerMapIcon(a, 31, x, y , z, 62, 0, MAPICON_GLOBAL);
case 2: SetPlayerMapIcon(a, 31, x, y , z, 60, 0, MAPICON_GLOBAL);
case 3: SetPlayerMapIcon(a, 31, x, y , z, 59, 0, MAPICON_GLOBAL);
case 4: SetPlayerMapIcon(a, 31, x, y , z, 58, 0, MAPICON_GLOBAL);
case 5: SetPlayerMapIcon(a, 31, x, y , z, 61, 0, MAPICON_GLOBAL);
}
}
GetPlayer2DZone(playerid, name_zone, MAX_ZONE_NAME);
time_to_expiration_capture = 20;//420;
kills_team[0] = 0;
kills_team[1] = 0;
capture_start = i;
there_is_capture = 1;
GangZoneFlashForAll(capture_start, OnGZColor(p_gang[playerid]));
OnStartCapture(p_gang[playerid], gz_info[i][gz_gang]);
team_capture[0] = p_gang[playerid];
team_capture[1] = gz_info[i][gz_gang];
static const fmt_str[] = "%s %s инициировал захват";
new str[sizeof fmt_str + MAX_PLAYER_NAME + 19];
format(str, sizeof(str), fmt_str, OnPlayerRangName(playerid), p_info[playerid][p_name]);
SendGhettoMessage(team_capture[0], -1, str);
SendGhettoMessage(team_capture[0], 0xFFFF00AA, "Место отмечено на GPS. Отправляйтесь туда и поддержите свою банду");
SendGhettoMessage(team_capture[1], 0xFFFF00AA, "Место отмечено на GPS. Отправляйтесь туда и поддержите свою банду");
return true;
}
}
return true;
}

Дальше смотреть не стал, уверен можно еще много чего можно было сделать оптимальней. Возможно это не так уж и важна, но OnPlayerRangName(playerid) так же считаю не уместным названием. Лучше бы переименовать на GetPlayerRang или что то на подобие. Будет время отпишусь еще )


И еще, вам не кажется что это лишний код?


static const
fmt_str0[] = "Администратор %s[%d] для %s[%d]: %s",
fmt_str1[] = "Администратор %s[%d] для %s[%d]: %s";
new
str0[sizeof fmt_str0 + 31 + MAX_PLAYER_NAME*2 + 144],
str1[sizeof fmt_str1 + 31 + MAX_PLAYER_NAME*2 + 144];
format(str0, sizeof(str0), fmt_str0, p_info[playerid][p_name], playerid, p_info[params[0]][p_name], params[0], params[1]);
SendClientMessage(params[0], 0xFF9945AA, str0);
format(str1, sizeof(str1), fmt_str1, p_info[playerid][p_name], playerid, p_info[params[0]][p_name], params[0], params[1]);
SendAdminMessage(0xFF9945AA, str1);

ПС: См. CMD:ans (1788 строка)

gangzone.ini
11.04.2016, 16:37
Несколько придирок...

#1.

CMD:menu(playerid)
{
ShowPlayerDialog(playerid, DIALOGUE_MENU, DIALOG_STYLE_LIST, "{0099CC}Меню игрока", "\
1. Статистика\n\
2. Список команд\n\
3. Личные настройки\n\
4. Настройки безопасности\n\
5. Связь с администрацией\n\
6. Улучшение\n\
7. Правила сервера\n\
8. Изменить имя\n\
9. Дополнительно", "Выбрать", "Закрыть");
}

Может я и путаю, но DC вроде бы рекомендовал, и приводил аргументы на счет playerid, params[] (см. Мифы о PAWN скриптинге (цикл уроков)). А еще ничего не возвращается, а это ведь паблик.

#2

new
Float: max_health;
GetPlayerHealth(playerid, max_health);
if(p_virable[playerid][p_heal] == 0) return SendClientMessage(playerid, COLOR_LIGHTGREY, "У Вас нет аптечки!");
Я считаю, что переменную надо было объявить после всех проверок (и таких в моде дофига).


CMD:capture(playerid, params[])
{
for(new i = 0; i != sizeof(gz_info); i++)
{
if(OnSquared(playerid, gz_info[i][gz_coords][0], gz_info[i][gz_coords][1], gz_info[i][gz_coords][2], gz_info[i][gz_coords][3]))
{
if(p_gang[playerid] == gz_info[i][gz_gang]) return SendClientMessage(playerid, COLOR_LIGHTGREY, "Эта территория принадлежит вашей банде");
if(there_is_capture == 1) return SendClientMessage(playerid, COLOR_LIGHTGREY, "Уже происходит захват одной из зон. Дождитесь окончания!");
//switch(i)
//{
//case 8, 15, 67, 74, 90: return SendClientMessage(playerid, 0xcececeAA, "Вы не можете начать захват территорий респаувна банды!");
//}
new
Float:x = (gz_info[i][gz_coords][0]+gz_info[i][gz_coords][2])/2.0,
Float:y = (gz_info[i][gz_coords][1]+gz_info[i][gz_coords][3])/2.0,
Float:z = 0;
foreach(new a: Player)
{
switch(p_gang[playerid])
{
case 1: SetPlayerMapIcon(a, 31, x, y , z, 62, 0, MAPICON_GLOBAL);
case 2: SetPlayerMapIcon(a, 31, x, y , z, 60, 0, MAPICON_GLOBAL);
case 3: SetPlayerMapIcon(a, 31, x, y , z, 59, 0, MAPICON_GLOBAL);
case 4: SetPlayerMapIcon(a, 31, x, y , z, 58, 0, MAPICON_GLOBAL);
case 5: SetPlayerMapIcon(a, 31, x, y , z, 61, 0, MAPICON_GLOBAL);
}
}
GetPlayer2DZone(playerid, name_zone, MAX_ZONE_NAME);
time_to_expiration_capture = 20;//420;
kills_team[0] = 0;
kills_team[1] = 0;
capture_start = i;
there_is_capture = 1;
GangZoneFlashForAll(capture_start, OnGZColor(p_gang[playerid]));
OnStartCapture(p_gang[playerid], gz_info[i][gz_gang]);
team_capture[0] = p_gang[playerid];
team_capture[1] = gz_info[i][gz_gang];
static const fmt_str[] = "%s %s инициировал захват";
new str[sizeof fmt_str + MAX_PLAYER_NAME + 19];
format(str, sizeof(str), fmt_str, OnPlayerRangName(playerid), p_info[playerid][p_name]);
SendGhettoMessage(team_capture[0], -1, str);
SendGhettoMessage(team_capture[0], 0xFFFF00AA, "Место отмечено на GPS. Отправляйтесь туда и поддержите свою банду");
SendGhettoMessage(team_capture[1], 0xFFFF00AA, "Место отмечено на GPS. Отправляйтесь туда и поддержите свою банду");
return true;
}
}
return true;
}

Дальше смотреть не стал, уверен можно еще много чего можно было сделать оптимальней. Возможно это не так уж и важна, но OnPlayerRangName(playerid) так же считаю не уместным названием. Лучше бы переименовать на GetPlayerRang или что то на подобие. Будет время отпишусь еще )


И еще, вам не кажется что это лишний код?


static const
fmt_str0[] = "Администратор %s[%d] для %s[%d]: %s",
fmt_str1[] = "Администратор %s[%d] для %s[%d]: %s";
new
str0[sizeof fmt_str0 + 31 + MAX_PLAYER_NAME*2 + 144],
str1[sizeof fmt_str1 + 31 + MAX_PLAYER_NAME*2 + 144];
format(str0, sizeof(str0), fmt_str0, p_info[playerid][p_name], playerid, p_info[params[0]][p_name], params[0], params[1]);
SendClientMessage(params[0], 0xFF9945AA, str0);
format(str1, sizeof(str1), fmt_str1, p_info[playerid][p_name], playerid, p_info[params[0]][p_name], params[0], params[1]);
SendAdminMessage(0xFF9945AA, str1);

ПС: См. CMD:ans (1788 строка)

1. Разнице не какой нету... Если вставлю params[], лучше или хуже не станет)
2. Стиль такой, ставить переменные в начале)
3. Лишние, исправлю)

Иван Бубнов
11.04.2016, 16:52
Аргументируйте. Его по сути компилятор сам допишет, но дабы в этом убедиться, сейчас скомпилирую какую нибудь команду с/без params, после компиляции выходные файлы декомпилирую, посмотрим результаты :blum3: А вообще, кажется это пациент цикла уроков xD


2. Стиль такой, ставить переменные в начале)

Причем тут стиль?


Вот это:
new
Float: max_health;
И это:
new Float: max_health;
Стиль.
А это:

GetPlayerHealth(playerid, max_health);
Неиспользуемый код.

А на счет ретурнов и названий некоторых костылей вы промолчали.

- - - Добавлено - - -

UPD: Декомпилировал этот участок кода:

CMD:test(playerid, params[])
{
return 1;
}

CMD:tet(playerid)
{
}

Насколько я понял, params нужен чтобы удовлетворить DC_CMD:

public OnPlayerCommandText(playerid, cmdtext)
{
return DC_CMD(playerid, cmdtext);
}

И еще, результаты декомпиляции команд:

public cmd_test()
{
return 1;
}

public cmd_tet()
{
return 0;
}

gangzone.ini
11.04.2016, 17:46
Ну ладно, убери GetPlayerHealth и я посмотрю как у тебя будет работать команда)
Дал результаты декомпилятор? - нет)

Иван Бубнов
11.04.2016, 18:07
Используй GetPlayerHealth после условия, это как минимум правильный вариант. Ибо до проверки if(p_virable[playerid][p_heal] == 0) она нигде не используется. Зачем выделять лишний память.

gangzone.ini
11.04.2016, 18:16
Используй GetPlayerHealth после условия, это как минимум правильный вариант. Ибо до проверки if(p_virable[playerid][p_heal] == 0) она нигде не используется. Зачем выделять лишний память.



CMD:healme(playerid)//начало
{
return true; //конец
}

Где тут я выделяю лишнию память?)

TheMallard
12.04.2016, 10:10
Зачем в AntiDeAmx'e затерла упоминание о Daniel'e Cortez'e?

gangzone.ini
12.04.2016, 12:20
Зачем в AntiDeAmx'e затерла упоминание о Daniel'e Cortez'e?

Он написал что это запрещено ? - нет, если напишет написать - напишу.

TheMallard
12.04.2016, 12:25
http://pro-pawn.ru/showthread.php?8277-%D0%97%D0%B0%D1%89%D0%B8%D1%82%D0%B0-%D0%BE%D1%82-DeAMX-%28new%29&p=64563&viewfull=1#post64563

gangzone.ini
12.04.2016, 14:57
http://pro-pawn.ru/showthread.php?8277-%D0%97%D0%B0%D1%89%D0%B8%D1%82%D0%B0-%D0%BE%D1%82-DeAMX-%28new%29&p=64563&viewfull=1#post64563

Ну и ? Я копирывала на другой портал ? - нет.

$continue$
12.04.2016, 16:25
Инициализация переменной, которая при nых случаях, может быть зарезервирована зря.


new Float: max_health;
GetPlayerHealth(playerid, max_health);
if(p_virable[playerid][p_heal] == 0) return SendClientMessage(playerid, COLOR_LIGHTGREY, "У Вас нет аптечки!");

В данном случай, переменная будет объявлена зря, если p_virable[playerid][p_heal] == 0.

Daniel_Cortez
12.04.2016, 20:29
Он написал что это запрещено ? - нет, если напишет написать - напишу.
Чтобы больше не было вопросов, добавил пояснение в самой теме с защитой:

P.S.: Не рекомендую удалять комментарии как по моральным (ИМХО, стирать комментарии об авторстве - это практически как воровство работы и неуважение к её автору), так и по практическим (объяснение работы для каждой из "ловушек") причинам.

gangzone.ini
12.04.2016, 23:20
Чтобы больше не было вопросов, добавил пояснение в самой теме с защитой:
Все, исправила :don-t_mention: