Modificare BonusBox

Cereri de pluginuri noi, skinuri in CS, etc.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Post Reply
User avatar
wicked.
Membru, skill 0
Membru, skill 0
Posts: 55
Joined: 22 Feb 2013, 13:23
Detinator Steam: Da
CS Status: Cautam admini
Detinator server CS: MIX/CS.XTREMEPLAY.RO
Has thanked: 9 times
Contact:

26 Apr 2013, 19:44

Salut,
As dorii si eu o modificare la acest plugin.
As dorii sa fie adaugat sa primesti bonus si 5 credite
Adica cand omori un furien/anti-furien intr-un cadou sa exista bonus 5 credite
| Afiseaza codul
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fakemeta_util>
#include <hamsandwich>
#include <cstrike>
#include <engine>




#define PLUGIN "Bonus Box"
#define VERSION "1.0"
#define AUTHOR "ONEMDX"


new const item_class_name[] = "dm_item"

new g_models[][] = {"models/cadout.mdl", "models/cadouct.mdl"}

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")
   
   RegisterHam(Ham_Killed, "player", "fw_PlayerKilled")
   
   
}

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 fw_PlayerKilled(victim, attacker, shouldgib)
{
   if (!is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim || !attacker)
      return HAM_IGNORED
   
   // Asta ca sa nu genereze box la fiecare kill ( gen sanse ) 
   new random = random_num(0, 8)
   
   if (random == 2 || random == 4 || random == 6)
   {
      new origin[3]
      get_user_origin(victim, origin, 0)
      
      addItem(origin)
   }
   
   return HAM_IGNORED
}

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

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_TOSS)
   
   new Float:fOrigin[3]
   IVecFVec(origin, fOrigin)
   set_pev(ent, pev_origin, fOrigin)
   
   set_pev(ent,pev_renderfx,kRenderFxGlowShell)

   // Rendere colorate , estetic arata mai bine cu mai multe culori 
   switch(random_num(1,6))
   {
      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})
      case 5: set_pev(ent,pev_rendercolor,Float:{0.0,255.0,255.0})
      case 6: set_pev(ent,pev_rendercolor,Float:{255.0,255.0,0.0})
   }
}

public give_item(id)
{
	switch (random_num(0,4)){ 
		case 0:{
			new HP;
			HP = 50;   
			fm_set_user_health(id, get_user_health(id) + HP); 
			ChatColor(id,"!g* [!teamBOX!g] You receive !team + %d Health ",HP); 
 		}

		case 1:{
			fm_give_item(id,"weapon_hegrenade")
			ChatColor(id,"!g* [!teamBOX!g] You receive !team - 1 HE ");
		}

		case 2:{
			new MONEY;
			MONEY = 32000;   
			cs_set_user_money(id, cs_get_user_money(id) + MONEY); 
			ChatColor(id,"!g* [!teamBOX!g] You receive !team %d $", MONEY); 
		}

		case 3:{
			fm_give_item(id, "weapon_smokegrenade")
			ChatColor(id,"!g* [!teamBOX!g] You receive !team - 1 SMOKE ");
		}

		case 4:{
			fm_give_item(id, "weapon_flashbang") 
			ChatColor(id,"!g* [!teamBOX!g] You receive !team - 1 FLASH ");
		}
	}
}

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_flags, FL_KILLME)
}


stock ChatColor(const id, const input[], any:...)
{
   new count = 1, players[32]
   static msg[191]
   vformat(msg, 190, input, 3)
   
   replace_all(msg, 190, "!g", "^4") // Green Color
   replace_all(msg, 190, "!y", "^1") // Default Color
   replace_all(msg, 190, "!team", "^3") // Team Color
   replace_all(msg, 190, "!team2", "^0") // Team2 Color
   
   if (id) players[0] = id; else get_players(players, count, "ch")
   {
      for (new i = 0; i < count; i++)
      {
         if (is_user_connected(players))
         {
            message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players)
            write_byte(players);
            write_string(msg);
            message_end();
         }
      }
   }
}
CS.XTREMEPLAY.RO # Cautam admini
Image
Forum : Click
RadioxPlay.Net : Click
RoyalServer 2
User avatar
WISHEXEC
Membru, skill +4
Membru, skill +4
Posts: 1682
Joined: 12 Nov 2011, 19:37
Detinator Steam: Da
CS Status: AmxModX
Detinator server CS: DAEVA.RO
Reputatie: Fost Moderator ajutator
Nume anterior : ONEMDX
Location: România
Has thanked: 84 times
Been thanked: 85 times
Contact:

04 May 2013, 21:58

Code: Select all

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




#define PLUGIN "Bonus Box"
#define VERSION "1.0"
#define AUTHOR "ONEMDX"


new const item_class_name[] = "dm_item"

new g_models[][] = {"models/cadout.mdl", "models/cadouct.mdl"}

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

public plugin_init()
{
   register_plugin(PLUGIN, VERSION, AUTHOR)
   
   register_forward(FM_Touch, "fwd_Touch")
   
   register_event("HLTV", "round_start", "a", "1=0", "2=0")
   
   RegisterHam(Ham_Killed, "player", "fw_PlayerKilled")
   
   
}

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 fw_PlayerKilled(victim, attacker, shouldgib)
{
   if (!is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim || !attacker)
      return HAM_IGNORED
   
   // Modificat : am scos sansele ca am vazut ca toti vreti la fiecare kill 
   new random = random_num(0,2 )
   
   if (random == 0 || random == 1 || random == 2)
   {
      new origin[3]
      get_user_origin(victim, origin, 0)
      
      addItem(origin)
   }
   
   return HAM_IGNORED
}

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

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_TOSS)
   
   new Float:fOrigin[3]
   IVecFVec(origin, fOrigin)
   set_pev(ent, pev_origin, fOrigin)
   
   set_pev(ent,pev_renderfx,kRenderFxGlowShell)

   // Rendere colorate , estetic arata mai bine cu mai multe culori 
   switch(random_num(1,6))
   {
      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})
      case 5: set_pev(ent,pev_rendercolor,Float:{0.0,255.0,255.0})
      case 6: set_pev(ent,pev_rendercolor,Float:{255.0,255.0,0.0})
   }
}

public give_item(id)
{
	switch (random_num(0,5)){ 
		case 0:{
			new HP;
			HP = 50;   
			fm_set_user_health(id, get_user_health(id) + HP); 
			ChatColor(id,"!g* [!teamBOX!g] You receive !team + %d Health ",HP); 
 		}

		case 1:{
			fm_give_item(id,"weapon_hegrenade")
			ChatColor(id,"!g* [!teamBOX!g] You receive !team + 1 HE ");
		}

		case 2:{
			new MONEY;
			MONEY = 32000;   
			cs_set_user_money(id, cs_get_user_money(id) + MONEY); 
			ChatColor(id,"!g* [!teamBOX!g] You receive !team %d $", MONEY); 
		}

		case 3:{
			fm_give_item(id, "weapon_smokegrenade")
			ChatColor(id,"!g* [!teamBOX!g] You receive !team + 1 SMOKE ");
		}

		case 4:{
			fm_give_item(id, "weapon_flashbang") 
			ChatColor(id,"!g* [!teamBOX!g] You receive !team + 1 FLASH ");
		}
                case 5:{
                  new name[32];
			new CREDITE = 5;
			get_user_name(id,name, 31) ;
			server_cmd("amx_givecredits %s %d",name,CREDITE);
                        ChatColor(id,"!g* [!teamBOX!g] You receive !team + %d CREDITE",CREDITE);
			
		}
	}
}

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_flags, FL_KILLME)
}


stock ChatColor(const id, const input[], any:...)
{
   new count = 1, players[32]
   static msg[191]
   vformat(msg, 190, input, 3)
   
   replace_all(msg, 190, "!g", "^4") // Green Color
   replace_all(msg, 190, "!y", "^1") // Default Color
   replace_all(msg, 190, "!team", "^3") // Team Color
   replace_all(msg, 190, "!team2", "^0") // Team2 Color
   
   if (id) players[0] = id; else get_players(players, count, "ch")
   {
      for (new i = 0; i < count; i++)
      {
         if (is_user_connected(players[i]))
         {
            message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
            write_byte(players[i]);
            write_string(msg);
            message_end();
         }
      }
   }
}
am scos sansele acum apare la fiecare kill
User avatar
wicked.
Membru, skill 0
Membru, skill 0
Posts: 55
Joined: 22 Feb 2013, 13:23
Detinator Steam: Da
CS Status: Cautam admini
Detinator server CS: MIX/CS.XTREMEPLAY.RO
Has thanked: 9 times
Contact:

06 May 2013, 19:17

Sa traiesti :)
Mersi
CS.XTREMEPLAY.RO # Cautam admini
Image
Forum : Click
RadioxPlay.Net : Click
User avatar
WISHEXEC
Membru, skill +4
Membru, skill +4
Posts: 1682
Joined: 12 Nov 2011, 19:37
Detinator Steam: Da
CS Status: AmxModX
Detinator server CS: DAEVA.RO
Reputatie: Fost Moderator ajutator
Nume anterior : ONEMDX
Location: România
Has thanked: 84 times
Been thanked: 85 times
Contact:

08 May 2013, 19:17

cu placere bafta
Post Reply

Return to “Cereri”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 3 guests