I wrote an experimental version of the plugin to get to alpha stage of developments
but I keep getting errors and I cannot find a way to fix :/
PHP Code:
runescape.sp(75) : error 017: undefined symbol "IsValidClient"
runescape.sp(113) : error 017: undefined symbol "LevelUp"
runescape.sp(175) : error 017: undefined symbol "IsValidClient"
runescape.sp(200) : error 017: undefined symbol "IsValidClient"
runescape.sp(205) : warning 213: tag mismatch
runescape.sp(226) : error 017: undefined symbol "IsValidClient"
runescape.sp(230) : warning 213: tag mismatch
runescape.sp(257) : warning 204: symbol is assigned a value that is never used: "dist"
runescape.sp(257 -- 269) : warning 217: loose indentation
runescape.sp(269) : error 029: invalid expression, assumed zero
runescape.sp(269) : error 017: undefined symbol "SpawnWeapon"
runescape.sp(273) : warning 213: tag mismatch
runescape.sp(274) : error 017: undefined symbol "name"
runescape.sp(275) : error 017: undefined symbol "index"
runescape.sp(276) : error 017: undefined symbol "level"
runescape.sp(277) : error 017: undefined symbol "qual"
runescape.sp(279) : error 017: undefined symbol "att"
runescape.sp(293) : error 017: undefined symbol "client"
runescape.sp(295) : error 017: undefined symbol "client"
runescape.sp(296) : warning 213: tag mismatch
runescape.sp(298) : warning 225: unreachable code
runescape.sp(298) : error 029: invalid expression, assumed zero
runescape.sp(298) : warning 221: label name "bool" shadows tag name
runescape.sp(298) : error 017: undefined symbol "IsValidClient"
runescape.sp(298) : warning 215: expression has no effect
runescape.sp(298) : error 001: expected token: ";", but found ")"
runescape.sp(298) : fatal error 127: too many error messages on one line
#1
Отправлено 17 января 2015 — 15:39
-
- Новичок
-
Ошыбки
C:UsersusverDesktopProject-X (Diamond RP)gamemodesmode1.pwn(2740) : error 021: symbol already defined: "SiteText" C:UsersusverDesktopProject-X (Diamond RP)gamemodesmode1.pwn(6013) : error 017: undefined symbol "playerid" C:UsersusverDesktopProject-X (Diamond RP)gamemodesmode1.pwn(6014) : error 017: undefined symbol "playerid" C:UsersusverDesktopProject-X (Diamond RP)gamemodesmode1.pwn(6015) : error 017: undefined symbol "playerid" C:UsersusverDesktopProject-X (Diamond RP)gamemodesmode1.pwn(6016) : error 017: undefined symbol "playerid" C:UsersusverDesktopProject-X (Diamond RP)gamemodesmode1.pwn(6017) : error 017: undefined symbol "playerid"
Код
new Text:SiteText[MAX_PLAYERS];
SiteText[playerid] = TextDrawCreate(500.000000,2.000000,"Pawn-Wiki.Ru");//??????? TextDraw TextDrawFont(SiteText[playerid],2);//????? ?????? TextDrawLetterSize(SiteText[playerid],0.360000,2.000000);//????????????? ?????? ? ?????? ????. TextDrawSetOutline(SiteText[playerid],1);//????????? ?????? ?????? ? ????? TextDrawShowForPlayer(SiteText[playerid]);//?????????? TextDraw ??????
в чем проблемы
0
#2
Отправлено 17 января 2015 — 15:45
-
- Прохожий
-
ко всем переменным в начале мода добавь:
new Text:SiteText[MAX_PLAYERS];
Сообщение отредактировал Vibe: 17 января 2015 — 15:46
0
#3
Отправлено 17 января 2015 — 15:53
-
- Geebrox Team
-
Vibe (17 января 2015 — 15:45) писал:
ко всем переменным в начале мода добавь:
new Text:SiteText[MAX_PLAYERS];
error 021: symbol already defined: «SiteText» — переменная SiteText уже объявлена
не учи других если сам не понимаешь!
в какой паблик ты пихаешь?:
SiteText[playerid] = TextDrawCreate(500.000000,2.000000,"Pawn-Wiki.Ru");//??????? TextDraw TextDrawFont(SiteText[playerid],2);//????? ?????? TextDrawLetterSize(SiteText[playerid],0.360000,2.000000);//????????????? ?????? ? ?????? ????. TextDrawSetOutline(SiteText[playerid],1);//????????? ?????? ?????? ? ????? TextDrawShowForPlayer(SiteText[playerid]);//?????????? TextDraw ??????
Сообщение отредактировал bek: 17 января 2015 — 16:02
0
#4
Отправлено 17 января 2015 — 16:01
-
- Новичок
-
bek (17 января 2015 — 15:53) писал:
error 021: symbol already defined: «SiteText» — переменная SiteText уже объявлена
не учи других если сам не понимаешь!
в какой паблик ты пихаешь?:
SiteText[playerid] = TextDrawCreate(500.000000,2.000000,"Pawn-Wiki.Ru");//??????? TextDraw TextDrawFont(SiteText[playerid],2);//????? ?????? TextDrawLetterSize(SiteText[playerid],0.360000,2.000000);//????????????? ?????? ? ?????? ????. TextDrawSetOutline(SiteText[playerid],1);//????????? ?????? ?????? ? ????? TextDrawShowForPlayer(SiteText[playerid]);//?????????? TextDraw ??????
в public OnPlayerConnect(playerid)
Решил проблему,спасибо за помощь.
Сообщение отредактировал Oleg_Morety: 17 января 2015 — 16:09
0
#5
Отправлено 17 января 2015 — 16:03
-
- Geebrox Team
-
Oleg_Morety (17 января 2015 — 16:01) писал:
в public OnPlayerConnect(playerid)
у тебя объявлена 2 одинаковых переменных через ctrl+f найди их и удали одну
0
#6
Отправлено 17 января 2015 — 16:20
-
- Новичок
-
bek (17 января 2015 — 15:53) писал:
error 021: symbol already defined: «SiteText» — переменная SiteText уже объявлена
не учи других если сам не понимаешь!
в какой паблик ты пихаешь?:
SiteText[playerid] = TextDrawCreate(500.000000,2.000000,"Pawn-Wiki.Ru");//??????? TextDraw TextDrawFont(SiteText[playerid],2);//????? ?????? TextDrawLetterSize(SiteText[playerid],0.360000,2.000000);//????????????? ?????? ? ?????? ????. TextDrawSetOutline(SiteText[playerid],1);//????????? ?????? ?????? ? ????? TextDrawShowForPlayer(SiteText[playerid]);//?????????? TextDraw ??????
Спасибо!
0
- ← Предыдущая тема
- Проблемы с компилированием
- Следующая тема →
- Вы не можете создать новую тему
-
Тема закрыта
1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей
From SA-MP Wiki
Jump to: navigation, search
Undefined symbol is a Pawn compiler error message. The Pawn Language Guide formally defines this error as error 017, and explains that the error means «The symbol (variable, constant or function) is not declared«.
The error will look roughly look like this: error 017: undefined symbol «WelcomePlayer»
Cause
The error occurs when a piece of code references a variable, constant or function that the compiler cannot find. Often, this error is encountered by scripters who recklessly copy and paste code from one script to another, not realizing that the code in question depends on other code in the original script. Another, more common mistake made by even the most experienced scripters, is misspelling symbols.
Example with a function
This is example where a function that does not exists is referenced. A reckless copy-paster is copying a piece for code from the original script (awesomeroleplay.pwn) to his or her own (supercoolrp.pwn). awesomeroleplay.pwn compiles without any warnings or errors.
The reckless copy-paster decides to copy this piece of code from the original script:
awesomeroleplay.pwn
public OnPlayerConnect(playerid) { WelcomePlayer(playerid); }
The reckless copy-paster replaces supercoolrp.pwn’s OnPlayerConnect callback with the one from awesomeroleplay.pwn and then attemps to compile it. The compiler will, however, throw an error: error 017: undefined symbol «WelcomePlayer». This is because the function WelcomePlayer does not exist the paster’s own script. In other words: the piece of code that the reckless copy-paster pasted, depends on other code in awesomeroleplay.pwn. The paster will need to copy the dependent script as well.
In the original script, the function WelcomePlayer is defined.
awesomeroleplay.pwn
WelcomePlayer(playerid) { SendClientMessage(playerid, "Welcome to Interactive Roleplay!", 0xFF0000AA); }
The reckless copy-paster will need to copy and paste this function into his own script as well to make the code compile correctly. If this function would also depend on other code, the paster will need to copy and paste that code as well. In fact, the paster would need to repeat this step until all dependencies are resolved.
Tips for resolving this error
- Use Ctrl + F to find the missing symbol (note that the compiler will tell you what symbol is missing after the words undefined symbol!) in the original script. If the symbol is a variable, you will have to copy all code that is relevant to its «ecosystem», that is to say, all code that modifies the variable. For beginning scripters and reckless copy-pasters, this may be hard, because it requires a deep understanding of the code and code paths.
- Look into the includes of the original script.
- Make sure you are adding the right includes.
- Make sure you are not misspelling the symbol.
@Саша55555, функция format записывает нужный Вам текст в переменную.
Например, Вы хотите вывести в чат свой nick-name и level. У функции вывода текста в чат всего 3 аргумента: ID игрока (которому отправляем), цвет, текст. Но аргументы здесь использовать нельзя. Поэтому используем format.
Структура такова: format(куда записываем, какой размер, что записываем, аргументы);
Например, format(string, 128, «Здесь ваш текст %d», a);
Таким образом, мы записали в переменную string текст, максимальная длина которого 128 символов, использовав аргумент a. Можно, чтобы длину подсчитывала система, использовать функцию sizeof. Результат будет следующий:
format(string, sizeof(string), «Здесь ваш текст %d», a);
Далее, переменная string у нас осталась не объявлена. То есть компилятору она неизвестна. Соответственно, нужно ее объявить.
new string[];
В квадратных скобках Вы должны указать количество символов, которое будете записывать в эту переменную. Можно считать вручную, а можно использовать тот же notepad++. У меня длина текста составляет 56 символов (при условии, что переменная a содержит не больше трех знаков (то есть двух- или однозначное число). Но стоит учесть еще запас, грубо говоря, прибавляйте всегда 5 символов и будет Вам радость. 56+5 = 51. В строке выше я указал 65, поскольку делал все на глаз (прикидывал длину).
xyligan
Если ты самый умный, будь любезен, не умничай🧐
-
#1
xyligan добавил(а) новый ресурс:
RoundEndSound — Плагин для воспроизведения музыки в конце раунда
RoundEndSound — плагин для воспроизведения музыки в конце раунда.
Важная информация: данный плагин протестирован на CS:S v92 и CS:GO. На CS:S v34 работа не проверялась.
Узнать больше об этом ресурсе…
-
#2
«RoundEndSound»
{
«ct1.mp3»
{
«songname» «Test Song #1 [CT]»
}
До конца нормально установку расписать можно в части заполнения файла с треками для воспроизведения? Что отвечает за кт, а что за т? Какой параметр за это отвечает? Если songname вообще в принципе своем не нужно, возможно ли заполнять без него конфигурационный файл с треками?
xyligan
Если ты самый умный, будь любезен, не умничай🧐
- Автор ресурса
-
#3
«RoundEndSound»
{
«ct1.mp3»
{
«songname» «Test Song #1 [CT]»
}
До конца нормально установку расписать можно в части заполнения файла с треками для воспроизведения? Что отвечает за кт, а что за т? Какой параметр за это отвечает?
"RoundEndSound"
{
"ct1.mp3" // название файла звука в папке (команда Контр-Террористов)
{
"songname" "Test Song #1 [CT]" // название трека (для чата)
}
"t1.mp3" // название файла звук в папке (команда Террористов)
{
"songname" "Test Song #1 [T]" // название трека (для чата)
}
}
-
#4
"RoundEndSound" { "ct1.mp3" // название файла звука в папке (команда Контр-Террористов) { "songname" "Test Song #1 [CT]" // название трека (для чата) } "t1.mp3" // название файла звук в папке (команда Террористов) { "songname" "Test Song #1 [T]" // название трека (для чата) } }
Спасибо за подробности! Возможно ли заполнения файлов без названия треков?
Подобие
{
«ct1.mp3» // название файла звука в папке (команда Контр-Террористов)
«t1.mp3» // название файла звук в папке (команда Террористов)
Для распознания воспроизведения используется тэг «ct» или «t»?
xyligan
Если ты самый умный, будь любезен, не умничай🧐
- Автор ресурса
-
#5
Спасибо за подробности! Возможно ли заполнения файлов без названия треков?
Подобие
{
«ct1.mp3» // название файла звука в папке (команда Контр-Террористов)
«t1.mp3» // название файла звук в папке (команда Террористов)
Для распознания воспроизведения используется тэг «ct» или «t»?
Если тебе не нужно написание название в чат, то выключи это в конфиге.
Также можно оставить
Для распознавания можете использовать, что угодно. В данном примере приставки ct и t служат для распознавания команды.
-
#6
Если тебе не нужно написание название в чат, то выключи это в конфиге.
Также можно оставитьДля распознавания можете использовать, что угодно. В данном примере приставки ct и t служат для распознавания команды.
Благодарю, подробно!
-
#7
// C:UsersAdministratorDesktopscriptingroundendsound.sp(84) : warning 213: tag mismatch
// C:UsersAdministratorDesktopscriptingroundendsound.sp(109) : error 017: undefined symbol «GetSound»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(111) : error 017: undefined symbol «GetSound»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(117) : error 017: undefined symbol «StopMapMusic»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(120) : error 017: undefined symbol «GetSongLength»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(136) : error 017: undefined symbol «LoadAllSounds»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(137) : error 017: undefined symbol «LoadAllSounds»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(174) : error 017: undefined symbol «IsValidClient»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(177) : error 017: undefined symbol «PlaySoundToClient»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(353) : error 017: undefined symbol «MapSounds»
xyligan
Если ты самый умный, будь любезен, не умничай🧐
- Автор ресурса
-
#8
// C:UsersAdministratorDesktopscriptingroundendsound.sp(84) : warning 213: tag mismatch
// C:UsersAdministratorDesktopscriptingroundendsound.sp(109) : error 017: undefined symbol «GetSound»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(111) : error 017: undefined symbol «GetSound»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(117) : error 017: undefined symbol «StopMapMusic»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(120) : error 017: undefined symbol «GetSongLength»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(136) : error 017: undefined symbol «LoadAllSounds»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(137) : error 017: undefined symbol «LoadAllSounds»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(174) : error 017: undefined symbol «IsValidClient»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(177) : error 017: undefined symbol «PlaySoundToClient»
// C:UsersAdministratorDesktopscriptingroundendsound.sp(353) : error 017: undefined symbol «MapSounds»
Наверное потому что нет inc файла)
Что меняли?
-
#9
Наверное потому что нет inc файла)
Что меняли?
Конечно его нет, ведь res.inc в архиве не лежит, а от какого именно плагина он идёт, не указано
Сообщения автоматически склеены: 5 Янв 2022
Наверное потому что нет inc файла)
Что меняли?
Так что в общем и целом?
Последнее редактирование: 5 Янв 2022
-
#10
Конечно его нет, ведь res.inc в архиве не лежит, а от какого именно плагина он идёт, не указано
Сообщения автоматически склеены: 5 Янв 2022
Так что в общем и целом?
-
res.inc
3.9 КБ
· Просмотры: 31
-
#11
Можно ли кастомизировать вывод в чат сообщений от плагина?
Например добавить цвет для префикса и т.д?
-
#12
Можно ли кастомизировать вывод в чат сообщений от плагина?
Например добавить цвет для префикса и т.д?
конечно можно
-
#13
Можно ли кастомизировать вывод в чат сообщений от плагина?
Например добавить цвет для префикса и т.д?
покрасить сообщения кс го | Давай я поищу в Google вместо тебя
Давай я поищу в Google вместо тебя. Этот сайт создан для людей, которые считают, что лучше побеспокоить вас своими вопросами, нежели самим поискать ответ в Google. Давай я поищу в Гугл вместо тебя; Давай я поищу в Гугл за тебя; Давай я поищу в Google за тебя
bit.ly
-
#15
Чет после обновы начал ошибки кидать
SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758)
SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758)
SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758)
SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758)
SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758)
SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758)
SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758)
Либо я в глаза долблюсь
xyligan
Если ты самый умный, будь любезен, не умничай🧐
- Автор ресурса
-
#16
Чет после обновы начал ошибки кидать
SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758) SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758) SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758) SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758) SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758) SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758) SV_StartSound: *biosfera_csgo/4.mp3 not precached (17758)
Либо я в глаза долблюсь
После какого обновления, где Вы здесь видите обновление? Плагин тестировался, всё работает.
Хотя-бы игру уточнили что-ли, гадалок здесь нет.
-
#17
@xyligan, не подскажешь, почему иногда некоторые треки не играют совсем?
Я не говорю уже про то, что не играет трек, когда я остаюсь живым, и делаю последний килл, после которого раунд заканчивается. В чат название пишется, а сам трек не проигрывается.
Игра CSGO.
xyligan
Если ты самый умный, будь любезен, не умничай🧐
- Автор ресурса
-
#18
@xyligan, не подскажешь, почему иногда некоторые треки не играют совсем?
Я не говорю уже про то, что не играет трек, когда я остаюсь живым, и делаю последний килл, после которого раунд заканчивается. В чат название пишется, а сам трек не проигрывается.
Игра CSGO.
В консоль смотреть нужно, чтобы понимать, что и почему. Причин может быть много, без логов я ничего не скажу.
-
#19
В консоль смотреть нужно, чтобы понимать, что и почему. Причин может быть много, без логов я ничего не скажу.
В логах ошибок плагины нет.
Вся музыка скачалась без проблем. Но проблема с воспроизведением осталась.
-
#20
В логах ошибок плагины нет.
Вся музыка скачалась без проблем. Но проблема с воспроизведением осталась.
С форматом песни может , что нибудь не то
2 часа назад, odosenok сказал:
@freestyle samp, замените предоставленный участок кода следующим:
SetVehicleData(GetPlayerVehicleID(playerid),V_BAGAGE_AMOUNT_GUN,0); if (GetVehicleData(vehicleid, V_BAGAGE_AMOUNT_GUN)+500 > 3000) *then SendClientMessage(playerid,-1,"Матовоз переполнен!"); SetVehicleData(vehicleid,V_BAGAGE_AMOUNT_GUN,GetVehicleData(vehicleid, V_BAGAGE_AMOUNT_GUN)+500); format(l_string,26,"Матовоз загружен: 0/%d",GetVehicleData(vehicleid,V_BAGAGE_AMOUNT_GUN)); if (GetVehicleData(vehicleid, V_BAGAGE_AMOUNT_GUN)+500 > 3000) *then SendClientMessage(playerid,-1,"Матовоз переполнен!"); SetVehicleData(vehicleid,V_BAGAGE_AMOUNT_GUN,GetVehicleData(vehicleid, V_BAGAGE_AMOUNT_GUN)+500); format(l_string,26,"Матовоз загружен: 0/%d",GetVehicleData(vehicleid,V_BAGAGE_AMOUNT_GUN));Какую именно строку изменитб просто в файле 8451 строка и 10596 и т.д просто они все вместе давайте я вам дам мод и вы изменете там потомучто ч хз где менять
- Регистрация
- 1 Июл 2017
- Сообщения
- 20
- Лучшие ответы
- 0
- Репутация
- 0
- Возраст
- 24
-
#1
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3601) : error 017: undefined symbol «ResetPlayerWeaponsEx»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3643) : error 017: undefined symbol «GetString»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3646) : error 017: undefined symbol «MysqlUpdateHouseStr»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3652) : error 017: undefined symbol «GetString»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3655) : error 017: undefined symbol «MysqlUpdateBizStr»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3656) : error 017: undefined symbol «UpdateBizStats»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3678) : error 017: undefined symbol «IsValidPassport»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3696) : error 017: undefined symbol «SaveAccount»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3742) : error 017: undefined symbol «IsACop»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3756) : error 017: undefined symbol «MeAction»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3772) : error 017: undefined symbol «MeAction»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3797) : error 017: undefined symbol «BadFloat»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3799) : error 017: undefined symbol «ToCheat»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3805) : error 017: undefined symbol «ToCheat»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3810) : error 017: undefined symbol «IsACop»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3819) : error 017: undefined symbol «ToCheat»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3832) : error 017: undefined symbol «OnPlayerGiveWeaponSkill»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3841) : error 017: undefined symbol «ToCheat»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3849) : error 017: undefined symbol «IsACop»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3877) : error 017: undefined symbol «SetHealth»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3907) : error 017: undefined symbol «SKick»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(3987) : error 017: undefined symbol «MysqlUpdatePlayerInt»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(4002) : error 017: undefined symbol «Converts»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(4115) : error 017: undefined symbol «TransferMoney»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(4132) : error 017: undefined symbol «ToggleLock»
C:UsersadminDesktopSocial RPgamemodessocialgm.pwn(4157) : error 017: undefined symbol «WHDataUpdate»
Compilation aborted.
Pawn compiler 3.10.20160907 Copyright (c) 1997-2006, ITB CompuPhase
26 Errors.
Помогите,в чём проблема?
В общем, исправлял опечатки в скрипте, в итоге не могу скомпилировать
Ошибки: Вы должны зарегистрироваться, чтобы видеть ссылки.
Все ошибки связаны с undefined symbol, смотрел строчки где вылезли эти ошибки, не могу понять что там не так, пожалуйста помогите, ну или хотябы покажите на примере 1 из этих ошибок, а дальше я сам как нибудь попробую
Сам код:
- Код: Выделить всё
#include AmxModX
#include JBE_core
#include FakeMeta
#include HamSandwich#define RegisterMenu(%1,%2,%3) register_menucmd(register_menuid(%1),%3,%2)
#define TaskId_Regen 12125
#define MAX_PLAYERS 32/* -> Бит суммы для игроков -> */
#define SetBit(%0,%1) ((%0) |= (1 << (%1)))
#define ClearBit(%0,%1) ((%0) &= ~(1 << (%1)))
#define IsSetBit(%0,%1) ((%0) & (1 << (%1)))
#define InvertBit(%0,%1) ((%0) ^= (1 << (%1)))
#define IsNotSetBit(%0,%1) (~(%0) & (1 << (%1)))/* -> Массивы для меню из игроков -> */
new g_iMenuPlayers[MAX_PLAYERS + 1][32], g_iMenuPosition[MAX_PLAYERS + 1];enum _: eBLOCK
{
REGEN,
MODE
};new g_iBitUserIsType[eBLOCK], g_iUserRespawnNum[MAX_PLAYERS], g_iGodModeType[MAX_PLAYERS + 1], g_iUserPoints[MAX_PLAYERS + 1],
g_iDayMode, g_iMaxPlayers, g_iSyncText;public plugin_natives()
{
register_native( "Open_KnyazMenu", "Show_KnyazMenu", 1 );
register_native( "Open_CreateMenu", "Show_CreatorMenu", 1 );
register_native( "Open_GodModeMenu", "Show_GodModeMenu", 1 );
register_native( "Open_Respawn_Menu", "Cmd_OpenResspawnMenu", 1 );
register_native( "Open_StrongMenu", "Show_StrongMenu", 1 );
}public plugin_init()
{
get_license();
register_plugin("[UJBL] Privileges Addon", "vk/krisiso", "ToJI9IHGaa"); new iBits = (1<<0|1<<1|1<<2|1<<9);
RegisterMenu("Show_KnyazMenu", "Handle_KnyazMenu", iBits);
iBits |= (1<<3|1<<4);
RegisterMenu("Show_CreatorMenu", "Handle_CreatorMenu", iBits);
RegisterMenu("Show_GodModeMenu", "Handle_GodModeMenu", iBits); iBits |= (1<<5|1<<6|1<<7|1<<8);
RegisterMenu("Show_RespawnMenu", "Handle_RespawnMenu", iBits);
RegisterMenu("Show_GodModeList", "Handle_GodModeList", iBits);
RegisterMenu("Show_StrongMenu", "Handle_Strong1Menu", iBits);
register_logevent("LogEvent_RoundStart",2,"1=Round_Start");
g_iMaxPlayers = get_maxplayers();
g_iSyncText = CreateHudSyncObj();
}
public LogEvent_RoundStart()
{
for( new pId = 1; pId <= g_iMaxPlayers; pId++ )
{
if( jbe_get_privileges_flags( pId ) & FLAGS_KNYAZ )
{
if( task_exists( pId + TaskId_Regen ) ) remove_task( pId + TaskId_Regen );
static iMode, iInvisible; jbe_get_user_rendering( pId, iMode, iMode, iMode, iMode, iMode, iInvisible );
if( iMode == kRenderTransAlpha && iInvisible == 70 ) jbe_set_user_rendering( pId, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 100 );g_iBitUserIsType
[ REGEN ] = 0;
g_iUserRespawnNum[ pId ] = 3;
}
}
}#define TaskId_UpPoints 12421
public client_putinserver( pId )
{
if( jbe_get_privileges_flags( pId ) & FLAGS_STRONG )
{
set_task( 300.0, "fnUpPoints", pId + TaskId_UpPoints, _, _, "b" );
if( !is_linux_server() ) g_iUserPoints[ pId ] = 999;
}
}public client_disconnect( pId )
{
if( task_exists( pId + TaskId_UpPoints ) )
{
remove_task( pId + TaskId_UpPoints );
g_iUserPoints[ pId ] = 0;
}
}public fnUpPoints( pId )
{
pId -= TaskId_UpPoints;
new iNum = random_num( 1, 3 );
g_iUserPoints[ pId ] += iNum;
UTIL_SayText( pId, "Вы получили: !g%d !tPresent Points!y. Теперь их у Вас: !g%d", iNum, g_iUserPoints[ pId ] );
}
public Show_StrongMenu( pId )
{
#define PP[%1] g_iUserPoints[%1]
#define AddItem(%1) iLen += formatex( szMenu[ iLen ], charsmax( szMenu ) - iLen, %1 )
#define AddBit(%1) iKeys |= ( 1<<%1 )
jbe_informer_offset_up( pId );
new szMenu[ 512 ], iLen, iKeys = ( 1<<9 );
iLen = formatex( szMenu[ iLen ], charsmax( szMenu ) - iLen, "yStrong Menu^nВаши rPresentPoints: w%d^n^n", PP[ pId ] );
/// ////////////////////////////////////////////////////////////////////////////////////////////////////////
// ////////////////////////////////////////////////////////////////////////////////////////////////////////
if( PP[ pId ] > 0 )
{
AddItem( "r(1)y | w250$Rr[ 1PP ]^n" );
AddBit( 0 );
}
else AddItem( "r(1)y | d250$Rr[ 1PP ]^n" );
/// ////////////////////////////////////////////////////////////////////////////////////////////////////////
// ////////////////////////////////////////////////////////////////////////////////////////////////////////
if( pev( pId, pev_health ) >= 500.0 || pev( pId, pev_armorvalue ) >= 255.0 )
AddItem("r(2)y | dHealth & Armor Packr(У Вас много HP/AP)R[ 1PP ]^n");
else
{
if( PP[ pId ] > 0 )
{
AddItem("r(2)y | wHealth & Armor PackRr[ 1PP ]^n");
AddBit( 1 );
}
else AddItem("r(2)y | dHealth & Armor PackRr[ 1PP ]^n");
}
/// ////////////////////////////////////////////////////////////////////////////////////////////////////////
// ////////////////////////////////////////////////////////////////////////////////////////////////////////
if( PP[ pId ] > 1 )
{
AddItem( "r(3)y | wСпец комплектRr[ 2PP ]^n" );
AddBit( 2 );
}
else AddItem( "r(3)y | dСпец комплектRr[ 2PP ]^n" );
/// ////////////////////////////////////////////////////////////////////////////////////////////////////////
// ////////////////////////////////////////////////////////////////////////////////////////////////////////
if( PP[ pId ] > 0 )
{
AddItem( "r(4)y | wTeleport на spawnRr[ 1PP ]^n" );
AddBit( 3 );
}
else AddItem( "r(4)y | dTeleport на spawnRr[ 1PP ]^n" );
/// ////////////////////////////////////////////////////////////////////////////////////////////////////////
// ////////////////////////////////////////////////////////////////////////////////////////////////////////
if( PP[ pId ] > 0 )
{
AddItem( "r(5)y | wOpen door (По прицелу)Rr[ 1PP ]^n" );
AddBit( 4 );
}
else AddItem( "r(5)y | dOpen door (По прицелу)Rr[ 1PP ]^n" );
/// ////////////////////////////////////////////////////////////////////////////////////////////////////////
// ////////////////////////////////////////////////////////////////////////////////////////////////////////
if( PP[ pId ] > 1 )
{
AddItem( "r(6)y | wПодмена мест (Случайный игрок)Rr[ 2PP ]^n" );
AddBit( 5 );
}
else AddItem( "r(6)y | dПодмена мест (Случайный игрок)Rr[ 2PP ]^n" );
/// ////////////////////////////////////////////////////////////////////////////////////////////////////////
// ////////////////////////////////////////////////////////////////////////////////////////////////////////
if( PP[ pId ] > 2 )
{
AddItem( "r(7)y | wСлучайное оружиеRr[ 3PP ]^n" );
AddBit( 6 );
}
else AddItem( "r(7)y | dСлуайное оружиеRr[ 3PP ]^n" );
/// ////////////////////////////////////////////////////////////////////////////////////////////////////////
// ////////////////////////////////////////////////////////////////////////////////////////////////////////
static iMode, iInvisible; jbe_get_user_rendering( pId, iMode, iMode, iMode, iMode, iMode, iInvisible);
if( iMode == kRenderTransAlpha && iInvisible == 100 )
AddItem( "r(8)y | dПолная невидимость r(Активно)R[ 4PP ]^n" );
else
{
if( PP[ pId ] > 3 )
{
AddItem( "r(8)y | wПолная невидимостьRr[ 4PP ]^n" );
AddBit( 7 );
}
else AddItem( "r(8)y | dПолная невидимостьRr[ 4PP ]^n" );
}
/// ////////////////////////////////////////////////////////////////////////////////////////////////////////
// ////////////////////////////////////////////////////////////////////////////////////////////////////////
AddItem( "^nr(0)y | wВыход^n" );
return show_menu( pId, iKeys, szMenu, -1, "Show_StrongMenu" );
}public Handle_Strong1Menu( pId, iKey )
{
switch( iKey )
{
case 0:
{
jbe_set_user_money( pId, jbe_get_user_money( pId ) + 250, 1 );
g_iUserPoints[ pId ]--;
return Show_StrongMenu( pId );
}
case 1:
{
set_pev( pId, pev_health, 500.0 );
set_pev( pId, pev_armorvalue, 255.0 );
g_iUserPoints[ pId ]--;
}
case 2:
{
switch( jbe_get_user_team( pId ) )
{
case 1:
{
drop_user_weapons( pId, 0 ); jbe_set_user_rendering( pId, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 20 );
fm_give_item( pId, "item_kevlar" ); set_pev( pId, pev_armorvalue, pev( pId, pev_armorvalue ) + 70.0 );
new iItemId = fm_give_item( pId, "weapon_usp" ); fm_give_item( pId, "weapon_flashbang" );
if( iItemId ) set_pdata_int( iItemId, 51, 30, 4 );
}
case 2:
{
drop_user_weapons( pId, 1 ); set_pev( pId, pev_health, pev( pId, pev_health ) + 70.0 );
if( fm_give_item( pId, "weapon_hegrenade" ) )
{
client_cmd( pId, "weapon_hegrenade" );
set_pdata_int( pId, 388, 5, 5 );
}
if( fm_give_item( pId, "weapon_m4a1" ) )
{
client_cmd( pId, "weapon_m4a1" );
set_pdata_int( pId, 380, 200, 5 );
}
}
}
g_iUserPoints[ pId ] -= 2;
}
case 3:
{
new iEntity;
switch( jbe_get_user_team( pId ) )
{
case 1: iEntity = engfunc( EngFunc_FindEntityByString, iEntity, "classname", "info_player_deathmatch" );
case 2: iEntity = engfunc( EngFunc_FindEntityByString, iEntity, "classname", "info_player_start" );
}
if( !iEntity ) return Show_StrongMenu( pId );
new Float: vecOrigin[ 3 ]; pev( iEntity, pev_origin, vecOrigin );
set_pev( pId, pev_origin, vecOrigin );
g_iUserPoints[ pId ]--;
}
case 4:
{
new iEntity, iBody; get_user_aiming( pId, iEntity, iBody, 30 );
if( !pev_valid( iEntity ) ) return Show_StrongMenu( pId );
new szClassName[ 32 ]; pev( iEntity, pev_classname, szClassName, charsmax( szClassName ) );
if( szClassName[ 5 ] == 'd' && szClassName[ 6 ] == 'o' && szClassName[ 7 ] == 'o' && szClassName[ 8 ] == 'r' )
{
client_print( pId, print_center, "<<<< OPENED >>>>" );
dllfunc( DLLFunc_Use, iEntity, pId );
}
else return Show_StrongMenu( pId );
g_iUserPoints[ pId ]--;
}
case 5:
{
new iPlayers[ 32 ], iNum, pTarget;
for( pTarget = 1; pTarget <= g_iMaxPlayers; pTarget++ )
{
if( !jbe_is_user_alive( pTarget ) || pTarget == pId ) continue;
iPlayers[ iNum++ ] = pTarget;
}
if( !iNum )
{
client_print( pId, print_center, "<<<< No Players >>>>" );
return Show_StrongMenu( pId );
}
new Float: vecOriginTarget[ 3 ], Float: vecOrigin[ 3 ]; pTarget = iPlayers[ random_num( 1, iNum - 1 ) ];
pev( pTarget, pev_origin, vecOriginTarget ); pev( pId, pev_origin, vecOrigin );
set_pev( pId, pev_origin, vecOriginTarget ); set_pev( pTarget, pev_origin, vecOrigin );
client_print( pTarget, print_center, "<<<< Кто-то поменялся с вами позициями! >>>>" );
g_iUserPoints[ pId ] -= 2;
}
case 6:
{
drop_user_weapons( pId, 1 ); drop_user_weapons( pId, 0 );
new szWeapons[][] = { "weapon_m4a1", "weapon_usp", "weapon_ak47", "weapon_glock18", "weapon_m249" };
fm_give_item( pId, szWeapons[ random_num( 0, 4 ) ] );
g_iUserPoints[ pId ] -= 3;
}
case 7:
{
jbe_set_user_rendering( pId, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 100 );
client_print( pId, print_center, "<<<< Вы невидимы! >>>>" );
g_iUserPoints[ pId ] -= 4;
}
}
return PLUGIN_HANDLED;
}public Show_KnyazMenu( id )
{
jbe_informer_offset_up(id);
static iMode, iInvisible; jbe_get_user_rendering(id, iMode, iMode, iMode, iMode, iMode, iInvisible);
new szMenu[340], iLen, iKeys = (1<<0|1<<1|1<<9);
iLen = formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y%L^n^n", id, "JBE_KNYAZ_TITLE");
FormatMenu("r(1) y| w%L^n", id, "JBE_KNYAZ_REGENERATION", IsSetBit(g_iBitUserIsType[REGEN], id) ? "Включено" : "Выключено");
FormatMenu("r(2) y| w%L^n", id, "JBE_KNYAZ_INVISIBLE", (iMode == kRenderTransAlpha && iInvisible == 70) ? "Включено" : "Выключено");
if(g_iUserRespawnNum[id] > 0)
{
FormatMenu("r(3) y| w %L r[%d]^n", id, "JBE_RESPAWN_MENU", g_iUserRespawnNum[id]);
iKeys |= (1<<2);
}
else FormatMenu("r(3) y| d %L r(0) y| ^n", id, "JBE_RESPAWN_MENU");
FormatMenu("^nr(0) y| w Выход");
return ShowMenu("Show_KnyazMenu");
}
public Handle_KnyazMenu(id, iKey)
{
switch(iKey)
{
case 0:
{
if(IsSetBit(g_iBitUserIsType[REGEN], id)) remove_task(id + TaskId_Regen);
else set_task(10.0, "Regenerations", id + TaskId_Regen, _, _, "b");
InvertBit(g_iBitUserIsType[REGEN], id);
}
case 1:
{
static iMode, iInvisible;
jbe_get_user_rendering(id, iMode, iMode, iMode, iMode, iMode, iInvisible);
if(iMode == kRenderTransAlpha && iInvisible == 70) jbe_set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 100);
else jbe_set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 70);
}
case 2: return Show_RespawnMenu(id, g_iMenuPosition[id] = 0);
case 9: return PLUGIN_HANDLED;
}
return Show_KnyazMenu(id);
}
public Regenerations(id)
{
id -= TaskId_Regen;
if(jbe_get_status_duel() || jbe_get_day_mode() == 3 || !jbe_is_user_alive(id))
{
remove_task(id + TaskId_Regen);
return;
}
if(pev(id, pev_health) >= 100)
{
client_print(id, print_center, "[Князь Меню] Регенерация завершена.");
remove_task(id + TaskId_Regen);
return;
}
set_pev(id, pev_health, pev(id, pev_health) + 5.0);
}
public Show_CreatorMenu(id)
{
jbe_informer_offset_up(id);
new szMenu[516], iLen, iKeys = (1<<0|1<<1|1<<2|1<<3|1<<9), Float: fGravity;
pev(id, pev_gravity, fGravity);
iLen = formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y%L^n^n", id, "JBE_CREATOR_TITLE");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[1] w%L^n^n", id, "JBE_CREATER_TYPE", IsNotSetBit(g_iBitUserIsType[MODE], id) ? "Забрать" : "Дать");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[2] w%L^n", id, "JBE_CREATE_HEALTH", pev(id, pev_health));
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[3] w%L^n^n", id, "JBE_CREATE_ARMOR", pev(id, pev_armorvalue));
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[4] w%L^n^n", id, "JBE_CREATE_GRAVITY", fGravity);
if(!jbe_is_user_alive(id))
{
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[5] w%L^n^n",id, "JBE_RESPAWN_CREATE");
iKeys |= (1<<4);
}
else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[5] d%L^n^n",id, "JBE_RESPAWN_CREATE");
FormatMenu("^nr(0) y| w Выход");
return ShowMenu("Show_CreatorMenu");
}
public Handle_CreatorMenu(id, iKey)
{
switch(iKey)
{
case 0: InvertBit(g_iBitUserIsType[MODE], id);
case 1:
{
if(IsSetBit(g_iBitUserIsType[MODE], id))
{
if(pev(id, pev_health) >= 160) client_print(id, print_center, "У Вас много жизней!");
else set_pev(id, pev_health, pev(id, pev_health) + 5.0);
}
else
{
if(pev(id, pev_health) < 6) client_print(id, print_center, "У Вас мало жизней!");
else set_pev(id, pev_health, pev(id, pev_health) - 5.0);
}
}
case 2:
{
if(IsSetBit(g_iBitUserIsType[MODE], id))
{
if(pev(id, pev_armorvalue) >= 160) client_print(id, print_center, "У Вас много брони!");
else set_pev(id, pev_armorvalue, pev(id, pev_armorvalue) + 5.0);
}
else
{
if(pev(id, pev_armorvalue) < 6) client_print(id, print_center, "У Вас мало брони!");
else set_pev(id, pev_armorvalue, pev(id, pev_armorvalue) - 5.0);
}
}
case 3:
{
new Float: fGravity;
pev(id, pev_gravity, fGravity);
if(IsSetBit(g_iBitUserIsType[MODE], id))
{
if(fGravity <= 0.5) client_print(id, print_center, "Слишком большая гравитация!");
else
{
fGravity -= 0.05;
set_pev(id, pev_gravity, fGravity);
}
}
else
{
if(fGravity >= 1.0) client_print(id, print_center, "Слишком маленькая гравитация!");
else
{
fGravity += 0.05;
set_pev(id, pev_gravity, fGravity);
}
}
}
case 4: ExecuteHam(Ham_CS_RoundRespawn, id);
case 9: return PLUGIN_HANDLED;
}
return Show_CreatorMenu(id);
}public Show_GodModeMenu(id)
{
jbe_informer_offset_up(id);
new szMenu[700], iLen;
iLen = formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y%L^n^n", id, "JBE_GODMODE_TITLE");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[1] w%L^n^n", id, "JBE_GODMODE_TYPE", IsNotSetBit(g_iBitUserIsType[MODE], id) ? "Забрать" : "Дать");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[2] w%L^n", id, "JBE_GODMODE_HEALTH");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[3] w%L^n^n", id, "JBE_GODMODE_ARMOR");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[4] w%L^n^n", id, "JBE_GODMODE_GRAVITY");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[5] w%sr%L^n^n", g_iDayMode ? "Ночь | ":"День | ", id, "JBE_GODMODE_DEYMODE");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^ny[0] w%L", id, "JBE_MENU_EXIT"); return show_menu(id, (1<<0|1<<1|1<<2|1<<3|1<<4|1<<9), szMenu, -1, "Show_GodModeMenu");
}
public Handle_GodModeMenu(id, iNum)
{
switch(iNum)
{
case 0:
{
InvertBit(g_iBitUserIsType[MODE], id);
return Show_GodModeMenu(id);
}
case 1:
{
g_iGodModeType[id] = 1;
return Show_GodModeList(id, g_iMenuPosition[id] = 0);
}
case 2:
{
g_iGodModeType[id] = 2;
return Show_GodModeList(id, g_iMenuPosition[id] = 0);
}
case 3:
{
g_iGodModeType[id] = 3;
return Show_GodModeList(id, g_iMenuPosition[id] = 0);
}
case 4:
{
DayMode_Setting();
return Show_GodModeMenu(id);
}
case 5: return Show_RespawnMenu(id, g_iMenuPosition[id] = 0);
}
return PLUGIN_HANDLED;
}
public Cmd_OpenResspawnMenu(id) Show_RespawnMenu(id, g_iMenuPosition[id] = 0);
public Show_RespawnMenu(id, iPos)
{
if(iPos < 0) return PLUGIN_HANDLED;
if(~jbe_get_privileges_flags(id) & FLAGS_GOD && !g_iUserRespawnNum[id])
{
client_print(0, print_center, "У Вас закончились попытки возрождения!");
return Show_KnyazMenu(id);
}jbe_informer_offset_up
(id);
new iPlayersNum;
for(new i = 1; i <= g_iMaxPlayers; i++)
{
if(!jbe_get_user_team(i) || jbe_get_user_team(i) >= 3 || jbe_is_user_alive(i)) continue;
g_iMenuPlayers[id][iPlayersNum++] = i;
}
new iStart = iPos * 8;
if(iStart > iPlayersNum) iStart = iPlayersNum;
iStart = iStart - (iStart % 8);
g_iMenuPosition[id] = iStart / 8;
new iEnd = iStart + 8;
if(iEnd > iPlayersNum) iEnd = iPlayersNum;
new szMenu[1024], iLen, iPagesNum = (iPlayersNum / 8 + ((iPlayersNum % 8) ? 1 : 0));
switch(iPagesNum)
{
case 0:
{
client_print(id, print_center, "%L", id, "JBE_CHAT_ID_PLAYERS_NOT_VALID");
return PLUGIN_HANDLED;
}
default: iLen = formatex(szMenu, charsmax(szMenu), "y%L w[%d|%d]^n^n", id, "JBE_RESPAWN_MENU", iPos + 1, iPagesNum);
}
new szName[32], i, iKeys = (1<<9), b;
for(new a = iStart; a < iEnd; a++)
{
i = g_iMenuPlayers[id][a];
get_user_name(i, szName, charsmax(szName));
iKeys |= (1<<b);
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[%d] w%s^n", ++b, szName);
}
for(new i = b; i < 8; i++) iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^n");
if(iEnd < iPlayersNum)
{
iKeys |= (1<<8);
formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^ny[9] w%L^ny[0] w%L", id, "JBE_MENU_NEXT", id, iPos ? "JBE_MENU_BACK" : "JBE_MENU_EXIT");
}
else formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^n^ny[0] w%L", id, iPos ? "JBE_MENU_BACK" : "JBE_MENU_EXIT");
return show_menu(id, iKeys, szMenu, -1, "Show_RespawnMenu");
}
public Handle_RespawnMenu(id, iKey)
{
switch(iKey)
{
case 8: return Show_RespawnMenu(id, ++g_iMenuPosition[id]);
case 9: return Show_RespawnMenu(id, --g_iMenuPosition[id]);
default:
{
new iTarget = g_iMenuPlayers[id][g_iMenuPosition[id] * 8 + iKey];
if(jbe_is_user_alive(iTarget))
{
client_print(id, print_center, "Игрок уже оживлён!");
return Show_RespawnMenu(id, g_iMenuPosition[id] = 0);
}
if(jbe_is_user_connected(iTarget))
{
g_iUserRespawnNum[id]--;
ExecuteHam(Ham_CS_RoundRespawn, iTarget);
new szName[2][32];
get_user_name(id, szName[0], charsmax(szName[]));
get_user_name(iTarget, szName[1], charsmax(szName[]));
set_hudmessage( 102, 69, 0, -1.0, 0.16, 0, 0.0, 0.9, 0.1, 3.0, -1 );
for(new pPlayer = 1; pPlayer <= g_iMaxPlayers; pPlayer++)
{
if(!jbe_is_user_connected(pPlayer)) continue;
ShowSyncHudMsg( pPlayer, g_iSyncText, "Администратор [ %s ] ^nвозродил игрока [ %s ]", szName[0], szName[1] );
}
}
return Show_RespawnMenu(id, g_iMenuPosition[id]);
}
}
return PLUGIN_HANDLED;
}Show_GodModeList(id, iPos)
{
if( iPos < 0 ) return PLUGIN_HANDLED;
jbe_informer_offset_up( id );
new iPlayersNum;
for(new i = 1; i <= get_maxplayers(); i++)
{
if(!jbe_is_user_alive(i) || jbe_get_user_team(i) >= 3 || !jbe_get_user_team(i)) continue;
g_iMenuPlayers[id][iPlayersNum++] = i;
}
new iStart = iPos * 8;
if(iStart > iPlayersNum) iStart = iPlayersNum;
iStart = iStart - (iStart % 8);
g_iMenuPosition[id] = iStart / 8;
new iEnd = iStart + 8;
if(iEnd > iPlayersNum) iEnd = iPlayersNum;
new szMenu[1024], iLen, iPagesNum = (iPlayersNum / 8 + ((iPlayersNum % 8) ? 1 : 0));
switch(iPagesNum)
{
case 0:
{
UTIL_SayText( id, "%L", id, "JBE_CHAT_ID_PLAYERS_NOT_VALID" );
return Show_GodModeMenu(id);
}
default: iLen = formatex(szMenu, charsmax(szMenu), "y%L w[%d|%d]^n^n", id, "JBE_GODMODE_BONUS_MENU", iPos + 1, iPagesNum);
}
new szName[32], i, iKeys = (1<<9), b;
for(new a = iStart; a < iEnd; a++)
{
i = g_iMenuPlayers[id][a];
get_user_name(i, szName, charsmax(szName));
iKeys |= (1<<b);
switch(g_iGodModeType[id])
{
case 1: iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[%d] w%s d[r%dd]^n", ++b, szName, pev(i, pev_health));
case 2: iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[%d] w%sd[r%dd]^n", ++b, szName, pev(i, pev_armorvalue));
case 3:
{
new Float: fGravity;
pev(i, pev_gravity, fGravity);
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "y[%d] w%sd[r%fd]^n", ++b, szName, fGravity);
}
}
}
for(new i = b; i < 8; i++) iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^n");
if(iEnd < iPlayersNum)
{
iKeys |= (1<<8);
formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^ny[9] w%L^ny[0] w%L", id, "JBE_MENU_NEXT", id, iPos ? "JBE_MENU_BACK" : "JBE_MENU_EXIT");
}
else formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^n^ny[0] w%L", id, iPos ? "JBE_MENU_BACK" : "JBE_MENU_EXIT");
return show_menu(id, iKeys, szMenu, -1, "Show_GodModeList");
}public Handle_GodModeList(id, iKey)
{
switch(iKey)
{
case 8: return Show_GodModeList(id, ++g_iMenuPosition[id]);
case 9: return Show_GodModeList(id, --g_iMenuPosition[id]);
default:
{
new iTarget = g_iMenuPlayers[id][g_iMenuPosition[id] * 8 + iKey];
if(!jbe_is_user_connected(iTarget))
{
client_print(id, print_center, "Игрок отключён!");
return Show_GodModeList(id, g_iMenuPosition[id] = 0);
}
if(!jbe_is_user_alive(iTarget))
{
client_print(id, print_center, "Игрок мёртв!");
return Show_GodModeList(id, g_iMenuPosition[id] = 0);
} switch(g_iGodModeType[id])
{
case 1:
{
if(IsSetBit(g_iBitUserIsType[MODE], id))
{
if(pev(iTarget, pev_health) >= 160) client_print(id, print_center, "У игрока много жизней!");
else set_pev(iTarget, pev_health, pev(iTarget, pev_health) + 5.0);
}
else
{
if(pev(iTarget, pev_health) < 6) client_print(id, print_center, "У игрока мало жизней!");
else set_pev(iTarget, pev_health, pev(iTarget, pev_health) - 5.0);
}
return Show_GodModeList(id, g_iMenuPosition[id]);
}
case 2:
{
if(IsSetBit(g_iBitUserIsType[MODE], id))
{
if(pev(iTarget, pev_armorvalue) >= 160) client_print(id, print_center, "У игрока много жизней!");
else set_pev(iTarget, pev_armorvalue, pev(iTarget, pev_armorvalue) + 5.0);
}
else
{
if(pev(iTarget, pev_armorvalue) < 6) client_print(id, print_center, "У игрока мало жизней!");
else set_pev(iTarget, pev_armorvalue, pev(iTarget, pev_armorvalue) - 5.0);
}
return Show_GodModeList(id, g_iMenuPosition[id]);
}
case 3:
{
new Float: fGravity;
pev(iTarget, pev_gravity, fGravity);
if(IsSetBit(g_iBitUserIsType[MODE], id))
{
if(fGravity <= 0.5) client_print(id, print_center, "Слишком большая гравитация!");
else
{
fGravity -= 0.05;
set_pev(iTarget, pev_gravity, fGravity);
}
}
else
{
if(fGravity >= 1.0) client_print(id, print_center, "Слишком маленькая гравитация!");
else
{
fGravity += 0.05;
set_pev(iTarget, pev_gravity, fGravity);
}
}
}
}
return Show_GodModeList(id, g_iMenuPosition[id]);
}
}
return PLUGIN_HANDLED;
}stock DayMode_Setting()
{
switch(g_iDayMode)
{
case false:
{
engfunc( EngFunc_MessageBegin, MSG_ALL, 143, { 0.0, 0.0, 0.0 }, 0 );
write_byte(20); // Red
write_byte(20); // Green
write_byte(20); // Blue
write_byte(10); // SD
write_byte(41); // ED
write_byte(95); // D1
write_byte(59); // D2
message_end();
g_iDayMode = true;
}
case true:
{
engfunc( EngFunc_MessageBegin, MSG_ALL, 143, { 0.0, 0.0, 0.0 }, 0 );
write_byte(0); // Red
write_byte(0); // Green
write_byte(0); // Blue
write_byte(0); // SD
write_byte(0); // ED
write_byte(0); // D1
write_byte(0); // D2
message_end();
g_iDayMode = false;
}
}
}stock UTIL_SayText(pPlayer, const szMessage[], any:...)
{
new szBuffer[ 190 ], iLen = format( szBuffer, charsmax( szBuffer ), "%L ", LANG_PLAYER, "JBE_CHAT_PREFIX" );
if( numargs() > 2 ) vformat( szBuffer[ iLen ], charsmax( szBuffer ), szMessage, 3 );
else copy( szBuffer[ iLen ], charsmax( szBuffer ), szMessage );
while( replace( szBuffer, charsmax( szBuffer ), "!y", "^1" ) ) {}
while( replace( szBuffer, charsmax( szBuffer ), "!t", "^3" ) ) {}
while( replace( szBuffer, charsmax( szBuffer ), "!g", "^4" ) ) {}
switch( pPlayer )
{
case 0:
{
for( new iPlayer = 1; iPlayer <= g_iMaxPlayers; iPlayer++ )
{
if( !jbe_is_user_connected( iPlayer ) ) continue;
engfunc( EngFunc_MessageBegin, MSG_ONE_UNRELIABLE, 76, { 0.0, 0.0, 0.0 }, iPlayer );
write_byte( iPlayer );
write_string( szBuffer );
message_end();
}
}
default:
{
engfunc( EngFunc_MessageBegin, MSG_ONE_UNRELIABLE, 76, { 0.0, 0.0, 0.0 }, pPlayer );
write_byte( pPlayer );
write_string( szBuffer );
message_end();
}
}
}stock fm_give_item(pPlayer, const szItem[])
{
new iEntity = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, szItem));
if(!pev_valid(iEntity)) return 0;
new Float:vecOrigin[3];
pev(pPlayer, pev_origin, vecOrigin);
set_pev(iEntity, pev_origin, vecOrigin);
set_pev(iEntity, pev_spawnflags, pev(iEntity, pev_spawnflags) | SF_NORESPAWN);
dllfunc(DLLFunc_Spawn, iEntity);
dllfunc(DLLFunc_Touch, iEntity, pPlayer);
if(pev(iEntity, pev_solid) != SOLID_NOT)
{
engfunc(EngFunc_RemoveEntity, iEntity);
return -1;
}
return iEntity;
}stock drop_user_weapons(pPlayer, iType)
{
new iWeaponsId[32], iNum;
get_user_weapons(pPlayer, iWeaponsId, iNum);
if(iType) iType = (1<<CSW_GLOCK18|1<<CSW_USP|1<<CSW_P228|1<<CSW_DEAGLE|1<<CSW_ELITE|1<<CSW_FIVESEVEN);
else iType = (1<<CSW_M3|1<<CSW_XM1014|1<<CSW_MAC10|1<<CSW_TMP|1<<CSW_MP5NAVY|1<<CSW_UMP45|1<<CSW_P90|1<<CSW_GALIL|1<<CSW_FAMAS|1<<CSW_AK47|1<<CSW_M4A1|1<<CSW_SCOUT|1<<CSW_SG552|1<<CSW_AUG|1<<CSW_AWP|1<<CSW_G3SG1|1<<CSW_SG550|1<<CSW_M249);
for(new i; i < iNum; i++)
{
if(iType & (1<<iWeaponsId[i]))
{
new szWeaponName[24];
get_weaponname(iWeaponsId[i], szWeaponName, charsmax(szWeaponName));
engclient_cmd(pPlayer, "drop", szWeaponName);
}
}
}
P.S. Не знаю зачем пишу, просто на всякий случай, советую искать строки в Notepad++, чтобы не запутаться, да и быстрее
Содержание
- Error 017 undefined symbol setdynamicobjectmaterial
- Error 017 undefined symbol setdynamicobjectmaterial
- Поделиться сообщением
- 18 ответов на этот вопрос
- Последние посетители 0 пользователей онлайн
- Похожий контент
- Форум Pawn.Wiki — Воплоти мечту в реальность!: Кучень Error+Waring — Форум Pawn.Wiki — Воплоти мечту в реальность!
Error 017 undefined symbol setdynamicobjectmaterial
Your missing a < or >somewhere in your script. From personal experience i get similar errors when i miss a bracket somewhere in my mode.
If you cant find it take a look around in the tools section there is a few programs that look for missing brackets.
This is You must conclude it in the first line that Blue colour
This is Saying Undefined !
#define SetDynamicObjectMaterialText
#define CreateDynamicObjectEx
#define CreateDynamicObjectEx
#define SetDynamicObjectMaterial
#define CreateDynamicObjectEx
#define SetDynamicObjectMaterial
#define CreateDynamicObjectEx
#define SetDynamicObjectMaterial
#define CreateDynamicObjectEx
#define SetDynamicObjectMaterial
#define CreateDynamicObjectEx
#define SetDynamicObjectMaterialText
#define CreateDynamicObjectEx
#define SetDynamicObjectMaterialText
#define SetDynamicObjectMaterialText
#define SetDynamicObjectMaterialText
#define SetDynamicObjectMaterialText
#define Streamer_SetArrayData
#define SetDynamicObjectMaterialText
#define CreateDynamicCircleEx
#define CreateDynamicCircleEx
#define CreateDynamicCircleEx
I think This is Problem
Please REP Me.
Thank you Mars, it helped
But I got a problem with another gamemode and I get the folowing errors:
C:UsersD&GDesktopnfsw.pwn(364) : error 029: invalid expression, assumed zero
C:UsersD&GDesktopnfsw.pwn(454) : warning 202: number of arguments does not match definition
C:UsersD&GDesktopnfsw.pwn(461) : error 017: undefined symbol «CheckSet»
C:UsersD&GDesktopnfsw.pwn(462) : error 017: undefined symbol «CheckSet»
C:UsersD&GDesktopnfsw.pwn(463) : error 017: undefined symbol «CheckSet»
C:UsersD&GDesktopnfsw.pwn(464) : error 017: undefined symbol «SetMaxPing»
C:UsersD&GDesktopnfsw.pwn(465) : error 017: undefined symbol «SetWeaponAllowed»
C:UsersD&GDesktopnfsw.pwn(466) : error 017: undefined symbol «AntiCheatSetUpdateDelay»
C:UsersD&GDesktopnfsw.pwn(476) : error 017: undefined symbol «SetDynamicObjectMaterialText»
C:UsersD&GDesktopnfsw.pwn(495) : error 017: undefined symbol «CreateDynamicObjectEx»
C:UsersD&GDesktopnfsw.pwn(496) : error 017: undefined symbol «CreateDynamicObjectEx»
C:UsersD&GDesktopnfsw.pwn(497) : error 017: undefined symbol «SetDynamicObjectMaterial»
C:UsersD&GDesktopnfsw.pwn(49 : error 017: undefined symbol «CreateDynamicObjectEx»
C:UsersD&GDesktopnfsw.pwn(499) : error 017: undefined symbol «SetDynamicObjectMaterial»
C:UsersD&GDesktopnfsw.pwn(500) : error 017: undefined symbol «CreateDynamicObjectEx»
C:UsersD&GDesktopnfsw.pwn(501) : error 017: undefined symbol «SetDynamicObjectMaterial»
C:UsersD&GDesktopnfsw.pwn(502) : error 017: undefined symbol «CreateDynamicObjectEx»
C:UsersD&GDesktopnfsw.pwn(503) : error 017: undefined symbol «SetDynamicObjectMaterial»
C:UsersD&GDesktopnfsw.pwn(505) : error 017: undefined symbol «CreateDynamicObjectEx»
C:UsersD&GDesktopnfsw.pwn(506) : error 017: undefined symbol «SetDynamicObjectMaterialText»
C:UsersD&GDesktopnfsw.pwn(507) : error 017: undefined symbol «CreateDynamicObjectEx»
C:UsersD&GDesktopnfsw.pwn(50 : error 017: undefined symbol «SetDynamicObjectMaterialText»
C:UsersD&GDesktopnfsw.pwn(509) : error 017: undefined symbol «SetDynamicObjectMaterialText»
C:UsersD&GDesktopnfsw.pwn(510) : error 017: undefined symbol «CreateDynamicObjectEx»
C:UsersD&GDesktopnfsw.pwn(511) : error 017: undefined symbol «SetDynamicObjectMaterialText»
C:UsersD&GDesktopnfsw.pwn(512) : error 017: undefined symbol «SetDynamicObjectMaterialText»
C:UsersD&GDesktoppawnoincludenfswcenter_and _club.txt(25 : error 017: undefined symbol «Streamer_SetArrayData»
Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
update you streamer to latest version
click here to download latest version: https://github.com/samp-incognito/sa. ugin-2.7.3.zip
then upload its include and plugin, then recompile script
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnoin cludestreamer.inc(167) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_256x128»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(364) : error 029: invalid expression, assumed zero
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(454) : warning 202: number of arguments does not match definition
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(461) : error 017: undefined symbol «CheckSet»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(462) : error 017: undefined symbol «CheckSet»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(463) : error 017: undefined symbol «CheckSet»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(464) : error 017: undefined symbol «SetMaxPing»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(465) : error 017: undefined symbol «SetWeaponAllowed»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(466) : error 017: undefined symbol «AntiCheatSetUpdateDelay»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(476) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_64x64»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(506) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_32x32»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(50 : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_32x32»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(509) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_32x32»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(511) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_32x32»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnonf sw.pwn(512) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_32x32»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnoin cludenfswcenter_and_club.txt(272) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_256x128»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnoin cludenfswcenter_and_club.txt(277) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_256x128»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnoin cludenfswcenter_and_club.txt(280) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_256x128»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnoin cludenfswheights_and_paradise.txt(6) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_256x128»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnoin cludenfswheights_and_paradise.txt(319) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_256x128»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnoin cludenfswheights_and_paradise.txt(324) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_256x128»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnoin cludenfswgarcia_and_flats.txt(236) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_256x128»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnoin cludenfswgarcia_and_flats.txt(241) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_256x128»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnoin cludenfswverona_heights.txt(295) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_256x128»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnoin cludenfswverona_heights.txt(300) : error 017: undefined symbol «OBJECT_MATERIAL_SIZE_256x128»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnoin cludenfswglobal_textdraws.txt(102) : error 017: undefined symbol «TextDrawSetSelectable»
C:UsersD&GDesktopsamp03z_svr_R1_win32pawnoin cludenfswglobal_textdraws.txt(115) : error 017: undefined symbol «TextDrawSetSelectable»
Источник
Error 017 undefined symbol setdynamicobjectmaterial
- Активный Сообщений: 207
Регистрация: 05.11.2017
КПД: 9%
Доброе утро уже, у меня такая проблема, был интерьер и я решил его заретекстурить, все сделал, добавил инту обратно начал компилировать, и тут пошло, почему не признает функцию ретекстура? прошу помочь, вот ошибки.
С такой проблемой впервые столкнулся.
Заметка от Гость , создано 7 ноября, 2017
Берете код еще под спойлер! Как это делать вы можете посмотреть в разделе: «Дополнительно -> FAQ».
Поделиться сообщением
Ссылка на сообщение
Опубликовал DENIS.P. ,Опубликовано 8 ноября, 2017
18 ответов на этот вопрос
Последние посетители 0 пользователей онлайн
Ни одного зарегистрированного пользователя не просматривает данную страницу
Похожий контент
Работает на IPS Community Suite 4
2017 — н.в. PAWNO-RUS.RU
При копировании материалов с сайта ссылка на наш форум обязательна!
Вы видите это сообщение, так как вы не вошли или не зарегистрировались. Чтобы получить более расширенные возможности войдите или зарегистрируйтесь.
Однако без регистрации Вы также сможете пользоваться форумом.
Источник
Форум Pawn.Wiki — Воплоти мечту в реальность!: Кучень Error+Waring — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Pawn скриптинг
- Первая помощь
- Проблемы с компилированием
- Правила форума
- Просмотр новых публикаций
- Группа: Пользователи
- Сообщений: 13
- Регистрация: 03 апреля 15
C:Users. Desktop. gamemodesRealLife.pwn(19386) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19386) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19386) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19404) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19404) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19404) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19422) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19422) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19422) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19440) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19440) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19440) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19458) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19458) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19458) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19476) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19476) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(19476) : warning 202: number of arguments does not match definition
C:Users. Desktop. gamemodesRealLife.pwn(34385) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34386) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34387) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34388) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34390) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34391) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34392) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34393) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34395) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34397) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34398) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34399) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34400) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34401) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34403) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34404) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(34405) : error 017: undefined symbol «AttachDynamicObjectToVehicle»
C:Users. Desktop. gamemodesRealLife.pwn(36522) : error 017: undefined symbol «SetDynamicObjectMaterial»
C:Users. Desktop. gamemodesRealLife.pwn(36523) : error 017: undefined symbol «SetDynamicObjectMaterial»
C:Users. Desktop. gamemodesRealLife.pwn(36524) : error 017: undefined symbol «SetDynamicObjectMaterial»
C:Users. Desktop. gamemodesRealLife.pwn(36525) : error 017: undefined symbol «SetDynamicObjectMaterial»
C:Users. Desktop. gamemodesRealLife.pwn(36526) : error 017: undefined symbol «SetDynamicObjectMaterial»
C:Users. Desktop. gamemodesRealLife.pwn(36527) : error 017: undefined symbol «SetDynamicObjectMaterial»
C:Users. Desktop. gamemodesRealLife.pwn(36528) : error 017: undefined symbol «SetDynamicObjectMaterial»
C:Users. Desktop. gamemodesRealLife.pwn(36529) : error 017: undefined symbol «SetDynamicObjectMaterial»
C:Users. Desktop. gamemodesRealLife.pwn(36530) : error 017: undefined symbol «SetDynamicObjectMaterial»
Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
#pragma dynamic 5900 // . . ?? . ? ?? . . ?? . . .
//========================= . . ==================================
#define ModeName «RL-RP | v1.3.1» // On
//#define HostName » > | Testing» // Off
#define ServerName «Modern State Role-Play» // On
//#define SiteName «real-life-rp.tk» // Off
//============================== . =========================================
#define START_LVL 1 // . . .
#define START_CASH 150000 // . . .
#define START_PASPORT 0 // 0 — . . 1 ? .
#define START_ADMLVL 0 // . . . 0 — . .
#define START_CarLic 0 // . ?? .
#define START_DONATE 500 // . . .
#define START_ADMPASS 2038 // . -.
//=========================== . ======================================
#undef MAX_PLAYERS //. . -?? . (. . . )
#define MAX_PLAYERS 50 //. . ?? . ?? . -?? .
#undef MAX_VEHICLES //. . -?? . (. . . )
#define MAX_VEHICLES 1000 //. . -?? .
// ======================== [ Streamer by Incognito ] ==========================
#define CreateObject CreateDynamicObject // . . ?? . )))
#define MoveObject MoveDynamicObject // . . . . ?? . )
#define AttachObjectToVehicle AttachDynamicObjectToVehicle // . ? . ?? . . )
//#define Create3DTextLabel CreateDynamic3DTextLabel // ?? . ?? . . ? . )
// =============================================================================
#define Ammo_SDPISTOL 5 // . . . . . 1% . SD Pistol
#define Ammo_DEAGLE 5 // . . . . . 1% . Deagle
#define Ammo_SHOTGUN 7 // . . . . . 1% . ShotGun
#define Ammo_MP5 12 // . . . . . 1% . MP5
#define Ammo_AK47 15 // . . . . . 1% . AK-47
#define Ammo_M4A1 15 // . . . . . 1% . M4
#define publics%0(%1) forward%0(%1); public%0(%1) // . . . ?? . . . . .
#define SCM SendClientMessage // . . . .
#define SCMTA SendClientMessageToAll // . . . . . .
#define SPD ShowPlayerDialog // . . . .
#define GPN GetPlayerName(playerid, playername, sizeof(playername)); // . . . . .
#define GGPN GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername)); // . . . . . .
#define kick SetTimerEx(«Kickk»,100,false,»i»,playerid); // . . .
#define gkick SetTimerEx(«Kickk»,100,false,»i»,giveplayerid); // . . . . .
#define ESCM SCM(playerid, COLOR_GREY, «?? ?? . . . . «); // . . .
#define ISCM SCM(playerid, COLOR_GREY, «. ?? . «); // . . .
//================================== Dialogs ===================================
#define DSL DIALOG_STYLE_LIST // .
#define DSI DIALOG_STYLE_INPUT // . .
#define DSM DIALOG_STYLE_MSGBOX // .
#define DSP DIALOG_STYLE_PASSWORD // . . .
//
#define cvet_x01 0x3399FFAA // .
#define cvet_01 «<3399ff>» // .
#define cvet_02 «» // .
// =====
#define COLOR_GRAD1 0xB4B5B7FF // .
#define COLOR_GRAD2 0xBFC0C2FF // .
#define COLOR_GRAD3 0xCBCCCEFF // .
#define COLOR_GRAD4 0xD8D8D8FF // .
#define COLOR_ORANGE 0xFF9900AA // .
#define COLOR_USE 0x7FB151FF // .
#define COLOR_BLUE 0x33AAFFFF // .
#define COLOR_SALMON 0xFA8072AA // .
#define COLOR_INDIGO 0x4B00B0AA // .
#define COLOR_BLACK 0x000000AA // .
#define COLOR_GREY 0xAFAFAFAA // .
#define COLOR_GREEN 0x33AA33AA // .
#define COLOR_RED 0xFF0000AA // .
#define COLOR_LIGHTRED 0xFF6347AA // . .
#define COLOR_LIGHTBLUE 0x33CCFFAA // . .
#define COLOR_LIGHTGREEN 0x9ACD32AA // . .
#define COLOR_YELLOW 0xFFFF00AA // .
#define COLOR_YELLOW2 0xF5DEB3AA // .
#define COLOR_WHITE 0xFFFFFFAA // .
#define COLOR_REDD 0x9F0000AA // .
#define COLOR_FADE1 0xE6E6E6E6 // .
#define COLOR_FADE2 0xC8C8C8C8 // .
#define COLOR_FADE3 0xAAAAAAAA // .
#define COLOR_FADE4 0x8C8C8C8C // .
#define COLOR_FADE5 0x6E6E6E6E // .
#define COLOR_PURPLE 0xC2A2DAAA // .
#define COLOR_ALLDEPT 0xFF8282AA // .
#define COLOR_NEWS 0xFFA500AA // .
#define COLOR_OOC 0xE0FFFFAA // .
#define TEAM_HIT_COLOR 0xFFFFFF00 // .
#define TEAM_BLUE_COLOR 0x8D8DFF00 // .
#define TEAM_GROVE_COLOR 0x00D900C8 // .
#define TEAM_AZTECAS_COLOR 0x01FCFFC8 // .
#define TEAM_CYAN_COLOR 0xFF8282AA // .
#define COLOR_GOLUB 0x1DE3CBAA // .
//
new pdgateLS;new pdgateArm;new pdgateSF;new pdgateFBR;new pdgateFBI;new pdgateLV; // .
new objmigfbi[17]; // fbi .
new buyvehdom; // . . . ?? . 1
new mashina[MAX_PLAYERS]; // . . . ?? . 1
new scolor1[MAX_PLAYERS];// . . . ?? . 1
new bool:UseEnter[MAX_PLAYERS]; // TEST 1
new IDVEH[MAX_PLAYERS]; // Test 2 1
new Text:Logotip[8];//.
new Collectionit[MAX_PLAYERS]; // .
new WithBush[MAX_PLAYERS]; // .
new Text3D: JobText2; // .
new edmats[6]; // LSa
new objectplayerid;
new hitpic[2];
new HelperDuty[MAX_PLAYERS]; // .
new FormaFracPic[17]; // . .
new pas; // .
new FormaFrac[MAX_PLAYERS]; // . .
new ammomerls; // .
new marvert[2]; // .
new Inkasator[5]; // .
new PlayerIsInkasator[MAX_PLAYERS]; // .
new trashtruck[5]; // . .
new hitid = 999;
new GoChase[MAX_PLAYERS];
new GetChased[MAX_PLAYERS];
new GotHit[MAX_PLAYERS];
new swatcar[15];
new carpost[9]; // . .
new Float: gInkasatorPoints[2][3] = // .
<
<-2153.6104,251.0052,35.4414>,
<-2153.6104,251.0052,35.4414>
>;
new ammonac[6]; // . .
new mavlic; // .
new AdvertTime; // .
new TOTALADVERT[3]; // .
new robber; // . .
new CountVezit; // . .
new ReportQ[MAX_PLAYERS][128]; // .
new AdvertiseTimerEx; // . .
new FreshTimer; // .
new radiols; // .
enum adInfo
<
adPhone,
adText[128],
adName[MAX_PLAYER_NAME]
>;
new AdvertInfo[30][3][adInfo]; // .
new Float: Venue[4][3] = // .
<
<-305.3935,-1334.0796,8.2550>,
<-311.4154,-1359.4165,9.0605>,
<-256.1160,-1385.5819,10.0414>,
<-191.2922,-1380.0945,5.0030>
>;
new CountExTimer; // AFK
new OtherTimerEx; // .
new PickupTimer; // . .
new GzCheckTimer; // . .
new MzCheckTimer; // . .
new war = 0; // .
new radiosf; // SFN
new radiolv; // LVN
new UnJailTimer; // .
new hamcvhod; // .
new hamcqvhod; // .
new IPMSG[5][] = // .
<
<«IP . . . . ?? . n»>,
<«. . IP . . . . . . . nn»>,
<«. . . . /. . n»>,
<«. /mm — . . nn»>,
<«. . . . n»>
>;
new giveplayerid; // ?? . .
new playername[MAX_PLAYER_NAME]; // . .
new giveplayername[MAX_PLAYER_NAME]; // . . .
new startwar = 0; // .
new CarLeasing[MAX_PLAYERS]; // . . .
new Bumper[MAX_PLAYERS]; // .
new Bumper2[MAX_PLAYERS];
new Bumper3[MAX_PLAYERS];
new Bumper4[MAX_PLAYERS]; // .
new Kolesa[MAX_PLAYERS];
new Kolesa2[MAX_PLAYERS]; // .
new PaintJob[MAX_PLAYERS];
new PaintJob2[MAX_PLAYERS]; // .
new Color[MAX_PLAYERS]; // . .
new Color1[MAX_PLAYERS];
new Color3[MAX_PLAYERS];
new Color4[MAX_PLAYERS]; // . .
new Gidra[MAX_PLAYERS];
new Gidra2[MAX_PLAYERS]; // .
new Spoiler[MAX_PLAYERS];
new Spoiler2[MAX_PLAYERS]; // .
new Nitro[MAX_PLAYERS];
new Nitro2[MAX_PLAYERS]; // .
new sellzone[MAX_PLAYERS]; // .
new Bags[MAX_PLAYERS]; // .
new WithBag[MAX_PLAYERS]; // .
new zips[MAX_PLAYERS]; // . .
new zons; // .
new seans[MAX_PLAYERS]; // .
new medicss[6]; // .
new Krisha[MAX_PLAYERS]; // .
new KrishaOffer[MAX_PLAYERS]; // .
new chekmaterialslv[10]; // LVa
new chekmaterialssf[3]; // SFa
new addd[3]; // News
new balonchik[MAX_PLAYERS]; // .
new TicketOffer[MAX_PLAYERS]; // .
new TicketMoney[MAX_PLAYERS]; // .
new Timerkk[MAX_PLAYERS]; // . . ?? .
new enterbiz[MAX_PLAYERS]; // .
new changenam[25]; // . .
new gSpectateID[MAX_PLAYERS]; // .
new zvonok[MAX_PLAYERS]; // News
new send[MAX_PLAYERS]; // .
new alhambra; // .
new shotbur[2]; // .
new pizza[3]; // .
new sabrina; // .
new grovebar; // .
new jizzy; // .
new pigpen; // .
new startaddiction[MAX_PLAYERS]; // .
new chet[MAX_PLAYERS]; // . .
new arace; // .
new EndingRaceRound = 1; // .
new RacingPlayers = 0; // .
new FirstRaceWinner = 999; // .
new PlayerRacing[MAX_PLAYERS]; // .
new SecondRaceWinner = 999; // .
new ThirdRaceWinner = 999; // .
new PaintballPlayers = 0; // .
new PaintballRound = 1; // .
new PaintballWinner = 999; // .
new PaintballWinnerKills = 0; // .
new PlayerPaintballing[MAX_PLAYERS]; // .
new PlayerPaintballKills[MAX_PLAYERS]; // .
new PicCP[MAX_PLAYERS]; // .
new createdvehicles[MAX_VEHICLES]; // /veh
new swatgun;
new createdvehs; // /veh
new caridhouse[MAX_PLAYERS]; // .
new createdcar; // .
new JobCarTime[MAX_PLAYERS]; // .
new BusStopTime[MAX_PLAYERS]; // . .
new VehicleNames[212][] = // . .
<
«Landstalker»,»Bravura»,»Buffalo»,»Linerunner»,»Perrenial» ,»Sentinel»,»Dumper»,»Firetruck»,»Trashmaster»,»Stretch» ,»Manana»,»Infernus»,
«Voodoo»,»Pony»,»Mule»,»Cheetah»,»Ambulance»,» Leviathan»,»Moonbeam»,»Esperanto»,»Taxi»,»Washington»,» Bobcat»,»Mr.Whoopee»,»BF Injection»,
«Hunter»,»Premier»,»Enforcer»,»Securicar»,»Banshee» ,»Predator»,»Bus»,»Rhino»,»Barracks»,»Hotknife»,» Trailer»,»Previon»,»Coach»,»Cabbie»,
«Stallion»,»Rumpo»,»RC Bandit»,»Romero»,»Packer»,»Monster»,»Admiral»,»Squalo» ,»Seasparrow»,»Pizzaboy»,»Tram»,»Trailer»,»Turismo», «Speeder»,
«Reefer»,»Tropic»,»Flatbed»,»Yankee»,»Caddy»,» Solair»,»Berkley’s RC Van»,»Skimmer»,»PCJ-600″,»Faggio»,»Freeway»,»RC Barron»,»RC Raider»,
«Glendale»,»Oceanic»,»Sanchez»,»Sparrow»,»Patriot», «Quad»,»Coastguard»,»Dinghy»,»Hermes»,»Sabre»,» Rustler»,»Zr-350″,»Walton»,»Regina»,
«Comet»,»BMX»,»Burrito»,»Camper»,»Marquis»,»Baggage» ,»Dozer»,»Maverick»,»News Chopper»,»Rancher»,»FBI Rancher»,»Virgo»,»Greenwood»,
«Jetmax»,»Hotring»,»Sandking»,»Blista Compact»,»Police Maverick»,»Boxville»,»Benson»,»Mesa»,»RC Goblin»,»Hotring A»,»Hotring B»,
«Bloodring Banger»,»Rancher»,»Super GT»,»Elegant»,»Journey»,»Bike»,»Mountain Bike»,»Beagle»,»Cropdust»,»Stunt»,»Tanker»,»RoadTrain» ,
«Nebula»,»Majestic»,»Buccaneer»,»Shamal»,»Hydra»,» FCR-900″,»NRG-500″,»HPV1000″,»Cement Truck»,»Tow Truck»,»Fortune»,»Cadrona»,»FBI Truck»,
«Willard»,»Forklift»,»Tractor»,»Combine»,»Feltzer», «Remington»,»Slamvan»,»Blade»,»Freight»,»Streak»,» Vortex»,»Vincent»,»Bullet»,»Clover»,
«Sadler»,»Firetruck»,»Hustler»,»Intruder»,»Primo»,» Cargobob»,»Tampa»,»Sunrise»,»Merit»,»Utility»,»Nevada» ,»Yosemite»,»Windsor»,»Monster A»,
«Monster B»,»Uranus»,»Jester»,»Sultan»,»Stratum»,»Elegy» ,»Raindance»,»RC Tiger»,»Flash»,»Tahoma»,»Savanna»,»Bandito»,»Freight» ,»Trailer»,
«Kart»,»Mower»,»Duneride»,»Sweeper»,»Broadway»,» Tornado»,»AT-400″,»DFT-30″,»Huntley»,»Stafford»,»BF- 400″,»Newsvan»,»Tug»,»Trailer A»,»Emperor»,
«Wayfarer»,»Euros»,»Hotdog»,»Club»,»Trailer B»,»Trailer C»,»Andromada»,»Dodo»,»RC Cam»,»Launch»,»Police Car»,»Police Car»,
«Police Car»,»Police Ranger»,»Picador»,»S.W.A.T.»,»Alpha»,»Phoenix»,»Glendale» ,»Sadler»,»L Trailer A»,»L Trailer B»,
«Stair Trailer»,»Boxville»,»Farm Plow»,»U Trailer»
>;
new ShopCar[86][2] = < <400,40000>,<567,90000>,<549,80000>,<547,95000>,<546,60000>,<543,40000>,<527,70000>,<526,75000>,<518, 95000>,
<517,50000>,<516,70000>,<492,90000>,<479,30000>,<478,30000>,<475,90000>,<466,60000>,<458,40000>,<439, 70000>,<436,65000>,<404,20000>,
<419,45000>,<586,65000>,<581,200000>,<461,250000>,<418,120000>,<603,300000>,<589,140000>,<580,150000>, <579,110000>,<561,180000>,<555,200000>,
<554,20000>,<534,150000>,<533,170000>,<505,120000>,<491,60000>,<489,140000>,<445,125000>,<421,115000>, <401,75000>,<600,70000>,<585,65000>,
<576,80000>,<575,40000>,<566,100000>,<551,70000>,<550,69000>,<540,33000>,<536,80000>,<529,44000>,<507, 65000>,<474,130000>,<467,115000>,
<426,170000>,<422,60000>,<412,115000>,<405,130000>,<477,210000>,<471,10000>,<468,180000>,<463,300000>, <521,500000>,<602,200000>,<587,210000>,
<565,310000>,<562,220000>,<560,400000>,<559,340000>,<558,270000>,<545,300000>,<535,350000>,<480,500000>, <402,540000>,<503,1500000>,<502,1600000>,
<494,1700000>,<495,2000000>,<424,1500000>,<434,1000000>,<522,3000000>,<541,1100000>,<506,1900000>,<451, 3000000>,<429,900000>,<415,1200000>,<411,5000000>>;
new autoshoppick[4]; //newcar2 1
new PlayerText:ShopText[MAX_PLAYERS];
new Text:AutoShopText[12];
new BusStop[MAX_PLAYERS]; // . .
new AutoBusJob[MAX_PLAYERS]; // . .
new AutoBusCheck[MAX_PLAYERS]; // . .
new AutoBusMoney[MAX_PLAYERS]; // . .
new sellgun; // . .
new sellgun1; // . .
new sellgun2; // . .
new sellgun3; // . .
new sellgun4; // . .
new PEfir[MAX_PLAYERS]; // News
new Pefir[MAX_PLAYERS]; // News
new bool: robh[MAX_PLAYERS]; // .
new TransportDuty[MAX_PLAYERS]; // .
new TransportValue[MAX_PLAYERS]; // .
new TransportMoney[MAX_PLAYERS]; // .
new TransportTime[MAX_PLAYERS]; // .
new TransportCost[MAX_PLAYERS]; // .
new TransportDriver[MAX_PLAYERS]; // .
new WantNickChange[MAX_PLAYERS][MAX_PLAYER_NAME]; // . .
new InviteOffer[MAX_PLAYERS]; // .
new HealOffer[MAX_PLAYERS]; // .
new HealPrice[MAX_PLAYERS]; // .
new healpricls = 10; // .
new healpricsf = 10; // .
new healpriclv = 10; // .
new smspricesf = 50; // .
new smspricels = 50; // .
new smspricelv = 50; // .
new smssf = 0; // News
new smsls = 0; // News
new smslv = 0; // News
new gcontract[MAX_PLAYERS]; // .
new cenabenza[MAX_PLAYERS]; // .
new Text3D: taxi3d[MAX_VEHICLES]; // .
new Text3D: mashinist3d[MAX_VEHICLES]; // .
new Text3D: Meh3d[MAX_VEHICLES]; // .
new Text3D: fare3dtext[MAX_VEHICLES]; // . .
new keys[MAX_PLAYERS]; // .
new DrugOffer[MAX_PLAYERS]; // .
new DrugPrice[MAX_PLAYERS]; // .
new DrugGramm[MAX_PLAYERS]; // .
new ZoneOffer[MAX_PLAYERS]; // .
new ZonePrice[MAX_PLAYERS]; // .
new FreeOffer[MAX_PLAYERS]; // .
new FreePrice[MAX_PLAYERS]; // .
new cbjstore[150]; // .
new TakingLesson[MAX_PLAYERS]; // .
new Menu: ChoseSkin; // . . .
new Menu: bomj[2]; // . . . .
new Menu: skinshopmagaz[2]; // . . .
new clearanim[MAX_PLAYERS]; // .
new ChosenPlayer[MAX_PLAYERS]; // .
new IsLocked[MAX_VEHICLES]; // .
new bool: Works[MAX_PLAYERS]; // .
new JobCP[MAX_PLAYERS]; // .
new GruzCP[MAX_PLAYERS]; // .
new usemats[MAX_PLAYERS]; // .
new JobAmmount[MAX_PLAYERS]; // .
new OldSkin[MAX_PLAYERS]; // .
new bool: EngineState[MAX_PLAYERS]; // . .
new forma[MAX_PLAYERS]; // .
enum afker
<
TickEx,
ChekEx,
VarEx,
bool: pSpawnEx,
bool:AFKEx
>
new PlayerEx[MAX_PLAYERS][afker]; // AFK
new MaterialsInTheWagon[MAX_VEHICLES]; // .
new SeitCar[MAX_PLAYERS]; // .
new Seitfers[MAX_PLAYERS]; // .
new Seitferma0[MAX_PLAYERS]; // .
new proverkaforma[MAX_PLAYERS]; // .
new FarmWorks[MAX_PLAYERS]; // .
new Download[MAX_PLAYERS]; // .
new CollectionStarted[MAX_PLAYERS]; // .
new Combine[1], FarmCar0[1]; // .
new FarmInfoPic; // .
new PText[MAX_PLAYERS][256]; // .
new CloakroomFarm; // .
new collection; // .
new WithPickup[MAX_PLAYERS]; // .
new Army[3]; // .
enum
<
FCHECKPOINT_0,
FCHECKPOINT_1,
FCHECKPOINT_2,
FCHECKPOINT_3,
FCHECKPOINT_4,
FCHECKPOINT_5,
FCHECKPOINT_6,
FCHECKPOINT_7,
FCHECKPOINT_8,
FCHECKPOINT_9,
FCHECKPOINT_10,
FCHECKPOINT_11,
FCHECKPOINT_12,
FCHECKPOINT_13,
FCHECKPOINT_14,
FCHECKPOINT_15
>
enum farmInfo
<
fOwned,
fOwner[MAX_PLAYER_NAME],
fProdukt,
fMafia,
fTill,
fEntranceCost,
fBuyPrice,
fCenazerno,
fSownSeeds,
fAmountOfGrain,
fcenaprod,
fzernozakup,
f1zams[MAX_PLAYER_NAME],
f2zams[MAX_PLAYER_NAME],
f3zams[MAX_PLAYER_NAME],
f1fermers[MAX_PLAYER_NAME],
f2fermers[MAX_PLAYER_NAME],
f3fermers[MAX_PLAYER_NAME],
f4fermers[MAX_PLAYER_NAME],
f5fermers[MAX_PLAYER_NAME],
Float:fmestoX,
Float:fmestoY,
Float:fmestoZ,
fidferm,
frandoms,
frandoms2,
fInCar,
flock
>;
new FarmInfo[1][farmInfo]; // .
new keyip[MAX_PLAYERS]; // . .
new Tazer[MAX_PLAYERS]; // .
new CreatedCars[100]; // /veh
new CreatedCar = 0; // /veh
new Medics = 0; // .
new PCash[MAX_PLAYERS]; // .
new MedicCall = 999; // .
new Police = 0; // .
new PoliceCall = 999; // .
new Mechanics = 0; // .
new MechanicCall = 999; // .
new TaxiDrivers = 0; // .
new TaxiCall = 999; // .
new SpawnChange[MAX_PLAYERS]; // . .
new PlayerTied[MAX_PLAYERS]; // /tie
new PlayerCuffed[MAX_PLAYERS]; // /cuff
new PlayerCuffedTime[MAX_PLAYERS]; // /cuff
new LiveOffer[MAX_PLAYERS]; // News
new LiveOfferls[MAX_PLAYERS]; // News
new LiveOfferlv[MAX_PLAYERS]; // News
new TalkingLive[MAX_PLAYERS]; // News
new TalkingLivels[MAX_PLAYERS]; // News
new TalkingLivelv[MAX_PLAYERS]; // News
new SelectChar[MAX_PLAYERS]; // . .
new SelectCharID[MAX_PLAYERS]; // . .
new SelectCharPlace[MAX_PLAYERS]; // . .
new CharPrice[MAX_PLAYERS]; // . .
new ChosenSkin[MAX_PLAYERS]; // . .
new InviteSkin[MAX_PLAYERS]; // . .
new CP[MAX_PLAYERS]; // .
new RaceCP[MAX_PLAYERS]; // .
new RepairOffer[MAX_PLAYERS]; // .
new RepairPrice[MAX_PLAYERS]; // .
new RefillOffer[MAX_PLAYERS]; // .
new RefillPrice[MAX_PLAYERS]; // .
new Float: X12, Float: Y12, Float: Z12; // .
new HouseOffer[MAX_PLAYERS]; // .
new CarOffer[MAX_PLAYERS]; // .
new CarPrice[MAX_PLAYERS]; // .
new HousePrice[MAX_PLAYERS]; // .
new WantedPoints[MAX_PLAYERS]; // .
new WantedLevel[MAX_PLAYERS]; // .
new gPlayerCheckpointStatus[MAX_PLAYERS]; // .
new gPlayerLogged[MAX_PLAYERS]; // .
new gNews[MAX_PLAYERS]; // News
new lNews[MAX_PLAYERS]; // News
new LvNews[MAX_PLAYERS]; // News
new CellTime[MAX_PLAYERS]; // .
new PhoneOnline[MAX_PLAYERS]; // .
new Mobile[MAX_PLAYERS]; // .
new Tel[MAX_PLAYERS]; // .
new CallCost[MAX_PLAYERS]; // .
new bool: gPlayerAccount[MAX_PLAYERS]; // .
new gCarLock[MAX_VEHICLES]; // .
new noooc = 1; // noooc
new dchat = 1; // /d
new dtimer = 3000; // /d
new ghour = 0; // .
new gminute = 0; // .
new gsecond = 0; // .
new wtime = 15; // .
new timeshift = 0; // .
new shifthour; // .
new levelexp = 4; // Exp
new MatsArmyCar[MAX_PLAYERS]; // .
new VertMats[MAX_PLAYERS]; // .
new vertmatbi = 0; // .
new armmatbi = 300000; // LVa .
new armmatsf = 200000; // SFa .
new lspdmatbi = 100000; // LSPD .
new armmatls = 100000; // LSa .
new sfpdmats = 100000; // SFPD .
new lvpdmats = 100000; // LVDP .
new fbimats = 100000; // FBI .
new yakuzamats = 100000; // Yacuza .
new rmmats = 100000; // . . .
new lcnmats = 100000; // LCN .
new hamcmatbi = 100000; // . .
new rifamatbi = 100000; // Rifa .
new ballasmatbi = 100000; // Ballas .
new groovmatbi = 100000; // Grove .
new vagosmatbi = 100000; // Vagos .
new aztekmatbi = 100000; // Aztecs .
new lsaammo; // LSa
new lsamaterials; // LSa
new bonus;
new bankk = 1;
new matsfuravagos[1]; // . Vagos
new matsfuragrove[1]; // . Grove
new matsfuraactek[1]; // . Aztecs
new matsfurarifa[1]; // . Rifa
new matsfura[1]; // . Ballas
new benzovoz[8]; // . .
new comptruck[8]; // . .
new hitfound = 0;
new matsfurahell[1]; // . .
new legalmods[48][22] = // . -?? . . . . ? ?? .
<
<400, 1024,1021,1020,1019,1018,1013,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<401, 1145,1144,1143,1142,1020,1019,1017,1013,1007,1006,1005,1004,1003,1001,0000,0000,0000,0000>,
<404, 1021,1020,1019,1017,1016,1013,1007,1002,1000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<405, 1023,1021,1020,1019,1018,1014,1001,1000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<410, 1024,1023,1021,1020,1019,1017,1013,1007,1003,1001,0000,0000,0000,0000,0000,0000,0000,0000>,
<415, 1023,1019,1018,1017,1007,1003,1001,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<418, 1021,1020,1016,1006,1002,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<420, 1021,1019,1005,1004,1003,1001,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<421, 1023,1021,1020,1019,1018,1016,1014,1000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<422, 1021,1020,1019,1017,1013,1007,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<426, 1021,1019,1006,1005,1004,1003,1001,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<436, 1022,1021,1020,1019,1017,1013,1007,1006,1003,1001,0000,0000,0000,0000,0000,0000,0000,0000>,
<439, 1145,1144,1143,1142,1023,1017,1013,1007,1003,1001,0000,0000,0000,0000,0000,0000,0000,0000>,
<477, 1021,1020,1019,1018,1017,1007,1006,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<478, 1024,1022,1021,1020,1013,1012,1005,1004,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<489, 1024,1020,1019,1018,1016,1013,1006,1005,1004,1002,1000,0000,0000,0000,0000,0000,0000,0000>,
<491, 1145,1144,1143,1142,1023,1021,1020,1019,1018,1017,1014,1007,1003,0000,0000,0000,0000,0000>,
<492, 1016,1006,1005,1004,1000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<496, 1143,1142,1023,1020,1019,1017,1011,1007,1006,1003,1002,1001,0000,0000,0000,0000,0000,0000>,
<500, 1024,1021,1020,1019,1013,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<516, 1021,1020,1019,1018,1017,1016,1015,1007,1004,1002,1000,0000,0000,0000,0000,0000,0000,0000>,
<517, 1145,1144,1143,1142,1023,1020,1019,1018,1017,1016,1007,1003,1002,0000,0000,0000,0000,0000>,
<518, 1145,1144,1143,1142,1023,1020,1018,1017,1013,1007,1006,1005,1003,1001,0000,0000,0000,0000>,
<527, 1021,1020,1018,1017,1015,1014,1007,1001,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<529, 1023,1020,1019,1018,1017,1012,1011,1007,1006,1003,1001,0000,0000,0000,0000,0000,0000,0000>,
<534, 1185,1180,1179,1178,1127,1126,1125,1124,1123,1122,1106,1101,1100,0000,0000,0000,0000,0000>,
<535, 1121,1120,1119,1118,1117,1116,1115,1114,1113,1110,1109,0000,0000,0000,0000,0000,0000,0000>,
<536, 1184,1183,1182,1181,1128,1108,1107,1105,1104,1103,0000,0000,0000,0000,0000,0000,0000,0000>,
<540, 1145,1144,1143,1142,1024,1023,1020,1019,1018,1017,1007,1006,1004,1001,0000,0000,0000,0000>,
<542, 1145,1144,1021,1020,1019,1018,1015,1014,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<546, 1145,1144,1143,1142,1024,1023,1019,1018,1017,1007,1006,1004,1002,1001,0000,0000,0000,0000>,
<547, 1143,1142,1021,1020,1019,1018,1016,1003,1000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<549, 1145,1144,1143,1142,1023,1020,1019,1018,1017,1012,1011,1007,1003,1001,0000,0000,0000,0000>,
<550, 1145,1144,1143,1142,1023,1020,1019,1018,1006,1005,1004,1003,1001,0000,0000,0000,0000,0000>,
<551, 1023,1021,1020,1019,1018,1016,1006,1005,1003,1002,0000,0000,0000,0000,0000,0000,0000,0000>,
<558, 1168,1167,1166,1165,1164,1163,1095,1094,1093,1092,1091,1090,1089,1088,0000,0000,0000,0000>,
<559, 1173,1162,1161,1160,1159,1158,1072,1071,1070,1069,1068,1067,1066,1065,0000,0000,0000,0000>,
<560, 1170,1169,1141,1140,1139,1138,1033,1032,1031,1030,1029,1028,1027,1026,0000,0000,0000,0000>,
<561, 1157,1156,1155,1154,1064,1063,1062,1061,1060,1059,1058,1057,1056,1055,1031,1030,1027,1026>,
<562, 1172,1171,1149,1148,1147,1146,1041,1040,1039,1038,1037,1036,1035,1034,0000,0000,0000,0000>,
<565, 1153,1152,1151,1150,1054,1053,1052,1051,1050,1049,1048,1047,1046,1045,0000,0000,0000,0000>,
<567, 1189,1188,1187,1186,1133,1132,1131,1130,1129,1102,0000,0000,0000,0000,0000,0000,0000,0000>,
<575, 1177,1176,1175,1174,1099,1044,1043,1042,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<576, 1193,1192,1191,1190,1137,1136,1135,1134,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<580, 1023,1020,1018,1017,1007,1006,1001,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<589, 1145,1144,1024,1020,1018,1017,1016,1013,1007,1006,1005,1004,1000,0000,0000,0000,0000,0000>,
<600, 1022,1020,1018,1017,1013,1007,1006,1005,1004,0000,0000,0000,0000,0000,0000,0000,0000,0000>,
<603, 1145,1144,1143,1142,1024,1023,1020,1019,1018,1017,1007,1006,1001,0000,0000,0000,0000,0000>
>;
new lsnewscar[6]; // . LSN
new lvnewscar[6]; // . LVN
new lvpdcar[23]; // . LVPD
new liccarsf[5]; // .
new licmotsf[4]; // .
new taxicar[26]; // . Taxi
new mashinist; // . .
new bus[14]; // . . .
new mehanik[19]; // . .
new rentcarsf[7]; // . . ? SF
new rentcarls[11]; // . . LS
new rentcarlv[16]; // . . LV
new medicsls[10]; // . . LS
new medicslv[8]; // . . LV
new passs[2];
new sapdcar[27]; // . LSPD
new fbicar[36]; // . FBI
new cnncar[5]; // . SFN
new sfpdcar[36]; // . SFPD
new medmav; // . .
new cnnmav; // . News
new armycarsf[21]; // . SFa
new yakcar[7]; // . Yacuza
new ruscar[12]; // . . .
new govcar[5]; // . .
new lcncar[9]; // . LCN
new medicssf[9]; // . . SF
new armcar[43]; // . LVa
new gunscar[3]; // .
new grovecar[13]; // . Grove
new ballascar[12]; // . Ballas
new coronoscar[14]; // . Aztecs
new vagoscar[12]; // . Vagos
new rifacar[13]; // . Rifa
new arenda[MAX_VEHICLES]; // . .
new lsacar[20]; // . LSa
new hamccar[10]; // . .
new mysti; // .
new paint[3]; // .
new paintguns[4]; // .
new shop[6]; // . .
new victim[2]; // . .
new racepic[2]; // .
new lspic[3]; // LSN
new lvpic[2]; // LVN
new mayorpic; // .
new rmpic[2]; // . .
new addictionenter;
new addictionexit;
new lcnpic[2]; // LCN
new yakuzapic[2]; // Yacuza
new sfnewspic[4]; // SFN
new fracgunpic[5]; // . ? .
new fbi[6]; // FBI . /.
new lspd[6]; // LSPD
new sfpd[6]; // SFPD
new gangpic[5]; // Gangs
new lvpd[7]; // LVPD
new armijavhod;
new armijavihod;
new avtosh[4]; // .
new hallexit; // .
new hallenter[2]; // .
new bankpic[2]; // .
new ballasenter[2]; // Ballas
new rifaenter[2]; // Rifa
new lilprobeinn;
new vagospic[2]; // Vagos
new aztecpic[2]; // Aztecs
new PlayerMurder[MAX_PLAYERS];
new MurderPlayers = 0;
new task[MAX_PLAYERS];
new taskdone[MAX_PLAYERS];
new swat[2];
new tasker[MAX_PLAYERS];
new grove[2]; // Grove
new BigEar[MAX_PLAYERS];
new scar[3];
new autostealing;
new streetcar[15]; // Street Racers
new cashs; // .
new hitcar[7];
new dollar;
new clothes; // .
new skinshop[4]; // . .
new gunarm[2]; // . ? .
new zip[2]; // . .
new zone[2]; // LVa
new warehousearmy[4];
new freeze[MAX_PLAYERS]; // .
new Ubka[MAX_PLAYERS]; // .
new Ubka2[MAX_PLAYERS];
new Ubka3[MAX_PLAYERS];
new Ubka4[MAX_PLAYERS]; // .
new Vozduh[MAX_PLAYERS];
new Vozduh2[MAX_PLAYERS]; // .
new Gluh[MAX_PLAYERS];
new Gluh2[MAX_PLAYERS]; // .
new Float: Fuell[MAX_VEHICLES]; // .
enum nInfo
<
nLcn, // LCN
nYakuza, // Yacuza
nRm // . .
>;
enum fInfo
<
fLsnews, // LSN
fSfnews, // SFN
fLvnews, // LVN
fBallas, // Ballas
fVagos, // Vagos
fGrove, // Grove
fAztek, // Aztecs
fRifa, // Rifa
fKazna, // .
fHamc, // .
>;
new MafiaBank[1][nInfo]; // . .
new FracBank[1][fInfo]; // . .
enum bInfo
<
bOwned,
bOwner[64],
bMessage[256],
bExtortion[MAX_PLAYER_NAME],
Float: bEntranceX,
Float: bEntranceY,
Float: bEntranceZ,
Float: bExitX,
Float: bExitY,
Float: bExitZ,
bBuyPrice,
bZahvat,
bEntranceCost,
bTill,
bLocked,
bInterior,
bProducts,
bMaxProducts,
bPriceProd,
Text3D: bLabel,
b2Till,
bPrice,
Float: bBarX,
Float: bBarY,
Float: bBarZ,
bMafia,
bCapture
>;
new BizzInfo[19][bInfo]; // .
enum sbInfo
<
sbOwned,
sbOwner[64],
sbMessage[256],
Float:sbEntranceX,
Float:sbEntranceY,
Float:sbEntranceZ,
sbLevelNeeded,
sbBuyPrice,
sbEntranceCost,
sbPrice,
sbTill,
s2bTill,
sbLocked,
sbInterior,
sbProducts,
sbMafia,
sbPriceProd,
Text3D: sbLabel
>;
new SBizzInfo[11][sbInfo]; // .
new Text: ModelShow[MAX_PLAYERS]; // .
new Text: SpeedShow[MAX_PLAYERS]; // .
new Text: HealthShow[MAX_PLAYERS]; // .
new Text: FuelShow[MAX_PLAYERS]; // .
new dostup[MAX_PLAYERS]; // . -.
new Dostup[MAX_PLAYERS]; // . -.
new Kapot[MAX_PLAYERS];
new Kapot2[MAX_PLAYERS]; // .
new Far[MAX_PLAYERS];
new Far2[MAX_PLAYERS];// .
new Text: StatusShow[MAX_PLAYERS]; // .
new Text: EngineShow[MAX_PLAYERS]; // .
new PlayerText: privcar[MAX_PLAYERS]; // .
new SpeedoTimer; // .
new str1[64]; // .
new str2[64]; // .
new str3[64]; // .
new str4[64]; // .
new str5[64]; // .
new str6[64]; // .
new Text: Box[1]; // .
new Float: RandomTrashRoot[][3] = // . .
<
<2105.2805,-1806.5771,13.5547>,
<-1721.1195,1359.7371,7.1853>,
<-1808.5029,945.5192,24.8906>,
<2083.4275,2224.5137,11.0234>,
<2351.9424,2533.4480,10.8203>,
<2756.7314,2477.3457,11.0625>,
<2638.6826,1849.7474,11.0234>,
<203.3442,-202.2144,1.5781>,
<2332.0339,75.0940,26.6210>
>;
new LessonCar[MAX_PLAYERS]; // .
new LessonStat[MAX_PLAYERS]; // .
new pLessonCar[MAX_PLAYERS]; // .
enum
<
CHECKPOINT_1,
CHECKPOINT_2,
CHECKPOINT_3,
CHECKPOINT_4,
CHECKPOINT_5,
CHECKPOINT_6,
CHECKPOINT_7,
CHECKPOINT_8,
CHECKPOINT_9,
CHECKPOINT_10,
CHECKPOINT_11,
CHECKPOINT_13,
CHECKPOINT_14,
CHECKPOINT_15,
CHECKPOINT_16,
CHECKPOINT_17,
CHECKPOINT_18,
CHECKPOINT_19,
CHECKPOINT_20,
CHECKPOINT_21,
CHECKPOINT_22,
CHECKPOINT_23,
CHECKPOINT_24,
CHECKPOINT_25,
CHECKPOINT_26,
CHECKPOINT_27,
CHECKPOINT_28,
CHECKPOINT_29,
CHECKPOINT_30,
CHECKPOINT_31,
CHECKPOINT_32,
CHECKPOINT_33,
CHECKPOINT_34,
CHECKPOINT_35,
CHECKPOINT_36,
CHECKPOINT_37,
CHECKPOINT_38,
CHECKPOINT_40,
CHECKPOINT_41,
CHECKPOINT_42,
CHECKPOINT_43,
CHECKPOINT_44,
CHECKPOINT_45,
CHECKPOINT_46,
CHECKPOINT_47,
CHECKPOINT_48,
CHECKPOINT_49,
CHECKPOINT_50,
CHECKPOINT_51,
CHECKPOINT_52,
CHECKPOINT_53,
CHECKPOINT_54,
CHECKPOINT_55,
CHECKPOINT_56,
CHECKPOINT_57,
CHECKPOINT_58,
CHECKPOINT_59,
CHECKPOINT_60,
CHECKPOINT_61,
CHECKPOINT_62,
CHECKPOINT_63,
CHECKPOINT_64,
CHECKPOINT_65,
CHECKPOINT_66
>
new pAutoBusLS[MAX_PLAYERS]; // . .
enum
<
CHECKPOINT_1,
CHECKPOINT_2,
CHECKPOINT_3,
CHECKPOINT_4,
CHECKPOINT_5,
CHECKPOINT_6,
CHECKPOINT_7,
CHECKPOINT_8,
CHECKPOINT_9,
CHECKPOINT_10,
CHECKPOINT_11,
CHECKPOINT_13,
CHECKPOINT_14,
CHECKPOINT_15,
CHECKPOINT_16,
CHECKPOINT_17,
CHECKPOINT_18,
CHECKPOINT_19,
CHECKPOINT_20,
CHECKPOINT_21,
CHECKPOINT_22,
CHECKPOINT_23,
CHECKPOINT_24,
CHECKPOINT_25,
CHECKPOINT_26,
CHECKPOINT_27,
CHECKPOINT_28,
CHECKPOINT_29,
CHECKPOINT_30,
CHECKPOINT_31,
CHECKPOINT_32,
CHECKPOINT_33,
CHECKPOINT_34,
CHECKPOINT_35,
CHECKPOINT_36,
CHECKPOINT_37,
CHECKPOINT_38,
CHECKPOINT_40,
CHECKPOINT_41,
CHECKPOINT_42,
CHECKPOINT_43,
CHECKPOINT_44,
CHECKPOINT_45,
CHECKPOINT_46,
CHECKPOINT_47,
CHECKPOINT_48,
CHECKPOINT_49,
CHECKPOINT_50,
CHECKPOINT_51,
CHECKPOINT_52,
CHECKPOINT_53,
CHECKPOINT_54,
CHECKPOINT_55,
CHECKPOINT_56,
CHECKPOINT_57,
CHECKPOINT_58,
CHECKPOINT_59,
CHECKPOINT_60,
CHECKPOINT_61,
CHECKPOINT_62,
CHECKPOINT_63,
CHECKPOINT_64,
CHECKPOINT_65,
CHECKPOINT_66,
CHECKPOINT_67,
CHECKPOINT_68,
CHECKPOINT_69,
CHECKPOINT_70,
CHECKPOINT_71,
CHECKPOINT_72,
CHECKPOINT_73,
CHECKPOINT_74,
CHECKPOINT_75,
CHECKPOINT_76,
CHECKPOINT_77,
CHECKPOINT_78,
CHECKPOINT_79,
CHECKPOINT_80,
CHECKPOINT_81,
CHECKPOINT_82,
CHECKPOINT_83,
CHECKPOINT_84,
CHECKPOINT_85,
CHECKPOINT_86,
CHECKPOINT_87,
CHECKPOINT_88,
CHECKPOINT_89,
CHECKPOINT_90,
CHECKPOINT_91,
CHECKPOINT_92,
CHECKPOINT_93,
CHECKPOINT_94,
CHECKPOINT_95,
CHECKPOINT_96,
CHECKPOINT_97,
CHECKPOINT_98,
CHECKPOINT_99,
CHECKPOINT_100,
CHECKPOINT_101,
CHECKPOINT_103,
CHECKPOINT_104,
CHECKPOINT_105,
CHECKPOINT_106,
CHECKPOINT_107,
CHECKPOINT_108,
CHECKPOINT_109,
CHECKPOINT_110,
CHECKPOINT_111,
CHECKPOINT_112,
CHECKPOINT_113,
CHECKPOINT_114,
CHECKPOINT_115,
CHECKPOINT_116,
CHECKPOINT_117,
CHECKPOINT_118,
CHECKPOINT_119,
CHECKPOINT_120,
CHECKPOINT_121,
CHECKPOINT_122,
CHECKPOINT_123,
CHECKPOINT_124,
CHECKPOINT_125,
CHECKPOINT_126,
CHECKPOINT_127,
CHECKPOINT_128,
CHECKPOINT_129,
CHECKPOINT_130,
CHECKPOINT_131,
CHECKPOINT_132
>
new pAutoBusSF[MAX_PLAYERS]; // . .
enum
<
CHECKPOINT_1,
CHECKPOINT_2,
CHECKPOINT_3,
CHECKPOINT_4,
CHECKPOINT_5,
CHECKPOINT_6,
CHECKPOINT_7,
CHECKPOINT_8,
CHECKPOINT_9,
CHECKPOINT_10,
CHECKPOINT_11,
CHECKPOINT_13,
CHECKPOINT_14,
CHECKPOINT_15,
CHECKPOINT_16,
CHECKPOINT_17,
CHECKPOINT_18,
CHECKPOINT_19,
CHECKPOINT_20,
CHECKPOINT_21,
CHECKPOINT_22,
CHECKPOINT_23,
CHECKPOINT_24,
CHECKPOINT_25,
CHECKPOINT_26,
CHECKPOINT_27,
CHECKPOINT_28,
CHECKPOINT_29,
CHECKPOINT_30,
CHECKPOINT_31,
CHECKPOINT_32,
CHECKPOINT_33,
CHECKPOINT_34,
CHECKPOINT_35,
CHECKPOINT_36,
CHECKPOINT_37,
CHECKPOINT_38,
CHECKPOINT_40,
CHECKPOINT_41,
CHECKPOINT_42,
CHECKPOINT_43,
CHECKPOINT_44,
CHECKPOINT_45,
CHECKPOINT_46,
CHECKPOINT_47,
CHECKPOINT_48,
CHECKPOINT_49,
CHECKPOINT_50,
CHECKPOINT_51,
CHECKPOINT_52,
CHECKPOINT_53,
CHECKPOINT_54,
CHECKPOINT_55,
CHECKPOINT_56,
CHECKPOINT_57,
CHECKPOINT_58,
CHECKPOINT_59,
CHECKPOINT_60,
CHECKPOINT_61,
CHECKPOINT_62,
CHECKPOINT_63,
CHECKPOINT_64,
CHECKPOINT_65,
CHECKPOINT_66,
CHECKPOINT_67,
CHECKPOINT_68,
CHECKPOINT_69,
CHECKPOINT_70,
CHECKPOINT_71,
CHECKPOINT_72,
CHECKPOINT_73
>
new pAutoBusLV[MAX_PLAYERS]; // . .
enum
<
CHECKPOINT_1,
CHECKPOINT_2,
CHECKPOINT_3,
CHECKPOINT_4,
CHECKPOINT_5,
CHECKPOINT_6,
CHECKPOINT_7,
CHECKPOINT_8,
CHECKPOINT_9,
CHECKPOINT_10,
CHECKPOINT_11,
CHECKPOINT_13,
CHECKPOINT_14,
CHECKPOINT_15,
CHECKPOINT_16,
CHECKPOINT_17,
CHECKPOINT_18,
CHECKPOINT_19,
CHECKPOINT_20,
CHECKPOINT_21,
CHECKPOINT_22,
CHECKPOINT_23,
CHECKPOINT_24,
CHECKPOINT_25,
CHECKPOINT_26,
CHECKPOINT_27,
CHECKPOINT_28,
CHECKPOINT_29,
CHECKPOINT_30,
CHECKPOINT_31,
CHECKPOINT_32,
CHECKPOINT_33,
CHECKPOINT_34,
CHECKPOINT_35,
CHECKPOINT_36,
CHECKPOINT_37,
CHECKPOINT_38,
CHECKPOINT_40,
CHECKPOINT_41,
CHECKPOINT_42,
CHECKPOINT_43,
CHECKPOINT_44,
CHECKPOINT_45,
CHECKPOINT_46,
CHECKPOINT_47,
CHECKPOINT_48,
CHECKPOINT_49,
CHECKPOINT_50,
CHECKPOINT_51,
CHECKPOINT_52,
CHECKPOINT_53,
CHECKPOINT_54,
CHECKPOINT_55,
CHECKPOINT_56,
CHECKPOINT_57,
CHECKPOINT_58,
CHECKPOINT_59,
CHECKPOINT_60,
CHECKPOINT_61,
CHECKPOINT_62,
CHECKPOINT_63,
CHECKPOINT_64,
CHECKPOINT_65,
CHECKPOINT_66,
CHECKPOINT_67,
CHECKPOINT_68,
CHECKPOINT_69,
CHECKPOINT_70
>
new pAutoBusReis1[MAX_PLAYERS]; // . .
enum
<
CHECKPOINT_1,
CHECKPOINT_2,
CHECKPOINT_3,
CHECKPOINT_4,
CHECKPOINT_5,
CHECKPOINT_6,
CHECKPOINT_7,
CHECKPOINT_8,
CHECKPOINT_9,
CHECKPOINT_10,
CHECKPOINT_11,
CHECKPOINT_13,
CHECKPOINT_14,
CHECKPOINT_15,
CHECKPOINT_16,
CHECKPOINT_17,
CHECKPOINT_18,
CHECKPOINT_19,
CHECKPOINT_20,
CHECKPOINT_21,
CHECKPOINT_22,
CHECKPOINT_23,
CHECKPOINT_24,
CHECKPOINT_25,
CHECKPOINT_26,
CHECKPOINT_27,
CHECKPOINT_28,
CHECKPOINT_29,
CHECKPOINT_30,
CHECKPOINT_31,
CHECKPOINT_32,
CHECKPOINT_33,
CHECKPOINT_34,
CHECKPOINT_35,
CHECKPOINT_36,
CHECKPOINT_37,
CHECKPOINT_38,
CHECKPOINT_40,
CHECKPOINT_41,
CHECKPOINT_42,
CHECKPOINT_43,
CHECKPOINT_44,
CHECKPOINT_45,
CHECKPOINT_46,
CHECKPOINT_47,
CHECKPOINT_48,
CHECKPOINT_49,
CHECKPOINT_50,
CHECKPOINT_51,
CHECKPOINT_52,
CHECKPOINT_53
>
new pAutoBusReis2[MAX_PLAYERS]; // . .
enum
<
CHECKPOINT_1,
CHECKPOINT_2,
CHECKPOINT_3,
CHECKPOINT_4,
CHECKPOINT_5,
CHECKPOINT_6,
CHECKPOINT_7,
CHECKPOINT_8,
CHECKPOINT_9,
CHECKPOINT_10,
CHECKPOINT_11,
CHECKPOINT_13,
CHECKPOINT_14,
CHECKPOINT_15,
CHECKPOINT_16,
CHECKPOINT_17,
CHECKPOINT_18,
CHECKPOINT_19,
CHECKPOINT_20,
CHECKPOINT_21,
CHECKPOINT_22,
CHECKPOINT_23,
CHECKPOINT_24,
CHECKPOINT_25,
CHECKPOINT_26,
CHECKPOINT_27,
CHECKPOINT_28,
CHECKPOINT_29,
CHECKPOINT_30,
CHECKPOINT_31,
CHECKPOINT_32,
CHECKPOINT_33,
CHECKPOINT_34,
CHECKPOINT_35,
CHECKPOINT_36,
CHECKPOINT_37,
CHECKPOINT_38,
CHECKPOINT_40,
CHECKPOINT_41,
CHECKPOINT_42,
CHECKPOINT_43,
CHECKPOINT_44,
CHECKPOINT_45,
CHECKPOINT_46
>
new Float: PaintballSpawns[6][3] = // .
<
<2563.6877,2807.0288,10.8203>,
<2554.0505,2837.7419,10.8203>,
<2585.6748,2848.5283,10.8203>,
<2598.7083,2843.5200,10.8203>,
<2546.7622,2830.9004,14.2559>,
<2575.9900,2839.3103,19.9922>
>;
new Float: RaceSpawns[14][3] = // .
<
<1473.0309,-2505.8330,13.2597>,
<1473.1139,-2501.6311,13.2597>,
<1473.2007,-2497.2439,13.2597>,
<1473.3285,-2490.7598,13.2597>,
<1473.4164,-2486.2935,13.2597>,
<1473.5006,-2482.0027,13.2597>,
<1490.8593,-2482.3445,13.2484>,
<1490.7758,-2486.5725,13.2484>,
<1490.6914,-2490.8496,13.2484>,
<1490.5592,-2497.5369,13.2484>,
<1490.4742,-2501.8625,13.2484>,
<1490.3927,-2505.9998,13.2484>,
<1506.5397,-2495.6602,13.2180>,
<1506.5789,-2492.1836,13.2180>
>;
new Float: race[23][3] = // .
<
<1706.8019,-2493.8806,13.2008>,
<1865.0568,-2493.7917,13.2430>,
<2004.5333,-2493.7129,13.2456>,
<2109.2900,-2541.4619,13.2298>,
<2057.6487,-2593.3159,13.2232>,
<1929.6129,-2593.5879,13.0613>,
<1772.9764,-2593.6741,13.2390>,
<1615.5470,-2593.7671,13.2563>,
<1487.0261,-2593.8442,13.2154>,
<1423.5560,-2548.9268,13.2454>,
<1453.1705,-2493.9058,13.2210>,
<1706.8019,-2493.8806,13.2008>,
<1865.0568,-2493.7917,13.2430>,
<2004.5333,-2493.7129,13.2456>,
<2109.2900,-2541.4619,13.2298>,
<2057.6487,-2593.3159,13.2232>,
<1929.6129,-2593.5879,13.0613>,
<1772.9764,-2593.6741,13.2390>,
<1615.5470,-2593.7671,13.2563>,
<1487.0261,-2593.8442,13.2154>,
<1423.5560,-2548.9268,13.2454>,
<1427.6746,-2461.2737,13.2599>,
< >
>;
new tachki[] = // .
<
402,
411,
415,
429,
434,
439,
451,
475,
477,
480,
494,
495,
496,
502,
503,
504,
506,
535,
541,
555,
558,
559,
560,
562,
565,
568,
571,
587,
589,
602,
603
>;
new paintgun[] = // .
<
24,
31,
30,
25,
29,
23
>;
new RulesMSG[17][] = // .
<
<«1. . . n»>,
<«. n»>,
<«<00BFFF>. . . . . . . . . ? . n»>,
<«<00BFFF>. . (. . . <00bfff>).n»>,
<«<00BFFF>. ESC <00bfff>? . . ?? . /. n»>,
<«<00BFFF>. . ?? . (. . . . <00bfff>).n»>,
<«<00BFFF>. . . . . (. . ? . . <00bfff>).n»>,
<«<00BFFF>. /. . . . . . (?? — Death Match<00bfff>).n»>,
<«<00BFFF>. . . . . . . nn»>,
<«2. . ? . n»>,
<«<00BFFF>(. . . . /mm >> . . )n»>,
<«<00BFFF>. . . ?? . _. ? . . n»>,
<«. n»>,
<«<00BFFF>. . . (. . -?? . <00bfff>) . n»>,
<«<00BFFF>. . . . . . . . n»>,
<«<00BFFF>. . . . ? . (. . . <00bfff>).n»>,
<«<00BFFF>. . . ? . . . . n»> >;
new RulesMSGG[22][] = <
<«3. . n»>,
<«<00BFFF>OOC (Out Of Charter<00bfff>) — . . . . . . n»>,
<«<00BFFF>IC (In Charter<00bfff>) — . . . . . . ?? . . n»>,
<«. n»>,
<«<00BFFF>. . . . . n»>,
<«<00BFFF>. . (?? . ? . . <00bfff>).n»>,
<«<00BFFF>. . ? . . (Caps Lock<00bfff>).n»>,
<«<00BFFF>. ? . . . ?? . ? Role Play<00bfff>.n»>,
<«<00BFFF>. . ? . . . . n»>,
<«<00BFFF>. . . . n»>,
<«<00BFFF>. . . nn»>,
<«4. . . n»>,
<«<00BFFF>. . . ? . . . ?? . . (/mm > . )<00bfff>.n»>,
<«<00BFFF>. . . . . . . ?? . n»>,
<«<00BFFF>. . . ? . n»>,
<«<00BFFF>. . . . ? ?? . . nn»>,
<«5. . n»>,
<«<00BFFF>. . . . n»>,
<«<00BFFF>. . / . . . ?? . . n»>,
<«<00BFFF>. . . . ? . . ?? . n»>,
<«<00BFFF>. . . . . . . n»>,
<«<00BFFF>. . / . . n»>
>;
enum pInfo
<
pDrugtime, // .
pVoennik, // . .
pNarkoZavisimost, // .
pLevel, // .
pFermajob, // .
pAdmin, // .
pHelper, // .
pPasport, // .
pPlaceJail, // .
Float: pIp, // IP
pFerma, // .
pFermazarobotok, // .
pColor, // . . ?1
pColor1,
pColor3,
pColor4, // . . ?2
Float: pIpReg, // IP . .
pHousecash, // .
pPhousekey, // .
pKolesa, // .
pGidra, // .
pCheckip, // IP
pDonateMoney, // .
pKeyip, // . .
pHP, // .
pDataReg, // . .
pCar,
pCar2, // .
Float: pFuelCar, // .
pProcents, // . .
pDonateRank, // . .
pReg, // . ?? .
pMaterials, // .
pSex, // .
pVhodMes,
pVhodchas,
pVhodminute,
pCarLic, // . .
pBisLic, // . ?? .
pGunLic, // . ?? .
pArrested, // .
pMuted, // . .
pExp, // EXP
pKills, // .
pCash, // .
pBan, // .
pDostup, // . -.
pDeaths, // .
pWantedDeaths, // .
pPayCheck, // . .
pJailed, // .
pJailTime, // .
pDrugs, // .
pLeader, // .
pMember, // .
pRank, // .
pChar, // .
pJob, // .
pInt, // .
pLocal,
pModel, // . .
pPnumber, // . .
pDirectory, // . .
pVhoddata,
pFlyLic, // . ?? .
pBoatLic, // . ?? .
pNkeys, // .
pPHousekey, // .
pPBiskey, // .
pLabiding,
pTut, // .
pWarns, // .
pAdmwarn,
pFuel, // .
pRadio, // .
pMuteTime, // . . .
pBank, // . ? .
pMotLic, // . ?? .
pKapot, // .
pMobile, // . ?? .
pDebt, // .
pMafiaRoof, // . ? . ? .
pUseMafiaRoof, // . .
pWantedLevel, // . .
SalonCar,
SalonTime,
pSlot[13], // . .
pSlotammo[13], // . .
pGunSkill[6], // . .
pDesertEagle, // Deagle
pMP5, // MP5
pAK47, // AK-47
pM4, // M4
pShotGun, // ShotGun
pGunFbiTime, // . FBI .
pGunLspdTime, // . LSPD .
pGunSfpdTime, // . SFPD .
pGunLvpdTime, // . LVPD .
pAdvertTime, // . .
pGunaSfaTime, // . SFa .
pGunaLvaTime, // . LVa .
pGunaLsaTime, // . LSa .
pGunMayorTime, // . . .
pGunSwatTime,
pPaintJob, // . ?? .
pSpoiler, // .
pFar, // .
pUbka, // .
pUbka2, // .
pVozduh, // .
pGluh, // .
pBumper1, // .
pBumper2, // .
pNitro,
pPaintJob2, // . ?? .
pSpoiler2, // .
pFar2, // .
pUbka3, // .
pUbka4, // .
pVozduh2, // .
pGluh2, // .
pBumper3, // .
pBumper4,
pKolesa2, // .
pGidra2, // .
pNitro2,
pKapot2,// .
pAdminKey, // ADMIN KEY
pHeadValue,
Float:CarX,
Float:CarY,
Float:CarZ,
Float:CarC
>;
/*
AddVehicleComponent(caridhouse[playerid], PlayerInfo[playerid][pKolesa]);
AddVehicleComponent(caridhouse[playerid], PlayerInfo[playerid][pNitro]);
AddVehicleComponent(caridhouse[playerid], PlayerInfo[playerid][pGidra]);
AddVehicleComponent(caridhouse[playerid], PlayerInfo[playerid][pVozduh]);
AddVehicleComponent(caridhouse[playerid], PlayerInfo[playerid][pGluh]);
AddVehicleComponent(caridhouse[playerid], PlayerInfo[playerid][pKapot]);
AddVehicleComponent(caridhouse[playerid], PlayerInfo[playerid][pFar]);
if(PJ(caridhouse[playerid]))
<
ChangeVehiclePaintjob(caridhouse[playerid], PlayerInfo[playerid][pPaintJob]);
AddVehicleComponent(caridhouse[playerid], PlayerInfo[playerid][pSpoiler]);
AddVehicleComponent(caridhouse[playerid], PlayerInfo[playerid][pBumper1]);
AddVehicleComponent(caridhouse[playerid], PlayerInfo[playerid][pBumper2]);
AddVehicleComponent(caridhouse[playerid], PlayerInfo[playerid][pUbka]);
AddVehicleComponent(caridhouse[playerid], PlayerInfo[playerid][pUbka2]);
>
*/ //TYT //.
stock PrintSBizInfo(playerid,targetid)
<
if(IsPlayerConnected(playerid))
<
new elektrich = SBizzInfo[targetid][sbBuyPrice] / 1000;
new mafiatext[7];
new text1[7];
new text2[11];
new bizinfo[400];
if(SBizzInfo[targetid][sbMafia] == 6) mafiatext = «Yakuza»;
else if(SBizzInfo[targetid][sbMafia] == 14) mafiatext = «RM»;
else if(SBizzInfo[targetid][sbMafia] == 5) mafiatext = «LCN»;
else if(SBizzInfo[targetid][sbMafia] == 0) mafiatext = «. «;
if(SBizzInfo[targetid][sbLocked]) text1 = «. «;
else text1 = «. «;
if(PlayerInfo[playerid][pBisLic]) text2 = «. «;
else text2 = «. «;
format(bizinfo,sizeof(bizinfo), «======================[ %s ]======================n. . %sn. . %d . t? . . . %d . n. %d/20000n. ?? . %d . n. . %d . n. %sn. . . . . %d . n. ?? . %d . n. %s»,
SBizzInfo[targetid][sbMessage],mafiatext,SBizzInfo[targetid][sbTill],SBizzInfo[targetid][s2bTill],SBizzInfo[targetid][sbProducts], SBizzInfo[targetid][sbPrice],SBizzInfo[targetid][sbPriceProd],text1,SBizzInfo[targetid][sbTill],elektrich, text2);
SPD(playerid,10349,DIALOG_STYLE_MSGBOX, «<00bfff>•. . <00bfff>•»,bizinfo, «$», «$»);
>
>
stock PrintBizInfo(playerid,targetid)
<
if(IsPlayerConnected(playerid))
<
for(new h = 0; h gettime()) return GameTextForPlayer(playerid,»Loading. «,1000,3);
SetPVarInt(playerid, «SelectAvto», GetPVarInt(playerid, «SelectAvto») +1);
switch(GetPVarInt(playerid,»CarShop»))
<
case 0:if(GetPVarInt(playerid, «SelectAvto») >= 19) SetPVarInt(playerid, «SelectAvto», 0);//nope
case 1:if(GetPVarInt(playerid, «SelectAvto») >= 38) SetPVarInt(playerid, «SelectAvto», 20);//c
case 2:if(GetPVarInt(playerid, «SelectAvto») >= 56) SetPVarInt(playerid, «SelectAvto», 39);//d
case 3:if(GetPVarInt(playerid, «SelectAvto») >= 85) SetPVarInt(playerid, «SelectAvto», 72);//a
case 4:if(GetPVarInt(playerid, «SelectAvto») >= 71) SetPVarInt(playerid, «SelectAvto», 57);//b
>
return ShowingCar(playerid);
>
stock BackCar(playerid)
<
if(PlayerInfo[playerid][SalonTime] > gettime()) return GameTextForPlayer(playerid,»Loading. «,1000,3);
SetPVarInt(playerid, «SelectAvto», GetPVarInt(playerid, «SelectAvto»)-1);
switch(GetPVarInt(playerid,»CarShop»))
<
case 0:if(GetPVarInt(playerid, «SelectAvto») = 126) SetPVarInt(playerid,»BuyColor»,0);
if(GetPVarInt(playerid,»BuyColor1″) >= 126) SetPVarInt(playerid,»BuyColor1″,0);
ChangeVehicleColor(GetPlayerVehicleID(playerid),GetPVarInt(playerid,»BuyColor»),GetPVarInt(playerid, «BuyColor1»));
new string[128];
format(string,sizeof(string),»
Источник
Стаж: 9 лет 1 месяц
Сообщений: 15547
Благодарностей: 6971
Полезность: 1206
narkk3, amxx 1.8.2? Если да, пробуй так:
Код:
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#include <orpheu>
#include <nvault>
#include <colorchat>#pragma semicolon 1
#define get_bit(%1,%2) (%1 & (1 << (%2 & 31)))
#define set_bit(%1,%2) %1 |= (1 << (%2 & 31))
#define clr_bit(%1,%2) %1 &= ~(1 << (%2 & 31))
#define inv_bit(%1,%2) %1 ^= (1 << (%2 & 31))#define is_client(%0) (0 < (%0) <= max_players)
#define is_connected(%0) get_bit(ingame, %0)
#define is_alive(%0) is_user_alive(%0)
#define is_valid_client(%0) (is_client(%0) && is_connected(%0))
#define is_observer(%0) pev(%0, pev_iuser1)
#define is_vip(%0) (user_flags[%0] & _VIP)
#define is_admin(%0) (user_flags[%0] & _ADMIN)
#define is_spectator(%0) (user_team[%0] == TEAM_SPECTATOR)#define PC PLUGIN_CONTINUE
#define PH PLUGIN_HANDLED
#define PH_MAIN PLUGIN_HANDLED_MAIN#define printf_chat client_print_color
#define is_said_slash_mute (said[0] == '/' && said[1] == 'm' && said[2] == 'u' && said[3] == 't' && said[4] == 'e')const MAX_CLIENTS = 32;
const NAME_LEN = 32;
const MSG_LEN = 191;
const ITEM_LEN = 128;
const ALL = 0;
const LOAD = 1;
const SAVE = 0;
const AUTH_LEN = 34;
const IP_LEN = 16;
const POST = 1;
const PRE = 0;const m_iMenu = 205;
const MENU_OFF = 0;const _IMMUNITY = ADMIN_IMMUNITY; // flag a
const _ADMIN = ADMIN_BAN; // flag d
const _MAIN_ADMIN = ADMIN_RCON; // flag l
const _VIP = ADMIN_LEVEL_H; // flag tconst LOAD_FLAGS_TASKID = 344733;
const MAX_GAGTIME_AGO = -1800; //время в секундах после которого запись в gag.vault будет считаться устаревшей
new const Float: GAG_TIME[] = {300.0, 600.0, 1200.0, 1800.0, 2700.0, 3600.0, 10800.0, 43200.0, 86400.0}; //время бана в секундах, через запятую можно добавить ещеenum
{
TEAM_UNASSIGNED = 0,
TEAM_TERRORIST = 1,
TEAM_CT = 2,
TEAM_SPECTATOR = 3
}enum menu_prop
{
BACKNAME = 0,
NEXTNAME,
EXITNAME
}stock const MENU_PROP_LIST[menu_prop][] = {
"Назад",
"След.",
"Выход"
};stock const PLAYER[] = "player";
stock const PL_LEAVED[] = "Игрок покинул сервер";
stock const CHAT_INFO_PREFIX[] = "^3[Информация]^1";stock user_team [MAX_CLIENTS + 1],
user_flags [MAX_CLIENTS + 1],
user_name [MAX_CLIENTS + 1][NAME_LEN],
user_steamid[MAX_CLIENTS + 1][AUTH_LEN],
user_ip [MAX_CLIENTS + 1][IP_LEN];stock item_name[128], item_info[2], item_status, said[MSG_LEN],
max_players, players_num, ingame, isAlive, gmsgTeamInfo,fpv_gag,
is_gagged_by_admin, is_gagged_chat, is_voice_team, is_voice_vip,
is_gagged[MAX_CLIENTS + 1], gag_data[MAX_CLIENTS + 1], hso_voice,
Float: ungag_time[MAX_CLIENTS + 1], Float: can_speak_after_death_time[MAX_CLIENTS + 1],
Float: auth_delay_load_flags, pcv_auth_delay_load_flags,
Float: block_voice_delay, pcv_can_speak_after_death_delay,
sv_alltalk, pcv_alltalk,
alive_listen_dead, pcv_alive_listen_dead,
dead_listen_dead, pcv_dead_listen_dead,
player_listen_enemy, pcv_player_listen_enemy,
admin_listen_mode, pcv_admin_listen_mode;native gag_menu_display(id);
public plugin_natives()
{
register_native("gag_menu_display", "_gag_menu_display");
}public plugin_init()
{
register_plugin ("Gag Me", "1.0", "Free");
register_srvcmd ("amx_reloadcvars", "load_cvars");fpv_gag = nvault_open("gag");
if (fpv_gag == INVALID_HANDLE) {
set_fail_state("Error opening file: /cstrike/addons/amxmodx/data/vault/gag.vault");
}register_clcmd ("+voiceteam", "clcmd_voiceteam_plus");
register_clcmd ("-voiceteam", "clcmd_voiceteam_minus");
register_clcmd ("+voicevip", "clcmd_voicevip_plus");
register_clcmd ("-voicevip", "clcmd_voicevip_minus");register_clcmd ("say", "hook_say");
register_clcmd ("say_team", "hook_say");
register_clcmd ("amx_gagmenu", "clcmd_gagmenu");RegisterHam (Ham_Spawn, PLAYER, "player_Spawn_Post", POST);
RegisterHam (Ham_Killed, PLAYER, "player_Killed_Post", POST);hso_voice = CreateHudSyncObj();
gmsgTeamInfo = get_user_msgid ("TeamInfo");
register_message (gmsgTeamInfo, "msg_TeamInfo");register_forward (FM_SetClientKeyValue, "fwd_FM_SetClientKeyValue", PRE);
OrpheuRegisterHook(OrpheuGetFunction("Voice_SetClientListening"), "Voice_SetClientListening");max_players = get_maxplayers();
}public plugin_cfg()
{
load_cvars();
}public load_cvars()
{
static is_cvars_registered;if (!is_cvars_registered) {
pcv_auth_delay_load_flags = register_cvar ("auth_delay_load_flags" , "0.0");
pcv_can_speak_after_death_delay = register_cvar ("can_speak_after_death_delay", "5.0");pcv_alive_listen_dead = register_cvar ("alive_listen_dead" , "0");
pcv_dead_listen_dead = register_cvar ("dead_listen_dead" , "1");
pcv_player_listen_enemy = register_cvar ("player_listen_enemy" , "1");
pcv_admin_listen_mode = register_cvar ("admin_listen_mode" , "2");pcv_alltalk = get_cvar_pointer ("sv_alltalk");
is_cvars_registered = 1;
}server_exec();
auth_delay_load_flags = get_pcvar_float (pcv_auth_delay_load_flags);
block_voice_delay = get_pcvar_float (pcv_can_speak_after_death_delay);alive_listen_dead = get_pcvar_num (pcv_alive_listen_dead);
dead_listen_dead = get_pcvar_num (pcv_dead_listen_dead);
player_listen_enemy = get_pcvar_num (pcv_player_listen_enemy);
admin_listen_mode = get_pcvar_num (pcv_admin_listen_mode);sv_alltalk = get_pcvar_num(pcv_alltalk);
if (!sv_alltalk) {
set_pcvar_num(pcv_alltalk, 1);
}
}public client_putinserver(id)
{
clr_bit(is_gagged_by_admin, id);
clr_bit(is_gagged_chat, id);
clr_bit(isAlive, id);
clr_bit(is_voice_team, id);
clr_bit(is_voice_vip, id);is_gagged[id] = 0;
can_speak_after_death_time[id] = 0.0;players_num++;
set_bit(ingame, id);get_user_name (id, user_name[id], NAME_LEN - 1);
get_user_authid (id, user_steamid[id], AUTH_LEN - 1);
get_user_ip(id, user_ip[id], IP_LEN - 1, 1);if (auth_delay_load_flags > 0.0) {
set_task(auth_delay_load_flags, "delayed_load_flags", id + LOAD_FLAGS_TASKID);
}
else {
delayed_load_flags(id + LOAD_FLAGS_TASKID);
}
}public delayed_load_flags(id)
{
id -= LOAD_FLAGS_TASKID;if (is_valid_client(id)) {
user_flags[id] = get_user_flags(id);if (is_user_bot(id)) {
user_flags[id] |= _VIP;
}gag_vault(id, LOAD);
}
}public client_disconnect(id)
{
if (is_connected(id)) {
if (get_bit(is_gagged_by_admin, id)) {
gag_vault(id, SAVE);
}players_num--;
}clr_bit(ingame,id);
}public hook_say(id)
{
read_args (said, charsmax(said));
remove_quotes (said);if (said[0] == 0) {
return PH;
}if (get_bit(is_gagged_chat, id)) {
if (get_gametime() <= ungag_time[id]) {
printf_chat(id, print_team_default, "%s Вам запрещено писать в чат.", CHAT_INFO_PREFIX);
return PH;
}
else {
clr_bit(is_gagged_chat, id);
}
}if (is_said_slash_mute) {
return mute_menu (id);
}return PC;
}public player_Spawn_Post(id)
{
if (is_alive(id)) {
set_bit(isAlive, id);
}
}public player_Killed_Post(id, attacker, should_gib)
{
clr_bit(isAlive, id);can_speak_after_death_time[id] = get_gametime() + block_voice_delay;
}public OrpheuHookReturn: Voice_SetClientListening (listener, talker, can_hear)
{
if (listener != talker && is_valid_client(listener) && is_valid_client(talker)) {
if (!CanPlayerHearPlayer(listener, talker)) {
OrpheuSetParam(3, 0);
}
}
}bool: CanPlayerHearPlayer(listener, talker)
{
static listener_alive, talker_alive;if (get_bit(is_gagged_by_admin, talker)) {
if (get_gametime() <= ungag_time[talker]) {
return false;
}
else {
clr_bit(is_gagged_by_admin, talker);
}
}if (get_bit(is_gagged[listener], talker)) {
return false;
}if (admin_listen_mode == 1) {
if (is_admin(listener) || is_admin(talker)) {
return true;
}
}
else if (admin_listen_mode == 2) {
if (is_admin(listener) && is_spectator(listener)) {
return true;
}if (is_admin(talker) && is_spectator(talker)) {
return true;
}
}if (get_bit(is_voice_vip, talker) && is_vip(listener)) {
return true;
}listener_alive = get_bit(isAlive, listener);
talker_alive = get_bit(isAlive, talker);if (user_team[listener] != user_team[talker]) {
if (!player_listen_enemy && dead_listen_dead && !listener_alive && !talker_alive) {
return true;
}if (user_team[listener] == TEAM_CT && user_team[talker] == TEAM_TERRORIST) {
return (player_listen_enemy && !get_bit(is_voice_team, talker));
}if (user_team[listener] == TEAM_TERRORIST && user_team[talker] == TEAM_CT) {
return (player_listen_enemy && !get_bit(is_voice_team, talker));
}
}if (is_observer(listener)) {
return true;
}if (listener_alive) {
if (!talker_alive) {
return (alive_listen_dead || get_gametime() < can_speak_after_death_time[talker]);
}
}
else {
if (talker_alive) {
return true;
}
}return listener_alive && talker_alive;
}public clcmd_voiceteam_plus(id)
{
set_bit(is_voice_team, id);
client_cmd (id, "+voicerecord");return PH;
}public clcmd_voiceteam_minus(id)
{
clr_bit(is_voice_team, id);
client_cmd (id, "-voicerecord");return PH;
}public clcmd_voicevip_plus(id)
{
if (is_vip(id)) {
set_bit(is_voice_vip, id);
client_cmd (id, "+voicerecord");
}return PH;
}public clcmd_voicevip_minus(id)
{
if (is_vip(id)) {
clr_bit(is_voice_vip, id);
client_cmd (id, "-voicerecord");
}return PH;
}public msg_TeamInfo ()
{
static id, team_name_tmp[11];id = get_msg_arg_int(1);
get_msg_arg_string(2, team_name_tmp, charsmax(team_name_tmp));switch (team_name_tmp[0]) {
case 'T': user_team[id] = TEAM_TERRORIST;
case 'C': user_team[id] = TEAM_CT;
case 'S': user_team[id] = TEAM_SPECTATOR;
case 'U': user_team[id] = TEAM_UNASSIGNED;
}
}public fwd_FM_SetClientKeyValue(id, infobuffer[256], key[32], value[32])
{
#define is_key_name (key[0] == 'n' && key[1] == 'a' && key[2] == 'm' && key[3] == 'e')if (is_valid_client(id)) {
if (is_key_name && value[0]) {
copy(user_name[id], NAME_LEN - 1, value);
}
}
}
public clcmd_gagmenu(id)
{
return gag_menu(id);
}public _gag_menu_display(plugin_id, argc)
{
return gag_menu(get_param(1));
}gag_menu(id)
{
if (is_valid_client(id) && user_flags[id] & _ADMIN) {
new gag_menu_id = menu_create ("yЗаткнуть игрока","gag_menu_handler");static gag_menu_callback_id;
if (!gag_menu_callback_id) {
gag_menu_callback_id = menu_makecallback ("gag_menu_callback");
}menu_setprop (gag_menu_id, MPROP_BACKNAME, MENU_PROP_LIST[BACKNAME]);
menu_setprop (gag_menu_id, MPROP_NEXTNAME, MENU_PROP_LIST[NEXTNAME]);
menu_setprop (gag_menu_id, MPROP_EXITNAME, MENU_PROP_LIST[EXITNAME]);new user2;
if (!is_alive(id)) {
user2 = pev(id, pev_iuser2);
if (user2 && is_alive(user2)) {
item_info[0] = user2;
menu_additem (gag_menu_id, user_name[user2], item_info, 0, gag_menu_callback_id);
}
}
for (new i = 1; i <= max_players; ++i){
if(is_connected(i) && i != user2){
item_info[0] = i;
menu_additem (gag_menu_id, user_name[i], item_info, 0, gag_menu_callback_id);
}
}#if AMXX_VERSION_NUM < 183
set_pdata_int (id, m_iMenu, MENU_OFF);
#endif
menu_display (id, gag_menu_id);
}return PH;
}public gag_menu_callback (id, menu, item)
{
static access, callback, ITEM_STATUS, index;ITEM_STATUS = ITEM_ENABLED;
menu_item_getinfo (menu, item, access, item_info, charsmax(item_info), item_name, charsmax(item_name), callback);
index = item_info[0];if (id == index || !(user_flags[id] & _MAIN_ADMIN) && user_flags[index] & _IMMUNITY) {
formatex (item_name, charsmax(item_name), "%s r*", user_name[index]);
ITEM_STATUS = ITEM_DISABLED;
}
else if (get_bit(is_gagged_by_admin, index)) {
formatex (item_name, charsmax(item_name), "%s r[Молчун]", user_name[index]);
ITEM_STATUS = ITEM_ENABLED;
}
else if (user_flags[index] & _VIP) {
ITEM_STATUS = (user_flags[id] & (_ADMIN | _MAIN_ADMIN)) ? ITEM_ENABLED : ITEM_DISABLED;
}menu_item_setname (menu, item, item_name);
return ITEM_STATUS;
}public gag_menu_handler (id, menu, item) //изменить
{
static access, callback, index;if (item != MENU_EXIT) {
menu_item_getinfo (menu, item, access, item_info, charsmax(item_info), item_name, charsmax(item_name), callback);index = gag_data[id] = item_info[0];
if (is_valid_client(index)) {
if (get_bit(is_gagged_by_admin, index)) {
ungag_time[index] = 0.0;
clr_bit(is_gagged_by_admin, index);
printf_chat(ALL, print_team_default, "^4*^1 Администратор ^3%s ^1снял молчанку с ^3%s^1.", user_name[id], user_name[index]);
}
else {
gagtime_menu(id);
}
}
else {
printf_chat (id, print_team_default, PL_LEAVED);
}
}menu_destroy(menu);
return PH;
}gagtime_menu(id)
{
static gagtime_menu_id;if (is_valid_client(id)) {
if (!gagtime_menu_id) {
gagtime_menu_id = menu_create ("yВыберите времени молчанки", "gagtime_menu_handler");
menu_setprop (gagtime_menu_id, MPROP_EXITNAME, MENU_PROP_LIST[EXITNAME]);for (new i; i < sizeof GAG_TIME; ++i) {
formatex(item_name, charsmax(item_name), "%.0f минут", (GAG_TIME[i] / 60.0));
menu_additem (gagtime_menu_id, item_name);
}
}#if AMXX_VERSION_NUM < 183
set_pdata_int (id, m_iMenu, MENU_OFF);
#endif
menu_display (id, gagtime_menu_id);
}return PH;
}public gagtime_menu_handler (id, menu, item)
{
if (item != MENU_EXIT) {
ungag_time[gag_data[id]] = get_gametime() + GAG_TIME[item];
set_bit(is_gagged_by_admin, gag_data[id]);
set_bit(is_gagged_chat, gag_data[id]);
printf_chat(ALL, print_team_default, "^4*^1 Администратор %s заткнул %s на^3 %.0f^1 минут.", user_name[id], user_name[gag_data[id]], (GAG_TIME[item] / 60.0));
}return PH;
}gag_vault(id, mode)
{
static Float: ctime, sys_time, ungag_systime, ungag_systime_str[11];ctime = get_gametime();
sys_time = get_systime();if (mode == LOAD) {
ungag_systime = nvault_get (fpv_gag, user_steamid[id]);if (!ungag_systime) {
ungag_systime = nvault_get (fpv_gag, user_ip[id]);
}if (ungag_systime > sys_time) {
set_bit(is_gagged_by_admin, id);
set_bit(is_gagged_chat, id);
ungag_time[id] = ctime + float(ungag_systime - sys_time);
}
}
else {
ungag_systime = floatround(ungag_time[id] - ctime) + sys_time;if (ungag_systime > sys_time) {
num_to_str(ungag_systime, ungag_systime_str, charsmax(ungag_systime_str));
nvault_set (fpv_gag, user_steamid[id], ungag_systime_str);
nvault_set (fpv_gag, user_ip[id], ungag_systime_str);
}
}
}mute_menu (id)
{
if (is_valid_client(id)) {
if (players_num < 2) {
printf_chat (id, print_team_default, "%s На сервере менее 2х игроков", CHAT_INFO_PREFIX);
return PH;
}new mute_menu_id = menu_create ("yЗаглушить игрока","mute_menu_handler");
static mute_menu_callback_id;
if (!mute_menu_callback_id) {
mute_menu_callback_id = menu_makecallback ("mute_menu_callback");
}menu_setprop (mute_menu_id, MPROP_BACKNAME, MENU_PROP_LIST[BACKNAME]);
menu_setprop (mute_menu_id, MPROP_NEXTNAME, MENU_PROP_LIST[NEXTNAME]);
menu_setprop (mute_menu_id, MPROP_EXITNAME, MENU_PROP_LIST[EXITNAME]);new user2;
if (!is_alive(id)) {
user2 = pev(id, pev_iuser2);
if (user2 && is_alive(user2)) {
item_info[0] = user2;
menu_additem (mute_menu_id, user_name[user2], item_info, 0, mute_menu_callback_id);
}
}
for (new i = 1; i <= max_players; ++i){
if(is_connected(i) && i != id && i != user2){
item_info[0] = i;
menu_additem (mute_menu_id, user_name[i], item_info, 0, mute_menu_callback_id);
}
}#if AMXX_VERSION_NUM < 183
set_pdata_int (id, m_iMenu, MENU_OFF);
#endif
menu_display (id, mute_menu_id);
}return PH;
}public mute_menu_callback (id, menu, item)
{
static access, callback;item_status = ITEM_ENABLED;
if (item == 0) {
if (is_gagged[id] == -1) {
copy (item_name, charsmax(item_name), "Заглушить всех y[rВклy]^n");
}
else {
copy (item_name, charsmax(item_name), "Заглушить всех y[rВыклy]^n");
}
}
else {
menu_item_getinfo (menu, item, access, item_info, charsmax(item_info), item_name, charsmax(item_name), callback);if (get_bit(is_gagged[id], item_info[0])) {
formatex (item_name, charsmax(item_name), "%s y[r+y]", user_name[item_info[0]]);
item_status = ITEM_ENABLED;
}
}menu_item_setname (menu, item, item_name);
return item_status;
}public mute_menu_handler (id, menu, item)
{
static need_announce, Float: ctime, Float: next_announce_time[MAX_CLIENTS + 1];ctime = get_gametime();
need_announce = (ctime > next_announce_time[id]) ? 1 : 0;
if (item != MENU_EXIT) {
if (item == 0) {
if (is_gagged[id] == -1) {
is_gagged[id] = 0;need_announce && printf_chat(ALL, print_team_default, "%s Игрок ^3%s^1 написал^3 /mute^1 (^4слышит всех^1)", CHAT_INFO_PREFIX, user_name[id]);
}
else {
is_gagged[id] = -1;
need_announce && printf_chat(ALL, print_team_default, "%s Игрок ^3%s^1 написал^3 /mute^1 (^4не слышит никого^1)", CHAT_INFO_PREFIX, user_name[id]);
}
}
else {
static access, callback;
menu_item_getinfo (menu, item, access, item_info, charsmax(item_info), item_name, charsmax(item_name), callback);gag_data[id] = item_info[0];
if (is_connected(gag_data[id])) {
if (get_bit(is_gagged[id], gag_data[id])) {
clr_bit(is_gagged[id], gag_data[id]);
need_announce && printf_chat(ALL, print_team_default, "%s^3 Игрок %s^1 написал^3 /mute^1 (^4слышит %s^1)", CHAT_INFO_PREFIX, user_name[id], user_name[gag_data[id]]);
}
else {
set_bit(is_gagged[id], gag_data[id]);
need_announce && printf_chat(ALL, print_team_default, "%s^3 Игрок %s^1 написал^3 /mute^1 (^4не слышит %s^1)", CHAT_INFO_PREFIX, user_name[id], user_name[gag_data[id]]);
}
}
else {
printf_chat (id, print_team_default, PL_LEAVED);
}
}menu_destroy(menu);
mute_menu (id);
}
else {
menu_destroy(menu);
}next_announce_time[id] = ctime + 3.0;
return PH;
}public plugin_end()
{
if (fpv_gag != INVALID_HANDLE) {
nvault_prune(fpv_gag, 0, get_systime(MAX_GAGTIME_AGO));
nvault_close(fpv_gag);
}set_pcvar_num(pcv_alltalk, sv_alltalk);
}