Улучшить плагин "За 1 место в топе дается админка и т.д"

Сообщения
1
Реакции
0
Хочу улучшить плагин чтобы флаги прописывались не по нику а по SteamID. Чтобы игроки под чужим ником не заходили кто на 1 месте в топе.

Код:
#include <amxmodx>
#include <csx>

new szVipFlags,szAdminFlags,szImmunity;

public plugin_init() {
register_plugin("Auto Admin&Vip", "1.0", "Seroff");
register_event("HLTV", "szRound", "a", "1=0", "2=0");
szVipFlags=register_cvar("av_vipflags","it");
szAdminFlags=register_cvar("av_adminflags","cdefiju");
szImmunity=register_cvar("av_adminimmflags","");
}

public szRound()
{
for(new id=1;id<33;id++){
if(is_user_connected(id)){
set_task(0.5,"admvip",id);
}
}
}

public admvip(id){
if(get_user_flags(id) & read_flags(g_pcvar(szImmunity))) return 0;
new stats[8],bodyhits[8],irank
irank = get_user_stats(id,stats,bodyhits);
switch(irank){
case 1:{
if(get_user_flags(id) & read_flags(g_pcvar(szAdminFlags))) return 0;
set_user_flags(id,read_flags(g_pcvar(szAdminFlags)));
ChatColor(id,"^3Вы ^1получили ^4админку ^1за ^4первое место ^1в ^4топе^1!");
ChatColor(0,"^1Игрок ^3%s ^1получил ^4админку ^1за ^4первое место ^1в ^4топе^1!`",g_name_user(id));
}
case 2:{
if(get_user_flags(id) & read_flags(g_pcvar(szVipFlags))) return 0;
set_user_flags(id,read_flags(g_pcvar(szVipFlags)));
ChatColor(id,"^3Вы ^1получили ^4випку ^1за ^4второе место ^1в ^4топе^1!");
ChatColor(0,"^1Игрок ^3%s ^1получил ^4випку ^1за ^4второе место ^1в ^4топе^1!",g_name_user(id));
}
case 3:{
if(get_user_flags(id) & read_flags("z")) return 0;
set_user_flags(id,read_flags("z"));
ChatColor(id,"^1У ^3вас ^1нету ^4не админки, не випки ^1за ^4трете место ^1в ^4топе^1!");
}
}
return 0;
}

stock g_pcvar(pcvar){
new szString[64];
get_pcvar_string(pcvar,szString,sizeof(szString)-1);
return szString;
}

stock g_name_user(id){
new name[32]
get_user_name(id,name,sizeof(name)-1);
return name;
}

stock ChatColor(const id, const input[], any:...) {
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)
replace_all(msg, 190, "!g", "^4") // Green Color
replace_all(msg, 190, "!y", "^1") // Default Color
replace_all(msg, 190, "!team", "^3") // Team Color
if (id) players[0] = id; else get_players(players, count, "ch"); {
for (new i = 0; i < count; i++) {
if (is_user_connected(players)) {
message_begin(MSG_ONE, get_user_msgid("SayText"), _, players)
write_byte(players);
write_string(msg);
message_end();
}
}
}
}

 
Последнее редактирование модератором:
Сообщения
48
Реакции
151
скинь код в нормальном виде, а не в inline.
нажми на плюсик (вставить) и выбери "код"
21 Авг 2017
по теме: флаги даются вообще не по какому то ключу типа имени или стим.
там просто проверка стоит если у тебя ранг такой то такой то, то даются просто флаги доступа
так что тебе нужно изменять плагин топа, а не плагин выдачи админки за 1 место.
чтобы топ велся по стимид.
предполагаю, что там должен быть квар
 
Сообщения
2,491
Реакции
2,795
Помог
61 раз(а)
Плагин не очень качественный. Возможно найдеться тот, кто перепишет его более качественно
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу