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
 

Zdjęcie

problem codstats


  • Zamknięty Temat jest zamknięty
Brak odpowiedzi do tego tematu

#1 pfk

    Banned

  • Zbanowany

Reputacja: 1
Nowy

  • Postów:87
  • GG:
  • Lokalizacja:polska
Offline

Napisano 28.08.2010 13:31

Elo mam +2 klasy dodane greandier i szturmowiec i chcialem je dodac do codstats...zaraz dolacze sma... ale jak dodalem to po wpisaniu /topxp nie bylo tych klas do wybor

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <colorchat>

#define PLUGIN "Cod-Stats"
#define VERSION "1.0"
#define AUTHOR "G[o]Q"

new const klasy[][] = {"Brak",
	"Snajper",
	"Komandos",
	"Strzelec wyborowy",
	"Obronca",
	"Medyk",
	"Wsparcie ogniowe",
	"Saper",
	"Demolitions",
	"Rusher",
	"Rambo",
	"Szturmowiec",
	"Grendier"
	
};

new mKlasa // Menu
new mcbKlasa // Menu Callback


new Array:tab_gracze
new Array:exp_gracze

new p_info[33][11][6]

new g_vault;

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	register_clcmd("say /topxp","menu");      
	register_clcmd("say /myxp","private");
	
	/* Menu Klasa */
	/* Use menu_display(id, mKlasa, 0) to show the menu to an user. */
	mKlasa = menu_create("Klasa", "mh_Klasa")
	mcbKlasa = menu_makecallback("mcb_Klasa")
	
	for(new i=1;i<11;i++){
		new txt[128]
		format(txt,127,"%s",klasy[i])
		menu_additem(mKlasa, txt, "ma_Klasa", ADMIN_ALL, mcbKlasa)
	}
	
	tab_gracze=ArrayCreate(33,128);
	exp_gracze=ArrayCreate(6,128);
	
	g_vault = nvault_open("CodMod");
	
	set_task(300.0,"spam",0,_,_,"b")
}
public spam(){
	switch(random_num(0,1)){
		case 0:ColorChat(0,  GREEN, "[Cod-Stats] ^x03 aby zobaczyc 10 osob z najwiekszym expem na serverze wpisz ^x04/topxp");
		case 1:ColorChat(0,  GREEN, "[Cod-Stats] ^x03 aby zobaczyc Statystyki swoich klas wpisz ^x04/myxp");
	}
}
public menu(id){
	menu_display(id, mKlasa, 0)
}

public client_connect(id){
	new name[33];
	get_user_name(id,name,32);
	if(!sprawdz(name)) zapisz(name)
	
}

public private(id){
	
	for(new i=1;i<11;i++){
		WczytajDane2(id,i)
	}
	pokaz_klasy(id)
}
public pokaz_klasy(id){
	new tresc[1200]
	
	
	
	format(tresc,1199,"<html><body bgcolor=^"black^"><center>")
	format(tresc,1199,"%s<table width=^"700^" border=^"1^" style=^"border-collapse: collapse;border-color: black;color: white;border-style: solid;text-align: center^">",tresc)
	format(tresc,1199,"%s<tbody><tr><td>Klasa</td>",tresc)
	format(tresc,1199,"%s<td>Exp</td><td>LvL</td>",tresc)
	format(tresc,1199,"%s<td>Int.</td><td >Zycie</td><td>Wytrz.</td><td >Kon.</td>",tresc) 
	
		
	
	for(new i=1;i<11;i++){
		format(tresc,1199,"%s<tr><td>%s</td>",tresc,klasy[i])
		format(tresc,1199,"%s<td>%d</td>",tresc,p_info[id][i][0])
		format(tresc,1199,"%s<td>%d</td>",tresc,p_info[id][i][1])
		format(tresc,1199,"%s<td>%d</td>",tresc,p_info[id][i][2])
		format(tresc,1199,"%s<td>%d</td>",tresc,p_info[id][i][3])
		format(tresc,1199,"%s<td>%d</td>",tresc,p_info[id][i][4])
		format(tresc,1199,"%s<td>%d</td></tr>",tresc,p_info[id][i][5])
	}
	format(tresc,1199,"%s</tbody></table></center></body><html>",tresc)
	
	show_motd(id,tresc)
	
}

public WczytajDane2(id, klasa){ //klasa 1-10
	new vaultkey[64],vaultdata[256];
	new parm[6]
	new name[33]
	
	get_user_name(id,name,33)
	
	format(vaultkey,63,"%s-%i-cod", name, klasa);
	format(vaultdata,255,"%i#%i#%i#%i#%i#%i", parm[0], parm[1], parm[2], parm[3], parm[4], parm[5]);
	nvault_get(g_vault,vaultkey,vaultdata,255);
 
	replace_all(vaultdata, 255, "#", " ");
 
	new tparam[6][33]
 
	parse(vaultdata, tparam[0], 32, tparam[1], 32, tparam[2], 32, tparam[3], 32, tparam[4], 32, tparam[5], 32);
 
	parm[0] = str_to_num(tparam[0]);//xp
	parm[1]=  str_to_num(tparam[1])>0?str_to_num(tparam[1]):1;//lvl
	parm[2] = str_to_num(tparam[2]);//int
	parm[3] = str_to_num(tparam[3]);//health
	parm[4] = str_to_num(tparam[4]);//wytrzymalosc
	parm[5] = str_to_num(tparam[5]);//kondycja
	
	for(new j=0;j<6;j++)
		p_info[id][klasa][j]=parm[j]
} 

public WczytajDane(name[33], klasa){ //klasa 1-10
	new vaultkey[64],vaultdata[256];
	new parm[6]
	
	
	format(vaultkey,63,"%s-%i-cod", name, klasa);
	format(vaultdata,255,"%i#%i#%i#%i#%i#%i", parm[0], parm[1], parm[2], parm[3], parm[4], parm[5]);
	nvault_get(g_vault,vaultkey,vaultdata,255);
 
	replace_all(vaultdata, 255, "#", " ");
 
	new tparam[6][33]
 
	parse(vaultdata, tparam[0], 32, tparam[1], 32, tparam[2], 32, tparam[3], 32, tparam[4], 32, tparam[5], 32);
 
	parm[0] = str_to_num(tparam[0]);//xp
	parm[1]=  str_to_num(tparam[1])>0?str_to_num(tparam[1]):1;//lvl
	parm[2] = str_to_num(tparam[2]);//int
	parm[3] = str_to_num(tparam[3]);//health
	parm[4] = str_to_num(tparam[4]);//wytrzymalosc
	parm[5] = str_to_num(tparam[5]);//kondycja
	
	ArrayPushArray(exp_gracze,parm)
} 

public sortuj(){
	new size=ArraySize(exp_gracze)
	
	for(new i=0;i<size-1;i++){
		for (new j=size-1;j>i;j--){
			new tptab[6]
			new tptab2[6]
			
			ArrayGetArray(exp_gracze,j,tptab)
			ArrayGetArray(exp_gracze,j-1,tptab2)
			
			if (tptab2[0]<tptab[0]){ 
				ArraySwap(exp_gracze,j,j-1)
				ArraySwap(tab_gracze,j,j-1)
			}
		}

	}
}

public create_arry(klasa){
	new text[128],chars ,nick[33]
	new linijka=0
	static configdir[64],plik[128]
	get_configsdir(configdir,63)
	formatex(plik,127,"%s/gracze.ini",configdir)
	ArrayClear(tab_gracze)
	ArrayClear(exp_gracze)
	do{
		linijka = read_file(plik,linijka,text,127,chars)
		if(!chars) continue 
		parse(text, nick,32)
		ArrayPushString(tab_gracze,nick);
		WczytajDane(nick, klasa)
		
	}
	while(linijka!=0)
	
	sortuj()
	
	return PLUGIN_CONTINUE	

}
public pokaz(id,klasa){
	create_arry(klasa)
	new rozmiar=ArraySize(exp_gracze)>10?10:ArraySize(exp_gracze);
	new tresc[1200]
	
	format(tresc,1199,"<html><body bgcolor=^"black^"><center><img src='http://amxx.pl/uploads/images/amxx.pl-1275233083-U6279.jpg'><br /><br />")
	format(tresc,1199,"%s<table width=^"700^" border=^"1^" style=^"border-collapse: collapse;border-color: black;color: white;border-style: solid;text-align: center^">",tresc)
	format(tresc,1199,"%s<tbody><tr><td>Pos.</td>",tresc)
	format(tresc,1199,"%s<td>Nick</td><td>Exp</td>",tresc)
	format(tresc,1199,"%s<td>LvL</td>",tresc) 
	
		
	
	for(new i=0;i<rozmiar;i++){
		new tmptab[33],tmptab2[6]
		ArrayGetArray(tab_gracze,i,tmptab)
		ArrayGetArray(exp_gracze,i,tmptab2)
		
		format(tresc,1199,"%s<tr><td>%d</td>",tresc,i+1)
		format(tresc,1199,"%s<td>%s</td>",tresc,tmptab)
		format(tresc,1199,"%s<td>%d</td>",tresc,tmptab2[0])
		format(tresc,1199,"%s<td>%d</td></tr>",tresc,tmptab2[1])
	
		
	}
	format(tresc,1199,"%s</tbody></table></center></body><html>",tresc)
	show_motd(id,tresc)
}

public sprawdz(source[33]){
	
	new linijka=0,text[128],chars
	static configdir[64],plik[128]
	new nick[33],name[33]
	name=source;
	get_configsdir(configdir,63)
	formatex(plik,127,"%s/gracze.ini",configdir)
	
	
	do{
		linijka = read_file(plik,linijka,text,127,chars)
		if((text[0]==';') || !chars) continue 
		parse(text, nick,32)
		if (equali(name,nick)) return 1
	}
	while(linijka!=0)
	return 0
}
public zapisz(source[33]){
	new wpis[128]
	new nick[33];
	static configdir[64],plik[128]
	nick=source
	
	format(wpis,127,"^"%s^"",nick)
	get_configsdir(configdir,63)
	formatex(plik,127,"%s/gracze.ini",configdir)
	write_file(plik,wpis,-1)
	
	log_to_file("Cstats.txt","Gracz o nicku %s zostal dodany do bazy statystyk",nick)
	
	return PLUGIN_CONTINUE
}


/* Menu Klasa */

public mh_Klasa(id, menu, item) {
	
	new opcja
	
	switch(item){
		case 0:opcja=1
		case 1:opcja=2
		case 2:opcja=3
		case 3:opcja=4
		case 4:opcja=5
		case 5:opcja=6
		case 6:opcja=7
		case 7:opcja=8
		case 8:opcja=9
		case 9:opcja=10
		case 10:opcja=11
		case 11:opcja=12
		case 12:opcja=13
		case 13:opcja=14
		case 14:opcja=15
		case 15:opcja=16
		case 16:opcja=17
		case MENU_EXIT:{
			menu_destroy(mKlasa);
			return PLUGIN_CONTINUE;
		}
	}
	
	pokaz(id,opcja)
	
	return PLUGIN_CONTINUE;
}

public ma_Klasa(id) {
	/* This event is called when an item was selected */
}

public mcb_Klasa(id, menu, item) {
	/* This is the callback-event, here you can set items enabled or disabled. */
	/* If you want to enable an item, use: return ITEM_ENABLED */
	/* If you want to disable an item, use: return ITEM_DISABLED */
	return ITEM_ENABLED
}

/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/

Dołączona grafika
Dołączona grafika
Dołączona grafika
Dołączona grafika




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych