Перейти к содержимому


Фотография

Помогите с плагином


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1 Part1zan

Part1zan

    Новичок

  • Пользователь
  • Pip
  • 2 сообщений

Отправлено 07 Апрель 2020 - 11:52

Где сделать чтобы авп было доступно когда 10 играков на сервере и 1 авп на команду сделать а когда меньше 10 играков авп не было доступно
new g_iNumAwp[3];
new bool:g_bUseAwp[33];
public __fatal_ham_error(Ham:id, HamError:err, reason[])
{
new func = get_func_id("HamFilter", -1);
new bool:fail = 1;
new var1;
if (func != -1 && callfunc_begin_i(func, -1) == 1)
{
callfunc_push_int(id);
callfunc_push_int(err);
callfunc_push_str(reason, "HamFilter");
if (callfunc_end() == 1)
{
fail = false;
}
}
if (fail)
{
set_fail_state(reason);
}
return 0;
}

public plugin_init()
{
register_plugin("[CS:GO Mod] AWP Limit", "1.03", "neygomon");
new map[32];
get_mapname(map, 31);
new array[4][] = {
{
97, ...
},
{
97, ...
},
{
51, ...
},
{
36, ...
}
};
new i;
while (i < 4)
{
if (containi(map, array[i]) != -1)
{
log_amx("Карта %s в списке заблокированных. Лимит AWP отключен!", map);
pause("ad", 804, 808);
return 0;
}
i++;
}
register_menucmd(register_menuid("BuyRifle", 1), 48, "HookBuyingAwp");
register_clcmd("menuselect", "clcmdMenuSelect", -1, 1012, -1);
register_clcmd("awp", "clcmdAwp", -1, 1012, -1);
register_clcmd("magnum", "clcmdAwp", -1, 1012, -1);
RegisterHam(20, "player", "fwdAddItem_Post", 1);
RegisterHam(21, "player", "fwdRemoveItem_Post", 1);
return 0;
}

public client_disconnect(id)
{
if (g_bUseAwp[id])
{
new team = get_pdata_int(id, 114, 5);
new var1;
if (team == 1 || team == 2)
{
g_iNumAwp[team]--;
}
g_bUseAwp[id] = 0;
}
return 0;
}

public HookBuyingAwp(id, key)
{
switch (get_pdata_int(id, 114, 5))
{
case 1:
{
if (key == 4)
{
return clcmdAwp(id, 1);
}
}
case 2:
{
if (key == 5)
{
return clcmdAwp(id, 2);
}
}
default:
{
}
}
return 0;
}

public clcmdMenuSelect(id)
{
new var1;
if (!is_user_alive(id) || get_pdata_int(id, 205, 5) == 6)
{
return 0;
}
new szSlot[3];
read_argv(1, szSlot, 2);
switch (str_to_num(szSlot))
{
case 5:
{
if (get_pdata_int(id, 114, 5) == 1)
{
return clcmdAwp(id, 1);
}
}
case 6:
{
if (get_pdata_int(id, 114, 5) == 2)
{
return clcmdAwp(id, 2);
}
}
default:
{
}
}
return 0;
}

public clcmdAwp(id, team)
{
if (!team)
{
team = get_pdata_int(id, 114, 5);
}
new var1;
if (team != 1 && team != 2)
{
return 1;
}
new var2;
if (g_iNumAwp[team] < 1 || get_user_flags(id, "HamFilter") & 2048)
{
client_print_clr(id, "\x01[\x04AWP Limit\x01] \x04AWP \x01лимит в команде \x03превышен\x01! \x04[\x01Всего\x04: \x03%d\x03]", 1);
client_print_clr(id, "\x01[\x04AWP Limit\x01] Покупка \x03запрещена\x01!");
return 1;
}
return 0;
}

public fwdAddItem_Post(id, wpEnt)
{
if (get_pdata_int(wpEnt, 43, 4) == 18)
{
new team = get_pdata_int(id, 114, 5);
new var1;
if (g_iNumAwp[team] < 1 || get_user_flags(id, "HamFilter") & 2048)
{
set_task(1036831949, "strip_user_gun", id, "weapon_awp", 11, 2008, "HamFilter");
client_print_clr(id, "\x01[\x04AWP Limit\x01] \x04AWP \x01лимит в команде \x03превышен\x01! \x04[\x01Всего\x04: \x03%d\x03]", 1);
g_bUseAwp[id] = 0;
}
else
{
g_iNumAwp[team]++;
g_bUseAwp[id] = 1;
}
}
return 0;
}

public fwdRemoveItem_Post(id, wpEnt)
{
new var1;
if (get_pdata_int(wpEnt, 43, 4) == 18 && g_bUseAwp[id])
{
new team = get_pdata_int(id, 114, 5);
new var2;
if (team == 1 || team == 2)
{
g_iNumAwp[team]--;
}
g_bUseAwp[id] = 0;
}
return 0;
}

public strip_user_gun(wname[], index)
{
new ent = -1;
while ((ent = engfunc(12, ent, "classname", wname)) && index != pev(ent, 18))
{
if (!ent)
{
return 0;
}
}
engclient_cmd(index, "drop", wname, 2440);
new ent_box = pev(ent, 18);
new var2;
if (!ent_box || index != ent_box)
{
return 0;
}
dllfunc(2, ent_box);
return 1;
}

client_print_clr(id, szMessage[])
{
static szMsg[190];
vformat(szMsg, 189, szMessage, "");
message_begin(8, 76, 3204, id);
write_byte(id);
write_string(szMsg);
message_end();
return 0;
}
  • KelType это нравится

#2 Part1zan

Part1zan

    Новичок

  • Пользователь
  • Pip
  • 2 сообщений

Отправлено 07 Апрель 2020 - 14:31

Up

Сообщение отредактировал Part1zan: 07 Апрель 2020 - 14:39


#3 VRNserv

VRNserv

    Новичок

  • Пользователь
  • Pip
  • 48 сообщений

Отправлено 12 Апрель 2020 - 12:16

Мне кажется эта строчка отвечает за количество игроков

 

 

new array[4][] = {

Вместо 4 поставить 5 и авп будет доступно при 5х5 тоесть когда 10 человек на сервере




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных