Raised This Month: $51 Target: $400
 12% 

Bonux Box


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
NooTy
Member
Join Date: Sep 2019
Old 04-03-2020 , 04:59   Bonux Box
Reply With Quote #1

Hi I want to add the gold box in this plugin
Code:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <engine>
#include <fakemeta>
#include <fakemeta_util>
#include <fun>
#include <hamsandwich>

#define PLUGIN "Bonus Box"
#define VERSION "1.0"
#define AUTHOR "NoOTy^"

new CvarFurienSpeed, CvarAntiFurienSpeed;
new bool:HasSpeed[33];
new const ClassName[] = "BonusBox"
new const ClassName[] = "GoldBonusBox"
new Model[2][] = {
	"models/Furien_XP/box_furien.mdl",
	"models/Furien_XP/box_anti_furien.mdl"
	"models/Furien_XP/box_gold.mdl"
}

public plugin_init()
{	
	register_plugin( PLUGIN, VERSION, AUTHOR );
	register_event("HLTV", "RoundStart", "a", "1=0", "2=0")
	register_event("CurWeapon", "event_cur_weapon", "be", "1=1");
	register_event("DeathMsg", "Death", "a")
	RegisterHam(Ham_Spawn, "player", "Spawn", 1);
	register_forward(FM_CmdStart, "CmdStart")
	register_forward(FM_Touch, "Touch")
	CvarFurienSpeed = register_cvar("amx_bonusbox_furien_speed", "800");
	CvarAntiFurienSpeed = register_cvar("amx_bonusbox_anitfurien_speed", "400");
}

public plugin_precache() {
	for (new i = 0; i < sizeof Model; i++)
		precache_model(Model[i])
	
	Sprite = precache_model( "sprites/shockwave.spr")
	Sprite2 = precache_model( "sprites/blueflare2.spr")
}

public RoundStart()
{
	new ent = FM_NULLENT
	static string_class[] = "classname"
	while ((ent = engfunc(EngFunc_FindEntityByString, ent, string_class, ClassName))) 
		set_pev(ent, pev_flags, FL_KILLME)
	
	for(new id = 1; id < get_maxplayers();id++) {
		HasSpeed[id] = false
	}
	
}

public Spawn(id) {
	HasSpeed[id] = false
}

public Death()
{
	new victim = read_data(2);
	switch (random_num(1,8)) { 
		case 1: {
		AddBonusBox(victim)
	}
		case 2: {
		AddBonusBox(victim)
	}	
		case 3: {
		AddBonusBox(victim)
	}
		case 4: {
		AddBonusBox(victim)
	}
		case 5: {
		AddBonusBox(victim)
	}
		case 6: {
		AddBonusBox(victim)
	}	
		case 7: {
		AddBonusBox(victim)
	}
		case 8: {
		AddGoldenBonusBox(victim)
	}
	}
	return HAM_IGNORED
}

public CmdStart(id, uc_handle, seed) {
	new ent = fm_find_ent_by_class(id, ClassName)
	if(is_valid_ent(ent)) {
		new classname[32]	
		pev(ent, pev_classname, classname, 31)
		if (equal(classname, ClassName)) {
			
			if (pev(ent, pev_frame) >= 120)
				set_pev(ent, pev_frame, 0.0)
			else
				set_pev(ent, pev_frame, pev(ent, pev_frame) + 1.0)
			
			switch(pev(ent, pev_team))
			{
				case 1: 
				{ 	
				}	
				case 2: 
				{ 
				}
			}
		}
	}
}

public AddBonusBox(id)
{
	if(is_user_connected(id) && cs_get_user_team(id) != CS_TEAM_SPECTATOR) {
		new ent = fm_create_entity("info_target")
		new origin[3]
		get_user_origin(id, origin, 0)
		set_pev(ent,pev_classname, ClassName)
		switch(cs_get_user_team(id))
		{
			case CS_TEAM_T: { 
				engfunc(EngFunc_SetModel,ent, Model[2])
				set_pev(ent,pev_team, 2)
			}
			
			case CS_TEAM_CT: {
				engfunc(EngFunc_SetModel,ent, Model[1])	
				set_pev(ent,pev_team, 1)
			}
		}
		set_pev(ent,pev_mins,Float:{-10.0,-10.0,0.0})
		set_pev(ent,pev_maxs,Float:{10.0,10.0,25.0})
		set_pev(ent,pev_size,Float:{-10.0,-10.0,0.0,10.0,10.0,25.0})
		engfunc(EngFunc_SetSize,ent,Float:{-10.0,-10.0,0.0},Float:{10.0,10.0,25.0})
		
		set_pev(ent,pev_solid,SOLID_BBOX)
		set_pev(ent,pev_movetype,MOVETYPE_TOSS)
		
		new Float:fOrigin[3]
		IVecFVec(origin, fOrigin)
		set_pev(ent, pev_origin, fOrigin)
	}
}
public AddGoldenBonusBox(id)
{
	if(is_user_connected(id) && cs_get_user_team(id) != CS_TEAM_SPECTATOR) {
		new ent = fm_create_entity("info_target")
		new origin[3]
		get_user_origin(id, origin, 0)
		set_pev(ent,pev_classname, ClassName)
		switch(cs_get_user_team(id))
		{
			case CS_TEAM_T: { 
				engfunc(EngFunc_SetModel,ent, Model[0])
				set_pev(ent,pev_team, 2)
			}
			
			case CS_TEAM_CT: {
				engfunc(EngFunc_SetModel,ent, Model[0])	
				set_pev(ent,pev_team, 1)
			}
		}
		set_pev(ent,pev_mins,Float:{-10.0,-10.0,0.0})
		set_pev(ent,pev_maxs,Float:{10.0,10.0,25.0})
		set_pev(ent,pev_size,Float:{-10.0,-10.0,0.0,10.0,10.0,25.0})
		engfunc(EngFunc_SetSize,ent,Float:{-10.0,-10.0,0.0},Float:{10.0,10.0,25.0})
		
		set_pev(ent,pev_solid,SOLID_BBOX)
		set_pev(ent,pev_movetype,MOVETYPE_TOSS)
		
		new Float:fOrigin[3]
		IVecFVec(origin, fOrigin)
		set_pev(ent, pev_origin, fOrigin)
	}
}
public Touch(toucher, touched)
{
	if (!is_user_alive(toucher) || !pev_valid(touched))
		return FMRES_IGNORED
	
	new classname[32]	
	pev(touched, pev_classname, classname, 31)
	if (!equal(classname, ClassName))
		return FMRES_IGNORED
	
	if(get_user_team(toucher) == pev(touched, pev_team))
	{
		GiveBonus(toucher)
		set_pev(touched, pev_effects, EF_NODRAW)
		set_pev(touched, pev_solid, SOLID_NOT)
		remove_entity(touched);
	}
	return FMRES_IGNORED
}

public event_cur_weapon(id) {
	if(HasSpeed[id] && cs_get_user_team(id) == CS_TEAM_T && get_user_maxspeed(id) < get_pcvar_float(CvarFurienSpeed)) {
		set_user_maxspeed(id, get_pcvar_float(CvarFurienSpeed));
	}
	if(HasSpeed[id] && cs_get_user_team(id) == CS_TEAM_CT && get_user_maxspeed(id) < get_pcvar_float(CvarAntiFurienSpeed)) {
		set_user_maxspeed(id, get_pcvar_float(CvarAntiFurienSpeed));
	}
}

public GiveBonus(id)
{	
	if(cs_get_user_team(id) == CS_TEAM_T) 
	{
		switch (random_num(1,7)) 
		{
			case 1: 
			{
				new Health = 50
				fm_set_user_health(id, get_user_health(id) + Health)
				ChatColor(id, "!t[Furien]!g Ai primit!t viata!g.")
			}
			case 2:
			{
				if(!user_has_weapon(id, CSW_HEGRENADE)) {
					fm_give_item(id, "weapon_hegrenade")
				}
				else {
					cs_set_user_bpammo(id, CSW_HEGRENADE, cs_get_user_bpammo(id, CSW_HEGRENADE) + 1);
				}
				ChatColor(id, "!t[Furien]!g Ai primit o!t grenada HE!g.")
			}
			case 3:
			{
				if(!user_has_weapon(id, CSW_FLASHBANG)) {
					fm_give_item(id, "weapon_flashbang")
				}
				else {
					cs_set_user_bpammo(id, CSW_FLASHBANG, cs_get_user_bpammo(id, CSW_FLASHBANG) + 1);
				}
				ChatColor(id, "!t[Furien]!g Ai primit o!t grenada FB!g.")
			}
			case 4:
			{
				if(!user_has_weapon(id, CSW_SMOKEGRENADE)) {
					fm_give_item(id, "weapon_smokegrenade")
				}
				else {
					cs_set_user_bpammo(id, CSW_SMOKEGRENADE, cs_get_user_bpammo(id, CSW_SMOKEGRENADE) + 1);
				}
				ChatColor(id, "!t[Furien]!g Ai primit o!t grenada SG!g.")
			}
			case 5:
			{
				HasSpeed[id] = true;
				set_user_maxspeed(id, get_pcvar_float(CvarFurienSpeed));
				ChatColor(id, "!t[Furien]!g Ai primit!t viteza!g.")
				
			}
			case 6:
			{
				if(!is_user_admin(id)) {
					
				ChatColor(id, "!t[Furien]!g Ai primit!t 5XP!g.")
				}
			}	
			case 7:
			{
				new Money = 3000
				cs_set_user_money(id, cs_get_user_money(id) + Money)
				ChatColor(id, "!t[Furien]!g Ai primit!t 3000$!g.")
			}
		}
	}
	else
	{
		switch (random_num(1,6)) 
		{
			
			case 1: 
			{
				new Health = 50
				fm_set_user_health(id, get_user_health(id) + Health)
				ChatColor(id, "!t[Furien]!g Ai primit!t viata!g.")
			}
			case 2:
			{
				if(!user_has_weapon(id, CSW_HEGRENADE)) {
					fm_give_item(id, "weapon_hegrenade")
				}
				else {
					cs_set_user_bpammo(id, CSW_HEGRENADE, cs_get_user_bpammo(id, CSW_HEGRENADE) + 1);
				}
				ChatColor(id, "!t[Furien]!g Ai primit o!t grenada HE!g.")
			}
			case 3:
			{
				if(!user_has_weapon(id, CSW_FLASHBANG)) {
					fm_give_item(id, "weapon_flashbang")
				}
				else {
					cs_set_user_bpammo(id, CSW_FLASHBANG, cs_get_user_bpammo(id, CSW_FLASHBANG) + 1);
				}
				ChatColor(id, "!t[Furien]!g Ai primit o!t grenada FB!g.")
			}
			case 4:
			{
				if(!user_has_weapon(id, CSW_SMOKEGRENADE)) {
					fm_give_item(id, "weapon_smokegrenade")
				}
				else {
					cs_set_user_bpammo(id, CSW_SMOKEGRENADE, cs_get_user_bpammo(id, CSW_SMOKEGRENADE) + 1);
				}
				ChatColor(id, "!t[Furien]!g Ai primit o!t grenada SG!g.")
			}
			case 5:
			{
				HasSpeed[id] = true;
				set_user_maxspeed(id, get_pcvar_float(CvarAntiFurienSpeed));
				ChatColor(id, "!t[Furien]!g Ai primit!t viteza!g.")
				
			}
			case 6:
			{
				new Money = 3000
				cs_set_user_money(id, cs_get_user_money(id) + Money)
				ChatColor(id, "!t[Furien]!g Ai primit!t $3000!g.")
			}
		}
		
	}
	
}
NooTy is offline
OciXCrom
Veteran Member
Join Date: Oct 2013
Location: Macedonia
Old 04-03-2020 , 07:20   Re: Bonux Box
Reply With Quote #2

What is the "gold box"? What does it do? What is the issue you're facing?
__________________

Last edited by OciXCrom; 04-05-2020 at 09:55.
OciXCrom is offline
Send a message via Skype™ to OciXCrom
NooTy
Member
Join Date: Sep 2019
Old 04-03-2020 , 10:02   Re: Bonux Box
Reply With Quote #3

i will put my casses i want someone help me to put other things reason i'm not so good
NooTy is offline
NooTy
Member
Join Date: Sep 2019
Old 04-03-2020 , 10:03   Re: Bonux Box
Reply With Quote #4

and gold box will make like them but like 100hp and other 6k$ double
NooTy is offline
NooTy
Member
Join Date: Sep 2019
Old 04-05-2020 , 03:43   Re: Bonux Box
Reply With Quote #5

I Made It Thank You For Your Comment ...
NooTy is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 20:35.


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