modificare

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
johnny96iv
Membru, skill 0
Membru, skill 0
Posts: 34
Joined: 16 Aug 2012, 23:55
Detinator Steam: Nu
CS Status: Bantui!
Detinator server CS: BB.CSLR.RO
Has thanked: 5 times
Contact:

14 May 2013, 02:00

buna ziua as dori si eu o mica modificare daca se poate .... cred ca este un bug nu stiu sigur sa va explic.. sunt ct m-a atacat zm si mai am putin hp daca dau repede /race pot sa iau alta clasa ... si imi da hp sau armura ... depinde ce clasa iau si as vrea sa se poata lua o singura data o clasa pe runda.
sper sa ma ajuti multumesc
sma. | Afiseaza codul
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <engine>
#include <fakemeta_util>
#include <hamsandwich>

#pragma semicolon 1;
#define VIP_LEVEL ADMIN_IMMUNITY
new menu;
new jumpznum[33] = 0;
new bool:dozjump[33] = false;
new ReloadTime[33];
new Mesaj, CvarHealth, CvarArmor, CvarDamage,CvarInvis, CvarInvisKnife, CvarVipJumps, CvarVipHealth;
new Race[33];

public plugin_init() {
	register_plugin("KnifeMod", "1.0", "Aragon*");
	register_clcmd("changerace","cmdrace");
	register_clcmd("say /changerace","cmdrace");
	register_clcmd("say_team /changerace","cmdrace");
	register_clcmd("say changerace","cmdrace");
	register_clcmd("say_team changerace","cmdrace");
	register_clcmd("race","cmdrace");
	register_clcmd("say /race","cmdrace");
	register_clcmd("say_team /race","cmdrace");
	register_clcmd("say race","cmdrace");
	register_clcmd("say_team race","cmdrace");
	register_event( "Damage", "Damage", "be" );
	register_event("CurWeapon","CurWeapon","be","1=1");
	RegisterHam(Ham_Spawn, "player", "Spawm");
	Mesaj = register_cvar("race_hudmessage_delay", "420");		//| Intervarul de timp la care sa apara mesajul HUD Deffault:420 |//
	CvarHealth = register_cvar("race_human_health","500");		//| Human Health Deffault: 250 |//
	CvarArmor = register_cvar("race_human_armor","500");		//| Human Armor Deffault: 250 |//
	CvarDamage = register_cvar("race_predator_damage", "3");		//| Damage Deffault: 3 |//
	CvarInvis = register_cvar("race_efl_invis","100");		//| 0 Total Invizibility -> 255 Total Vizibility Deffault:30 |//
	CvarInvisKnife = register_cvar("race_efl_invis_knife","100");	//| 0 Total Invizibility -> 255 Total Vizibility white Knife Deffault:20 |//
	CvarVipJumps = register_cvar("race_vip_multijump","2");		//| De cate ori poate sari VIP +1 |//
	CvarVipHealth = register_cvar("race_vip_health","250");		//| VIP Health Deffault:; 150 |//

	}
public plugin_precache() { 
	precache_model("models/player/dnthuman/dnthuman.mdl");
	precache_model("models/player/dntsurv/dntsurv.mdl");
	precache_model("models/player/dntpredator/dntpredator.mdl");
	precache_model("models/player/dntinv/dntinv.mdl");
	precache_model("models/player/dntvip/dntvip.mdl");
	} 
public cmdrace(id) { 
	if(cs_get_user_team(id) == CS_TEAM_CT) {
	menu = menu_create("\r[BB.ServerulTau.Ro] \wAlege-ti \yRasa", "SetRace");
	
	menu_additem(menu, "\yNero \w- \y500 \rHp \wsi \y500 \rArmura", "1", 0);
	menu_additem(menu, "\yDanTe \w- \rGloate infinite", "2", 0);
	menu_additem(menu, "\yPredator \w- \rDamage \yx3", "3", 0);
	menu_additem(menu, "\yElf  \w- \rInvizibilitate", "4", 0);
	menu_additem(menu, "\rVIP  \w- \yHealth \w/ \yDamage \rX3 \w/ \rUnlimited Ammo \w/ \rMultiJump", "5", 0);   
	
	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
	menu_display(id, menu, 0);
	return PLUGIN_CONTINUE;
	}
	return PLUGIN_CONTINUE;
	}
	
public SetRace(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);
	switch(key) {
	case 1: {
	Race[id] = 1;
	if(is_user_alive(id)) {
	fm_set_user_health(id, get_pcvar_num(CvarHealth));
	set_user_invizibility(id,0);
	cs_set_user_model(id, "dnthuman");
	}
	}
	case 2: {
	Race[id] = 2;
	if(is_user_alive(id)) {
	fm_set_user_health(id, 100);
	set_user_invizibility(id,0);
	cs_set_user_model(id, "dntsurv");
	}
	}
	case 3: {
	Race[id] = 3;
	if(is_user_alive(id)) {
	fm_set_user_health(id, 100);
	set_user_invizibility(id,0);
	cs_set_user_model(id, "dntpredator");
	}
	}
	case 4: {
	Race[id] = 4;
	if(is_user_alive(id)) {
	fm_set_user_health(id, 100);
	set_user_invizibility(id,1);
	cs_set_user_model(id, "dntinv");
	}
	}
	case 5: {
	if(get_user_flags(id) & VIP_LEVEL) {
	Race[id] = 5;
	if(is_user_alive(id)) {
	set_user_invizibility(id,0);
	fm_set_user_health(id, get_pcvar_num(CvarVipHealth));
	cs_set_user_model(id, "dntvip");
	}
	}
	}
	}
	menu_destroy(menu);
	return PLUGIN_HANDLED;
	}
	
public Damage(id) {
	if(cs_get_user_team(id) == CS_TEAM_CT) {
	new victim_id = id;
	if( !is_user_connected( victim_id ) ) return PLUGIN_CONTINUE;
	new dmg_take = read_data(2);
	new Float:multiplier = get_pcvar_float(CvarDamage);
	new Float:damage = dmg_take * multiplier;
	new health = get_user_health( victim_id );
	new iWeapID, attacker_id = get_user_attacker( victim_id, iWeapID );
	
	if( !is_user_connected( attacker_id ) || !is_user_alive( victim_id ) ) {
	return PLUGIN_HANDLED;
	}
	if(Race[attacker_id] == 3 || Race[attacker_id] == 5 && get_user_flags(id) & VIP_LEVEL) {
	if( floatround(damage) >= health ) {
	if( victim_id == attacker_id ) {
	return PLUGIN_CONTINUE;
	}   
	else {
	log_kill( attacker_id, victim_id, "weaponbox", 0 );
	}   
	return PLUGIN_CONTINUE;
	}
	}
	return PLUGIN_CONTINUE;
	}
	return PLUGIN_CONTINUE;
	}

public Spawm(id) {
	if(get_user_team(id) == 2) {
	//1.Human
	if(Race[id] == 1) {
	fm_set_user_health(id, get_pcvar_num(CvarHealth));
	fm_set_user_armor(id, get_pcvar_num(CvarArmor));
	set_user_invizibility(id,0);
	cs_set_user_model(id, "dnthuman");
	}
	//2.Surviver
	if (Race[id] == 2) {
	set_user_invizibility(id,0);
	cs_set_user_model(id, "dntsurv");
	fm_set_user_health(id, 100);
	}
	//3.Predator
	if (Race[id] == 3) {
	set_user_invizibility(id,0);
	cs_set_user_model(id, "dntpredator");
	fm_set_user_health(id, 100);
	}
	//4.Elf
	if (Race[id] == 4) {
	set_user_invizibility(id,1);
	cs_set_user_model(id, "dntinv");
	fm_set_user_health(id, 100);
	}
	//5.VIP
	if (Race[id] == 5 && get_user_flags(id) & VIP_LEVEL) {
	set_user_invizibility(id,0);
	fm_set_user_health(id, get_pcvar_num(CvarVipHealth));
	cs_set_user_model(id, "dntvip");
	}
	if(Race[id] == 0) {
	cmdrace(id);
	}
	}
	else {
	set_user_invizibility(id,0);
	set_task(0.1, "reset_model",id);
	Race[id] = 0;
	}
	}

public CurWeapon(id) {
	if(cs_get_user_team(id) == CS_TEAM_CT) {
	new wpnid = read_data(2);
	new clip = read_data(3);
	
	//2.Surviver
	if (Race[id] == 2 || Race[id] == 5  && get_user_flags(id) & VIP_LEVEL) {
	if (wpnid == CSW_C4 || wpnid == CSW_KNIFE) {}
	if (wpnid == CSW_HEGRENADE || wpnid == CSW_SMOKEGRENADE || wpnid == CSW_FLASHBANG) {}
	if (clip == 0) reloadAmmo(id);
	}
	//4.Elf
	if (Race[id] == 4) {
	static iInvisLevel;
	if(!IsHoldingKnife(id)) {
	iInvisLevel = get_pcvar_num(CvarInvis);
	fm_set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransTexture, iInvisLevel);
	}
	else if(IsHoldingKnife(id)) {
	InvKnife(id);
	}
	}
	else {
	fm_set_user_rendering(id);
	}
	if(Race[id] == 0) {
	cmdrace(id);
	}
	return PLUGIN_HANDLED;
	}
	return PLUGIN_HANDLED;
	}

stock log_kill(killer, victim, weapon[],headshot) {
	user_silentkill( victim );
	message_begin( MSG_ALL, get_user_msgid( "DeathMsg" ), {0,0,0}, 0 );
	write_byte( killer );
	write_byte( victim );
	write_byte( headshot );
	write_string( weapon );
	message_end();
	new kfrags = get_user_frags( killer );
	fm_set_user_frags( killer, kfrags++ );
	new vfrags = get_user_frags( victim );
	fm_set_user_frags( victim, vfrags++ );
	return  PLUGIN_CONTINUE;
	} 

stock set_user_invizibility(id, invizibility = 1) {
	static iInvisLevel;
	if(invizibility){
	if(IsHoldingKnife(id)) {
	InvKnife(id);
	}
	if(is_user_alive(id)) {
	iInvisLevel = get_pcvar_num(CvarInvis);
	fm_set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransTexture, iInvisLevel);
	}
	}
	else {
	fm_set_user_rendering(id);
	}
	}

public IsHoldingKnife(id) {
	new iClip, iAmmo, iWeapon;
	iWeapon = get_user_weapon(id, iClip, iAmmo);
	if(iWeapon == CSW_KNIFE) {
	return true;
	}
	return false;
	}

public InvKnife(id) {
	static iInvisLevel;
	if(IsHoldingKnife(id)) {
	iInvisLevel = get_pcvar_num(CvarInvisKnife);
	fm_set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransTexture, iInvisLevel);
	}
	else {
	iInvisLevel = get_pcvar_num(CvarInvis);
	fm_set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransTexture, iInvisLevel);
	}
	}

public reloadAmmo(id) {
	if (!is_user_connected(id)) return;
	if (ReloadTime[id] >= get_systime() - 1) return;
	ReloadTime[id] = get_systime();
	
	new clip, ammo, wpn[32];
	new wpnid = get_user_weapon(id, clip, ammo);
	
	if (wpnid == CSW_C4 || wpnid == CSW_KNIFE || wpnid == 0) return;
	if (wpnid == CSW_HEGRENADE || wpnid == CSW_SMOKEGRENADE || wpnid == CSW_FLASHBANG) return;
	
	if (clip == 0) {
	get_weaponname(wpnid,wpn,31);
	new iWPNidx = -1;
	while((iWPNidx = fm_find_ent_by_class(iWPNidx, wpn)) != 0) {
	if(id == pev(iWPNidx, pev_owner)) {
	cs_set_weapon_ammo(iWPNidx, getMaxClipAmmo(wpnid));
	break;
	}
	}
	}
	}

stock getMaxClipAmmo(wpnid) {
	new clipammo = 0;
	switch (wpnid) {
	case CSW_P228 : clipammo = 13;
	case CSW_SCOUT : clipammo = 10;
	case CSW_HEGRENADE : clipammo = 0;
	case CSW_XM1014 : clipammo = 7;
	case CSW_C4 : clipammo = 0;
	case CSW_MAC10 : clipammo = 30;
	case CSW_AUG : clipammo = 30;
	case CSW_SMOKEGRENADE : clipammo = 0;
	case CSW_ELITE : clipammo = 15;
	case CSW_FIVESEVEN : clipammo = 20;
	case CSW_UMP45 : clipammo = 25;
	case CSW_SG550 : clipammo = 30;
	case CSW_GALI : clipammo = 35;
	case CSW_FAMAS : clipammo = 25;
	case CSW_USP : clipammo = 12;
	case CSW_GLOCK18 : clipammo = 20;
	case CSW_AWP : clipammo = 10;
	case CSW_MP5NAVY : clipammo = 30;
	case CSW_M249 : clipammo = 100;
	case CSW_M3 : clipammo = 8;
	case CSW_M4A1 : clipammo = 30;
	case CSW_TMP : clipammo = 30;
	case CSW_G3SG1 : clipammo = 20;
	case CSW_FLASHBANG : clipammo = 0;
	case CSW_DEAGLE : clipammo = 7;
	case CSW_SG552 : clipammo = 30;
	case CSW_AK47 : clipammo = 30;
	case CSW_KNIFE : clipammo = 0;
	case CSW_P90 : clipammo = 50;
	}
	return clipammo;
	}
	
public client_PreThink(id) {
	if(!is_user_alive(id) || Race[id] != 5) return PLUGIN_CONTINUE;
    
	new nzbut = get_user_button(id);
	new ozbut = get_user_oldbutton(id);
	if((nzbut & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(ozbut & IN_JUMP)) {
	if (jumpznum[id] < get_pcvar_num(CvarVipJumps)) {
	dozjump[id] = true;
	jumpznum[id]++;
	return PLUGIN_CONTINUE;
	}
	}
	if((nzbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND)) {
	jumpznum[id] = 0;
	return PLUGIN_CONTINUE;
	}    
	return PLUGIN_CONTINUE;
	}

public client_PostThink(id) {
	if(!is_user_alive(id) || Race[id] != 5) return PLUGIN_CONTINUE;
    
	if(dozjump[id] == true) {
	new Float:vezlocityz[3];
	entity_get_vector(id,EV_VEC_velocity,vezlocityz);
	vezlocityz[2] = random_float(265.0,285.0);
	entity_set_vector(id,EV_VEC_velocity,vezlocityz);
	dozjump[id] = false;
	return PLUGIN_CONTINUE;
	}    
	return PLUGIN_CONTINUE;
	}  
	
public reset_model(id) cs_reset_user_model(id);

public client_disconnect(id) {  
	Race[id] = 0;
	set_user_invizibility(id,0);
	}

public client_putinserver(id) {
	set_task(get_pcvar_float(Mesaj), "MesajHud", 0, _, _, "b");
	Race[id] = 0;
	set_user_invizibility(id,0);
	}
	
public MesajHud(id) {
	set_hudmessage(0, 100, 200, -1.0, 0.17, 0, 6.0, 12.0, 0.01, 0.1, 10);
	show_hudmessage(id, "Acest server ii multumeste lui Aragon pentru tot efortul !");
	}

stock ColorChat(const id, const input[], any:...) {
	new count = 1, players[32];
	static msg[191];
	vformat(msg, 190, input, 3);
	
	replace_all(msg, 190, "^x04", "^4");
	replace_all(msg, 190, "^x01", "^1");
	replace_all(msg, 190, "^x03", "^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();
	}
	}
	}
	}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
*/
Last edited by johnny96iv on 15 May 2013, 22:16, edited 1 time in total.
RoyalServer 2
User avatar
tre3fla
Membru eXtream
Membru eXtream
Posts: 5317
Joined: 27 May 2012, 11:15
Detinator Steam: Da
CS Status: Allah Akbar !
Detinator server CS: Nu
SteamID: /id/tre3fla_xxx
Has thanked: 14 times
Been thanked: 129 times

14 May 2013, 07:29

| Afiseaza codul
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <engine>
#include <fakemeta_util>
#include <hamsandwich>

#pragma semicolon 1;
#define VIP_LEVEL ADMIN_IMMUNITY
new menu;
new jumpznum[33] = 0;
new bool:dozjump[33] = false;
new ReloadTime[33];
new Mesaj, CvarHealth, CvarArmor, CvarDamage,CvarInvis, CvarInvisKnife, CvarVipJumps, CvarVipHealth;
new Race[33];
new bool: Used[33];
new maxPlayers;

public plugin_init() {
	register_plugin("KnifeMod", "1.0", "Aragon*");
	register_clcmd("changerace","cmdrace");
	register_clcmd("say /changerace","cmdrace");
	register_clcmd("say_team /changerace","cmdrace");
	register_clcmd("say changerace","cmdrace");
	register_clcmd("say_team changerace","cmdrace");
	register_clcmd("race","cmdrace");
	register_clcmd("say /race","cmdrace");
	register_clcmd("say_team /race","cmdrace");
	register_clcmd("say race","cmdrace");
	register_clcmd("say_team race","cmdrace");
	register_event( "Damage", "Damage", "be" );
	register_event("CurWeapon","CurWeapon","be","1=1");
	RegisterHam(Ham_Spawn, "player", "Spawm");
	Mesaj = register_cvar("race_hudmessage_delay", "420");		//| Intervarul de timp la care sa apara mesajul HUD Deffault:420 |//
	CvarHealth = register_cvar("race_human_health","500");		//| Human Health Deffault: 250 |//
	CvarArmor = register_cvar("race_human_armor","500");		//| Human Armor Deffault: 250 |//
	CvarDamage = register_cvar("race_predator_damage", "3");		//| Damage Deffault: 3 |//
	CvarInvis = register_cvar("race_efl_invis","100");		//| 0 Total Invizibility -> 255 Total Vizibility Deffault:30 |//
	CvarInvisKnife = register_cvar("race_efl_invis_knife","100");	//| 0 Total Invizibility -> 255 Total Vizibility white Knife Deffault:20 |//
	CvarVipJumps = register_cvar("race_vip_multijump","2");		//| De cate ori poate sari VIP +1 |//
	CvarVipHealth = register_cvar("race_vip_health","250");		//| VIP Health Deffault:; 150 |//
	register_logevent( "Event_RE", 2, "1=Round_End" );
	maxPlayers = get_maxplayers();
	
}
public plugin_precache() { 
	precache_model("models/player/dnthuman/dnthuman.mdl");
	precache_model("models/player/dntsurv/dntsurv.mdl");
	precache_model("models/player/dntpredator/dntpredator.mdl");
	precache_model("models/player/dntinv/dntinv.mdl");
	precache_model("models/player/dntvip/dntvip.mdl");
} 
public cmdrace(id) { 
	if(cs_get_user_team(id) == CS_TEAM_CT && !Used[id]) {
		menu = menu_create("\r[BB.ServerulTau.Ro] \wAlege-ti \yRasa", "SetRace");
		
		menu_additem(menu, "\yNero \w- \y500 \rHp \wsi \y500 \rArmura", "1", 0);
		menu_additem(menu, "\yDanTe \w- \rGloate infinite", "2", 0);
		menu_additem(menu, "\yPredator \w- \rDamage \yx3", "3", 0);
		menu_additem(menu, "\yElf  \w- \rInvizibilitate", "4", 0);
		menu_additem(menu, "\rVIP  \w- \yHealth \w/ \yDamage \rX3 \w/ \rUnlimited Ammo \w/ \rMultiJump", "5", 0);   
		
		menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
		menu_display(id, menu, 0);
		return PLUGIN_CONTINUE;
	}
	return PLUGIN_CONTINUE;
}

public SetRace(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);
	switch(key) {
		case 1: {
			Race[id] = 1;
			if(is_user_alive(id)) {
				fm_set_user_health(id, get_pcvar_num(CvarHealth));
				set_user_invizibility(id,0);
				cs_set_user_model(id, "dnthuman");
				Used[id] = true;
			}
		}
		case 2: {
			Race[id] = 2;
			if(is_user_alive(id)) {
				fm_set_user_health(id, 100);
				set_user_invizibility(id,0);
				cs_set_user_model(id, "dntsurv");
				Used[id] = true;
			}
		}
		case 3: {
			Race[id] = 3;
			if(is_user_alive(id)) {
				fm_set_user_health(id, 100);
				set_user_invizibility(id,0);
				cs_set_user_model(id, "dntpredator");
				Used[id] = true;
			}
		}
		case 4: {
			Race[id] = 4;
			if(is_user_alive(id)) {
				fm_set_user_health(id, 100);
				set_user_invizibility(id,1);
				cs_set_user_model(id, "dntinv");
				Used[id] = true;
			}
		}
		case 5: {
			if(get_user_flags(id) & VIP_LEVEL) {
				Race[id] = 5;
				if(is_user_alive(id)) {
					set_user_invizibility(id,0);
					fm_set_user_health(id, get_pcvar_num(CvarVipHealth));
					cs_set_user_model(id, "dntvip");
					Used[id] = true;
				}
			}
		}
	}
	menu_destroy(menu);
	return PLUGIN_HANDLED;
}

public Damage(id) {
	if(cs_get_user_team(id) == CS_TEAM_CT) {
		new victim_id = id;
		if( !is_user_connected( victim_id ) ) return PLUGIN_CONTINUE;
		new dmg_take = read_data(2);
		new Float:multiplier = get_pcvar_float(CvarDamage);
		new Float:damage = dmg_take * multiplier;
		new health = get_user_health( victim_id );
		new iWeapID, attacker_id = get_user_attacker( victim_id, iWeapID );
		
		if( !is_user_connected( attacker_id ) || !is_user_alive( victim_id ) ) {
			return PLUGIN_HANDLED;
		}
		if(Race[attacker_id] == 3 || Race[attacker_id] == 5 && get_user_flags(id) & VIP_LEVEL) {
			if( floatround(damage) >= health ) {
				if( victim_id == attacker_id ) {
					return PLUGIN_CONTINUE;
				}   
				else {
					log_kill( attacker_id, victim_id, "weaponbox", 0 );
				}   
				return PLUGIN_CONTINUE;
			}
		}
		return PLUGIN_CONTINUE;
	}
	return PLUGIN_CONTINUE;
}

public Spawm(id) {
	if(get_user_team(id) == 2) {
		//1.Human
		if(Race[id] == 1) {
			fm_set_user_health(id, get_pcvar_num(CvarHealth));
			fm_set_user_armor(id, get_pcvar_num(CvarArmor));
			set_user_invizibility(id,0);
			cs_set_user_model(id, "dnthuman");
		}
		//2.Surviver
		if (Race[id] == 2) {
			set_user_invizibility(id,0);
			cs_set_user_model(id, "dntsurv");
			fm_set_user_health(id, 100);
		}
		//3.Predator
		if (Race[id] == 3) {
			set_user_invizibility(id,0);
			cs_set_user_model(id, "dntpredator");
			fm_set_user_health(id, 100);
		}
		//4.Elf
		if (Race[id] == 4) {
			set_user_invizibility(id,1);
			cs_set_user_model(id, "dntinv");
			fm_set_user_health(id, 100);
		}
		//5.VIP
		if (Race[id] == 5 && get_user_flags(id) & VIP_LEVEL) {
			set_user_invizibility(id,0);
			fm_set_user_health(id, get_pcvar_num(CvarVipHealth));
			cs_set_user_model(id, "dntvip");
		}
		if(Race[id] == 0) {
			cmdrace(id);
		}
	}
	else {
		set_user_invizibility(id,0);
		set_task(0.1, "reset_model",id);
		Race[id] = 0;
	}
}

public CurWeapon(id) {
	if(cs_get_user_team(id) == CS_TEAM_CT) {
		new wpnid = read_data(2);
		new clip = read_data(3);
		
		//2.Surviver
		if (Race[id] == 2 || Race[id] == 5  && get_user_flags(id) & VIP_LEVEL) {
			if (wpnid == CSW_C4 || wpnid == CSW_KNIFE) {}
			if (wpnid == CSW_HEGRENADE || wpnid == CSW_SMOKEGRENADE || wpnid == CSW_FLASHBANG) {}
			if (clip == 0) reloadAmmo(id);
		}
		//4.Elf
		if (Race[id] == 4) {
			static iInvisLevel;
			if(!IsHoldingKnife(id)) {
				iInvisLevel = get_pcvar_num(CvarInvis);
				fm_set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransTexture, iInvisLevel);
			}
			else if(IsHoldingKnife(id)) {
				InvKnife(id);
			}
		}
		else {
			fm_set_user_rendering(id);
		}
		if(Race[id] == 0) {
			cmdrace(id);
		}
		return PLUGIN_HANDLED;
	}
	return PLUGIN_HANDLED;
}

stock log_kill(killer, victim, weapon[],headshot) {
	user_silentkill( victim );
	message_begin( MSG_ALL, get_user_msgid( "DeathMsg" ), {0,0,0}, 0 );
	write_byte( killer );
	write_byte( victim );
	write_byte( headshot );
	write_string( weapon );
	message_end();
	new kfrags = get_user_frags( killer );
	fm_set_user_frags( killer, kfrags++ );
	new vfrags = get_user_frags( victim );
	fm_set_user_frags( victim, vfrags++ );
	return  PLUGIN_CONTINUE;
} 

stock set_user_invizibility(id, invizibility = 1) {
	static iInvisLevel;
	if(invizibility){
		if(IsHoldingKnife(id)) {
			InvKnife(id);
		}
		if(is_user_alive(id)) {
			iInvisLevel = get_pcvar_num(CvarInvis);
			fm_set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransTexture, iInvisLevel);
		}
	}
	else {
		fm_set_user_rendering(id);
	}
}

public IsHoldingKnife(id) {
	new iClip, iAmmo, iWeapon;
	iWeapon = get_user_weapon(id, iClip, iAmmo);
	if(iWeapon == CSW_KNIFE) {
		return true;
	}
	return false;
}

public InvKnife(id) {
	static iInvisLevel;
	if(IsHoldingKnife(id)) {
		iInvisLevel = get_pcvar_num(CvarInvisKnife);
		fm_set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransTexture, iInvisLevel);
	}
	else {
		iInvisLevel = get_pcvar_num(CvarInvis);
		fm_set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransTexture, iInvisLevel);
	}
}

public reloadAmmo(id) {
	if (!is_user_connected(id)) return;
	if (ReloadTime[id] >= get_systime() - 1) return;
	ReloadTime[id] = get_systime();
	
	new clip, ammo, wpn[32];
	new wpnid = get_user_weapon(id, clip, ammo);
	
	if (wpnid == CSW_C4 || wpnid == CSW_KNIFE || wpnid == 0) return;
	if (wpnid == CSW_HEGRENADE || wpnid == CSW_SMOKEGRENADE || wpnid == CSW_FLASHBANG) return;
	
	if (clip == 0) {
		get_weaponname(wpnid,wpn,31);
		new iWPNidx = -1;
		while((iWPNidx = fm_find_ent_by_class(iWPNidx, wpn)) != 0) {
			if(id == pev(iWPNidx, pev_owner)) {
				cs_set_weapon_ammo(iWPNidx, getMaxClipAmmo(wpnid));
				break;
			}
		}
	}
}

stock getMaxClipAmmo(wpnid) {
	new clipammo = 0;
	switch (wpnid) {
		case CSW_P228 : clipammo = 13;
		case CSW_SCOUT : clipammo = 10;
		case CSW_HEGRENADE : clipammo = 0;
		case CSW_XM1014 : clipammo = 7;
		case CSW_C4 : clipammo = 0;
		case CSW_MAC10 : clipammo = 30;
		case CSW_AUG : clipammo = 30;
		case CSW_SMOKEGRENADE : clipammo = 0;
		case CSW_ELITE : clipammo = 15;
		case CSW_FIVESEVEN : clipammo = 20;
		case CSW_UMP45 : clipammo = 25;
		case CSW_SG550 : clipammo = 30;
		case CSW_GALI : clipammo = 35;
		case CSW_FAMAS : clipammo = 25;
		case CSW_USP : clipammo = 12;
		case CSW_GLOCK18 : clipammo = 20;
		case CSW_AWP : clipammo = 10;
		case CSW_MP5NAVY : clipammo = 30;
		case CSW_M249 : clipammo = 100;
		case CSW_M3 : clipammo = 8;
		case CSW_M4A1 : clipammo = 30;
		case CSW_TMP : clipammo = 30;
		case CSW_G3SG1 : clipammo = 20;
		case CSW_FLASHBANG : clipammo = 0;
		case CSW_DEAGLE : clipammo = 7;
		case CSW_SG552 : clipammo = 30;
		case CSW_AK47 : clipammo = 30;
		case CSW_KNIFE : clipammo = 0;
		case CSW_P90 : clipammo = 50;
	}
	return clipammo;
}

public client_PreThink(id) {
	if(!is_user_alive(id) || Race[id] != 5) return PLUGIN_CONTINUE;
	
	new nzbut = get_user_button(id);
	new ozbut = get_user_oldbutton(id);
	if((nzbut & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(ozbut & IN_JUMP)) {
		if (jumpznum[id] < get_pcvar_num(CvarVipJumps)) {
			dozjump[id] = true;
			jumpznum[id]++;
			return PLUGIN_CONTINUE;
		}
	}
	if((nzbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND)) {
		jumpznum[id] = 0;
		return PLUGIN_CONTINUE;
	}    
	return PLUGIN_CONTINUE;
}

public client_PostThink(id) {
	if(!is_user_alive(id) || Race[id] != 5) return PLUGIN_CONTINUE;
	
	if(dozjump[id] == true) {
		new Float:vezlocityz[3];
		entity_get_vector(id,EV_VEC_velocity,vezlocityz);
		vezlocityz[2] = random_float(265.0,285.0);
		entity_set_vector(id,EV_VEC_velocity,vezlocityz);
		dozjump[id] = false;
		return PLUGIN_CONTINUE;
	}    
	return PLUGIN_CONTINUE;
}  

public reset_model(id) cs_reset_user_model(id);

public client_disconnect(id) {  
	Race[id] = 0;
	set_user_invizibility(id,0);
}

public client_putinserver(id) {
	set_task(get_pcvar_float(Mesaj), "MesajHud", 0, _, _, "b");
	Race[id] = 0;
	set_user_invizibility(id,0);
}

public MesajHud(id) {
	set_hudmessage(0, 100, 200, -1.0, 0.17, 0, 6.0, 12.0, 0.01, 0.1, 10);
	show_hudmessage(id, "Acest server ii multumeste lui Aragon pentru tot efortul !");
}

public Event_RE( ) {
	new Players[32], Count;
	get_players( Players, Count );
	for( new i=0; i <= maxPlayers; i++ ) {
		new Player[ 32 ];
		Player = Players;
		Used[Players] = false;
	}
}

stock ColorChat(const id, const input[], any:...) {
	new count = 1, players[32];
	static msg[191];
	vformat(msg, 190, input, 3);
	
	replace_all(msg, 190, "^x04", "^4");
	replace_all(msg, 190, "^x01", "^1");
	replace_all(msg, 190, "^x03", "^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();
			}
		}
	}
}
johnny96iv
Membru, skill 0
Membru, skill 0
Posts: 34
Joined: 16 Aug 2012, 23:55
Detinator Steam: Nu
CS Status: Bantui!
Detinator server CS: BB.CSLR.RO
Has thanked: 5 times
Contact:

14 May 2013, 21:45

merge foarte bine Multumesc si daca nu te superi ai putea sa imi spui ce ai modificat ca sa stiu si eu deacum incolo :)
User avatar
Nubo
Fost moderator
Fost moderator
Posts: 2734
Joined: 11 Jul 2012, 18:45
Detinator Steam: Da
CS Status: [əˈnɒn.ɪ.məs]
Reputatie: Fost scripter eXtreamCS
Fost eXtream Mod
Has thanked: 8 times
Been thanked: 27 times

14 May 2013, 21:50

A adaugat: new bool: Used[33];

Cred ca iti dai seama pentru ce, nu stau sa scriu.
Cand nu merge acest forum sunt online aici:
  • * Skype: nubo_cs
    * Y!M ID: nubo_cs
User avatar
tre3fla
Membru eXtream
Membru eXtream
Posts: 5317
Joined: 27 May 2012, 11:15
Detinator Steam: Da
CS Status: Allah Akbar !
Detinator server CS: Nu
SteamID: /id/tre3fla_xxx
Has thanked: 14 times
Been thanked: 129 times

14 May 2013, 23:11

Am creeat un bool nou cu 33 de array-uri si l-am folosit sa blochez jucatorii sa-si aleaga clasele de mai multe ori pe runda. acel bool se reseteaza la sfarsitul rundei.
johnny96iv
Membru, skill 0
Membru, skill 0
Posts: 34
Joined: 16 Aug 2012, 23:55
Detinator Steam: Nu
CS Status: Bantui!
Detinator server CS: BB.CSLR.RO
Has thanked: 5 times
Contact:

14 May 2013, 23:15

am inteles multumesc inca odata
Post Reply

Return to “Cereri”

  • Information
  • Who is online

    Users browsing this forum: Mail.RU [Bot] and 13 guests