Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Wklejka 130600654114842 dodana przez Whisper, 21.05.2011 20:35
Typ:


130600654114842
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <colorchat>
 
new const LEVELS[6] = { 0, 200, 400, 800, 1600, 3200 };
 
new iExp[33],iLvl[33];
new cKill,g_vault;
 
new doswiadczenie_za_bombe;
new podkladajacy;
new rozbrajajacy;
 
public plugin_init()
{
	register_plugin("exp", "0.1", "Flyen & Harsay & Kruszynka");
 
	register_event("DeathMsg", "EventSmierci", "a");
 
	g_vault = nvault_open("TestExpSave");
	cKill = register_cvar("amx_exp_kill", "20");
	doswiadczenie_za_bombe = register_cvar("amx_exp_bomb", "100")
	register_logevent("BombaPodlozona", 3, "2=Planted_The_Bomb");
	register_event("SendAudio", "BombaRozbrojona", "a", "2&%!MRAD_BOMBDEF");
	register_event("BarTime", "RozbrajaBombe", "be", "1=10", "1=5")
}
public EventSmierci()
{
	new iKiller = read_data(1);
	new iVictim = read_data(2);     
	new gNumExp = get_pcvar_num(cKill);
 
	new Kid[32],Vid[32];
	get_user_name(iKiller, Kid, 31);
	get_user_name(iVictim, Vid, 31);        
	if(get_user_team(iKiller) != get_user_team(iVictim)) 
	{
		iExp[iKiller] += gNumExp;
		ColorChat(iKiller, GREEN, "^x03[Exp]^x04 %s^x01 Otrzymales^x04 %d doswiadczenia^x01 za zabicie^x04 %s",Kid ,gNumExp, Vid);
	}
 
	SprawdzPoziom(iKiller);
	Zapisz(iKiller);
}
public client_connect(id)
{
	Wczytaj(id);
	set_task(0.1, "PokazInformacje",id,_,_,"b");
}
public client_disconnect(id)
{
	Zapisz(id);
}
public Zapisz(id)
{
	new NameID[31];
	get_user_name(id,NameID,31);
 
	new vaultkey[64],vaultdata[256];
	format(vaultkey,63,"%s-Mod",NameID);
	format(vaultdata,255,"%i#%i#",iExp[id], iLvl[id]);
	nvault_set(g_vault,vaultkey,vaultdata);
	return PLUGIN_CONTINUE;
}
public Wczytaj(id)
{
	new NameID[31];
	get_user_name(id,NameID,31);
 
	new vaultkey[64],vaultdata[256];
	format(vaultkey,63,"%s-Mod",NameID);
	format(vaultdata,255,"%i#%i#",iExp[id], iLvl[id]);
	nvault_get(g_vault,vaultkey,vaultdata,255);
	replace_all(vaultdata, 255, "#", " ");
 
	new PEXP[32], PLEV[32];
	parse(vaultdata, PEXP, 31, PLEV, 31);
 
	iExp[id] = str_to_num(PEXP);
	iLvl[id] = str_to_num(PLEV);    
 
 
	return PLUGIN_CONTINUE;
}
public SprawdzPoziom(id) 
{
	while(iExp[id] >= LEVELS[iLvl[id]]){
		ColorChat(id, GREEN, "^x03[Exp]^x04 Awansowales na kolejny poziom!")
		iLvl[id] += 1
	}
	Zapisz(id);
}
public PokazInformacje(id) 
{
	if(is_user_alive(id)){
		set_hudmessage(255, 0, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0);
		show_hudmessage(id,"[Poziom: %i]^n[Doswiadczenie: %i]", iLvl[id], iExp[id]);
	}       
	return PLUGIN_CONTINUE;
}
 
public RozbrajaBombe(id)
	rozbrajajacy = id;
 
public BombaPodlozona()
{
	new Players[32], playerCount, id;
	get_players(Players, playerCount, "aeh", "TERRORIST");
 
	if(get_playersnum() > 1)
	{
		iExp[podkladajacy] += doswiadczenie_za_bombe;
		for (new i=0; i<playerCount; i++) 
		{                       
			if(id != podkladajacy)
			{
				iExp[id] += cKill;
				client_print(id, print_chat, "[NaturaMod] Dostales %i doswiadczenia za podlozenie bomby przez twoj team.", cKill);
			}
			else
			{
				iExp[id] += doswiadczenie_za_bombe;
				client_print(id, print_chat, "[NaturaMod] Dostales %i doswiadczenia za podlozenie bomby.", doswiadczenie_za_bombe);
			}
			SprawdzPoziom(id);
		}
	}
}
 
public BombaRozbrojona()
{
	new Players[32], playerCount, id;
	get_players(Players, playerCount, "aeh", "CT");
 
	iExp[rozbrajajacy] += doswiadczenie_za_bombe;
	for (new i=0; i<playerCount; i++) 
	{
		if(id != rozbrajajacy)
		{
			iExp[id] += cKill;
			client_print(id, print_chat, "[NaturaMod] Dostales %i doswiadczenia za rozbrojenie bomby przez twoj team.", cKill);
		}
		else
		{
			iExp[id] += doswiadczenie_za_bombe;
			client_print(id, print_chat, "[NaturaMod] Dostales %i doswiadczenia za rozbrojenie bomby.",doswiadczenie_za_bombe);
		}
		SprawdzPoziom(id);
	}
}