AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Plugin/Gameplay Ideas and Requests (https://forums.alliedmods.net/forumdisplay.php?f=60)
-   -   [CS:GO] I created this plugin to block weapon buy (https://forums.alliedmods.net/showthread.php?t=341554)

shadow10 01-30-2023 10:06

[CS:GO] I created this plugin to block weapon buy
 
I need to know if this works properly without any mistakes !

I'm trying to get the round number and if the round is 1 or 16 it

will block the buy of the specific weapons. The block buy code

works. But when im tryin to get the round number sometimes it

works sometimes not. EDIT : i didnt try this code so i wanna

make sure it works properly.

CODE :

public Action CS_OnBuyCommand(int iClient, const char[] chWeapon)
{

if (GameRules_GetProp("m_totalRoundsPlayed") == 0 || GameRules_GetProp("m_totalRoundsPlayed") == 15)
{
char blocked_weapons[][] = { "ump45", "p90", "mp9", "mp7", "mp5sd", "mac10", "bizon", "ssg08", "sg556", "scar20", "m4a1_silencer", "m4a1", "galilar", "g3sg1", "famas", "awp", "aug", "ak47", "xm1014", "sawedoff", "nova", "negev", "mag7", "m249" };
for (int i = 0; i < sizeof(blocked_weapons); i++)
{
if (StrEqual(chWeapon, blocked_weapons[i]))
{
PrintToChat(iClient, "'You're rich BUT I FORBID YOU TO BUY' - shadowbringer.");
return Plugin_Handled;
}
}
}
return Plugin_Continue; // Continue as normal.
}

im using GameRules_GetProp("m_totalRoundsPlayed") == 0 set to 0 because i think to get the first round it means that totalroundplayed needs to be 0. IF IM WRONG CORRECT ME.

Bacardi 01-30-2023 10:51

Re: [CS:GO] I created this plugin to block weapon buy
 
Quote:

Originally Posted by shadow10 (Post 2798283)
I need to know if this works properly without any mistakes !

... i didnt try this code so i wanna

make sure it works properly.

You need test. You need debug.
Making this work for others sound like you are lazy.

*edit
Little tip
Use PrintToChatAll("value %i", GameRules_GetProp("m_totalRoundsPlayed"));

shadow10 01-30-2023 14:20

Re: [CS:GO] I created this plugin to block weapon buy
 
Quote:

Originally Posted by Bacardi (Post 2798289)
You need test. You need debug.
Making this work for others sound like you are lazy.

*edit
Little tip
Use PrintToChatAll("value %i", GameRules_GetProp("m_totalRoundsPlayed"));


I tested it and it worked. I made it but i wasnt sure if it was workin', btw why shall i use 'PrintToChatAll("value %i", GameRules_GetProp("m_totalRoundsPlayed"));' ??

Bacardi 01-30-2023 15:20

Re: [CS:GO] I created this plugin to block weapon buy
 
Quote:

Originally Posted by shadow10 (Post 2798303)
I tested it and it worked. I made it but i wasnt sure if it was workin', btw why shall i use 'PrintToChatAll("value %i", GameRules_GetProp("m_totalRoundsPlayed"));' ??

Because you are making more questions than actual testing.

If you do not know what will happen in code -> Print output of result.

Grey83 02-01-2023 06:39

Re: [CS:GO] I created this plugin to block weapon buy
 
I would do something like this:
PHP Code:

#pragma semicolon 1
#pragma newdecls required

#include <cstrike>
#include <sdktools_gamerules>

static const char WPN[][] = {"ump45""p90""mp9""mp7""mp5sd""mac10""bizon""ssg08""sg556""scar20""m4a1_silencer""m4a1""galilar""g3sg1""famas""awp""aug""ak47""xm1014""sawedoff""nova""negev""mag7""m249"};

bool bBlock;

public 
void OnPluginStart()
{
    
HookEvent("round_start"Event_StartEventHookMode_PostNoCopy);
    
CheckRoundNum();
}

public 
void Event_Start(Event event, const char[] namebool dontBroadcast)
{
    
CheckRoundNum();
}

stock void CheckRoundNum()
{
    
int round GameRules_GetProp("m_totalRoundsPlayed");
    
bBlock round == || round == 15;
    
PrintToChatAll("%s allowed"bBlock "Only pistols" "All guns are");
}

public 
Action CS_OnBuyCommand(int client, const char[] weapon)
{
    if(!
bBlock)
        return 
Plugin_Continue;

    for(
int isizeof(WPN); i++) if(!strcmp(weaponWPN[i]))
    {
        
PrintToChat(client"'You're rich BUT I FORBID YOU TO BUY' - shadowbringer.");
        return 
Plugin_Handled;
    }

    return 
Plugin_Continue;




All times are GMT -4. The time now is 14:06.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.