#1
Отправлено 19 июля 2015 — 10:47
-
- Пользователь
-
C:Users????DesktopBot.pwn(37) : error 017: undefined symbol «CreateActor»
C:Users????DesktopBot.pwn(55) : error 017: undefined symbol «bot»
C:Users????DesktopBot.pwn(55) : warning 215: expression has no effect
C:Users????DesktopBot.pwn(55) : error 001: expected token: «;», but found «]»
C:Users????DesktopBot.pwn(55) : error 029: invalid expression, assumed zero
C:Users????DesktopBot.pwn(55) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
5 Errors.
код
CreateActor(60, 1953.7014,1340.8524,15.3746,302.5011);
bot[playerid] = false;
0
#2
Отправлено 19 июля 2015 — 10:51
-
- Новичок
-
Ко всем new:
new Actor1; new bool:bot[MAX_PLAYERS];
А в своем коде исправь вот так:
Actor1 = CreateActor(60, 1953.7014,1340.8524,15.3746,302.5011); bot[playerid] = false;
Сообщение отредактировал Rajter: 19 июля 2015 — 10:51
0
#3
Отправлено 19 июля 2015 — 10:55
-
- Пользователь
-
Rajter (19 июля 2015 — 10:51) писал:
Ко всем new:
new Actor1; new bool:bot[MAX_PLAYERS];
А в своем коде исправь вот так:
Actor1 = CreateActor(60, 1953.7014,1340.8524,15.3746,302.5011); bot[playerid] = false;
C:Users????DesktopBot.pwn(26) : error 026: no matching «#if…»
C:Users????DesktopBot.pwn(35) : error 026: no matching «#if…»
C:Users????DesktopBot.pwn(40) : error 017: undefined symbol «CreateActor»
C:Users????DesktopBot.pwn(59) : error 017: undefined symbol «boty»
C:Users????DesktopBot.pwn(59) : warning 215: expression has no effect
C:Users????DesktopBot.pwn(59) : error 001: expected token: «;», but found «]»
C:Users????DesktopBot.pwn(59) : error 029: invalid expression, assumed zero
C:Users????DesktopBot.pwn(59) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
7 Errors.
0
#4
Отправлено 19 июля 2015 — 11:00
-
- Новичок
-
PawnFast (19 июля 2015 — 10:55) писал:
C:Users????DesktopBot.pwn(26) : error 026: no matching «#if…»
C:Users????DesktopBot.pwn(35) : error 026: no matching «#if…»
C:Users????DesktopBot.pwn(40) : error 017: undefined symbol «CreateActor»
C:Users????DesktopBot.pwn(59) : error 017: undefined symbol «boty»
C:Users????DesktopBot.pwn(59) : warning 215: expression has no effect
C:Users????DesktopBot.pwn(59) : error 001: expected token: «;», but found «]»
C:Users????DesktopBot.pwn(59) : error 029: invalid expression, assumed zero
C:Users????DesktopBot.pwn(59) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
7 Errors.
Строки с ошибками скинь
C:Users????DesktopBot.pwn(40) : error 017: undefined symbol «CreateActor» — Вот эта ошибка из-за того, что у тебя версия 0.3z или ниже. Обнови до 0.3.7
Сообщение отредактировал Rajter: 19 июля 2015 — 11:00
0
#5
Отправлено 19 июля 2015 — 11:01
-
- Пользователь
-
Rajter (19 июля 2015 — 10:58) писал:
#else
#endif
Actor1 = CreateActor(30,1699.7422,-1893.2644,13.5646,90.4899);
boty[playerid] = 0;
0
#6
Отправлено 19 июля 2015 — 11:19
-
- Пользователь
-
0
#7
Отправлено 19 июля 2015 — 11:37
-
- Новичок
-
PawnFast (19 июля 2015 — 11:01) писал:
#else
#endif
Actor1 = CreateActor(30,1699.7422,-1893.2644,13.5646,90.4899);
boty[playerid] = 0;
Во-первых ты написал boty, а не bot, как в первый раз. Во-вторых версия какая у тебя?
0
#8
Отправлено 19 июля 2015 — 12:00
-
- Banned
-
функция
CreateActor
есть токо на 0.3.7 версии пока не обновиш клиент будут ошибки
Сообщение отредактировал Витёк: 19 июля 2015 — 12:01
#9
Отправлено 19 июля 2015 — 14:27
-
- Пользователь
-
Витёк (19 июля 2015 — 12:00) писал:
функция
CreateActor
есть токо на 0.3.7 версии пока не обновиш клиент будут ошибки
все и так на 0.3.7
0
#10
Отправлено 19 июля 2015 — 15:19
-
- Новичок
-
PawnFast (19 июля 2015 — 10:47) писал:
C:Users????DesktopBot.pwn(37) : error 017: undefined symbol «CreateActor»
C:Users????DesktopBot.pwn(55) : error 017: undefined symbol «bot»
C:Users????DesktopBot.pwn(55) : warning 215: expression has no effect
C:Users????DesktopBot.pwn(55) : error 001: expected token: «;», but found «]»
C:Users????DesktopBot.pwn(55) : error 029: invalid expression, assumed zero
C:Users????DesktopBot.pwn(55) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
5 Errors.
код
CreateActor(60, 1953.7014,1340.8524,15.3746,302.5011);
bot[playerid] = false;
На сколько я знаю, функция CreateActor пишется токо в пабл OnGameModeInit
0
- ← Предыдущая тема
- Вопросы по скриптингу
- Следующая тема →
- Вы не можете создать новую тему
-
Тема закрыта
1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей
Posts: 436
Threads: 18
Joined: Jan 2014
Reputation:
0
Posts: 32
Threads: 6
Joined: Jul 2015
Reputation:
0
Good, works on my server, guys told it is easer way to get money, Thanks
Posts: 308
Threads: 89
Joined: Jun 2014
Reputation:
0
Quote:
Originally Posted by Maximun
Superb opinion.
Quote:
Originally Posted by MojorX
Good, works on my server, guys told it is easer way to get money, Thanks
I’m a subscribe my channel, I will post resources, this would help to post faster.
https://www.*******.com/channel/UCL1…15fvwzfaMzfdcw
Posts: 308
Threads: 89
Joined: Jun 2014
Reputation:
0
Update: added new link download.
Posts: 328
Threads: 6
Joined: May 2015
Reputation:
0
La compilare imi da urmatoarele erori :
Code:
C:UsersAndreyDesktopfilterscriptscJob.pwn(23) : error 017: undefined symbol "CreateActor" C:UsersAndreyDesktopfilterscriptscJob.pwn(24) : error 017: undefined symbol "SetActorInvulnerable" C:UsersAndreyDesktopfilterscriptscJob.pwn(25) : error 017: undefined symbol "ApplyActorAnimation" C:UsersAndreyDesktopfilterscriptscJob.pwn(203) : error 017: undefined symbol "SPECIAL_ACTION_CARRY" C:UsersAndreyDesktopfilterscriptscJob.pwn(23) : warning 204: symbol is assigned a value that is never used: "BuilderActor" Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 4 Errors.
Posts: 1,276
Threads: 6
Joined: Aug 2014
Quote:
Originally Posted by jazzyKISS
La compilare imi da urmatoarele erori :
Code:
C:UsersAndreyDesktopfilterscriptscJob.pwn(23) : error 017: undefined symbol "CreateActor" C:UsersAndreyDesktopfilterscriptscJob.pwn(24) : error 017: undefined symbol "SetActorInvulnerable" C:UsersAndreyDesktopfilterscriptscJob.pwn(25) : error 017: undefined symbol "ApplyActorAnimation" C:UsersAndreyDesktopfilterscriptscJob.pwn(203) : error 017: undefined symbol "SPECIAL_ACTION_CARRY" C:UsersAndreyDesktopfilterscriptscJob.pwn(23) : warning 204: symbol is assigned a value that is never used: "BuilderActor" Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 4 Errors.
English only in this section, update your server includes to 0.3.7
Posts: 328
Threads: 6
Joined: May 2015
Reputation:
0
To compile receive.Without changing anything
Code:
C:UsersAndreyDesktopfilterscriptscJob.pwn(23) : error 017: undefined symbol "CreateActor" C:UsersAndreyDesktopfilterscriptscJob.pwn(24) : error 017: undefined symbol "SetActorInvulnerable" C:UsersAndreyDesktopfilterscriptscJob.pwn(25) : error 017: undefined symbol "ApplyActorAnimation" C:UsersAndreyDesktopfilterscriptscJob.pwn(203) : error 017: undefined symbol "SPECIAL_ACTION_CARRY" C:UsersAndreyDesktopfilterscriptscJob.pwn(23) : warning 204: symbol is assigned a value that is never used: "BuilderActor" Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 4 Errors.
Sorry for my English
Posts: 308
Threads: 89
Joined: Jun 2014
Reputation:
0
Quote:
Originally Posted by jazzyKISS
To compile receive.Without changing anything
Code:
C:UsersAndreyDesktopfilterscriptscJob.pwn(23) : error 017: undefined symbol "CreateActor" C:UsersAndreyDesktopfilterscriptscJob.pwn(24) : error 017: undefined symbol "SetActorInvulnerable" C:UsersAndreyDesktopfilterscriptscJob.pwn(25) : error 017: undefined symbol "ApplyActorAnimation" C:UsersAndreyDesktopfilterscriptscJob.pwn(203) : error 017: undefined symbol "SPECIAL_ACTION_CARRY" C:UsersAndreyDesktopfilterscriptscJob.pwn(23) : warning 204: symbol is assigned a value that is never used: "BuilderActor" Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 4 Errors.
Sorry for my English
Trebuie sa dai update la include-urile din versiunea 0.3.7 la pawno, mai exact ai nevoie de a_actor.inc.
Posts: 328
Threads: 6
Joined: May 2015
Reputation:
0
am adaugat a_actor.inc iar acum imi da la compilare :
Code:
(201) : error 017: undefined symbol "SPECIAL_ACTION_CARRY"
Linia :
Code:
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_CARRY);
P.S : Am facut si update la 0.3.7 ..
Posts: 308
Threads: 89
Joined: Jun 2014
Reputation:
0
Quote:
Originally Posted by jazzyKISS
am adaugat a_actor.inc iar acum imi da la compilare :
Code:
(201) : error 017: undefined symbol "SPECIAL_ACTION_CARRY"
Linia :
Code:
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_CARRY);
P.S : Am facut si update la 0.3.7 ..
Este o actiune adaugata intr-o versiune recenta, incearca sa adaugi toate include-urile de la samp din nou.
-
10.06.2019, 23:16
#1
Пользователь
NPC-боты
Доброго времени суток подскажите пожалуйста как сделать ботов и вообще будут ли они работать на crmp я понимаю что вопрос не в тему за что заранее извеняюсь
-
12.06.2019, 15:13
#2
Пользователь
PHP код:
new bot = CreateActor(ид скина, X, Y, Z, камера);
Если npс будет находиться в интерьере
PHP код:
SetActorVirtualWorld(bot, ид интерьера);
-
15.06.2019, 09:00
#3
Пользователь
Сообщение от Den_Gurino
PHP код:
new bot = CreateActor(ид скина, X, Y, Z, камера);
Если npс будет находиться в интерьере
PHP код:
SetActorVirtualWorld(bot, ид интерьера);
Такой вопрос куда вот это прописать все чтобы работало?
-
15.06.2019, 09:04
#4
Связаться со мной в VK можно через личные сообщения этой группы
Заказы не принимаю
Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
Великих идей полно, на них нет спроса.
Воплощение идеи в законченную игру требует долгой работы,
таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
Предложить идею просто, воплотить – вот в чём проблема
Steve Pavlina
-
23.06.2019, 14:29
#5
Пользователь
Сообщение от DeimoS
сделал все какв примере но вылазиют ошибки
PHP код:
C:UsersАндрейDesktopSevere Roly Play v.1.7gamemodesmrpv1.pwn(17016) : error 017: undefined symbol "CreateActor"
C:UsersАндрейDesktopSevere Roly Play v.1.7gamemodesmrpv1.pwn(17016) : warning 204: symbol is assigned a value that is never used: "ActorCJ"
Pawn compiler 3.10.8 Copyright (c) 1997-2006, ITB CompuPhase1 Error
.
-
23.06.2019, 15:32
#6
Пользователь
и пробывал делать ботов по этому уроку также результатов не дал https://pawno-rus.ru/topic/38-sozdan…-dlya-servera/
-
23.06.2019, 17:14
#7
Сообщение от Andrik851
сделал все какв примере но вылазиют ошибки
PHP код:
C:UsersАндрейDesktopSevere Roly Play v.1.7gamemodesmrpv1.pwn(17016) : error 017: undefined symbol "CreateActor"
C:UsersАндрейDesktopSevere Roly Play v.1.7gamemodesmrpv1.pwn(17016) : warning 204: symbol is assigned a value that is never used: "ActorCJ"
Pawn compiler 3.10.8 Copyright (c) 1997-2006, ITB CompuPhase1 Error
.
Версия SA-MP — 0.3.7?
Связаться со мной в VK можно через личные сообщения этой группы
Заказы не принимаю
Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
Великих идей полно, на них нет спроса.
Воплощение идеи в законченную игру требует долгой работы,
таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
Предложить идею просто, воплотить – вот в чём проблема
Steve Pavlina
-
23.06.2019, 17:30
#8
Пользователь
Сообщение от DeimoS
Версия SA-MP — 0.3.7?
нет это крмп версии 0.3е
-
23.06.2019, 17:42
#9
Пользователь
Сообщение от Andrik851
нет это крмп версии 0.3е
Подключай инклуд a_actor
так как в 0.3e по заводу нет CreateActor
-
23.06.2019, 17:54
#10
Сообщение от verteich
Подключай инклуд a_actor
так как в 0.3e по заводу нет CreateActorИзучи функционал a_actor. Там лишь нативы, которые объявляют для павн скрипта функции из самого сервера, так что ничего кроме runtime-error’ов об отсутствии нативов ты таким действием не получишь.
А по теме: в crmp 0.3e npc есть из коробки и вместе со стандартным сервером идёт тестовый скрипт с npc-ботом (пожарный, который возле спавна по кругу бегает). Там можно и посмотреть пример использования и сами функции.
Не хотите постоянно проверять обновления моих скриптов?
Подключите его последним, после всех остальных
Nexius’s Update Checker
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
@Саша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, поскольку делал все на глаз (прикидывал длину).
- Регистрация
- 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++, чтобы не запутаться, да и быстрее
#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 это нравится
- Наверх