View Single Post
puma133
Member
Join Date: Jun 2009
Old 12-02-2020 , 15:56   Re: [INS] Guns Menu - modifacation
Reply With Quote #8

dr_lex no, it does not work!
I made a dump netprops.txt and datamaps.txt

I did through the function GivePlayerItem and it works ,but there is still weapon kits doesn't work

Code:
#pragma semicolon 1
#pragma newdecls required

#include <sdktools_functions>

static const char TYPE[][] = {"give_upgrade", "give_gear"};

enum
{
    T_Upgrade,
    T_Gear
};

Menu hMenu;

public void OnPluginStart()
{
    RegConsoleCmd("sm_guns", Cmd_WeaponMenu);

    hMenu = new Menu(Handler_WeaponMenu);
    hMenu.SetTitle("Guns Menu");
    hMenu.AddItem("", "AT4");
    hMenu.AddItem("", "RPG");
    hMenu.AddItem("", "MK18 AimPoint");
    hMenu.AddItem("", "MP5 (test)");
    hMenu.ExitButton = false;
}

public Action Cmd_WeaponMenu(int client, int args)
{
    if(client && IsClientInGame(client) && !IsFakeClient(client)) hMenu.Display(client, 15);
    return Plugin_Handled;
}

public int Handler_WeaponMenu(Menu menu, MenuAction action, int client, int param)
{
    if(action == MenuAction_Select)
    {
        switch(param)
        {
            case 0:    GivePlayerItem(client, "weapon_at4");
            case 1:    GivePlayerItem(client, "weapon_rpg7");
            case 2:
            {
                GivePlayerItem(client, "weapon_mk18");
                GivePlayerItem(client, "upgrade_optic_aimpoint"); //модификация
            }
            case 3:
            {
                GivePlayerItem(client, "weapon_mp5");
                UnCheatCmd(client, T_Upgrade, "ammo_ap_mp5");
                UnCheatCmd(client, T_Upgrade, "barrel_silencer_sec1");
                UnCheatCmd(client, T_Upgrade, "optic_aimpoint");
                UnCheatCmd(client, T_Upgrade, "siderail_flashlight_band");
                UnCheatCmd(client, T_Gear, "sec_nightvision");
                UnCheatCmd(client, T_Gear, "sec_chest_carrier");
                UnCheatCmd(client, T_Gear, "sec_heavy_armor");
            }
        }
        GivePlayerItem(client, "ammo 5");
    }
}

stock void UnCheatCmd(int client, int type, char[] arg)
{
    int flags = GetCommandFlags(TYPE[type]);
    SetCommandFlags(TYPE[type], flags & ~FCVAR_CHEAT);
    FakeClientCommand(client, "%s %s", TYPE[type], arg);
    SetCommandFlags(TYPE[type], flags);
}
Weapon kits doesn't work:
Code:
            case 3:
            {
                GivePlayerItem(client, "weapon_mp5");
                UnCheatCmd(client, T_Upgrade, "ammo_ap_mp5");
                UnCheatCmd(client, T_Upgrade, "barrel_silencer_sec1");
                UnCheatCmd(client, T_Upgrade, "optic_aimpoint");
                UnCheatCmd(client, T_Upgrade, "siderail_flashlight_band");
                UnCheatCmd(client, T_Gear, "sec_nightvision");
                UnCheatCmd(client, T_Gear, "sec_chest_carrier");
                UnCheatCmd(client, T_Gear, "sec_heavy_armor");
            }
Attached Files
File Type: zip dump_netprops_datamaps.zip (187.1 KB, 58 views)

Last edited by puma133; 12-02-2020 at 16:54.
puma133 is offline