награда за убийство на VIP играч
-
accelerator10
Извън линия - Потребител
- Мнения: 4
- Регистриран на: 08 Юли 2020, 06:52
- Се отблагодари: 4 пъти
- Обратна връзка:
награда за убийство на VIP играч
Можете ли да ми помогнете с модификацията на RankSystems? Не знам как да приложа това в кода, нов съм
Трябва да проверя is_user_admin и да дам повече XP, ако играчът е убил администратора
Вече се обърнах към други форуми, но те не ми помогнаха, казаха ми да проверя дали (get_user_flags (iAttacker) & ADMIN_MENU)
но аз, дори преди техните подкани, го представях по този начин, все още не разбирам къде да вмъкна тези условия, логиката ми и разбирането на кода не е достатъчно, за да смените 2 функции, съжалявам
Разбирам, че преди обикновено убийство трябва да има проверка "" ако "" "" друг "" get_user_flags (iAttacker)
въпросът е: как правилно да сменим условията, така че всичко да работи добре?
Трябва да проверя is_user_admin и да дам повече XP, ако играчът е убил администратора
Вече се обърнах към други форуми, но те не ми помогнаха, казаха ми да проверя дали (get_user_flags (iAttacker) & ADMIN_MENU)
но аз, дори преди техните подкани, го представях по този начин, все още не разбирам къде да вмъкна тези условия, логиката ми и разбирането на кода не е достатъчно, за да смените 2 функции, съжалявам
Разбирам, че преди обикновено убийство трябва да има проверка "" ако "" "" друг "" get_user_flags (iAttacker)
въпросът е: как правилно да сменим условията, така че всичко да работи добре?
-
atmax
Извън линия - Потребител
- Мнения: 492
- Регистриран на: 22 Мар 2018, 15:06
- Се отблагодари: 37 пъти
- Получена благодарност: 43 пъти
награда за убийство на VIP играч
Темата ти е в раздел заявки т. е. Искаш да ти се направи плъгин. В случая искаш плъгин, при който играч без флагове да бъде награждаван за убийството на ВИП/Админ, но даже не си описал дали искаш да е за определен флаг или няма значение, стига да има някакъв различен от "z" флаг..!? Също така не си предоставил тази твоя "RankSystems".. Ние да не сме гадатели и случайно да ти знаем плъгина за ранк за да знаем как да добавим XP..?!
Rest in peace my friend I always will remember you!
-
accelerator10
Извън линия - Потребител
- Мнения: 4
- Регистриран на: 08 Юли 2020, 06:52
- Се отблагодари: 4 пъти
- Обратна връзка:
награда за убийство на VIP играч
Извинявам се.atmax написа: ↑08 Юли 2020, 09:14 Темата ти е в раздел заявки т. е. Искаш да ти се направи плъгин. В случая искаш плъгин, при който играч без флагове да бъде награждаван за убийството на ВИП/Админ, но даже не си описал дали искаш да е за определен флаг или няма значение, стига да има някакъв различен от "z" флаг..!? Също така не си предоставил тази твоя "RankSystems".. Ние да не сме гадатели и случайно да ти знаем плъгина за ранк за да знаем как да добавим XP..?!
Знам езика ти много слабо.
Използвам плъгина OciXCrom RankSystem. Не правих никакви промени в него, освен че просто промених "Ranks" в RankSystem.ini.
Искам да прилагам това: когато вие (играч със или без права) убиете играч със знаме (ADMIN_MENU), му се дава XP
убийте играч с този флаг == ще получите xp бонус повече от обикновено убийство)
така го искам.
но не мога да прилагам това в кода, без значение какво се опитвам, всичко се свежда до факта, че знам твърде малко пешки, този форум е единствената надежда, че идеята ми няма да умре
Имам твърде много идеи, всичко зависи от лошите езикови умения, дори и на най-основното ниво
-
atmax
Извън линия - Потребител
- Мнения: 492
- Регистриран на: 22 Мар 2018, 15:06
- Се отблагодари: 37 пъти
- Получена благодарност: 43 пъти
награда за убийство на VIP играч
Пробвай го!
Ако проработи, много лесно можеш да го добавиш в ранк системата, но не виждам смисъл да го правиш.
Това е cvar-a за XP-то: "amx_xpreward", "10"
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <crxranks>
#define PLUGIN "Kill Bonus"
#define VERSION "1.0"
#define AUTHOR "aTmAx"
new XP_AMOUNT
public plugin_init()
{
register_plugin(PLUGIN,VERSION,AUTHOR)
register_event("DeathMsg", "eventDeathMsg", "a")
XP_AMOUNT = register_cvar("amx_xpreward", "10")
}
public eventDeathMsg()
{
new iKiller = read_data(1), iVictim = read_data(2)
if(!is_user_connected(iKiller) || iKiller == iVictim)
return PLUGIN_CONTINUE
if(get_user_flags(iVictim) & ADMIN_MENU)
{
crxranks_give_user_xp(iKiller, XP_AMOUNT)
}
return PLUGIN_HANDLED
}
Това е cvar-a за XP-то: "amx_xpreward", "10"
Rest in peace my friend I always will remember you!
-
OciXCrom
Извън линия - Администратор
- Мнения: 7206
- Регистриран на: 06 Окт 2016, 19:20
- Местоположение: /resetscore
- Се отблагодари: 117 пъти
- Получена благодарност: 1295 пъти
- Обратна връзка:
награда за убийство на VIP играч
Версия без cvar:
Количеството на XP го добавяш в раздела [XP Rewards] в RankSystem.ini:
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <crxranks>
#define PLUGIN "Kill Bonus"
#define VERSION "1.0"
#define AUTHOR "aTmAx"
public plugin_init()
{
register_plugin(PLUGIN,VERSION,AUTHOR)
register_event("DeathMsg", "eventDeathMsg", "a")
}
public eventDeathMsg()
{
new iKiller = read_data(1), iVictim = read_data(2)
if(!is_user_connected(iKiller) || iKiller == iVictim)
{
return
}
if(get_user_flags(iVictim) & ADMIN_MENU)
{
crxranks_give_user_xp(iKiller, _, "kill_admin")
}
}
Код за потвърждение: Избери целия код
kill_admin = 10
-
accelerator10
Извън линия - Потребител
- Мнения: 4
- Регистриран на: 08 Юли 2020, 06:52
- Се отблагодари: 4 пъти
- Обратна връзка:
награда за убийство на VIP играч
Благодаря ви много за вашата помощ!
Мислейки вчера и опитвайки се по някакъв начин да променя кода, с който ми помогнахте, се опитах да добавя допълнителна проверка
(Имам приятелски огън на моя сървър)
if (get_user_team (iVictim) == get_user_team (iKiller))
Как да заменим стойностите на променливите и да ги покажем в чата?
Така;
„(Rank) (KillerName) убива ViP (VictimName) и получава (rand_exp)“
format(szMessage, charsmax(szMessage), "%s %s", CC_PREFIX, szMessage) client_print(id, print_chat, szMessage)
как да използвам?
напр
Предписвам в моя плъгин: #include <crxranks>
тогава пиша:
new rank[32] crxranks_get_user_rank (id, rank, 31)
и ... как мога да покажа стойността на променливата buff_rank в чата? Не ми се вписва в главата ..
Вчера скицирах няколко реда, защото бях вдъхновен от кода.
ще прикача това, което скицирах.....
#include <amxmodx> #include <crxranks> #define PLUGIN "CRX: ViP Kill Bonus" #define VERSION "1.0b" #define AUTHOR "aTmAx" // thnx u public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event("DeathMsg", "eventDeathMsg", "a") } public eventDeathMsg() { new iKiller = read_data(1), iVictim = read_data(2) if(!is_user_connected(iKiller) || iKiller == iVictim) return PLUGIN_CONTINUE new maxplayers maxplayers = get_maxplayers(); new szNameRank[64] // string for RankName crxranks_get_user_rank(iKiller, szNameRank, maxplayers) new szNameKiller // string for Name the Killer szNameKiller get_user_name(iKiller, szNameKiller, maxplayers) if(get_user_team(iKiller) == get_user_team(iVictim)) { // if kill a teammate crxranks_give_user_xp(iKiller, _, "vip_teamfire") // take xp } new szVipName // string for Name of the "Vip" get_user_name(iVictim, szVipName, maxplayers); new rand_reward rand_reward = random_num(5, 15); else if(get_user_flags(iVictim) & ADMIN_MENU) { crxranks_give_user_xp(iKiller, rand_reward) } return PLUGIN_HANDLED }
компилаторът показва все повече грешки за всичките ми опити да поправя нещо
помогни ми да оправя този боклук и да направя бонбони от него
Мислейки вчера и опитвайки се по някакъв начин да променя кода, с който ми помогнахте, се опитах да добавя допълнителна проверка
(Имам приятелски огън на моя сървър)
if (get_user_team (iVictim) == get_user_team (iKiller))
Как да заменим стойностите на променливите и да ги покажем в чата?
Така;
„(Rank) (KillerName) убива ViP (VictimName) и получава (rand_exp)“
format(szMessage, charsmax(szMessage), "%s %s", CC_PREFIX, szMessage) client_print(id, print_chat, szMessage)
как да използвам?
напр
Предписвам в моя плъгин: #include <crxranks>
тогава пиша:
new rank[32] crxranks_get_user_rank (id, rank, 31)
и ... как мога да покажа стойността на променливата buff_rank в чата? Не ми се вписва в главата ..
Вчера скицирах няколко реда, защото бях вдъхновен от кода.
ще прикача това, което скицирах.....
#include <amxmodx> #include <crxranks> #define PLUGIN "CRX: ViP Kill Bonus" #define VERSION "1.0b" #define AUTHOR "aTmAx" // thnx u public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event("DeathMsg", "eventDeathMsg", "a") } public eventDeathMsg() { new iKiller = read_data(1), iVictim = read_data(2) if(!is_user_connected(iKiller) || iKiller == iVictim) return PLUGIN_CONTINUE new maxplayers maxplayers = get_maxplayers(); new szNameRank[64] // string for RankName crxranks_get_user_rank(iKiller, szNameRank, maxplayers) new szNameKiller // string for Name the Killer szNameKiller get_user_name(iKiller, szNameKiller, maxplayers) if(get_user_team(iKiller) == get_user_team(iVictim)) { // if kill a teammate crxranks_give_user_xp(iKiller, _, "vip_teamfire") // take xp } new szVipName // string for Name of the "Vip" get_user_name(iVictim, szVipName, maxplayers); new rand_reward rand_reward = random_num(5, 15); else if(get_user_flags(iVictim) & ADMIN_MENU) { crxranks_give_user_xp(iKiller, rand_reward) } return PLUGIN_HANDLED }
компилаторът показва все повече грешки за всичките ми опити да поправя нещо
помогни ми да оправя този боклук и да направя бонбони от него
-
Orangegame14
Извън линия - Потребител
- Мнения: 87
- Регистриран на: 02 Апр 2020, 22:48
- Се отблагодари: 6 пъти
- Получена благодарност: 24 пъти
награда за убийство на VIP играч
Когато ти показва някакви грешки казвай какви са те, за да могат другите да преценят от къде идват съответните грешки.
-
Orangegame14
Извън линия - Потребител
- Мнения: 87
- Регистриран на: 02 Апр 2020, 22:48
- Се отблагодари: 6 пъти
- Получена благодарност: 24 пъти
награда за убийство на VIP играч
Ето пробвай така. Не гарантирам, че работи, тъй като все пак плъгинът е на друг, но успях да премахна грешките и предупрежденията. Някои неща, които си забравил или направил, не както трябва ИЛИ ПОНЕ НЕ Е ХУБАВО да са така(предупрежденията): Когато създаваш нов string като new szNameKiller трябва да сложиш и число в [] скоби след него szNameKiller[32], szVipName[32]. Имаше и доста loose indentation, което е недобро структуриране на кода. Старай се да пишеш в редовете един под друг спрямо скобите { }. loose indentation обаче в повечето случаи не ти чупи кодовете, то е просто предупреждение, че не е добро структурирано и може да се прочете по-трудно от някой друг. Естествено пак казвам, не съм сигурен, нека по-добрите като окси или модераторите да решат или да го нашишат, но пробвай и така.
ПС: Извинявам се, ако в случая е проблемен двойният пост.
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <crxranks>
#define PLUGIN "CRX: ViP Kill Bonus"
#define VERSION "1.0b"
#define AUTHOR "aTmAx" // thnx u
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("DeathMsg", "eventDeathMsg", "a")
}
public eventDeathMsg()
{
new iKiller = read_data(1), iVictim = read_data(2)
if(!is_user_connected(iKiller) || iKiller == iVictim)
return PLUGIN_CONTINUE
new maxplayers
maxplayers = get_maxplayers();
new szNameRank[64] // string for RankName
crxranks_get_user_rank(iKiller, szNameRank, maxplayers)
new szNameKiller[32] // string for Name the Killer
get_user_name(iKiller, szNameKiller, maxplayers)
if(get_user_team(iKiller) == get_user_team(iVictim)) { // if kill a teammate
crxranks_give_user_xp(iKiller, _, "vip_teamfire") // take xp
}
new szVipName[32] // string for Name of the "Vip"
get_user_name(iVictim, szVipName, maxplayers);
new rand_reward
rand_reward = random_num(5, 15);
if(get_user_flags(iVictim) && ADMIN_MENU)
{
crxranks_give_user_xp(iKiller, rand_reward);
}
return PLUGIN_HANDLED
}
Последно промяна от Orangegame14 на 09 Юли 2020, 15:55, променено общо 1 път.
-
atmax
Извън линия - Потребител
- Мнения: 492
- Регистриран на: 22 Мар 2018, 15:06
- Се отблагодари: 37 пъти
- Получена благодарност: 43 пъти
награда за убийство на VIP играч
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <crxranks>
#define CC_COLORS_TYPE CC_COLORS_SHORT
#include <cromchat>
#define PLUGIN "CRXRanks: Kill Bonus"
#define VERSION "1.0"
#define AUTHOR "aTmAx"
public plugin_init()
{
register_plugin(PLUGIN,VERSION,AUTHOR)
register_event("DeathMsg", "eventDeathMsg", "a")
}
public eventDeathMsg()
{
new iKiller = read_data(1), iVictim = read_data(2)
new szKillerName[32], szVipName[32], rand_reward, szNameRank[64]
get_user_name(iVictim, szVipName, charsmax(szVipName))
rand_reward = random_num(5, 15)
if(!is_user_connected(iKiller) || iKiller == iVictim)
{
return
}
crxranks_get_user_rank(iKiller, szNameRank, charsmax(szNameRank))
get_user_name(iKiller, szKillerName, charsmax(szKillerName))
if(get_user_team(iKiller) == get_user_team(iVictim))
{
crxranks_give_user_xp(iKiller, _, "vip_teamfire")
}
if(get_user_flags(iVictim) & ADMIN_MENU)
{
crxranks_give_user_xp(iKiller, _, "kill_admin")
CromChat(0, "!g[%s] !t%s !nkilled ViP !t%s !nand gain !g%dXP", szNameRank, szKillerName, szVipName, rand_reward)
}
}
Ако искаш събщението да се показва само за убиеца:
Код за потвърждение: Избери целия код
CromChat(0, "!g[%s] !t%s !nkilled ViP !t%s !nand gain !g%dXP", szNameRank, szKillerName, szVipName, rand_reward)
Код за потвърждение: Избери целия код
CromChat(iKiller, "!g[%s] !t%s !nkilled ViP !t%s !nand gain !g%dXP", szNameRank, szKillerName, szVipName, rand_reward)
Rest in peace my friend I always will remember you!
-
accelerator10
Извън линия - Потребител
- Мнения: 4
- Регистриран на: 08 Юли 2020, 06:52
- Се отблагодари: 4 пъти
- Обратна връзка:
-
- Подобни теми
- Отговори
- Преглеждания
- Последно мнение
-
- 4 Отговори
- 2019 Преглеждания
-
Последно мнение от impossible
-
- 4 Отговори
- 2100 Преглеждания
-
Последно мнение от OciXCrom
-
- 2 Отговори
- 1425 Преглеждания
-
Последно мнение от FPS-Gam3r
-
- 4 Отговори
- 245 Преглеждания
-
Последно мнение от trasha
-
- 3 Отговори
- 1540 Преглеждания
-
Последно мнение от Huehue
-
- 2 Отговори
- 1568 Преглеждания
-
Последно мнение от smtng
-
- 2 Отговори
- 988 Преглеждания
-
Последно мнение от iv69
Кой е на линия
Потребители разглеждащи този форум: Google [Bot], Semrush [Bot] и 26 госта