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

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

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

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

[ZP] Extra Item: FreeShoots

, Свободная Стрельба
Статус пользователя $@NyA
сообщение 1.3.2020, 21:53
Сообщение #1


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

Стаж: 18 лет

Сообщений: 987
Благодарностей: 529
Полезность: 1050

[ZP] Extra Item: FreeShoots

Оригинальные Авторы Плагинов:

[ZP] Extra Item: No Recoil - | CarsonMotion |
[ZP] Extra Item : Unlimited Clip - | MeRcyLeZZ |


Автор Обьединения 2х плагинов в один - $@NyA
Также я добавил запрет на повторную покупку предмета,что-бы деньги не списывались со щета

Описание:
Добавляет Предмет Людям - Свободная Стрельба.
Купив его ,Вы стреляете без отдачи и патроны у Вас бесконечные

Код:
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#include <xs>
#include <zombieplague>

new const g_item_name[] = { "Точная стрельба" }
const g_item_cost = 6

new Float: cl_pushangle[33][3]
new g_maxplayers

const WEAPONS_BITSUM = (1<<CSW_KNIFE|1<<CSW_HEGRENADE|1<<CSW_FLASHBANG|1<<CSW_SMOKEGRENADE|1<<CSW_C4)

#if cellbits == 32
const OFFSET_CLIPAMMO = 51
#else
const OFFSET_CLIPAMMO = 65
#endif
const OFFSET_LINUX_WEAPONS = 4

new const MAXCLIP[] = { -1, 13, -1, 10, 1, 7, -1, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20,
10, 30, 100, 8, 30, 30, 20, 2, 7, 30, 30, -1, 50 }

new g_itemid_infammo, g_has_unlimited_clip[33]

public plugin_init()
{
register_plugin("[ZP] Extra: FreeShoots", "1.0", "MeRcyLeZZ & CarsonMotion")

g_itemid_infammo = zp_register_extra_item(g_item_name, g_item_cost, ZP_TEAM_HUMAN)

register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
g_maxplayers = get_maxplayers()

new weapon_name[24]
for (new i = 1; i <= 30; i++)
{
if (!(WEAPONS_BITSUM & 1 << i) && get_weaponname(i, weapon_name, 23))
{
RegisterHam(Ham_Weapon_PrimaryAttack, weapon_name, "fw_Weapon_PrimaryAttack_Pre")
RegisterHam(Ham_Weapon_PrimaryAttack, weapon_name, "fw_Weapon_PrimaryAttack_Post", 1)
}
}
}

public zp_extra_item_selected(player, itemid)
{
if (itemid == g_itemid_infammo)

if (g_has_unlimited_clip[player] >= 1)
{
client_print(player, print_center, "Больше нельзя купить");
return ZP_PLUGIN_HANDLED;
}

g_has_unlimited_clip[player] = true
client_print(player, print_center, "Вы купили Свободную стрельбу");


g_has_unlimited_clip[player]++

return PLUGIN_CONTINUE;
}

public zp_user_infected_post(id)
g_has_unlimited_clip[id] = false

public client_connect(id)
g_has_unlimited_clip[id] = false

public event_round_start()
{
for (new id = 1; id <= g_maxplayers; id++)
g_has_unlimited_clip[id] = false
}

public fw_Weapon_PrimaryAttack_Pre(entity)
{
new id = pev(entity, pev_owner)

if (g_has_unlimited_clip[id])
{
pev(id, pev_punchangle, cl_pushangle[id])
return HAM_IGNORED;
}
return HAM_IGNORED;
}

public fw_Weapon_PrimaryAttack_Post(entity)
{
new id = pev(entity, pev_owner)

if (g_has_unlimited_clip[id])
{
new Float: push[3]
pev(id, pev_punchangle, push)
xs_vec_sub(push, cl_pushangle[id], push)
xs_vec_mul_scalar(push, 0.0, push)
xs_vec_add(push, cl_pushangle[id], push)
set_pev(id, pev_punchangle, push)
set_pdata_int(entity, 51, MAXCLIP[get_pdata_int(entity, 43, 4)], 4)
return HAM_IGNORED;
}
return HAM_IGNORED;
}


Скачать
Прикрепленный файл  zp_extra_freeshoots.sma ( 2,84 килобайт ) Кол-во скачиваний: 23


Отредактировал: $@NyA, - 4.3.2020, 22:01


МультиМод CS
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя fl0werD
сообщение 2.3.2020, 12:00
Сообщение #2
Стаж: 9 лет 2 месяца

Сообщений: 155
Благодарностей: 114
Полезность: 692

CurWeapon не нужен, можно в посте примари аттак ставить патроны.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя $@NyA
сообщение 2.3.2020, 13:16
Сообщение #3


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

Стаж: 18 лет

Сообщений: 987
Благодарностей: 529
Полезность: 1050

fl0werD,
Сань,если добавишь этот вариант,я только за и переоформлю

Отредактировал: $@NyA, - 2.3.2020, 13:17


МультиМод CS
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя fl0werD
сообщение 2.3.2020, 16:56
Сообщение #4
Стаж: 9 лет 2 месяца

Сообщений: 155
Благодарностей: 114
Полезность: 692

после
set_pev(id, pev_punchangle, push)
поставь
set_pdata_int(entity, 51, MAXCLIP[get_pdata_int(entity, 43, 4)], 4)

Мессагу КурВеапон удали и все стоки.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя $@NyA
сообщение 2.3.2020, 17:39
Сообщение #5


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

Стаж: 18 лет

Сообщений: 987
Благодарностей: 529
Полезность: 1050

Ок.Сделано


МультиМод CS
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: