←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
Przydzielanie statystyk

  • +
  • -
Xofer's Photo Xofer 12.01.2018

Mam problem z przydzielaniem statystyk, w każdej nowej rundzie, ew po trafieniu przeciwnika wyskakują mi statystyki do rozdania, poziomy i klasy się zapisują normalnie, lecz tylko statystyki się resetują i trzeba od nowa dodawać


Edited by Xofer, 12.01.2018 01:16.
Quote

  • +
  • -
AwIlL^^'s Photo AwIlL^^ 12.01.2018

Błąd zapewne masz w funkcji 'SprawdzPoziom'
Wrzuć kod tej funkcji.
Quote

  • +
  • -
Xofer's Photo Xofer 12.01.2018

public SprawdzPoziom(id)
{	
	if(!is_user_connected(id))
		return;
	
	new bool:zdobyl_poziom = false, bool:stracil_poziom = false;
	
	while(doswiadczenie_gracza[id] >= PobierzDoswiadczeniePoziomu(poziom_gracza[id]) && poziom_gracza[id] )
	{
		poziom_gracza[id]++;
		punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id],-grawitacja_gracza[id]-regeneracjap_gracza[id];
		zdobyl_poziom = true;
	}
	
	while(doswiadczenie_gracza[id] < PobierzDoswiadczeniePoziomu(poziom_gracza[id]-1))
	{
		poziom_gracza[id]--;
		stracil_poziom = true;
	}
	
	if(poziom_gracza[id])
	{
		poziom_gracza[id];
		ResetujPunkty(id);
	}
	
	if(stracil_poziom)
	{
		ResetujPunkty(id);
		set_hudmessage(212, 255, 85, 0.31, 0.32, 0, 6.0, 5.0);
		ShowSyncHudMsg(id, SyncHudObj2,"Spadles do %i poziomu!", poziom_gracza[id]);
	}
	else if(zdobyl_poziom)
	{
		punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id]-grawitacja_gracza[id]-regeneracjap_gracza[id];
		set_hudmessage(212, 255, 85, 0.31, 0.32, 0, 6.0, 5.0);
		ShowSyncHudMsg(id, SyncHudObj2,"Awansowales do %i poziomu!", poziom_gracza[id]);
		client_cmd(id, "spk QTM_CodMod/levelup");
	}
	
	
	ZapiszDane(id);

Quote