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

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

^Место доступно для покупки - 4000 руб/мес^

Новости

17-апр
30-дек
29-дек
26-дек

7 страниц V  « 6 7

Steam Bonus

Статус пользователя generator
сообщение 18.6.2017, 8:48
Сообщение #121


Стаж: 28 дней

Сообщений: 47
Благодарностей: 8
Полезность: 128

neverminde, Прекращайте засорять тему сообщениями не по теме. Человек обратился с проблемой, я ему подсказал как он может её решить, ничего плохого в этом не вижу. Всего хорошего.

Отредактировал: generator, - 18.6.2017, 9:04
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Swidi
сообщение 18.6.2017, 9:25
Сообщение #122
Стаж: 3 года

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

Хочу поставить плагин с HUD с первого поста но он не компилируется:
Скрин ниже:
Скрин ошибки

Файл нужно скомпилировать под amx 1.8.3


sma файл
/*
* Обновление 28.09.2014
* v1.1 -
* Исправлены ошибки
* Оптимизирован код
* Выдавание бонусов теперь по очереди
* Добавлено приветственное DHUD сообщение
*/

#include <amxmodx>
#include <fun>
#include <cstrike>
#include <hamsandwich>
#include <dhudmessage>
#include <colorchat>


#pragma semicolon 1

#define PLUGIN "Steam Bonus"
#define VERSION "1.1"
#define AUTHOR "Stimul"
#define PREFIX "[Steam бонус]"

#define get_bit(%1,%2) (%1 & (1 << (%2 & 31)))
#define set_bit(%1,%2) (%1 |= (1 << (%2 & 31)))
#define reset_bit(%1,%2) (%1 &= ~(1 << (%2 & 31)))

#define is_vip(%0) (get_user_flags(%0) & VIP_FLAGS == VIP_FLAGS)
#define NUM_MONEY 1000 // Количество денег
const MAX_CLIENTS = 32;
const VIP_FLAGS = ADMIN_LEVEL_H;

new bonus_cycle[MAX_CLIENTS + 1];
new g_bIsConnected;
new g_bIsSteam;

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);

register_event ("TextMsg", "event_restart", "a", "2=#Game_Commencing", "2=#Game_will_restart_in");
RegisterHam(Ham_CS_RoundRespawn, "player", "fw_CS_RoundRespawn_Post", true);
}

public event_restart()
{
arrayset(bonus_cycle, 0, sizeof bonus_cycle);
}

public client_putinserver(id)
{
set_bit(g_bIsConnected, id);
bonus_cycle[id] = 0;

if(is_user_steam(id)) {
set_bit(g_bIsSteam, id);
}
else {
reset_bit(g_bIsSteam, id);
}

set_task(3.0, "WelcomeMessage", id);
}

public client_disconnect(id)
{
if (get_bit(g_bIsConnected, id)) {
reset_bit(g_bIsConnected, id);
}
}


public WelcomeMessage(id)
{
if(get_bit(g_bIsConnected, id))
{
static szName[32];
get_user_name(id, szName, charsmax(szName));

set_dhudmessage(random(255), random(255), random(255), -1.0, 0.3, 0, 0.0, 5.0);

if (get_bit(g_bIsSteam, id)) {
show_dhudmessage(id, "Привет, %s!^nУ тебя Steam!^nкаждый раунд ты будешь получать бонусы", szName);
}
else {
show_dhudmessage(id, "Привет, %s!^nИграй со Steam и получай бонусы!", szName);
}
}
}

public fw_CS_RoundRespawn_Post(id)
{
if(get_bit(g_bIsConnected, id) && get_bit(g_bIsSteam, id) && !is_vip(id))
{
if (++bonus_cycle[id] > 5) {
bonus_cycle[id] = 1;
}

switch (bonus_cycle[id]) {
case 1: {
give_item(id, "weapon_flashbang");
cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
client_print_color(id, DontChange, "^3%s ^1Ты получаешь бонус ^4'2 Свето-Шумовые гранаты'", PREFIX);
}
case 2: {
give_item(id, "weapon_smokegrenade");
client_print_color(id, DontChange, "^3%s ^1Ты получаешь бонус ^4'Дымовую гранату'", PREFIX);
}
case 3: {
give_item(id, "weapon_hegrenade");
client_print_color(id, DontChange, "^3%s ^1Ты получаешь бонус ^4'Осколочную гранату'", PREFIX);
}
case 4: {
drop_weapons(id, 2);
give_item(id, "weapon_deagle");
cs_set_user_bpammo(id, CSW_DEAGLE, 35);
client_print_color(id, DontChange, "^3%s ^1Ты получаешь бонус ^4'Desert Eagle'", PREFIX);
}
case 5: {
cs_set_user_money(id, cs_get_user_money(id) + NUM_MONEY);
client_print_color(id, DontChange, "^3%s ^1Ты получаешь бонус ^4'%d$'", PREFIX, NUM_MONEY);
}
}
}
}

stock drop_weapons(id, dropwhat)
{
const PRIMARY_WEAPONS_BIT_SUM =
(1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<
CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90);
const SECONDARY_WEAPONS_BIT_SUM = (1<<CSW_P228)|(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE);

static weapons[32], num, i, weaponid;
num = 0;
get_user_weapons(id, weapons, num);

for (i = 0; i < num; i++)
{
weaponid = weapons[i];

if ((dropwhat == 1 && ((1<<weaponid) & PRIMARY_WEAPONS_BIT_SUM)) || (dropwhat == 2 && ((1<<weaponid) & SECONDARY_WEAPONS_BIT_SUM)))
{
static wname[32];
get_weaponname(weaponid, wname, sizeof wname - 1);
engclient_cmd(id, "drop", wname);
}
}
}

stock bool:is_user_steam(id)
{
static dp_pointer;

if(dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider")))
{
server_cmd("dp_clientinfo %d", id);
server_exec();
return (get_pcvar_num(dp_pointer) == 2) ? true : false;
}

new szAuthid[34];
get_user_authid(id, szAuthid, charsmax(szAuthid));

return (containi(szAuthid, "LAN") < 0);
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя generator
сообщение 18.6.2017, 10:00
Сообщение #123


Стаж: 28 дней

Сообщений: 47
Благодарностей: 8
Полезность: 128

Swidi, в таких случаях нужно локально всегда компилировать, об этом я уже писал в предыдущем сообщении amxmodx 1.8.3 только что проверил, всё скомпилировал без ошибок.

Отредактировал: generator, - 18.6.2017, 11:16
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Swidi
сообщение 18.6.2017, 11:22
Сообщение #124
Стаж: 3 года

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

Спасибо огромное, работает очень помог!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
7 страниц V  « 6 7
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 2 гостей читают эту тему: