Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

2 страниц V   1 2

Вкл / выкл Damager

Статус пользователя BornToBeFree
сообщение 20.1.2014, 20:26
Сообщение #21


Стаж: 12 лет

Сообщений: 741
Благодарностей: 287
Полезность: 602

Меценат Меценат

Цитата(Legenda @ 20.1.2014, 22:23) *
ну так где исходники плагина?
или как проверить его?

В личные сообщения скину


Скидка 5% при заказе сервера
Чтобы получить 5% скидку при заказе сервера на хостинге Serva4ok.ru
Необходимо ввести это кодовое слово gKUt-FENO-ZonE-aIaa
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ZoomeR11z
сообщение 8.4.2014, 19:52
Сообщение #22


Стаж: 14 лет

Сообщений: 13
Благодарностей: 1
Полезность: 0

Цитата(ExTPuMaJI @ 20.1.2014, 20:26) *
В личные сообщения скину

Был бы признателен за исходник) но если он доделанный, что бы при взятии оружия, либо пистолета, предыдущее оружия выкидывало.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ZoomeR11z
сообщение 10.4.2014, 19:15
Сообщение #23


Стаж: 14 лет

Сообщений: 13
Благодарностей: 1
Полезность: 0

Есть кто то жывой? кто сможет помочь? psych.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя kiryxapro
сообщение 10.4.2014, 19:30
Сообщение #24
Стаж: 12 лет

Сообщений: 53
Благодарностей: 5
Полезность: 74

Добавьте в скайп:kiryxapro Сделаю то,что надо
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Andrey777best
сообщение 23.4.2015, 14:16
Сообщение #25


Стаж: 13 лет
Город: Харьков

Сообщений: 1191
Благодарностей: 144
Полезность: 1

Можете глянуть почему у других игроков тоже появляется дамагер
Код:
#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <fun>
#include <hamsandwich>

#define VIP_FLAG ADMIN_LEVEL_H

new bool: g_bDamage[33]
new g_MsgSync, g_MaxPlayers
new round_number, g_round
new bool: has_used[32]

new const weapon_name[][] = { "Deagle", "USP", "AK47", "M4a1", "FAMAS", "AWP", "SCOUT" }

#define is_user_valid_connected(%1) (1 <= %1 <= g_MaxPlayers && is_user_connected(%1))

public plugin_init()
{
register_plugin("VIP Weapons", "1.1", "Player")

g_round = register_cvar("amx_vip_give", "3")

register_clcmd("vipmenu", "showWeaponMenu")

register_clcmd("say /adminka", "ShowMotdADM")

register_event("HLTV", "event_RoundStart", "a", "1=0", "2=0")
register_logevent("event_RestartRound", 2, "1&Restart_Round_")
register_event("Damage", "event_Damage", "b", "2!0", "3=0", "4!0")

RegisterHam(Ham_Spawn, "player", "fw_PlayerRespawn", 1)

g_MsgSync = CreateHudSyncObj()
g_MaxPlayers = get_maxplayers()
}

public client_authorized(id)
{
if(!(get_user_flags(id) & VIP_FLAG))
return

client_cmd(id, "bind ^"F5^" ^"vipmenu^"")
}

public showWeaponMenu(id)
{
if(!(get_user_flags(id) & VIP_FLAG))
{
ChatColor(id, "^3[^4|+18>>Сервер^3]^1 Только для ^3V.I.P^1 персон!")
return PLUGIN_HANDLED
}

new menu = menu_create("\w[\yV.I.P\w] \rОружейка:", "giveWeapon")

new szIteamName[64]

for(new i = 0; i < sizeof(weapon_name); i++)
{
formatex(szIteamName, charsmax(szIteamName), "\r[\y%s\r]", weapon_name[i])
menu_additem(menu, szIteamName)
}

menu_addblank(menu, 0)

formatex(szIteamName, charsmax(szIteamName), "Дамагер \r[%sключен\r]", g_bDamage[id] ? "\yВ" : "\dВы")
menu_additem(menu, szIteamName)

menu_addblank(menu, 1)

menu_setprop(menu, MPROP_PERPAGE, 0)
menu_additem(menu, "Выход")
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)

menu_display(id, menu)

return PLUGIN_HANDLED
}

public giveWeapon(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}

if(item != 7)
{
if(!is_user_alive(id))
{
ChatColor(id, "^3[^4|+18>>Сервер^3]^1 Вы мертвы!")
return PLUGIN_HANDLED
}

if(round_number < get_pcvar_num(g_round))
{
ChatColor(id, "^3[^4|+18>>Сервер^3]^1 Доступно с %d раунда!", get_pcvar_num(g_round))
return PLUGIN_HANDLED
}

if(has_used[id])
{
ChatColor(id, "^3[^4|+18>>Сервер^3]^1 Вы уже использовали! Подождите...")
return PLUGIN_HANDLED
}

has_used[id] = true

switch(item)
{
case 0:
{
DropSecondaryWeapons(id)
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id , CSW_DEAGLE, 35)
}
case 1:
{
DropSecondaryWeapons(id)
give_item(id, "weapon_usp")
cs_set_user_bpammo(id , CSW_USP, 100)
}
case 2:
{
DropPrimaryWeapons(id)
give_item(id, "weapon_ak47")
cs_set_user_bpammo(id , CSW_AK47, 90)
}
case 3:
{
DropPrimaryWeapons(id)
give_item(id, "weapon_m4a1")
cs_set_user_bpammo(id , CSW_M4A1, 90)
}
case 4:
{
DropPrimaryWeapons(id)
give_item(id, "weapon_famas")
cs_set_user_bpammo(id , CSW_FAMAS, 90)
}
case 5:
{
DropPrimaryWeapons(id)
give_item(id, "weapon_awp")
cs_set_user_bpammo(id , CSW_AWP, 30)
}
case 6:
{
DropPrimaryWeapons(id)
give_item(id, "weapon_scout")
cs_set_user_bpammo(id , CSW_SCOUT, 90)
}
}
}
else
{
g_bDamage[id] = !g_bDamage[id]

showWeaponMenu(id)
}
return PLUGIN_HANDLED
}

public fw_PlayerRespawn(id)
{
if(!is_user_alive(id) || !(get_user_flags(id) & VIP_FLAG))
return

DropSecondaryWeapons(id)

give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 35)

give_item(id,"weapon_hegrenade")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_smokegrenade")
give_item(id,"item_assaultsuit")
give_item(id, "item_thighpack")

message_begin(MSG_ALL, get_user_msgid("ScoreAttrib"))
write_byte(id)
write_byte(4)
message_end()
}

public ShowMotdADM(id)
show_motd(id, "adminka.txt", "Покупка - Админки!")

public ShowMotdVIP(id)
show_motd(id, "vip.txt", "Покупка - |+18>>Сервер!")

public event_RoundStart()
{
round_number++
arrayset(has_used, false, 32)
}

public event_RestartRound()
round_number = 0

public event_Damage(id)
{
if(!is_user_valid_connected(id))
return

static attacker; attacker = get_user_attacker(id)
static damage; damage = read_data(2)

if(is_user_valid_connected(attacker) && g_bDamage[attacker])
{
set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
ShowSyncHudMsg(attacker, g_MsgSync, "%i", damage)
}
}

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
replace_all(msg, 190, "!team2", "^0") // Team2 Color

if(id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}

stock DropPrimaryWeapons(id)
{
static weapons[32], num;
const PRIMARY_WEAPONS_BIT_SUM = ((1<<3)|(1<<5)|(1<<7)|(1<<8)|(1<<12)|(1<<13)|(1<<14)|(1<<15)|(1<<18)|(1<<19)|(1<<20)|(1<<21)|(1<<22)|(1<<23)|(1<<24)|(1<<27)|(1<<28)|(1<<30));
get_user_weapons(id, weapons, num);

for (new i = 0; i < num; i++)
if((1<<weapons[i]) & PRIMARY_WEAPONS_BIT_SUM)
fm_strip_user_gun(id, weapons[i])
}

stock DropSecondaryWeapons(id)
{
static weapons[32], num;
const SECONDARY_WEAPONS_BIT_SUM = ((1<<1)|(1<<10)|(1<<11)|(1<<16)|(1<<17)|(1<<26));
get_user_weapons(id, weapons, num);

for (new i = 0; i < num; i++)
if((1<<weapons[i]) & SECONDARY_WEAPONS_BIT_SUM)
fm_strip_user_gun(id, weapons[i])
}

stock bool:fm_strip_user_gun(index, wid = 0, const wname[] = "")
{
new ent_class[32];
if (!wid && wname[0])
copy(ent_class, sizeof ent_class - 1, wname);
else
{
new weapon = wid, clip, ammo;
if (!weapon && !(weapon = get_user_weapon(index, clip, ammo)))
return false;

get_weaponname(weapon, ent_class, sizeof ent_class - 1);
}

new ent_weap = fm_find_ent_by_owner(-1, ent_class, index);
if (!ent_weap)
return false;

engclient_cmd(index, "drop", ent_class);

new ent_box = pev(ent_weap, pev_owner);
if (!ent_box || ent_box == index)
return false;

dllfunc(DLLFunc_Think, ent_box);

return true;
}

stock fm_find_ent_by_owner(index, const classname[], owner, jghgtype = 0)
{
new strtype[11] = "classname", ent = index;
switch (jghgtype) {
case 1: strtype = "target";
case 2: strtype = "targetname";
}

while ((ent = engfunc(EngFunc_FindEntityByString, ent, strtype, classname)) && pev(ent, pev_owner) != owner) {}

return ent;
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя GOOD FELLOW
сообщение 23.4.2015, 14:21
Сообщение #26


Иконка группы

Стаж: 13 лет

Сообщений: 2294
Благодарностей: 1187
Полезность: 890

Andrey777best, в event_Damage добавь такую строку
Код:
if(get_user_flags(id) & VIP_FLAG) return
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Andrey777best
сообщение 23.4.2015, 14:24
Сообщение #27


Стаж: 13 лет
Город: Харьков

Сообщений: 1191
Благодарностей: 144
Полезность: 1

GOOD FELLOW, Так?
Код:
public event_Damage(id)
{
if(!is_user_valid_connected(id))
return

static attacker; attacker = get_user_attacker(id)
static damage; damage = read_data(2)

if(is_user_valid_connected(attacker) && g_bDamage[attacker] && (get_user_flags(attacker) & VIP_FLAG))
{
set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
ShowSyncHudMsg(attacker, g_MsgSync, "%i", damage)
}
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя GOOD FELLOW
сообщение 23.4.2015, 14:28
Сообщение #28


Иконка группы

Стаж: 13 лет

Сообщений: 2294
Благодарностей: 1187
Полезность: 890

Andrey777best, я поправил Твой пост с кодом, вот так.
Забудь, что я сказал, там бред был)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
2 страниц V   1 2
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: