Furien Weapons Shop - NEW UPDATE ! [ 0.0.4 ]

Pluginuri facute de utilizatorii forumului eXtream.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Post Reply
User avatar
Hades Ownage
Membru eXtream
Membru eXtream
Posts: 3182
Joined: 22 Oct 2008, 10:12
Detinator Steam: Da
Detinator server CS: jb.clutch.ro
SteamID: hades-source
Reputatie: Fost Super Moderator
Fost Scripter eXtreamCS
Nume anterior: hadesownage
Location: Iasi
Has thanked: 324 times
Been thanked: 406 times

16 Mar 2013, 21:12

Ai descarcat macar include-ul dhudmessage ? Link-ul este in post. Am atasat fisierul .amxx, nu mai trebuie sa il compilati .
RoyalServer 2
User avatar
FaTzZu
Fost moderator
Fost moderator
Posts: 1206
Joined: 22 Dec 2012, 18:37
Detinator Steam: Da
Reputatie: Fost moderator ajutator
Has thanked: 114 times
Been thanked: 168 times

17 Mar 2013, 01:34

Hades vezi ca ai uitat un model p_model de la scorpion mp5
A fool's brain digests philosophy into folly, science into superstition, and art into pedantry.

#RETIRED.
User avatar
Hades Ownage
Membru eXtream
Membru eXtream
Posts: 3182
Joined: 22 Oct 2008, 10:12
Detinator Steam: Da
Detinator server CS: jb.clutch.ro
SteamID: hades-source
Reputatie: Fost Super Moderator
Fost Scripter eXtreamCS
Nume anterior: hadesownage
Location: Iasi
Has thanked: 324 times
Been thanked: 406 times

17 Mar 2013, 07:59

Nu l-am uitat, nu il am ;))
compaq
Fost moderator
Fost moderator
Posts: 2598
Joined: 01 Dec 2008, 15:32
Detinator Steam: Da
Reputatie: Fost eXtream Mod
Fost contribuitor
Fost manager
Fost Scripter eXtreamCS
Has thanked: 15 times
Been thanked: 152 times

17 Mar 2013, 15:18

Cateva modificari necesare, la prima vedere:
  • In loc de:

    Code: Select all

    new katana_knife_v_model [ 66 ] = "models/furien/knifes/v_katana.mdl";
    new katana_knife_p_model [ 66 ] = "models/furien/knifes/p_katana.mdl";
    
    new double_katana_v_knife_model [ 66 ] = "models/furien/knifes/v_double_katana.mdl";
    new double_katana_p_knife_model [ 66 ] = "models/furien/knifes/p_double_katana.mdl";
    
    new super_knife_v_model [ 66 ] = "models/furien/knifes/v_super_knife1.mdl";
    new super_knife_p_model [ 66 ] = "models/furien/knifes/p_super_knife1.mdl";
    
    new infinity_knife_v_model [ 66 ] = "models/furien/knifes/v_infinity_knife1.mdl";
    new infinity_knife_p_model [ 66 ] = "models/furien/knifes/p_infinity_knife1.mdl";
    
    new dual_mp5_v_model [ 66 ] = "models/furien/weapons/v_dualmp5.mdl";
    new dual_mp5_p_model [ 66 ] = "models/furien/weapons/p_dualmp5.mdl";
    
    new scorpion_mp5_v_model [ 66 ] = "models/furien/weapons/v_scorpionmp5.mdl";
    // new scorpion_mp5_p_model [ 66 ] = "models/furien/weapons/p_scorpionmp5.mdl";
    
    new xm1014_shoutgun_v_model [ 66 ] = "models/furien/weapons/v_xm1014shoutgun.mdl";
    // new xm1014_shoutgun_p_model [ 66 ] = "models/furien/weapons/p_xm1014shoutgun.mdl";
    
    new m3_shoutgun_v_model [ 66 ] = "models/furien/weapons/v_m3shoutgun.mdl";
    // new m3_shoutgun_p_model [ 66 ] = "models/furien/weapons/p_m3shoutgun.mdl";
    
    new thompson_v_model [ 66 ] = "models/furien/weapons/v_thompson.mdl";
    new thompson_p_model [ 66 ] = "models/furien/weapons/p_thompson.mdl";
    
    new uspx_v_model [ 66 ] = "models/furien/weapons/v_uspx.mdl";
    new uspx_p_model [ 66 ] = "models/furien/weapons/p_uspx.mdl";
    
    new hammer_knife_v_model [ 66 ] = "models/furien/knifes/v_viphammer.mdl";
    new hammer_knife_p_model [ 66 ] = "models/furien/knifes/p_viphammer.mdl";
    
    new axe_knife_v_model [ 66 ] = "models/furien/knifes/v_vipaxe.mdl";
    new axe_knife_p_model [ 66 ] = "models/furien/knifes/p_vipaxe.mdl";
    
    new vip_awp_v_model [ 66 ] = "models/furien/weapons/v_vipawp.mdl";
    // new vip_awp_p_model [ 66 ] = "models/furien/weapons/p_vipawp.mdl";
    
    new vip_elite_v_model [ 66 ] = "models/furien/weapons/v_vipelite.mdl";
    new vip_elite_p_model [ 66 ] = "models/furien/weapons/p_vipelite.mdl";
    
    new vip_cartblue_v_model [ 66 ] = "models/furien/weapons/v_vipcartblue.mdl";
    new vip_cartblue_p_model [ 66 ] = "models/furien/weapons/p_vipcartblue.mdl";
    
    new vip_cartred_v_model [ 66 ] = "models/furien/weapons/v_vipcartred.mdl";
    new vip_cartred_p_model [ 66 ] = "models/furien/weapons/p_vipcartred.mdl";
    
    new vip_dualkriss_v_model [ 66 ] = "models/furien/weapons/v_vipdualkriss.mdl";
    new vip_dualkriss_p_model [ 66 ] = "models/furien/weapons/p_vipdualkriss.mdl";
    
    new vip_dualskull_v_model [ 66 ] = "models/furien/weapons/v_vipdualskull.mdl";
    new vip_dualskull_p_model [ 66 ] = "models/furien/weapons/p_vipdualskull.mdl";
    
    new vip_minigun_v_model [ 66 ] = "models/furien/weapons/v_vipm134.mdl";
    new vip_minigun_p_model [ 66 ] = "models/furien/weapons/p_vipm134.mdl";
    Ai putea crea o singura o matrice care sa retina toate datele. In precache s-ar reduce de 3 ori codul (va fi nevoie de un loop for care sa parcurga toate modelele).
  • In loc de:

    Code: Select all

    new bool:katana_knife [ 33 ];
    new bool:double_katana_knife [ 33 ];
    new bool:super_knife [ 33 ];
    new bool:infinity_knife [ 33 ];
    
    new bool:dual_mp5 [ 33 ];
    new bool:scorpion_mp5 [ 33 ];
    new bool:xm1014_shoutgun [ 33 ];
    new bool:m3_shoutgun [ 33 ];
    new bool:thompson [ 33 ];
    new bool:weapon_uspx [ 33 ];
    
    new bool:vip_awp [ 33 ];
    new bool:vip_elite [ 33 ];
    new bool:vip_dualkriss [ 33 ];
    new bool:vip_dualskull [ 33 ];
    new bool:vip_minigun [ 33 ];
    new bool:vip_hammer_knife [ 33 ];
    new bool:vip_axe_knife [ 33 ];
    new bool:vip_cartblue [ 33 ];
    new bool:vip_cartred [ 33 ];
    new bool:vip_cartblue2 [ 33 ];
    new bool:vip_cartred2 [ 33 ];
    poti utiliza:
    | Afiseaza codul
    enum _:PlayerWeap
    {
    	kata_knife,
    	double_kata_knife
    	//...
    }
    
    new g_PlayerWeap[ 33 ][ PlayerWeap ];
  • De ce inregistrezi de 2 ori spawn-ul prin hamsandwich? Sterge primul hook, iar in al 2-lea (RefreshAllWeapons) adaugi CheckFurienAcces( id ).
  • In FurienCurrentWeapon(const id) ai o multime de cod in plus. De ce atatea if-uri cand poti in unul singur? Plus ca verifici de 2 ori daca arma curenta e CSW_KNIFE.
    Tot aici, la else if ai omis faptul ca double_kata_knife, super_knife, ..., sunt vectori.
  • In AntiFurienCurrentWeapon(const id) verifici din nou de 2 ori daca userul are aceeasi arma. Inutil. In locul multelor if-uri, e necesar sa folosesti switch.
  • round_start nu are niciun parametru.
  • Code: Select all

    public round_end ( ) {
        
        static id;
        for ( id = 1 ; id <= g_iMaxPlayers ; id++ )
        {
            if (!is_user_alive ( id ) )
                continue;
            
            strip_user_weapons ( id );
            set_pdata_int ( id, 116, 0 );
            give_item ( id, "weapon_knife" );
        }
    }
    devine
    | Afiseaza codul
    public round_end()
    {
    	new iPlayers[ 32 ], iNum, i, id;
    	get_players( iPlayers, iNum );
    
    	for( i = 0; i < iNum; i++ )
    	{
    		if( !is_user_alive( iPlayers[ i ] ) )
    			continue;
    
    		strip_user_weapons( iPlayers[ i ] );
    		set_pdata_int( iPlayers[ i ], 116, 0 );
    		give_item( iPlayers[ i ], "weapon_knife" );
    	}
    }
    Codul tau de mai sus parcurge toate sloturile de pe server, indiferent ca sunt ocupate sau nu.
  • In CheckFurienAcces(const id), foloseste switch in loc de cele 2 if-uri.
  • Meniurile pot fi create in plugin_cfg() o singura data. In sursa ta, ele se creaza de fiecare data cand public-ul este accesat.
  • In loc de public-urile in care setezi damage-ul pentru arme, poti folosi unul singuri in care folosesti switch (daca vei aplica ce am spus mai sus).
User avatar
FaTzZu
Fost moderator
Fost moderator
Posts: 1206
Joined: 22 Dec 2012, 18:37
Detinator Steam: Da
Reputatie: Fost moderator ajutator
Has thanked: 114 times
Been thanked: 168 times

17 Mar 2013, 20:32

Hei hades uite ai putea sa imi faci si mie din pluginul acesta , dupa cum vezi am modelele w_ ale armelor dar nu stiu cum sa le pun m-ai putea ajuta?

| Afiseaza codul
[code]#include <amxmodx> 
#include <cstrike> 
#include <fun> 
#include <amxmisc>  
#include <hamsandwich>
#include < fakemeta >


#define PLUGIN    "ArmeFurien"  
#define AUTHOR    "HadesOwnage"  
#define VERSION    "1.0" 

#define OFFSET_PRIMARYWEAPON 116
#define ACCES ADMIN_LEVEL_H

#pragma semicolon 1

new dual_mp5_v_model [ 66 ] = "models/furien/weapons/v_dualmp5.mdl";
new dual_mp5_p_model [ 66 ] = "models/furien/weapons/p_dualmp5.mdl";
new dual_mp5_w_model [ 66 ] = "models/furien/weapons/w_dualmp5.mdl";

new scorpion_mp5_v_model [ 66 ] = "models/furien/weapons/v_scorpionmp5.mdl";
new scorpion_mp5_p_model [ 66 ] = "models/furien/weapons/p_scorpionmp5.mdl";
new scorpion_mp5_w_model [ 66 ] = "models/furien/weapons/w_scorpionmp5.mdl";

new xm1014_shoutgun_v_model [ 66 ] = "models/furien/weapons/v_xm1014shoutgun.mdl";
new xm1014_shoutgun_p_model [ 66 ] = "models/furien/weapons/p_xm1014shoutgun.mdl";
new xm1014_shoutgun_w_model [ 66 ] = "models/furien/weapons/w_xm1014shoutgun.mdl";

new thompson_v_model [ 66 ] = "models/furien/weapons/v_thompson.mdl";
new thompson_p_model [ 66 ] = "models/furien/weapons/p_thompson.mdl";
new thompson_w_model [ 66 ] = "models/furien/weapons/w_thompson.mdl";

new bool:dual_mp5 [ 33 ];
new bool:scorpion_mp5 [ 33 ];
new bool:xm1014_shoutgun [ 33 ];
new bool:thompson [ 33 ];

public plugin_precache ( ) 
{
	precache_model ( dual_mp5_v_model );
	precache_model ( scorpion_mp5_v_model );
	precache_model ( xm1014_shoutgun_v_model );
	precache_model ( thompson_v_model );
	precache_model ( scorpion_mp5_p_model );
	precache_model ( thompson_p_model );
	precache_model ( xm1014_shoutgun_p_model );
	precache_model ( dual_mp5_p_model );
	precache_model ( dual_mp5_w_model );
	precache_model ( thompson_w_model );
	precache_model ( scorpion_mp5_w_model );
	precache_model ( xm1014_shoutgun_w_model );
	
}


public plugin_init() 
{ 
	register_plugin("ArmeFurien", "1.0", "Andu. <3"); 
	RegisterHam(Ham_Spawn, "player", "Player_Spawn", 1);
	register_event ( "CurWeapon", "AntiFurienCurrentWeapon", "be", "1=1" );
	register_logevent ( "round_start", 2, "1=Round_Start" );
}

public AntiFurienCurrentWeapon ( id ) 
{
	new szWeapon = get_user_weapon ( id );
	if ( szWeapon == CSW_MP5NAVY ) {
		if ( dual_mp5 [ id ] && szWeapon == CSW_MP5NAVY ) {
			
			set_pev ( id, pev_viewmodel2, dual_mp5_v_model );
			set_pev ( id, pev_weaponmodel2, dual_mp5_p_model );
			set_task ( 0.1, "Dual_Mp5_Damage", id );
			
		}
	}
	
	if ( szWeapon == CSW_MP5NAVY ) {
		if ( scorpion_mp5 [ id ] && szWeapon == CSW_MP5NAVY ) {
			
			set_pev ( id, pev_viewmodel2, scorpion_mp5_v_model );
			set_pev ( id, pev_weaponmodel2, scorpion_mp5_p_model );
			set_task ( 0.1, "Scorpion_Mp5_Damage", id );
			
		}
	}
	
	if ( szWeapon == CSW_XM1014 ) {
		if ( xm1014_shoutgun [ id ] && szWeapon == CSW_XM1014 ) {
			
			set_pev ( id, pev_viewmodel2, xm1014_shoutgun_v_model );
			set_pev ( id, pev_weaponmodel2, xm1014_shoutgun_p_model );
			set_task ( 0.1, "XM1014_Shotgun_Damage", id );
			
		}
	}
	if ( szWeapon == CSW_P90 ) {
		if ( thompson [ id ] && szWeapon == CSW_P90 ) {
			
			set_pev ( id, pev_viewmodel2, thompson_v_model );
			set_pev ( id, pev_weaponmodel2, thompson_p_model );
			set_task ( 0.1, "Thompson_Damage", id );
			
		}
	}
	return PLUGIN_HANDLED;
}

public round_start ( id ) {
	
	if ( is_user_alive ( id ) ) {
		
		dual_mp5 [ id ] = false;
		scorpion_mp5 [ id ] = false;
		xm1014_shoutgun [ id ] = false;
		thompson [ id ] = false;
		
	}
	return 1;
}

public Player_Spawn(id) 
{ 
	if(is_user_alive(id)) 
	{ 
		new CsTeams:team = cs_get_user_team(id); 
		switch(team)
		{ 
			case CS_TEAM_CT:
			{
				strip_user_weapons(id);
				give_item(id, "weapon_deagle");
				cs_set_user_bpammo(id, CSW_DEAGLE, 70);
				give_item(id, "weapon_knife");
				new menu = menu_create("\rSingura sansa de a salva pamantul:", "menu_handler");
				
				menu_additem(menu, "\yM4a1", "1", 0);  
				menu_additem(menu, "\yAk47", "2", 0);  
				menu_additem(menu, "\yMP5 Navy", "3", 0);  
				menu_additem(menu, "\yXM1014", "4", 0);   
				menu_additem(menu, "\yP90", "5", 0);
				menu_additem(menu, "\yGalil^n", "6", 0);
				
				menu_additem(menu, "\rArme Speciale pentru ViP", "7", 0);
				
				
				menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);  
				
				menu_display(id, menu, 0); 
				
			}
			case CS_TEAM_T:
			{
				strip_user_weapons(id);
				give_item(id, "weapon_knife");
			}
			
		}
	}
}


public menu_handler(id, menu, item)  
{  
	if( item == MENU_EXIT )  
	{  
		menu_destroy(menu);  
		return PLUGIN_HANDLED;  
	}  
	new data[6], iName[64];
	new access, callback;  
	menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);  
	new key = str_to_num(data);  
	
	if(cs_get_user_team(id) == CS_TEAM_CT)
	{
		switch(key)  
		{  
			case 1:  
			{  
				give_item(id, "weapon_m4a1");  
				
				cs_set_user_bpammo(id,CSW_M4A1,90);
				thompson [ id ] = false;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;			
				
			}  
			case 2:  
			{  
				give_item(id, "weapon_ak47");  
				
				cs_set_user_bpammo(id,CSW_AK47,90); 
				thompson [ id ] = false;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;				
				
			}  
			case 3:   
			{  
				give_item(id, "weapon_mp5navy");  
				
				cs_set_user_bpammo(id,CSW_MP5NAVY,120); 
				thompson [ id ] = false;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;	
				
			}  
			case 4:   
			{  
				give_item(id, "weapon_xm1014");  
				
				cs_set_user_bpammo(id,CSW_XM1014,32);
				thompson [ id ] = false;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;	
				
			}  
			case 5:   
			{  
				
				give_item(id, "weapon_p90");  
				
				cs_set_user_bpammo(id,CSW_P90,100);
				thompson [ id ] = false;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;	
				
			}
			case 6:
			{
				give_item(id, "weapon_galil");  
				
				cs_set_user_bpammo(id,CSW_GALIL,100);
				thompson [ id ] = false;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;
			}
			
			case 7:
			{
				if(get_user_flags(id) & ACCES)
				{
					
					set_task(0.1, "FurienDestructor", id);
				}
				else {
					ColorChat(id, "!g[ZyroCs] !tPentru a lua arme din acest meniu ai nevoie de !gacces ViP!");
					menu_destroy(menu);
					set_task(0.1, "Player_Spawn", id);
					return PLUGIN_HANDLED;
				}
				
			}
			
		}
	}
	else
	{
		menu_destroy(menu);  
		return PLUGIN_HANDLED;  
	}
	
	menu_destroy(menu);  
	return PLUGIN_HANDLED;  
}

public FurienDestructor(id)
{
	new menu = menu_create ( "\y* \rArme Speciale doar pentru ViP \y* ", "FurienDestructorMenuGiver" );
	menu_additem ( menu, "\yScorpion MP5", "1", 0 );
	menu_additem ( menu, "\ySuper ShootGun", "2", 0 );
	menu_additem ( menu, "\yDual MP5", "3", 0 );
	menu_additem ( menu, "\yThompSon", "4", 0 );
	
	menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL );
	menu_display ( id, menu, 0 );	
}

public FurienDestructorMenuGiver(id, menu, item)
{
	if( item == MENU_EXIT )
	{
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	
	new data[6], szName[64];
	new access, callback;
	menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
	new key = str_to_num(data);
	
	
	if(cs_get_user_team(id) == CS_TEAM_CT)
	{
		switch(key)
		{
			case 1:
			{
				give_item ( id, "weapon_mp5navy" );
				cs_set_user_bpammo ( id, CSW_MP5NAVY, 120 );
				scorpion_mp5 [ id ] = true;
				dual_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;
				thompson [ id ] = false;
			}
			case 2:
			{
				give_item ( id, "weapon_xm1014" );
				cs_set_user_bpammo ( id, CSW_XM1014, 32 );
				xm1014_shoutgun [ id ] = true;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				thompson [ id ] = false;
			}
			case 3:
			{
				give_item ( id, "weapon_mp5navy" );
				cs_set_user_bpammo ( id, CSW_MP5NAVY, 120 );
				dual_mp5 [ id ] = true;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;
				thompson [ id ] = false;
			}
			case 4:
			{
				give_item ( id, "weapon_p90" );
				cs_set_user_bpammo ( id, CSW_P90, 100 );
				thompson [ id ] = true;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;
			}
			
		}
	}
	else
	{
		menu_destroy(menu);  
		return PLUGIN_HANDLED;  
	}
	
	menu_destroy ( menu );
	return PLUGIN_HANDLED;
	
}

public Dual_Mp5_Damage ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
	if( iInflictor == iAttacker && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_MP5NAVY && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
	{
		SetHamParamFloat( 4, fDamage * 3.0);
		return HAM_HANDLED;
	}
	return HAM_IGNORED;
}

public Scorpion_Mp5_Damage ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
	if( iInflictor == iAttacker && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_MP5NAVY && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
	{
		SetHamParamFloat( 4, fDamage * 3.0);
		return HAM_HANDLED;
	}
	return HAM_IGNORED;
}

public XM1014_Shotgun_Damage ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
	if( iInflictor == iAttacker && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_XM1014 && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
	{
		SetHamParamFloat( 4, fDamage * 3.0);
		return HAM_HANDLED;
	}
	return HAM_IGNORED;
}

public Thompson_Damage ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
	if( iInflictor == iAttacker && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_P90 && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
	{
		SetHamParamFloat( 4, fDamage * 3.0);
		return HAM_HANDLED;
	}
	return HAM_IGNORED;
}

stock ColorChat(const id, const input[], any:...) {
	new count = 1, players[32];
	static msg[191];
	vformat(msg, 190, input, 3);
	
	replace_all(msg, 190, "!g", "^4");
	replace_all(msg, 190, "!y", "^1");
	replace_all(msg, 190, "!t", "^3");
	
	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();
			}
		}
	} 
}[/code]


Adica armele sa apara pe jos ....
A fool's brain digests philosophy into folly, science into superstition, and art into pedantry.

#RETIRED.
User avatar
MrAndrei
Membru eXtream
Membru eXtream
Posts: 2120
Joined: 17 Mar 2013, 18:10
Detinator Steam: Da
CS Status: Facultatea iti mananca viata
SteamID: mrandreyx
Reputatie: Fost moderator
Nume anterior: asasinulfantoma
Fost Membru Club eXtreamCS (doua luni)
Has thanked: 32 times
Been thanked: 28 times

17 Mar 2013, 21:12

salut poti da add la angel.inger20 sau pm penrtu ca as vra eun plugin de genul dar pentu mrodul zm:)...apropo ai facut o treaba buna.
User avatar
Hades Ownage
Membru eXtream
Membru eXtream
Posts: 3182
Joined: 22 Oct 2008, 10:12
Detinator Steam: Da
Detinator server CS: jb.clutch.ro
SteamID: hades-source
Reputatie: Fost Super Moderator
Fost Scripter eXtreamCS
Nume anterior: hadesownage
Location: Iasi
Has thanked: 324 times
Been thanked: 406 times

18 Mar 2013, 13:49

FaTzZu wrote:Hei hades uite ai putea sa imi faci si mie din pluginul acesta , dupa cum vezi am modelele w_ ale armelor dar nu stiu cum sa le pun m-ai putea ajuta?

| Afiseaza codul
[code]#include <amxmodx> 
#include <cstrike> 
#include <fun> 
#include <amxmisc>  
#include <hamsandwich>
#include < fakemeta >


#define PLUGIN    "ArmeFurien"  
#define AUTHOR    "HadesOwnage"  
#define VERSION    "1.0" 

#define OFFSET_PRIMARYWEAPON 116
#define ACCES ADMIN_LEVEL_H

#pragma semicolon 1

new dual_mp5_v_model [ 66 ] = "models/furien/weapons/v_dualmp5.mdl";
new dual_mp5_p_model [ 66 ] = "models/furien/weapons/p_dualmp5.mdl";
new dual_mp5_w_model [ 66 ] = "models/furien/weapons/w_dualmp5.mdl";

new scorpion_mp5_v_model [ 66 ] = "models/furien/weapons/v_scorpionmp5.mdl";
new scorpion_mp5_p_model [ 66 ] = "models/furien/weapons/p_scorpionmp5.mdl";
new scorpion_mp5_w_model [ 66 ] = "models/furien/weapons/w_scorpionmp5.mdl";

new xm1014_shoutgun_v_model [ 66 ] = "models/furien/weapons/v_xm1014shoutgun.mdl";
new xm1014_shoutgun_p_model [ 66 ] = "models/furien/weapons/p_xm1014shoutgun.mdl";
new xm1014_shoutgun_w_model [ 66 ] = "models/furien/weapons/w_xm1014shoutgun.mdl";

new thompson_v_model [ 66 ] = "models/furien/weapons/v_thompson.mdl";
new thompson_p_model [ 66 ] = "models/furien/weapons/p_thompson.mdl";
new thompson_w_model [ 66 ] = "models/furien/weapons/w_thompson.mdl";

new bool:dual_mp5 [ 33 ];
new bool:scorpion_mp5 [ 33 ];
new bool:xm1014_shoutgun [ 33 ];
new bool:thompson [ 33 ];

public plugin_precache ( ) 
{
	precache_model ( dual_mp5_v_model );
	precache_model ( scorpion_mp5_v_model );
	precache_model ( xm1014_shoutgun_v_model );
	precache_model ( thompson_v_model );
	precache_model ( scorpion_mp5_p_model );
	precache_model ( thompson_p_model );
	precache_model ( xm1014_shoutgun_p_model );
	precache_model ( dual_mp5_p_model );
	precache_model ( dual_mp5_w_model );
	precache_model ( thompson_w_model );
	precache_model ( scorpion_mp5_w_model );
	precache_model ( xm1014_shoutgun_w_model );
	
}


public plugin_init() 
{ 
	register_plugin("ArmeFurien", "1.0", "Andu. <3"); 
	RegisterHam(Ham_Spawn, "player", "Player_Spawn", 1);
	register_event ( "CurWeapon", "AntiFurienCurrentWeapon", "be", "1=1" );
	register_logevent ( "round_start", 2, "1=Round_Start" );
}

public AntiFurienCurrentWeapon ( id ) 
{
	new szWeapon = get_user_weapon ( id );
	if ( szWeapon == CSW_MP5NAVY ) {
		if ( dual_mp5 [ id ] && szWeapon == CSW_MP5NAVY ) {
			
			set_pev ( id, pev_viewmodel2, dual_mp5_v_model );
			set_pev ( id, pev_weaponmodel2, dual_mp5_p_model );
			set_task ( 0.1, "Dual_Mp5_Damage", id );
			
		}
	}
	
	if ( szWeapon == CSW_MP5NAVY ) {
		if ( scorpion_mp5 [ id ] && szWeapon == CSW_MP5NAVY ) {
			
			set_pev ( id, pev_viewmodel2, scorpion_mp5_v_model );
			set_pev ( id, pev_weaponmodel2, scorpion_mp5_p_model );
			set_task ( 0.1, "Scorpion_Mp5_Damage", id );
			
		}
	}
	
	if ( szWeapon == CSW_XM1014 ) {
		if ( xm1014_shoutgun [ id ] && szWeapon == CSW_XM1014 ) {
			
			set_pev ( id, pev_viewmodel2, xm1014_shoutgun_v_model );
			set_pev ( id, pev_weaponmodel2, xm1014_shoutgun_p_model );
			set_task ( 0.1, "XM1014_Shotgun_Damage", id );
			
		}
	}
	if ( szWeapon == CSW_P90 ) {
		if ( thompson [ id ] && szWeapon == CSW_P90 ) {
			
			set_pev ( id, pev_viewmodel2, thompson_v_model );
			set_pev ( id, pev_weaponmodel2, thompson_p_model );
			set_task ( 0.1, "Thompson_Damage", id );
			
		}
	}
	return PLUGIN_HANDLED;
}

public round_start ( id ) {
	
	if ( is_user_alive ( id ) ) {
		
		dual_mp5 [ id ] = false;
		scorpion_mp5 [ id ] = false;
		xm1014_shoutgun [ id ] = false;
		thompson [ id ] = false;
		
	}
	return 1;
}

public Player_Spawn(id) 
{ 
	if(is_user_alive(id)) 
	{ 
		new CsTeams:team = cs_get_user_team(id); 
		switch(team)
		{ 
			case CS_TEAM_CT:
			{
				strip_user_weapons(id);
				give_item(id, "weapon_deagle");
				cs_set_user_bpammo(id, CSW_DEAGLE, 70);
				give_item(id, "weapon_knife");
				new menu = menu_create("\rSingura sansa de a salva pamantul:", "menu_handler");
				
				menu_additem(menu, "\yM4a1", "1", 0);  
				menu_additem(menu, "\yAk47", "2", 0);  
				menu_additem(menu, "\yMP5 Navy", "3", 0);  
				menu_additem(menu, "\yXM1014", "4", 0);   
				menu_additem(menu, "\yP90", "5", 0);
				menu_additem(menu, "\yGalil^n", "6", 0);
				
				menu_additem(menu, "\rArme Speciale pentru ViP", "7", 0);
				
				
				menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);  
				
				menu_display(id, menu, 0); 
				
			}
			case CS_TEAM_T:
			{
				strip_user_weapons(id);
				give_item(id, "weapon_knife");
			}
			
		}
	}
}


public menu_handler(id, menu, item)  
{  
	if( item == MENU_EXIT )  
	{  
		menu_destroy(menu);  
		return PLUGIN_HANDLED;  
	}  
	new data[6], iName[64];
	new access, callback;  
	menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);  
	new key = str_to_num(data);  
	
	if(cs_get_user_team(id) == CS_TEAM_CT)
	{
		switch(key)  
		{  
			case 1:  
			{  
				give_item(id, "weapon_m4a1");  
				
				cs_set_user_bpammo(id,CSW_M4A1,90);
				thompson [ id ] = false;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;			
				
			}  
			case 2:  
			{  
				give_item(id, "weapon_ak47");  
				
				cs_set_user_bpammo(id,CSW_AK47,90); 
				thompson [ id ] = false;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;				
				
			}  
			case 3:   
			{  
				give_item(id, "weapon_mp5navy");  
				
				cs_set_user_bpammo(id,CSW_MP5NAVY,120); 
				thompson [ id ] = false;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;	
				
			}  
			case 4:   
			{  
				give_item(id, "weapon_xm1014");  
				
				cs_set_user_bpammo(id,CSW_XM1014,32);
				thompson [ id ] = false;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;	
				
			}  
			case 5:   
			{  
				
				give_item(id, "weapon_p90");  
				
				cs_set_user_bpammo(id,CSW_P90,100);
				thompson [ id ] = false;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;	
				
			}
			case 6:
			{
				give_item(id, "weapon_galil");  
				
				cs_set_user_bpammo(id,CSW_GALIL,100);
				thompson [ id ] = false;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;
			}
			
			case 7:
			{
				if(get_user_flags(id) & ACCES)
				{
					
					set_task(0.1, "FurienDestructor", id);
				}
				else {
					ColorChat(id, "!g[ZyroCs] !tPentru a lua arme din acest meniu ai nevoie de !gacces ViP!");
					menu_destroy(menu);
					set_task(0.1, "Player_Spawn", id);
					return PLUGIN_HANDLED;
				}
				
			}
			
		}
	}
	else
	{
		menu_destroy(menu);  
		return PLUGIN_HANDLED;  
	}
	
	menu_destroy(menu);  
	return PLUGIN_HANDLED;  
}

public FurienDestructor(id)
{
	new menu = menu_create ( "\y* \rArme Speciale doar pentru ViP \y* ", "FurienDestructorMenuGiver" );
	menu_additem ( menu, "\yScorpion MP5", "1", 0 );
	menu_additem ( menu, "\ySuper ShootGun", "2", 0 );
	menu_additem ( menu, "\yDual MP5", "3", 0 );
	menu_additem ( menu, "\yThompSon", "4", 0 );
	
	menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL );
	menu_display ( id, menu, 0 );	
}

public FurienDestructorMenuGiver(id, menu, item)
{
	if( item == MENU_EXIT )
	{
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	
	new data[6], szName[64];
	new access, callback;
	menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
	new key = str_to_num(data);
	
	
	if(cs_get_user_team(id) == CS_TEAM_CT)
	{
		switch(key)
		{
			case 1:
			{
				give_item ( id, "weapon_mp5navy" );
				cs_set_user_bpammo ( id, CSW_MP5NAVY, 120 );
				scorpion_mp5 [ id ] = true;
				dual_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;
				thompson [ id ] = false;
			}
			case 2:
			{
				give_item ( id, "weapon_xm1014" );
				cs_set_user_bpammo ( id, CSW_XM1014, 32 );
				xm1014_shoutgun [ id ] = true;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				thompson [ id ] = false;
			}
			case 3:
			{
				give_item ( id, "weapon_mp5navy" );
				cs_set_user_bpammo ( id, CSW_MP5NAVY, 120 );
				dual_mp5 [ id ] = true;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;
				thompson [ id ] = false;
			}
			case 4:
			{
				give_item ( id, "weapon_p90" );
				cs_set_user_bpammo ( id, CSW_P90, 100 );
				thompson [ id ] = true;
				dual_mp5 [ id ] = false;
				scorpion_mp5 [ id ] = false;
				xm1014_shoutgun [ id ] = false;
			}
			
		}
	}
	else
	{
		menu_destroy(menu);  
		return PLUGIN_HANDLED;  
	}
	
	menu_destroy ( menu );
	return PLUGIN_HANDLED;
	
}

public Dual_Mp5_Damage ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
	if( iInflictor == iAttacker && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_MP5NAVY && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
	{
		SetHamParamFloat( 4, fDamage * 3.0);
		return HAM_HANDLED;
	}
	return HAM_IGNORED;
}

public Scorpion_Mp5_Damage ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
	if( iInflictor == iAttacker && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_MP5NAVY && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
	{
		SetHamParamFloat( 4, fDamage * 3.0);
		return HAM_HANDLED;
	}
	return HAM_IGNORED;
}

public XM1014_Shotgun_Damage ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
	if( iInflictor == iAttacker && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_XM1014 && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
	{
		SetHamParamFloat( 4, fDamage * 3.0);
		return HAM_HANDLED;
	}
	return HAM_IGNORED;
}

public Thompson_Damage ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
	if( iInflictor == iAttacker && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_P90 && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
	{
		SetHamParamFloat( 4, fDamage * 3.0);
		return HAM_HANDLED;
	}
	return HAM_IGNORED;
}

stock ColorChat(const id, const input[], any:...) {
	new count = 1, players[32];
	static msg[191];
	vformat(msg, 190, input, 3);
	
	replace_all(msg, 190, "!g", "^4");
	replace_all(msg, 190, "!y", "^1");
	replace_all(msg, 190, "!t", "^3");
	
	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();
			}
		}
	} 
}[/code]


Adica armele sa apara pe jos ....


Ma intreb cum de mai ai tupeul sa vii aici cand tu te dai drept autor .
register_plugin("ArmeFurien", "1.0", "Andu. <3");


Codul este facut de mine, tu doar l-ai luat dintr-o parte si l-ai pus in alta .

asasinulfantoma wrote:salut poti da add la angel.inger20 sau pm penrtu ca as vra eun plugin de genul dar pentu mrodul zm:)...apropo ai facut o treaba buna.


De aia exista forum, sa faci topic cu plugin-ul dorit, nu sa ti-l fac eu pe mess !
User avatar
FaTzZu
Fost moderator
Fost moderator
Posts: 1206
Joined: 22 Dec 2012, 18:37
Detinator Steam: Da
Reputatie: Fost moderator ajutator
Has thanked: 114 times
Been thanked: 168 times

18 Mar 2013, 20:30

Hai sa iti spun de ce , aveam pluginu cu armele de la spawn si am uitat numele acolo :-? nu l-am vazt dar am pus #define AUTHOR "HadesOwnage"

EDIT : Am rezolvat cu w_model :D
Last edited by FaTzZu on 19 Mar 2013, 19:14, edited 1 time in total.
A fool's brain digests philosophy into folly, science into superstition, and art into pedantry.

#RETIRED.
User avatar
satasa
Membru, skill +1
Membru, skill +1
Posts: 371
Joined: 12 Nov 2012, 10:43
Detinator Steam: Nu
CS Status: Ocupat
Reputatie: Membru Club eXtreamCS (2 iun - 2 iul, Acces in Club)
Has thanked: 55 times
Been thanked: 10 times
Contact:

18 Mar 2013, 20:38

Imi puteti spune cum pun dhudmessage.inc in plugin ca sa numi mai dea eroare la compilare?:
satasa wrote:si mie imi da o eroare:
aparut o eroare la compilare, verificati logul alaturat pentru a depista problema.
Se pare ca acest compilator nu are libraria dhudmessage
Aveti vreo ideie?
User avatar
Hades Ownage
Membru eXtream
Membru eXtream
Posts: 3182
Joined: 22 Oct 2008, 10:12
Detinator Steam: Da
Detinator server CS: jb.clutch.ro
SteamID: hades-source
Reputatie: Fost Super Moderator
Fost Scripter eXtreamCS
Nume anterior: hadesownage
Location: Iasi
Has thanked: 324 times
Been thanked: 406 times

19 Mar 2013, 13:53

satasa wrote:Imi puteti spune cum pun dhudmessage.inc in plugin ca sa numi mai dea eroare la compilare?:
satasa wrote:si mie imi da o eroare:
aparut o eroare la compilare, verificati logul alaturat pentru a depista problema.
Se pare ca acest compilator nu are libraria dhudmessage
Aveti vreo ideie?
Ai fisierul .amxx, daca nu stii sa compilezi descarca doar amxx .
User avatar
satasa
Membru, skill +1
Membru, skill +1
Posts: 371
Joined: 12 Nov 2012, 10:43
Detinator Steam: Nu
CS Status: Ocupat
Reputatie: Membru Club eXtreamCS (2 iun - 2 iul, Acces in Club)
Has thanked: 55 times
Been thanked: 10 times
Contact:

19 Mar 2013, 19:27

n-am ce sa fac cu amxx ca imi trebuie preturile modificate ......
User avatar
Mount~
Membru, skill +4
Membru, skill +4
Posts: 1688
Joined: 28 Feb 2013, 08:29
Detinator Steam: Da
CS Status: Învață să nu depinzi de nimeni.
Detinator server CS: în curând
SteamID: lichone1
Location: Bacău
Has thanked: 175 times
Been thanked: 54 times

19 Mar 2013, 20:01

Super reușit ! Felicitări ! :D + este FREE ai un mulțumesc ! :D
Post Reply

Return to “Pluginuri eXtream”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 13 guests