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

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

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

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

Помогите вырезать сис-му выдачи при спавне

Статус пользователя E1zy
сообщение 17.12.2016, 15:14
Сообщение #1
Стаж: 9 лет 6 месяцев

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

Привествую всех!
Пробовал вырезать сис-му выдачи deagle + гранат, но почему-то не получилось. Вроде всё вырезал, ошибок при компиляции не было.
Вот, обращаюсь к скриптерам, чтобы по возможности помогли :)
Код ниже, откуда нужно вырезать эту сис-му.
Код

Код
#include <amxmodx>
#include <fakemeta>
#include <fun>
#include <cstrike>
#include <hamsandwich>

#pragma semicolon 1

#define MONEY_NUM_ADD 500 // Сколько выдавать денег при спавне.
#define MONEY_MIN_ADD 8000 // Если у игрока на счету больше чем значение данного макроса, то ему выдаваться деньги не будут.

#define PDATA_SAFE 2
#define MSG_SAY_TEXT 76
#define m_iAccount 115

new g_iRoundNum, g_iMaxPlayers;

public plugin_init()
{
    register_plugin("Vip public", "v0.1", "Freedo.m");
    register_logevent("LogEvent_Restart", 2, "1=Game_Commencing", "1&Restart_Round_");
    register_event("HLTV", "Event_HLTV", "a", "1=0", "2=0");
    RegisterHam(Ham_Spawn, "player", "Ham_PlayerSpawn_Post", 1);
    register_clcmd("say /vips", "ClCmd_Vips");
    register_clcmd("say_team /vips", "ClCmd_Vips");
    g_iMaxPlayers = get_maxplayers();
}

public LogEvent_Restart() g_iRoundNum = 0;
public Event_HLTV() g_iRoundNum++;

public Ham_PlayerSpawn_Post(id)
{
    if(is_user_alive(id) && get_user_flags(id) & ADMIN_LEVEL_H)
    {
        switch(g_iRoundNum)
        {
            case 0: return;
            case 1: return;
            case 2: fm_give_item(id, "item_assaultsuit");
            default:
            {
                new iMoney = fm_get_user_money(id);
                if(iMoney < MONEY_MIN_ADD) fm_set_user_money(id, iMoney + MONEY_NUM_ADD);
                get_player_deagle(id);
                fm_give_item(id, "item_assaultsuit");
                fm_give_item(id, "weapon_hegrenade");
                fm_give_item(id, "weapon_flashbang");
                fm_give_item(id, "weapon_flashbang");
                fm_give_item(id, "weapon_smokegrenade");
                fm_give_item(id, "ammo_50ae");
                fm_give_item(id, "ammo_50ae");
                fm_give_item(id, "ammo_50ae");
                fm_give_item(id, "ammo_50ae");
                fm_give_item(id, "ammo_50ae");
            }
        }
    }
}

public get_player_deagle(id)
{
    const dropped_weapons = (1 << CSW_GLOCK18)|(1 << CSW_USP)|(1 << CSW_P228)|(1 << CSW_ELITE)|(1 << CSW_FIVESEVEN);
    static sWpName[32], iWeapons[32], iNum, i;
    get_user_weapons(id, iWeapons, iNum);
    for(i = 0; i < iNum; i++)
    {
        if((1 << iWeapons[i]) & dropped_weapons)
        {
            get_weaponname(iWeapons[i], sWpName, charsmax(sWpName));
            engclient_cmd(id, "drop", sWpName);
        }
    }
    give_item(id, "weapon_deagle");
    cs_set_user_bpammo(id, CSW_DEAGLE, 35);
}  

public ClCmd_Vips(id)
{
    new szMessage[256], szName[32], iNum;
    formatex(szMessage, charsmax(szMessage), "^4VIP Online:^1");
    for(new i = 1; i <= g_iMaxPlayers; i++)
    {
        if(is_user_connected(i) && (get_user_flags(i) & ADMIN_LEVEL_H))
        {
            iNum++;
            get_user_name(i, szName, charsmax(szName));
            formatex(szMessage, charsmax(szMessage), "%s %s,", szMessage, szName);
        }
    }
    PrintChat(id, "%s", szMessage);
    return PLUGIN_HANDLED;
}

fm_get_user_money(id)
{
    if(pev_valid(id) != PDATA_SAFE) return -1;
    return get_pdata_int(id, m_iAccount);
}

fm_set_user_money(id, iNum)
{
    if(pev_valid(id) != PDATA_SAFE) return 0;
    set_pdata_int(id, m_iAccount, iNum);
    return 1;
}

fm_give_item(id, const szItem[])
{
    if(!equal(szItem, "weapon_", 7) && !equal(szItem, "ammo_", 5) && !equal(szItem, "item_", 5) && !equal(szItem, "tf_weapon_", 10)) return 0;
    new iEntity = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, szItem));
    if(!pev_valid(iEntity)) return 0;
    new Float:fOrigin[3];
    pev(id, pev_origin, fOrigin);
    set_pev(iEntity, pev_origin, fOrigin);
    set_pev(iEntity, pev_spawnflags, pev(iEntity, pev_spawnflags) | SF_NORESPAWN);
    dllfunc(DLLFunc_Spawn, iEntity);
    new iSolid = pev(iEntity, pev_solid);
    dllfunc(DLLFunc_Touch, iEntity, id);
    if(pev(iEntity, pev_solid) == iSolid)
    {
        engfunc(EngFunc_RemoveEntity, iEntity);
        return -1;
    }
    return iEntity;
}

PrintChat(const id, const szMessage[], any:...)
{
    if(!is_user_connected(id)) return;
    new szBuffer[190];
    vformat(szBuffer, charsmax(szBuffer), szMessage, 3);

    message_begin(MSG_ONE, MSG_SAY_TEXT, _, id);
    write_byte(id);
    write_string(szBuffer);
    message_end();
}

Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Jelly
сообщение 17.12.2016, 16:00
Сообщение #2


Стаж: 9 лет 6 месяцев
Город: Красноярск

Сообщений: 202
Благодарностей: 42
Полезность: 106

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

Лучше в пример так сделать:

Код:

give_item(id,"weapon_hegrenade") - гранаты
give_item(id,"weapon_flashbang") - гранаты
give_item(id,"weapon_flashbang") - гранаты
give_item(id,"weapon_smokegrenade") - гранаты
set_user_armor(id, get_user_armor(id) + 100); - броня
give_item(id, "weapon_deagle") - дигл
cs_set_user_bpammo(id, CSW_DEAGLE, 35) - патроны


А лучше в лс напиши помогу.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя E1zy
сообщение 17.12.2016, 17:17
Сообщение #3
Стаж: 9 лет 6 месяцев

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

RussianBear, Я и сам знаю, можно поставить в меню выбора оружий к каждому пункту, но, я хочу чтобы при спавне выдавало.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: