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

top 15? Nvault


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
5 odpowiedzi w tym temacie

#1 mlekovita

    Zaawansowany

  • Użytkownik

Reputacja: 7
Nowy

  • Postów:149
  • Imię:Dawid
Offline

Napisano 05.05.2020 19:05

Hej siemanko, mam odczyt i zapis szlugow w nvault. Jak moge zrobic top 15 szlugow?
o tak ---V

1, Nick X szlugów

2, Nick X szlugów

3, Nick X szlugów

...


  • +
  • -
  • 0

#2 wariat aka pro

    Wszechwidzący

  • Zbanowany

Reputacja: 3
Nowy

  • Postów:235
  • GG:
  • Imię:mat
Offline

Napisano 05.05.2020 20:06

Nikt ci raczej nie pomoże dałeś za mało informacji . Podaj pluginy , kody i zobczymy co da się zrobić haha 



#3 mlekovita

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 7
Nowy

  • Postów:149
  • Imię:Dawid
Offline

Napisano 05.05.2020 20:12

Masz racje

#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <jailbreak>

new g_szNickGracza[33][32];
new g_iSzlugiGracza[33];

new g_iMsgStatusText;

new g_iIloscSlotow;
new g_iHud;

public plugin_init()
{
	register_plugin("Szlugi", "1.0", "");
	
	register_concmd("jailx_ustawszlugi", "cmd_UstawSzlugi", ADMIN_IMMUNITY, "<nick> <ile>");
	register_concmd("jailx_dodajszlugi", "cmd_DodajSzlugi", ADMIN_IMMUNITY, "<nick> <ile>");
	
	register_event("TextMsg", "ev_PoczatekGry", "a", "2&#Game_C")
	register_event("ResetHUD", "ev_ResetHUD", "b");
	register_event("DeathMsg", "ev_Smierc", "a");
	
	g_iMsgStatusText = get_user_msgid("StatusText");
	g_iIloscSlotow = get_maxplayers();
	g_iHud = CreateHudSyncObj();
	
}
public plugin_natives() {
	register_native("give_user_jbpack", "AddCoins", 1);
	register_native("set_user_jbpack", "SetCoins", 1);
	register_native("get_user_jbpack", "GetCoins", 1);
}	

public client_authorized(id) {
	get_user_name(id, g_szNickGracza[id], 31);
	LoadCoins(id);
}

public client_disconnect(id) {
	SaveCoins(id);
	//remove_task(id);
}

public cmd_UstawSzlugi(id, iLevel, iCid)
{
	if(!cmd_access(id, iLevel, iCid, 2))
		return PLUGIN_HANDLED;
	
	new szNick[32], szIle[8];
	
	read_argv(1, szNick, 31);
	read_argv(2, szIle, 8);
	
	new iTarget = find_player("bhl", szNick);
	
	if(!iTarget)
	{
		client_print(id, print_console, "*** Nie znaleziono gracza!");
		return PLUGIN_HANDLED;
	}
	
	g_iSzlugiGracza[iTarget] = str_to_num(szIle);
	StatusSzlugow(iTarget);
	
	get_user_name(iTarget, szNick, 31);
	client_print(id, print_console, "*** Ustawiono %s szlugow graczowi %s", szIle, szNick);
	
	return PLUGIN_HANDLED;
}

public cmd_DodajSzlugi(id, iLevel, iCid) {
	if(!cmd_access(id, iLevel, iCid, 2))
		return PLUGIN_HANDLED;
	
	new szNick[32], szIle[8];
	
	read_argv(1, szNick, 31);
	read_argv(2, szIle, 8);
	
	new iTarget = find_player("bhl", szNick);
	
	if(!iTarget) {
		client_print(id, print_console, "*** Nie znaleziono gracza!");
		return PLUGIN_HANDLED;
	}
	
	g_iSzlugiGracza[iTarget] += str_to_num(szIle);
	StatusSzlugow(iTarget);
	
	get_user_name(iTarget, szNick, 31);
	client_print(id, print_console, "*** Dodano %s szlugow dla graczowi %s", szIle, szNick);
	
	return PLUGIN_HANDLED;
}

public PokazSzlugi(id) {
	if(!is_user_alive(id))
		return;
	
	StatusSzlugow(id);
}

public StatusSzlugow(id) {
	if(g_iSzlugiGracza[id] > 100000) {
		g_iSzlugiGracza[id] = 100000;
	}
	
	if(g_iSzlugiGracza[id] < 0) {
		g_iSzlugiGracza[id] = 0;
	}
	
	new szHud[64];
	formatex(szHud, 63, "Szlugi: %d", g_iSzlugiGracza[id]);
	
	message_begin(MSG_ONE, g_iMsgStatusText, {0,0,0}, id);
	write_byte(0);
	write_string(szHud); 
	message_end();
}

public SetCoins(id, wartosc) {
	g_iSzlugiGracza[id] = wartosc;
	
	if(is_user_alive(id)) {
		StatusSzlugow(id);
	}
}
	
public GetCoins(id)
	return g_iSzlugiGracza[id];
	
public AddCoins(id, iIle, szPowod[]) {
	param_convert(3);
	
	g_iSzlugiGracza[id] += iIle;
	StatusSzlugow(id)
					
	set_hudmessage(255, 255, 0, -1.0, 0.2, 1, 3.0, 3.0, 0.1, 0.2, -1);
	ShowSyncHudMsg(id, g_iHud, "+%d SZLUGOW^n%s", iIle, szPowod);
}

public SaveCoins(id)
{
	new szSzlugi[16], iVault = nvault_open("Szlugi_v2");
	num_to_str(g_iSzlugiGracza[id], szSzlugi, 15);
	nvault_set(iVault, g_szNickGracza[id], szSzlugi);
	nvault_close(iVault);
}

public LoadCoins(id)
{
	new iVault = nvault_open("Szlugi_v2");
	g_iSzlugiGracza[id] = nvault_get(iVault, g_szNickGracza[id]);
	nvault_close(iVault);
}


Użytkownik mlekovita edytował ten post 05.05.2020 20:15

  • +
  • -
  • 0

#4 faken

    Profesjonalista

  • Użytkownik

Reputacja: 35
Życzliwy

  • Postów:192
  • Lokalizacja:Warszawa
Offline

Napisano 05.05.2020 20:22

public cmdShowTop15(id)
{
	static Sort[33][2];
	new players[32],num,count,index;
	get_players(players,num);
    
	for(new i = 0; i < num; i++)
	{
		index = players[i];
		Sort[count][0] = index;
		Sort[count][1] = g_iSzlugiGracza[index];
​		count++;
	}
    
	SortCustom2D(Sort,count,"CompareXp");
	new motd[1501],iLen;
	iLen = formatex(motd, sizeof motd - 1,"<body bgcolor=#000000><font color=#98f5ff><pre>");
	iLen += formatex(motd[iLen], (sizeof motd - 1) - iLen,"%s %-22.22s %3s^n", "#", "Nick", "Szlugi");
    
	new y = clamp(count, 0, 15);
	new name[32],kindex;
    
	for(new x = 0; x < y; x++)
	{
		kindex = Sort[x][0];
		get_user_name(kindex,name,sizeof name - 1);
		iLen += formatex(motd[iLen], (sizeof motd - 1) - iLen,"%d %-22.22s %d^n", x + 1, name, Sort[x][1]);
	}
	iLen += formatex(motd[iLen], (sizeof motd - 1) - iLen,"</body></font></pre>");
	show_motd(id,motd, "Top 15 Szlugi");
}
public CompareXp(elem1[], elem2[])
{
	if(elem1[1] > elem2[1])
		return -1;
	else if(elem1[1] < elem2[1])
		return 1;
    
	return 0;
} 

Nietestowane.


  • +
  • -
  • 0

#5 mlekovita

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 7
Nowy

  • Postów:149
  • Imię:Dawid
Offline

Napisano 05.05.2020 20:36

Chciałbym aby to była topka ogólna a nie z graczy online. Ale dzięki za chęci :)


  • +
  • -
  • 0

#6 mlekovita

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 7
Nowy

  • Postów:149
  • Imię:Dawid
Offline

Napisano 06.05.2020 12:55

Znalazłem takie coś. Pomógłby ktoś przerobić to pod szlugi?

https://amxx.pl/topi...kszym-poziomie/
 


  • +
  • -
  • 0




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

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