#1
Отправлено 10 августа 2015 — 00:18
-
- Прохожий
-
(64) : error 017: undefined symbol «DIALOG_STYLE_TABLIST_HEADERS»
(95) : error 017: undefined symbol «SetVehicleParamsCarWindows»
2 Errors.
(64) ShowPlayerDialog(playerid, MenuAvto, DIALOG_STYLE_TABLIST_HEADERS, caption, info, «.:|?????|:.», «.:|??????|:.»);
(95) SetVehicleParamsCarWindows(veh, windows, windows, windows, windows);
0
#2
Отправлено 10 августа 2015 — 00:52
-
- Профессионал
-
Обнови стандартные библиотеки, до тех которые с 0.3.7 идут.
Сообщение отредактировал PorayJ: 10 августа 2015 — 00:52
0
#3
Отправлено 15 августа 2015 — 12:51
-
- Прохожий
-
Что за TABLIST? впервые такое слышу
0
#4
Отправлено 15 августа 2015 — 12:54
-
- ?
-
AGUXA (15 августа 2015 — 12:51) писал:
Что за TABLIST? впервые такое слышу
В 0.3.7 добавили — Перейти на SA:MP wiki
0
#5
Отправлено 15 августа 2015 — 12:54
-
- Профессионал
-
AGUXA (15 августа 2015 — 12:51) писал:
Что за TABLIST? впервые такое слышу
C 0.3.7 новая константа идентификатора типа диалога.
0
- ← Предыдущая тема
- Проблемы с компилированием
- Следующая тема →
- Вы не можете создать новую тему
-
Тема закрыта
1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей
#1
Отправлено 11 мая 2012 — 19:11
-
- Прохожий
-
Как исправить
C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(725) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(735) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2424) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2439) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2454) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2469) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2687) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2759) : error 017: undefined symbol "iniGetFloat" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2760) : error 017: undefined symbol "iniGetFloat" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2768) : error 017: undefined symbol "iniGetFloat" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2769) : error 017: undefined symbol "iniGetFloat" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2770) : error 017: undefined symbol "iniGetFloat" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2829) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD"
0
#2
Отправлено 11 мая 2012 — 19:16
-
- Благодетель
-
Необходимы новые инклуды
Последний сервер 0.3e — download
0
#3
Отправлено 11 мая 2012 — 19:29
-
- Прохожий
-
Ща попробую
Вот остались ошибки
C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2759) : error 017: undefined symbol "iniGetFloat" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2760) : error 017: undefined symbol "iniGetFloat" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2768) : error 017: undefined symbol "iniGetFloat" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2769) : error 017: undefined symbol "iniGetFloat" C:Documents and SettingsMikeРабочий стол[RP]CityLandgamemodesSL.pwn(2770) : error 017: undefined symbol "iniGetFloat"
0
#4
Отправлено 11 мая 2012 — 19:52
-
- Прохожий
-
0
#5
Отправлено 11 мая 2012 — 20:52
-
- ( ^_^ )
-
В верх мода попробуй добавь:
#include <MxIni>
0
- ← Предыдущая тема
- Проблемы с компилированием
- Следующая тема →
- Вы не можете создать новую тему
-
Тема закрыта
1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей
Posts: 71
Threads: 18
Joined: May 2017
Reputation:
0
While compiling script i got these errors,which include do i need ?
Код:
C:UsersDesktopyads.pwn(240) : error 017: undefined symbol "DIALOG_STYLE_TABLIST" C:UsersDesktopyads.pwn(259) : error 017: undefined symbol "DIALOG_STYLE_TABLIST_HEADERS" Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 2 Errors.
Posts: 150
Threads: 22
Joined: May 2017
Reputation:
0
i think you need update you all files samp
Posts: 71
Threads: 18
Joined: May 2017
Reputation:
0
Actually,i have updated all files.! But i’m missing a file that this dialog needs it to compile.
Posts: 10,066
Threads: 38
Joined: Sep 2007
Reputation:
0
Put your files in their proper locations and don’t doubleclick on .pwn files to open them. Open the editor then open the file through the editor. Or get rid of spare copies of the compiler in who knows how many different locations.
Posts: 484
Threads: 189
Joined: Jun 2016
Reputation:
0
Код:
#define DIALOG_STYLE_TABLIST_HEADERS 5
Posts: 71
Threads: 18
Joined: May 2017
Reputation:
0
Quote:
Originally Posted by Hunud
Код:
#define DIALOG_STYLE_TABLIST_HEADERS 5
Only this left now
Код:
C:UsersDesktopSERVERyads.pwn(241) : error 017: undefined symbol "DIALOG_STYLE_TABLIST" Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 1 Error.
Posts: 150
Threads: 22
Joined: May 2017
Reputation:
0
Posts: 71
Threads: 18
Joined: May 2017
Reputation:
0
Compiled .
Thank you guys!
Posts: 468
Threads: 10
Joined: Sep 2015
Reputation:
0
That’s not the right way to fix it,you should update all server files to the latest version
Posts: 178
Threads: 5
Joined: Aug 2016
Reputation:
0
if the files are the latest version it should work but if not try this
PHP код:
#if defined DIALOG_STYLE_TABLIST
#else
#define DIALOG_STYLE_TABLIST
#endif
#if defined DIALOG_STYLE_TABLIST_HEADERS
#else
#define DIALOG_STYLE_TABLIST_HEADERS
#endif
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.
Содержание
- Error 017 undefined symbol foreach
- Маппинг для сервера
- Моды для сервера
- Программы для скриптера
- aka.Vandal
- Статистика форума
- Форум Pawn.Wiki — Воплоти мечту в реальность!: Помогите с ошибкой — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Форум Pawn.Wiki — Воплоти мечту в реальность!: error 017 — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Форум Pawn.Wiki — Воплоти мечту в реальность!: Помогите | Error 17 and Error 29 — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Помогите | Error 17 and Error 29
- Форум Pawn.Wiki — Воплоти мечту в реальность!: Помогите со скриптом — Форум Pawn.Wiki — Воплоти мечту в реальность!
Error 017 undefined symbol foreach
Быстрый переход в группу «Пользователи», без надобности написания постов и ожидания.
Покупка дает возможность:
Маппинг для сервера
Если вы хотите обновить Ваш сервер новыми доработками — то зайдите в наш раздел. Большой выбор готовых решений от наших пользователей
Моды для сервера
Огромный выбор различных модификаций для Вашего сервера. Пролистайте эти темы! Возможно именно там Вы найдете то, что искали уже давно.
Программы для скриптера
Подборка удобных программ для скриптера
aka.Vandal
Изучающий
gamemodesnew.pwn(129) : error 017: undefined symbol «foreach»
gamemodesnew.pwn(129) : error 017: undefined symbol «i»
А далее эти ошибки повторяются на других строчках,но это не важно.
Инклудик подключён и имеется в наличии!
Статистика форума
Created by Giness
Уважаемый Гость.
Пожалуйста — воздержитесь от любых комментариев на форуме относительно ситуации в мире.
В личных сообщениях, в темах и где бы то не было.
Помните — это закончится в любом случае, а слова, сказанные (или написанные) Вами — не забудутся никогда.
МЫ ЗА МИР.
(Любые сообщения относительно ситуации в мире(не важно с каким смыслом) буду удаляться. А пользователи — блокироваться безвозвратно. )
Источник
Форум Pawn.Wiki — Воплоти мечту в реальность!: Помогите с ошибкой — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Pawn скриптинг
- Первая помощь
- Проблемы с компилированием
- Правила форума
- Просмотр новых публикаций
- Группа: Пользователи
- Сообщений: 8
- Регистрация: 16 января 13
Посмотрите, в чем ошибка? Как это исправить?
. (1900) : error 017: undefined symbol «foreach»
. (1900) : error 029: invalid expression, assumed zero
. (1900) : error 017: undefined symbol «i»
. (1900) : fatal error 107: too many error messages on one line
Вот 1900 строка
foreach(new i : Player)
- Группа: Активные пользователи
- Сообщений: 135
- Регистрация: 04 ноября 12
Alvaro (19 января 2013 — 19:17) писал:
Посмотрите, в чем ошибка? Как это исправить?
. (1900) : error 017: undefined symbol «foreach»
. (1900) : error 029: invalid expression, assumed zero
. (1900) : error 017: undefined symbol «i»
. (1900) : fatal error 107: too many error messages on one line
Вот 1900 строка
foreach(new i : Player)
- Группа: Активные пользователи
- Сообщений: 158
- Регистрация: 20 мая 12
Alvaro (19 января 2013 — 19:17) писал:
Посмотрите, в чем ошибка? Как это исправить?
. (1900) : error 017: undefined symbol «foreach»
. (1900) : error 029: invalid expression, assumed zero
. (1900) : error 017: undefined symbol «i»
. (1900) : fatal error 107: too many error messages on one line
Источник
Форум Pawn.Wiki — Воплоти мечту в реальность!: error 017 — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Pawn скриптинг
- Первая помощь
- Проблемы с компилированием
- Правила форума
- Просмотр новых публикаций
- Группа: Пользователи
- Сообщений: 2
- Регистрация: 11 сентября 16
Здравствуйте. Я скачал сборку, где изменил некоторые данные, начал компилировать, и мне выдало 4 ошибки:
error 017: undefined symbol «foreach»
error 029: invalid expression, assumed zero
error 017: undefined symbol «i»
fatal error 107: too many error messages on one line
Как исправить? Вот проблемная строка
publics StartPaintball()
<
new string[73];
PaintballRound = 1;
PaintballWinner = 999;
PaintballWinnerKills = 0;
if(PaintballPlayers 0
- Группа: Активные пользователи
- Сообщений: 461
- Регистрация: 25 ноября 16
Не подключён инклуд foreach.
Скачай, закинь в папку include и подключи его в начале мода:
- Группа: Пользователи
- Сообщений: 2
- Регистрация: 11 сентября 16
Const (07 января 2017 — 17:03) писал:
Не подключён инклуд foreach.
Скачай, закинь в папку include и подключи его в начале мода:
Источник
Форум Pawn.Wiki — Воплоти мечту в реальность!: Помогите | Error 17 and Error 29 — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Pawn скриптинг
- Первая помощь
- Вопросы по скриптингу
- Правила форума
- Просмотр новых публикаций
Помогите | Error 17 and Error 29
- Группа: Пользователи
- Сообщений: 5
- Регистрация: 06 октября 14
Переводил короче я мод и тут,лезут три ошибки(мало,но с ними не сталкивался),так вот,чо мне делать то?
А вот вам код строки:
Сообщение отредактировал SilentXx: 06 октября 2014 — 17:00
- Группа: Активные пользователи
- Сообщений: 166
- Регистрация: 03 ноября 13
Скачиваем инклуд foreach. http://www.solidfile. db1/foreach.inc
Заходим в папку с Pawno. pawnoinclude и закидываем скачанный foreach.inc. После этого подключим инклуд:
Но если тебе так лень всё это делать, то просто стандартным циклом:
Сообщение отредактировал Trable: 06 октября 2014 — 21:00
Источник
Форум Pawn.Wiki — Воплоти мечту в реальность!: Помогите со скриптом — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Pawn скриптинг
- Первая помощь
- Проблемы с компилированием
- Правила форума
- Просмотр новых публикаций
- (2 Страниц)
- 1
- 2
- >
- Вы не можете создать новую тему
Тема закрыта
- Группа: Пользователи
- Сообщений: 8
- Регистрация: 28 августа 17
- Группа: Vip
- Сообщений: 5 581
- Регистрация: 09 января 13
- Группа: Пользователи
- Сообщений: 8
- Регистрация: 28 августа 17
m1n1vv (04 сентября 2017 — 16:16) писал:
и добавить sscanf?
- Группа: Vip
- Сообщений: 5 581
- Регистрация: 09 января 13
samurai_Jack (04 сентября 2017 — 16:23) писал:
- Группа: Пользователи
- Сообщений: 8
- Регистрация: 28 августа 17
m1n1vv (04 сентября 2017 — 16:36) писал:
C:UsersUserDesktop2121filterscriptssupplydrop.pwn(61) : error 001: expected token: «;», but found «-identifier-»
C:UsersUserDesktop2121filterscriptssupplydrop.pwn(168) : error 017: undefined symbol «DIALOG_STYLE_TABLIST»
C:UsersUserDesktop2121filterscriptssupplydrop.pwn(183) : error 017: undefined symbol «DIALOG_STYLE_TABLIST_HEADERS»
C:UsersUserDesktop2121filterscriptssupplydrop.pwn(234) : error 017: undefined symbol «foreach»
C:UsersUserDesktop2121filterscriptssupplydrop.pwn(234) : error 029: invalid expression, assumed zero
C:UsersUserDesktop2121filterscriptssupplydrop.pwn(234) : error 017: undefined symbol «i»
C:UsersUserDesktop2121filterscriptssupplydrop.pwn(234) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
- Группа: Vip
- Сообщений: 5 581
- Регистрация: 09 января 13
- Группа: Пользователи
- Сообщений: 8
- Регистрация: 28 августа 17
m1n1vv (04 сентября 2017 — 16:40) писал:
- Группа: Пользователи
- Сообщений: 8
- Регистрация: 28 августа 17
m1n1vv (04 сентября 2017 — 16:40) писал:
#define MAX_DROPS (50)
#define DIST (300.0)
// Config
#define PLANE_TIME (7) // how many seconds does a plane need before flying (Default: 7)
#define REQ_COOLDOWN (3) // how many minutes does someone need to wait for requesting a supply drop again (Default: 3)
#define DROP_LIFE (5) // life time of a supply drop, in minutes (Default: 5)
#define AMMO_PRICE (750) // price of ammo request (Default: 750)
#define HEALTH_PRICE (500) // price of health kit request (Default: 500)
#define ARMOR_PRICE (450) // price of body armor request (Default: 450)
#define AMMO_AMOUNT (150) // how much ammo will be given with a weapon/ammo drop (Default: 150)
enum _:E_DROPTYPE
<
DROP_TYPE_WEAPON,
DROP_TYPE_AMMO,
DROP_TYPE_HEALTH,
DROP_TYPE_ARMOR
>
enum _:E_DROPDIALOG
<
DIALOG_DROP_MENU,
DIALOG_DROP_WEAPONS,
DIALOG_DROP_CONFIRM
>
enum E_WEPDATA
<
weaponID,
weaponPrice
>
enum E_DROP
<
// objects
planeObj,
boxObj,
paraObj,
// pickup (created after drop is done)
dropPickup,
// label
Text3D: dropLabel,
// drop data
dropType,
dropData,
// timer
dropTimer,
// other
requestedBy
>
new
SupplyData[MAX_DROPS][E_DROP],
Iterator: SupplyDrops ;
formatInt(intVariable, iThousandSeparator = ‘,’, iCurrencyChar = ‘$’)
<
/*
By Kar
https://gist.github. matint-function
*/
static
s_szReturn[ 32 ],
s_szThousandSeparator[ 2 ] = < ‘ ‘, EOS >,
s_szCurrencyChar[ 2 ] = < ‘ ‘, EOS >,
s_iVariableLen,
s_iChar,
s_iSepPos,
bool:s_isNegative
;
format( s_szReturn, sizeof( s_szReturn ), «%d», intVariable );
if(s_szReturn[0] == ‘-‘)
s_isNegative = true;
else
s_isNegative = false;
s_iVariableLen = strlen( s_szReturn );
s_iChar = s_iVariableLen;
s_iSepPos = 0;
while ( —s_iChar > _:s_isNegative )
<
if ( ++s_iSepPos == 3 )
<
strins( s_szReturn, s_szThousandSeparator, s_iChar );
s_iSepPos = 0;
>
>
>
if(iCurrencyChar) <
s_szCurrencyChar[ 0 ] = iCurrencyChar;
strins( s_szReturn, s_szCurrencyChar, _:s_isNegative );
>
return s_szReturn;
>
ConvertToMinutes(time)
<
// http://forum.sa-mp.c. 97&postcount=11
new string[15];//-2000000000:00 could happen, so make the string 15 chars to avoid any errors
format(string, sizeof(string), «%02d:%02d», time / 60, time % 60);
return string;
>
GetWeaponModel(weaponid)
<
switch(weaponid)
<
case 1: return 331;
case 2..8: return weaponid+331;
case 9: return 341;
case 10..15: return weaponid+311;
case 16..18: return weaponid+326;
case 22..29: return weaponid+324;
case 30,31: return weaponid+325;
case 32: return 372;
case 33..45: return weaponid+324;
case 46: return 371;
>
ReturnDropPickupModel(id)
<
new model = 18631;
switch(SupplyData[id][dropType])
<
case DROP_TYPE_WEAPON: model = GetWeaponModel(SupplyData[id][dropData]);
case DROP_TYPE_AMMO: model = 19832;
case DROP_TYPE_HEALTH: model = 11738;
case DROP_TYPE_ARMOR: model = 1242;
>
ShowDropMenu(playerid)
<
new string[128];
format(string, sizeof(string), «Request WeaponstnRequest Ammot<2ecc71>%snRequest Health Kitt<2ecc71>%snRequest Body Armort<2ecc71>%s», formatInt(AMMO_PRICE), formatInt(HEALTH_PRICE), formatInt(ARMOR_PRICE));
ShowPlayerDialog(playerid, DIALOG_DROP_MENU, DIALOG_STYLE_TABLIST, «Supply Drop», string, «Request», «Close»);
return 1;
>
ShowWeaponsMenu(playerid)
<
new string[512], wname[24];
format(string, sizeof(string), «WeapontPricen»);
for(new i; i GetPlayerMoney(playerid)) return 1;
new string[128];
switch(GetPVarInt(playerid, «supply_ReqType»))
<
case DROP_TYPE_WEAPON:
<
new wname[24];
GetWeaponName(AvailableWeapons[ GetPVarInt(playerid, «supply_WepIndex») ][weaponID], wname, sizeof(wname));
format(string, sizeof(string), «You’re about to order a supply drop for %s.nnPrice: <2ecc71>%s», wname, formatInt(GetPVarInt(playerid, «supply_Price»)));
>
case DROP_TYPE_AMMO:
<
format(string, sizeof(string), «You’re about to order a supply drop for Ammo.nnPrice: <2ecc71>%s», formatInt(GetPVarInt(playerid, «supply_Price»)));
>
case DROP_TYPE_HEALTH:
<
format(string, sizeof(string), «You’re about to order a supply drop for Health Kit.nnPrice: <2ecc71>%s», formatInt(GetPVarInt(playerid, «supply_Price»)));
>
case DROP_TYPE_ARMOR:
<
format(string, sizeof(string), «You’re about to order a supply drop for Body Armor.nnPrice: <2ecc71>%s», formatInt(GetPVarInt(playerid, «supply_Price»)));
>
>
ShowPlayerDialog(playerid, DIALOG_DROP_CONFIRM, DIALOG_STYLE_MSGBOX, «Supply Drop » Confirmation», string, «Confirm», «Cancel»);
return 1;
>
public OnFilterScriptInit()
<
for(new i; i GetPlayerMoney(playerid))
<
SendClientMessage(playerid, 0xE74C3CFF, «ERROR: You can’t afford this request.»);
return ShowDropMenu(playerid);
>
SetPVarInt(playerid, «supply_Price», price);
ShowConfirmDialog(playerid);
>
case DIALOG_DROP_WEAPONS:
<
if(!response) return ShowDropMenu(playerid);
new price = AvailableWeapons[listitem][weaponPrice];
if(price > GetPlayerMoney(playerid))
<
SendClientMessage(playerid, 0xE74C3CFF, «ERROR: You can’t afford this weapon.»);
return ShowWeaponsMenu(playerid);
>
SetPVarInt(playerid, «supply_WepIndex», listitem);
SetPVarInt(playerid, «supply_Price», price);
ShowConfirmDialog(playerid);
return 1;
>
case DIALOG_DROP_CONFIRM:
<
if(!response) return ShowDropMenu(playerid);
new price = GetPVarInt(playerid, «supply_Price»);
if(price > GetPlayerMoney(playerid)) return SendClientMessage(playerid, 0xE74C3CFF, «ERROR: You can’t afford this drop.»);
new cooldown = GetPVarInt(playerid, «supply_Cooldown»);
if(cooldown > gettime())
<
new string[72];
format(string, sizeof(string), «ERROR: Please wait %s more to request a supply drop again.», ConvertToMinutes(cooldown — gettime()));
return SendClientMessage(playerid, 0xE74C3CFF, string);
>
new/> if(id == -1) return SendClientMessage(playerid, 0xE74C3CFF, «ERROR: You can’t request a supply drop right now.»);
GivePlayerMoney(playerid, -price);
new Float: x, Float: y, Float: z;
GetPlayerPos(playerid, x, y, z);
GetPointZPos(x, y, z);
SupplyData[id][requestedBy] = playerid;
SupplyData[id][dropType] = GetPVarInt(playerid, «supply_ReqType»);
SupplyData[id][dropData] = AvailableWeapons[ GetPVarInt(playerid, «supply_WepIndex») ][weaponID];
SupplyData[id][dropTimer] = SetTimerEx(«FlyPlane», PLANE_TIME * 1000, false, «ifffi», id, x, y, z, random(360));
Iter_Add(SupplyDrops, id);
SendClientMessage(playerid, 0x3498DBFF, «PILOT: Request received.»);
SetPVarInt(playerid, «supply_Cooldown», gettime() + REQ_COOLDOWN * 60);
return 1;
>
>
case 2975:
<
// it’s a supply drop, validate it, create pickup then remove
foreach(new i : SupplyDrops)
<
if(SupplyData[i][boxObj] == objectid)
<
new Float: x, Float: y, Float: z, string[48];
switch(SupplyData[i][dropType])
<
case DROP_TYPE_WEAPON:
<
new weap_name[24];
GetWeaponName(SupplyData[i][dropData], weap_name, sizeof(weap_name));
format(string, sizeof(string), «Supply Dropnn%s», weap_name);
>
case DROP_TYPE_AMMO: format(string, sizeof(string), «Supply DropnnAmmo»);
case DROP_TYPE_HEALTH: format(string, sizeof(string), «Supply DropnnHealth»);
case DROP_TYPE_ARMOR: format(string, sizeof(string), «Supply DropnnBody Armor»);
>
GetObjectPos(objectid, x, y, z);
SupplyData[i][dropPickup] = CreatePickup(ReturnDropPickupModel(i), 1, x, y, z + 0.85);
SupplyData[i][dropLabel] = Create3DTextLabel(string, 0xF1C40FFF, x, y, z + 1.65, 10.0, 0, 1);
DestroyObject(SupplyData[i][paraObj]);
DestroyObject(SupplyData[i][boxObj]);
SupplyData[i][boxObj] = SupplyData[i][paraObj] = -1;
SupplyData[i][dropTimer] = SetTimerEx(«RemoveDrop», DROP_LIFE * 60000, false, «i», i);
if(IsPlayerConnected(SupplyData[i][requestedBy])) SendClientMessage(SupplyData[i][requestedBy], 0x3498DBFF, «SUPPLY DROP: Drop complete.»);
break;
>
>
>
>
public OnPlayerPickUpPickup(playerid, pickupid)
<
foreach(new i : SupplyDrops)
<
if(pickupid == SupplyData[i][dropPickup])
<
switch(SupplyData[i][dropType])
<
case DROP_TYPE_WEAPON: GivePlayerWeapon(playerid, SupplyData[i][dropData], AMMO_AMOUNT);
case DROP_TYPE_AMMO:
<
new weapon, ammo;
for(new x = 2; x gettime())
<
new string[72];
format(string, sizeof(string), «ERROR: Please wait %s more to request a supply drop again.», ConvertToMinutes(cooldown — gettime()));
return SendClientMessage(playerid, 0xE74C3CFF, string);
>
ShowDropMenu(playerid);
return 1;
>
Источник
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case dRegister:
{
if(!response)
{
ShowPlayerDialog(playerid, dKickMessage, DIALOG_STYLE_MSGBOX, "Оповещение", "{FFFFFF}Вы были кикнуты с сервера.n{FF0000}Причина: Отказ от регистрации.n{FFFFFF}Для выхода с сервера введите "/q" в чат", "Выход", "");
return Kick(playerid);
}
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, dRegister, DIALOG_STYLE_INPUT, "Регистрация нового пользователя", "{FF0000}Ошибка: {FFFFFF}Вы не можете продолжить регистрацию не введя пароль!nВведите пароль для регистрации нового аккаунта:n{C0C0C0}Примечание:n{666666}- Пароль чувствителен к регистру.n- Пароль должен содержать от 4 до 30 символов.n- Пароль может содержать латинские/кириллические символы и цифры (aA-zZ, аА-яЯ, 0-9).", "Регистрация", "Выход");
else if(strlen(inputtext) < 4) return ShowPlayerDialog(playerid, dRegister, DIALOG_STYLE_INPUT, "Регистрация нового пользователя", "{FF0000}Ошибка: {FFFFFF}Пароль слишком короткий!nВведите пароль для регистрации нового аккаунта:n{C0C0C0}Примечание:n{666666}- Пароль чувствителен к регистру.n- Пароль должен содержать от 4 до 30 символов.n- Пароль может содержать латинские/кириллические символы и цифры (aA-zZ, аА-яЯ, 0-9).", "Регистрация", "Выход");
else if(strlen(inputtext) > 30) return ShowPlayerDialog(playerid, dRegister, DIALOG_STYLE_INPUT, "Регистрация нового пользователя", "{FF0000}Ошибка: {FFFFFF}Пароль слишком длинный!nВведите пароль для регистрации нового аккаунта:n{C0C0C0}Примечание:n{666666}- Пароль чувствителен к регистру.n- Пароль должен содержать от 4 до 30 символов.n- Пароль может содержать латинские/кириллические символы и цифры (aA-zZ, аА-яЯ, 0-9).", "Регистрация", "Выход");
for(new i = strlen(inputtext)-1; i != -1; i--)
{
switch(inputtext[i])
{
case '0'..'9', 'а'..'я', 'a'..'z', 'А'..'Я', 'A'..'Z': continue;
default: return ShowPlayerDialog(playerid, dRegister, DIALOG_STYLE_INPUT, "Регистрация нового пользователя", "{FF0000}Ошибка: {FFFFFF}Пароль содержит запрещённые символы!nВведите пароль для регистрации нового аккаунта:n{C0C0C0}Примечание:n{666666}- Пароль чувствителен к регистру.n- Пароль должен содержать от 4 до 30 символов.n- Пароль может содержать латинские/кириллические символы и цифры (aA-zZ, аА-яЯ, 0-9).", "Регистрация", "Выход");
}
}
pInfo[playerid][pPassword][0] = EOS;
strins(pInfo[playerid][pPassword], inputtext, 0);
CreateNewAccount(playerid, pInfo[playerid][pPassword]);
return 1;
}
case dLogin:
{
if(!response)
{
ShowPlayerDialog(playerid, dKickMessage, DIALOG_STYLE_MSGBOX, "Оповещение", "{FFFFFF}Вы были кикнуты с сервера.n{FF0000}Причина: Отказ от авторизации.n{FFFFFF}Для выхода с сервера введите "/q" в чат", "Выход", "");
return Kick(playerid);
}
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, dLogin, DIALOG_STYLE_INPUT, "Авторизация", "{FF0000}Ошибка: {FFFFFF}Вы не можете продолжить авторизацию не введя пароль!nВведите пароль от аккаунта для входа на сервер:", "Вход", "Выход");
for(new i = strlen(inputtext)-1; i != -1; i--)
{
switch(inputtext[i])
{
case '0'..'9', 'а'..'я', 'a'..'z', 'А'..'Я', 'A'..'Z': continue;
default: return ShowPlayerDialog(playerid, dLogin, DIALOG_STYLE_INPUT, "Авторизация", "{FF0000}Ошибка: {FFFFFF}Введённый пароль содержит запрещённые символы!nВведите пароль от аккаунта для входа на сервер:", "Вход", "Выход");
}
}
if(!strcmp(pInfo[playerid][pPassword], inputtext))
{
new query_string[49+MAX_PLAYER_NAME];
format(query_string, sizeof(query_string), "SELECT * FROM `accounts` WHERE `player_name` = '%s'", pInfo[playerid][pName]);
mysql_tquery(mysql_connect_ID, query_string, "UploadPlayerAccount","i", playerid);
}
else
{
switch(GetPVarInt(playerid, "WrongPassword"))
{
case 0: ShowPlayerDialog(playerid, dLogin, DIALOG_STYLE_INPUT, "Авторизация", "{FF0000}Ошибка: {FFFFFF}Вы ввели неверный пароль! У Вас осталось 3 попытки.nВведите пароль от аккаунта для входа на сервер:", "Вход", "Выход");
case 1: ShowPlayerDialog(playerid, dLogin, DIALOG_STYLE_INPUT, "Авторизация", "{FF0000}Ошибка: {FFFFFF}Вы ввели неверный пароль! У Вас осталось 2 попытки.nВведите пароль от аккаунта для входа на сервер:", "Вход", "Выход");
case 2: ShowPlayerDialog(playerid, dLogin, DIALOG_STYLE_INPUT, "Авторизация", "{FF0000}Ошибка: {FFFFFF}Вы ввели неверный пароль! У Вас осталось 1 попытка.nВведите пароль от аккаунта для входа на сервер:", "Вход", "Выход");
case 3: ShowPlayerDialog(playerid, dLogin, DIALOG_STYLE_INPUT, "Авторизация", "{FF0000}Ошибка: {FFFFFF}Вы ввели неверный пароль! У Вас осталась последняя попытка, после чего Вас кикнет.nВведите пароль от аккаунта для входа на сервер:", "Вход", "Выход");
default:
{
ShowPlayerDialog(playerid, dKickMessage, DIALOG_STYLE_MSGBOX, "Оповещение", "{FFFFFF}Вы были кикнуты с сервера.n{FF0000}Причина: Превышен лимит попыток на ввод пароля.n{FFFFFF}Для выхода с сервера введите "/q" в чат", "Выход", "");
return Kick(playerid);
}
}
SetPVarInt(playerid, "WrongPassword", GetPVarInt(playerid, "WrongPassword")+1);
}
return 1;
}
}
return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}
//==================== [ Форварды ] ============================================
forward FindPlayerInTable(playerid);
public FindPlayerInTable(playerid)
{
new rows;
cache_get_row_count(rows);
if(!rows)
{
ShowPlayerDialog(playerid, dRegister, DIALOG_STYLE_INPUT, "Регистрация нового пользователя", "Введите пароль для регистрации нового аккаунта:", "Регистрация", "Выход");
}
else
{
ShowPlayerDialog(playerid, dLogin, DIALOG_STYLE_INPUT, "Авторизация", "Введите пароль от аккаунта для того, чтоб продолжить игру:", "Вход", "Выход");
cache_get_value_name(0, "password", pInfo[playerid][pPassword], 31);
}
return 1;
}
forward UploadPlayerAccount(playerid);
public UploadPlayerAccount(playerid)
{
cache_get_value_name_int(0, "id", pInfo[playerid][pID]);
SendClientMessage(playerid, 0xFFFFFF00, "Вы успешно авторизировались!");
SetPlayerAuthorized(playerid, PLAYER_ONLINE);
SpawnPlayer(playerid);
return 1;
}
17 минут назад, Nekit_Krut18 сказал:
@x_SkYAs_x Покажите код этих строк, на которых ошибки. Используйте для этого, спойлер и тег ‘ Код ‘.
8452: SetVehicleData(GetPlayerVehicleID(playerid),V_BAGAGE_AMOUNT_GUN,0); 10475: if GetVehicleData(vehicleid, V_BAGAGE_AMOUNT_GUN)+500 > 3000 *then SendClientMessage(playerid,-1,"Матовоз переполнен!"); 10478: SetVehicleData(vehicleid,V_BAGAGE_AMOUNT_GUN,GetVehicleData(vehicleid, V_BAGAGE_AMOUNT_GUN)+500); 10479: format(l_string,26,"Матовоз загружен: 0/%d",GetVehicleData(vehicleid,V_BAGAGE_AMOUNT_GUN)); 10594: if GetVehicleData(vehicleid, V_BAGAGE_AMOUNT_GUN)+500 > 3000 *then SendClientMessage(playerid,-1,"Матовоз переполнен!"); 10597: SetVehicleData(vehicleid,V_BAGAGE_AMOUNT_GUN,GetVehicleData(vehicleid, V_BAGAGE_AMOUNT_GUN)+500); 10598: format(l_string,26,"Матовоз загружен: 0/%d",GetVehicleData(vehicleid,V_BAGAGE_AMOUNT_GUN));
new V_BAGAGE_AMOUNT_GUN
Я все правильно сделал с этим?
Ну и в конце » ; » забыл дописать тут
Отредактировано 15 января, 2021 пользователем x_SkYAs_x
#1
azik215
-
- Пользователь
-
- 32 сообщений
Новичок
Отправлено 12 Сентябрь 2014 — 18:29
Помогите , что за ошибка??
Упс. Компилирование
- Наверх
#2
The
Отправлено 12 Сентябрь 2014 — 18:56
-
Помогите , что за ошибка??
Упс. Компилирование
error 017: undefined symbol «%s» — неизвестный символ «%s»;
warning 217: loose indentation — не выровненная строка
Сообщение отредактировал The: 12 Сентябрь 2014 — 18:56
- Наверх
#3
azik215
azik215
-
- Пользователь
-
- 32 сообщений
Новичок
Отправлено 20 Сентябрь 2014 — 18:46
error 017: undefined symbol «%s» — неизвестный символ «%s»;
с ним то , что делать с 2 я разобрался
- Наверх
#4
FasT of boni
Отправлено 20 Сентябрь 2014 — 18:58
warning 217: loose indentation
Проблема с отступами. Внутри функции отступы должны быть сделаны или с помощью TAB, или с помощью пробелов — нельзя их смешивать, выберите что-то одно.
- Наверх
#5
azik215
azik215
-
- Пользователь
-
- 32 сообщений
Новичок
Отправлено 20 Сентябрь 2014 — 19:03
warning 217: loose indentation
Проблема с отступами. Внутри функции отступы должны быть сделаны или с помощью TAB, или с помощью пробелов — нельзя их смешивать, выберите что-то одно
Я с этим разобрался мне нужно
error 017: undefined symbol «%s» — неизвестный символ «%s»;
Что с ним делать?
Вот 93 строчка
LogMgr_Print(g_moduleCore, LogType_Debug, «PurchaseUpgrade», «Client %d tried to buy interlocked upgrade %s», client, name);
- Наверх
#6
FasT of boni
Отправлено 20 Сентябрь 2014 — 19:08
Я с этим разобрался мне нужно
error 017: undefined symbol «%s» — неизвестный символ «%s»;
Что с ним делать?
Вот 93 строчка
LogMgr_Print(g_moduleCore, LogType_Debug, «PurchaseUpgrade», «Client %d tried to buy interlocked upgrade %s», client, name);
error 017: undefined symbol «x»
Используемый символ не найден. Или забыли переменную объявить, или не подключили модуль. Если это какая-то SourceMod команда, например, CS_RespawnPlayer, то зайдите в API и введите её в поле «Search:». Выше над командой жирным шрифтом будет указано имя модуля, например, «cstrike», и чтобы его подключить, добавьте в самый верх кода #include <cstrike>
- Наверх
#7
azik215
azik215
-
- Пользователь
-
- 32 сообщений
Новичок
Отправлено 20 Сентябрь 2014 — 19:24
Я с этим разобрался мне нужно
error 017: undefined symbol «%s» — неизвестный символ «%s»;
Что с ним делать?
Вот 93 строчка
LogMgr_Print(g_moduleCore, LogType_Debug, «PurchaseUpgrade», «Client %d tried to buy interlocked upgrade %s», client, name);
error 017: undefined symbol «x»
Используемый символ не найден. Или забыли переменную объявить, или не подключили модуль. Если это какая-то SourceMod команда, например, CS_RespawnPlayer, то зайдите в API и введите её в поле «Search:». Выше над командой жирным шрифтом будет указано имя модуля, например, «cstrike», и чтобы его подключить, добавьте в самый верх кода #include <cstrike>
Можно я в лс файл кину. Ты сделаешь??
- Наверх
#8
FasT of boni
Отправлено 20 Сентябрь 2014 — 19:25
Можно я в лс файл кину. Ты сделаешь??
попробуй
- Наверх
#9
azik215
azik215
-
- Пользователь
-
- 32 сообщений
Новичок
Отправлено 20 Сентябрь 2014 — 19:28
- Наверх
#10
FasT of boni
Отправлено 20 Сентябрь 2014 — 20:26
Это инклюд.
Кидай все инклюды и исходник.
- Наверх
#11
Mattko
Отправлено 21 Сентябрь 2014 — 13:29
Нету переменной «name», объявите о ней в начале кода.
Используя вот-так: new name;
warning 217: loose indentation
Проблема с отступами. Внутри функции отступы должны быть сделаны или с помощью TAB, или с помощью пробелов — нельзя их смешивать, выберите что-то одно.
Не отступами, а с табуляции… Можно объявить #table, но проще соблюдать табуляцию, чтобы работа плагина была стабильна.
PS: Автору темы, кидай исходник мне в ЛС, или тут. Исправлю.
- Mr.Credo это нравится
- Наверх
В общем, исправлял опечатки в скрипте, в итоге не могу скомпилировать
Ошибки: Вы должны зарегистрироваться, чтобы видеть ссылки.
Все ошибки связаны с 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++, чтобы не запутаться, да и быстрее