Cerere plugin Zp_dm_items [JUNKY]

Categoria cu cereri de pluginuri si nu numai.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Forum rules
Accesează link-ul pentru a putea vedea regulile forumului

Daca doriti sa vi se modifice un plugin, va rugam postati aici .
Post Reply
User avatar
Junky444
Membru, skill +1
Membru, skill +1
Posts: 412
Joined: 01 Feb 2014, 17:51
Detinator Steam: Nu
CS Status: Citesc forumul eXtreamCS.com...!
Has thanked: 30 times
Been thanked: 4 times
Contact:

13 Apr 2014, 20:12

Numele pluginului cerut: zp_dm_items
Descriere plugin cerut: Cu ajutorul acestui plugin puteti pune cufere pe server care contin arme/ammo/grenazi/nigh Vizion etc ...
Alte informatii: Vreau sa imi faceti pluginul sa mearga si pe serverele normale nu doar pe zombie plague si sa imi scoateti din plugin ammo .... adica plyeri sa castige tot ce contine acest plugin dar nu ammo , daca nu merge sa scoateti ammo , puteti pune in loc de ammo bani?
MULTUMESC
| Afiseaza codul
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fakemeta_util>
#include <zombieplague>
#include <hamsandwich>

#define PLUGIN "[ZP] DM Item's"
#define VERSION "0.1.2"
#define AUTHOR "PomanoB"

#define OFFSET_FLASH_AMMO 387
#define OFFSET_HE_AMMO 388
#define OFFSET_SMOKE_AMMO 389

new g_Menu

new g_MapFile[64]

new const item_class_name[] = "dm_item"

new g_models[][] = {"models/cadou/paste1.mdl", "models/cadou/paste2.mdl", "models/cadou/paste3.mdl"}

new const g_desription[9][] = {"Ai primit NIGHT VIZION", "Ai primit bonus HP",
	"BONUS 20 pachete de munitie", "BONUS armor 200", "BONUS pachetul de grenade",
	"BONUS item XM1014!", "BONUS item Deagle!", "BONUS item m249!", "EXTRA ITEM, ANTIDOTE"}

public plugin_precache()
{
	for (new i = 0; i < sizeof g_models; i++)
		precache_model(g_models)	
}

public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	register_forward(FM_Touch, "fwd_Touch")
	
	register_event("HLTV", "round_start", "a", "1=0", "2=0")
	
	register_clcmd("amx_dm_items_menu", "display_items_menu", ADMIN_CFG, " - display item's menu")
	
	g_Menu = menu_create("DM Item's Menu","menu_item")
	
	menu_additem(g_Menu, "Add Item", "1")
	menu_additem(g_Menu, "Delete Item", "2")
	menu_additem(g_Menu, "Delete All Items", "3")
	menu_additem(g_Menu, "Respawn All", "4")
	menu_additem(g_Menu, "Save All Coordinats", "5")
	
}

public plugin_cfg()
{
	new map[32], config[32]
	
	get_mapname(map, 31)
	get_configsdir(config, 31)
	
	format(g_MapFile, 63, "%s/dm_items",config, map)
	if (!dir_exists(g_MapFile))
		mkdir(g_MapFile)
	
	format(g_MapFile, 63, "%s/%s.cfg",config, map)

	if (file_exists(g_MapFile))

	
	if (file_exists(g_MapFile)) 
	{
		new data[124], len
		new line = 0
		new coord[3][8]
		new origin[3]
				
		while((line = read_file(g_MapFile , line , data , 123 , len))) 
		{
			if (len < 2 || data[0] == ';' || data[0] == '/') 
				continue
			
			parse(data, coord[0], 7, coord[1], 7, coord[2], 7)
			
			origin[0] = str_to_num(coord[0])
			origin[1] = str_to_num(coord[1])
			origin[2] = str_to_num(coord[2])
			
			addItem(origin)
		}
	}
	else
		log_amx("Can't find cfg file for this map")
}

public display_items_menu(id, level, cid)
{
	if (cmd_access(id, level, cid, 0))
		menu_display(id, g_Menu, 0)
	return PLUGIN_HANDLED
}

public menu_item(id, menu, item)
{
	if( item < 0 ) 
		return PLUGIN_CONTINUE
 
	new cmd[3]
	new maccess, callback
 
	menu_item_getinfo(menu, item, maccess, cmd,2,_,_, callback)
	new iChoice = str_to_num(cmd)
	
	switch(iChoice)
	{
		case 1:
		{
			new origin[3]
			get_user_origin(id, origin, 3)
			addItem(origin)
		}
		case 2:
			deleteItem(id)
		case 3:
			deleteAllItems()
		case 4:
			round_start()
		case 5:
			saveAll()
	}
	menu_display(id, g_Menu, 0)
	
	return PLUGIN_CONTINUE
}

public addItem(origin[3])
{
	new ent = fm_create_entity("info_target")
	set_pev(ent, pev_classname, item_class_name)
	
	engfunc(EngFunc_SetModel,ent, g_models[random_num(0, sizeof g_models - 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_FLY)
	
	new Float:fOrigin[3]
	IVecFVec(origin, fOrigin)
	set_pev(ent, pev_origin, fOrigin)
	
	set_pev(ent,pev_renderfx,kRenderFxGlowShell)
	switch(random_num(1,4))
	{
		case 1: set_pev(ent,pev_rendercolor,Float:{0.0,0.0,255.0})
		case 2: set_pev(ent,pev_rendercolor,Float:{0.0,255.0,0.0})
		case 3: set_pev(ent,pev_rendercolor,Float:{255.0,0.0,0.0})
		case 4: set_pev(ent,pev_rendercolor,Float:{255.0,255.0,255.0})
	}
}

public deleteItem(id)
{
	new ent, a_body
	get_user_aiming(id, ent, a_body)
	if (!pev_valid(ent))
		return PLUGIN_CONTINUE
		
	new class[32]
	pev(ent, pev_classname, class, 31)
	if (!equal(class, item_class_name))
		return PLUGIN_CONTINUE
	
	set_pev(ent, pev_flags, FL_KILLME)
	
	return PLUGIN_CONTINUE
}


public deleteAllItems()
{
	new ent = FM_NULLENT
	static string_class[] = "classname"
	while ((ent = engfunc(EngFunc_FindEntityByString, ent, string_class, item_class_name))) 
		set_pev(ent, pev_flags, FL_KILLME)
	
	delete_file(g_MapFile)
}

public saveAll()
{
	delete_file(g_MapFile)
	
	new ent = FM_NULLENT
	static string_class[] = "classname"
	
	new origin[3], Float:fOrigin[3], line[64]
	
	while ((ent = engfunc(EngFunc_FindEntityByString, ent, string_class, item_class_name))) 
	{
		pev(ent, pev_origin, fOrigin)
		
		FVecIVec(fOrigin, origin)
		
		formatex(line, 63, "%d %d %d", origin[0], origin[1], origin[2])
		write_file(g_MapFile, line)
	}
}

public fwd_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, item_class_name))
		return FMRES_IGNORED
	
	
	
	give_item(toucher)
	set_pev(touched, pev_effects, EF_NODRAW)
	set_pev(touched, pev_solid, SOLID_NOT)
	
	return FMRES_IGNORED
	
}

public removeEntity(ent)
{
	if (pev_valid(ent))
		engfunc(EngFunc_RemoveEntity, ent)
}

public give_item(id)
{
	new zombie 
	zombie = zp_get_user_zombie(id)
	
	new i = random_num(0, (zombie ? 2 : 7))
	switch (i)
	{
		case 0:
			if (zombie)
			{
				if (!zp_get_user_last_zombie(id) && !zp_is_survivor_round() && !zp_is_swarm_round())
				{
					zp_disinfect_user(id)
				}
				
			}
			else
			{
				if (!zp_get_user_nightvision(id))
				{
					zp_set_user_nightvision(id, 1)
				}
				
			}
			
		case 1:
			fm_set_user_health(id, get_user_health(id) + (zombie ? 2000 : 500))
		case 2:
			add_ammo(id, 20)
		case 3:
			fm_set_user_armor(id, get_user_armor(id) + 200)
		case 4:
		{
			fm_give_item(id, "weapon_flashbang")
			fm_give_item(id, "weapon_smokegrenade")
			fm_give_item(id, "weapon_hegrenade")
			
			set_pdata_int(id, OFFSET_FLASH_AMMO, 3)
			set_pdata_int(id, OFFSET_HE_AMMO, 3)
			set_pdata_int(id, OFFSET_SMOKE_AMMO, 3)
		}
		case 5:
			if (!user_has_weapon(id, CSW_XM1014))
			{
				fm_give_item(id, "weapon_xm1014")
                                fm_give_item(id, "weapon_xm1014")
                                fm_give_item(id, "weapon_xm1014")
                                fm_give_item(id, "weapon_xm1014")
                                fm_give_item(id, "weapon_xm1014")
				
			}
		case 6:
			if (!user_has_weapon(id, CSW_DEAGLE))
			{
				fm_give_item(id, "weapon_deagle")
                                fm_give_item(id, "weapon_deagle")
                                fm_give_item(id, "weapon_deagle")
                                fm_give_item(id, "weapon_deagle")
                                fm_give_item(id, "weapon_deagle")
				
		        }
		case 7:
                        if (!user_has_weapon(id, CSW_M249))
			{
				fm_give_item(id, "weapon_m249")
                                fm_give_item(id, "weapon_m249")
                                fm_give_item(id, "weapon_m249")
                                fm_give_item(id, "weapon_m249")
                                fm_give_item(id, "weapon_m249")
				
			}
	}
	if (i || !zombie)
		client_print(id, print_chat, "[KILLING FLOOR] %s", g_desription)
	else
		client_print(id, print_chat, "[KILLING FLOOR] %s", g_desription[8])
}

public round_start()
{	
	new ent = FM_NULLENT
	static string_class[] = "classname"
	while ((ent = engfunc(EngFunc_FindEntityByString, ent, string_class, item_class_name)))
	{
		set_pev(ent, pev_effects, 0)
		set_pev(ent, pev_solid, SOLID_BBOX)
	}
}

public add_ammo(id, count)
{
	zp_set_user_ammo_packs(id, zp_get_user_ammo_packs(id) + count)
	new pluginid = is_plugin_loaded("[ZP] Stats")
	if (pluginid != -1) 
	{
		new filename[64]
		get_plugin(pluginid, filename, 63)
	
		if (callfunc_begin("zp_stats_add_packs", filename) == 1)
		{
			callfunc_push_int(id)
			callfunc_push_int(count)
			callfunc_end()
		}
	}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1055\\ f0\\ fs16 \n\\ par }
*/
Image
Image
Image
RoyalServer
User avatar
Junky444
Membru, skill +1
Membru, skill +1
Posts: 412
Joined: 01 Feb 2014, 17:51
Detinator Steam: Nu
CS Status: Citesc forumul eXtreamCS.com...!
Has thanked: 30 times
Been thanked: 4 times
Contact:

09 May 2014, 22:35

UPPPPPPPPPPPPPP
Image
Image
Image
User avatar
alkaline
Fost moderator
Fost moderator
Posts: 734
Joined: 18 Jul 2012, 09:42
Detinator Steam: Da
Reputatie: Fost Moderator ajutator
Nume anterior: lucylucy
Fond eXtream: 0
Location: Caras-Severin
Has thanked: 5 times
Been thanked: 296 times

10 May 2014, 12:37

| Afiseaza codul
/* Plugin generated by AMXX-Studio */

#include <amxmisc>
#include <cstrike>
#include <fakemeta>
#include <fakemeta_util>
#include <hamsandwich>

#define PLUGIN "DM Item's"
#define VERSION "0.1.2"
#define AUTHOR "PomanoB"

#define OFFSET_FLASH_AMMO 387
#define OFFSET_HE_AMMO 388
#define OFFSET_SMOKE_AMMO 389

new g_Menu

new g_MapFile[64]

new const item_class_name[] = "dm_item"

new g_models[][] = {"models/cadou/paste1.mdl", "models/cadou/paste2.mdl", "models/cadou/paste3.mdl"}

new const g_desription[9][] = {"Ai primit NIGHT VIZION", "Ai primit bonus HP",
	"BONUS 20 pachete de munitie", "BONUS armor 200", "BONUS pachetul de grenade",
	"BONUS item XM1014!", "BONUS item Deagle!", "BONUS item m249!", "EXTRA ITEM, ANTIDOTE"}

public plugin_precache()
{
	for (new i = 0; i < sizeof g_models; i++)
		precache_model(g_models)	
}

public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	register_forward(FM_Touch, "fwd_Touch")
	
	register_event("HLTV", "round_start", "a", "1=0", "2=0")
	
	register_clcmd("amx_dm_items_menu", "display_items_menu", ADMIN_CFG, " - display item's menu")
	
	g_Menu = menu_create("DM Item's Menu","menu_item")
	
	menu_additem(g_Menu, "Add Item", "1")
	menu_additem(g_Menu, "Delete Item", "2")
	menu_additem(g_Menu, "Delete All Items", "3")
	menu_additem(g_Menu, "Respawn All", "4")
	menu_additem(g_Menu, "Save All Coordinats", "5")
	
}

public plugin_cfg()
{
	new map[32], config[32]
	
	get_mapname(map, 31)
	get_configsdir(config, 31)
	
	format(g_MapFile, 63, "%s/dm_items",config, map)
	if (!dir_exists(g_MapFile))
		mkdir(g_MapFile)
	
	format(g_MapFile, 63, "%s/%s.cfg",config, map)

	if (file_exists(g_MapFile))

	
	if (file_exists(g_MapFile)) 
	{
		new data[124], len
		new line = 0
		new coord[3][8]
		new origin[3]
				
		while((line = read_file(g_MapFile , line , data , 123 , len))) 
		{
			if (len < 2 || data[0] == ';' || data[0] == '/') 
				continue
			
			parse(data, coord[0], 7, coord[1], 7, coord[2], 7)
			
			origin[0] = str_to_num(coord[0])
			origin[1] = str_to_num(coord[1])
			origin[2] = str_to_num(coord[2])
			
			addItem(origin)
		}
	}
	else
		log_amx("Can't find cfg file for this map")
}

public display_items_menu(id, level, cid)
{
	if (cmd_access(id, level, cid, 0))
		menu_display(id, g_Menu, 0)
	return PLUGIN_HANDLED
}

public menu_item(id, menu, item)
{
	if( item < 0 ) 
		return PLUGIN_CONTINUE
 
	new cmd[3]
	new maccess, callback
 
	menu_item_getinfo(menu, item, maccess, cmd,2,_,_, callback)
	new iChoice = str_to_num(cmd)
	
	switch(iChoice)
	{
		case 1:
		{
			new origin[3]
			get_user_origin(id, origin, 3)
			addItem(origin)
		}
		case 2:
			deleteItem(id)
		case 3:
			deleteAllItems()
		case 4:
			round_start()
		case 5:
			saveAll()
	}
	menu_display(id, g_Menu, 0)
	
	return PLUGIN_CONTINUE
}

public addItem(origin[3])
{
	new ent = fm_create_entity("info_target")
	set_pev(ent, pev_classname, item_class_name)
	
	engfunc(EngFunc_SetModel,ent, g_models[random_num(0, sizeof g_models - 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_FLY)
	
	new Float:fOrigin[3]
	IVecFVec(origin, fOrigin)
	set_pev(ent, pev_origin, fOrigin)
	
	set_pev(ent,pev_renderfx,kRenderFxGlowShell)
	switch(random_num(1,4))
	{
		case 1: set_pev(ent,pev_rendercolor,Float:{0.0,0.0,255.0})
		case 2: set_pev(ent,pev_rendercolor,Float:{0.0,255.0,0.0})
		case 3: set_pev(ent,pev_rendercolor,Float:{255.0,0.0,0.0})
		case 4: set_pev(ent,pev_rendercolor,Float:{255.0,255.0,255.0})
	}
}

public deleteItem(id)
{
	new ent, a_body
	get_user_aiming(id, ent, a_body)
	if (!pev_valid(ent))
		return PLUGIN_CONTINUE
		
	new class[32]
	pev(ent, pev_classname, class, 31)
	if (!equal(class, item_class_name))
		return PLUGIN_CONTINUE
	
	set_pev(ent, pev_flags, FL_KILLME)
	
	return PLUGIN_CONTINUE
}


public deleteAllItems()
{
	new ent = FM_NULLENT
	static string_class[] = "classname"
	while ((ent = engfunc(EngFunc_FindEntityByString, ent, string_class, item_class_name))) 
		set_pev(ent, pev_flags, FL_KILLME)
	
	delete_file(g_MapFile)
}

public saveAll()
{
	delete_file(g_MapFile)
	
	new ent = FM_NULLENT
	static string_class[] = "classname"
	
	new origin[3], Float:fOrigin[3], line[64]
	
	while ((ent = engfunc(EngFunc_FindEntityByString, ent, string_class, item_class_name))) 
	{
		pev(ent, pev_origin, fOrigin)
		
		FVecIVec(fOrigin, origin)
		
		formatex(line, 63, "%d %d %d", origin[0], origin[1], origin[2])
		write_file(g_MapFile, line)
	}
}

public fwd_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, item_class_name))
		return FMRES_IGNORED
	
	
	
	give_item(toucher)
	set_pev(touched, pev_effects, EF_NODRAW)
	set_pev(touched, pev_solid, SOLID_NOT)
	
	return FMRES_IGNORED
	
}

public removeEntity(ent)
{
	if (pev_valid(ent))
		engfunc(EngFunc_RemoveEntity, ent)
}

public give_item(id)
{	
	new i = random_num(1, 7)
	switch (i)
	{
			
		case 1:
			fm_set_user_health(id, get_user_health(id) + 50)
		case 2:
			add_money(id, 3000)
		case 3:
			fm_set_user_armor(id, get_user_armor(id) + 200)
		case 4:
		{
			fm_give_item(id, "weapon_flashbang")
			fm_give_item(id, "weapon_smokegrenade")
			fm_give_item(id, "weapon_hegrenade")
			
			set_pdata_int(id, OFFSET_FLASH_AMMO, 3)
			set_pdata_int(id, OFFSET_HE_AMMO, 3)
			set_pdata_int(id, OFFSET_SMOKE_AMMO, 3)
		}
		case 5:
			if (!user_has_weapon(id, CSW_XM1014))
			{
				fm_give_item(id, "weapon_xm1014")
                                fm_give_item(id, "weapon_xm1014")
                                fm_give_item(id, "weapon_xm1014")
                                fm_give_item(id, "weapon_xm1014")
                                fm_give_item(id, "weapon_xm1014")
				
			}
		case 6:
			if (!user_has_weapon(id, CSW_DEAGLE))
			{
				fm_give_item(id, "weapon_deagle")
                                fm_give_item(id, "weapon_deagle")
                                fm_give_item(id, "weapon_deagle")
                                fm_give_item(id, "weapon_deagle")
                                fm_give_item(id, "weapon_deagle")
				
		        }
		case 7:
                        if (!user_has_weapon(id, CSW_M249))
			{
				fm_give_item(id, "weapon_m249")
                                fm_give_item(id, "weapon_m249")
                                fm_give_item(id, "weapon_m249")
                                fm_give_item(id, "weapon_m249")
                                fm_give_item(id, "weapon_m249")
				
			}
	}
}

public round_start()
{	
	new ent = FM_NULLENT
	static string_class[] = "classname"
	while ((ent = engfunc(EngFunc_FindEntityByString, ent, string_class, item_class_name)))
	{
		set_pev(ent, pev_effects, 0)
		set_pev(ent, pev_solid, SOLID_BBOX)
	}
}

public add_money(id, count)
{
	cs_set_user_money(id, cs_get_user_money(id) + count)
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1055\\ f0\\ fs16 \n\\ par }
*/
Post Reply

Return to “Cereri”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 35 guests