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
CoD Nowy

Problem z procentowym expem

cod nowy

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

#1 RiderS

    Profesjonalista

  • Użytkownik

Reputacja: 32
Życzliwy

  • Postów:156
Offline

Napisano 26.09.2017 23:45

Cześć.

Otóż mój problem polega na tym iż chciałem zmieszać dwie modyfikacje 2 slot na perk (na flagę) i EXP w procentach.

Kompilacja idzie bez problemu, ale gdy żyjemy nie widać ile mamy % expa, natomiast gdy nie żyjemy to ten % expa widać normalnie.

 

Public PokazInformacje

public PokazInformacje(id)
{
id -= ZADANIE_POKAZ_INFORMACJE;
 
if(!is_user_connected(id))
{
remove_task(id+ZADANIE_POKAZ_INFORMACJE);
return PLUGIN_CONTINUE;
}
 
if(!is_user_alive(id))
{
new target = pev(id, pev_iuser2);
 
if(!target)
return PLUGIN_CONTINUE;
if(get_user_flags(target) & ADMIN_LEVEL_H)
{
        new target = pev(id, pev_iuser2);
                        new ileMa = doswiadczenie_gracza[target],ilePotrzeba = PobierzDoswiadczeniePoziomu(poziom_gracza[target]),ilePotrzebaBylo = poziom_gracza[target]-1 >= 0 ? PobierzDoswiadczeniePoziomu(poziom_gracza[target]-1) : 0;
                        new Float:fProcent = 0.0;
                        fProcent = (float((ileMa - ilePotrzebaBylo)) / float((ilePotrzeba - ilePotrzebaBylo))) * 100.0;
set_hudmessage(255, 255, 255, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);
ShowSyncHudMsg(id, SyncHudObj, "Klasa : %s^nDoswiadczenie : %0.1f%%^nPoziom : %i^nPerk : %s^nPerk2 : %s", nazwy_klas[klasa_gracza[target]],fProcent, poziom_gracza[target], nazwy_perkow[perk_gracza[0][target]], nazwy_perkow[perk_gracza[1][target]]);
}
else
{
                        new ileMa = doswiadczenie_gracza[target],ilePotrzeba = PobierzDoswiadczeniePoziomu(poziom_gracza[target]),ilePotrzebaBylo = poziom_gracza[target]-1 >= 0 ? PobierzDoswiadczeniePoziomu(poziom_gracza[target]-1) : 0;
                        new Float:fProcent = 0.0;
                        fProcent= (float((ileMa - ilePotrzebaBylo)) / float((ilePotrzeba - ilePotrzebaBylo))) * 100.0;
set_hudmessage(255, 255, 255, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);
ShowSyncHudMsg(id, SyncHudObj, "Klasa : %s^nDoswiadczenie : %0.1f%%^nPoziom : %i^nPerk : %s", nazwy_klas[klasa_gracza[target]],fProcent, poziom_gracza[target], nazwy_perkow[perk_gracza[0][target]]);
 
}
return PLUGIN_CONTINUE;
}
if(get_user_flags(id) & ADMIN_LEVEL_H)
{
new target = pev(id, pev_iuser2);
                new ileMa = doswiadczenie_gracza[target],ilePotrzeba = PobierzDoswiadczeniePoziomu(poziom_gracza[target]),ilePotrzebaBylo = poziom_gracza[target]-1 >= 0 ? PobierzDoswiadczeniePoziomu(poziom_gracza[target]-1) : 0;
                new Float:fProcent = 0.0;
                fProcent = (float((ileMa - ilePotrzebaBylo)) / float((ilePotrzeba - ilePotrzebaBylo))) * 100.0;
set_hudmessage(0, 255, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0);
ShowSyncHudMsg(id, SyncHudObj, "[Klasa : %s]^n[Doswiadczenie : %0.1f%%]^n[Poziom : %i]^n[Perk : %s]^n[Perk2 : %s]", nazwy_klas[klasa_gracza[id]],fProcent, poziom_gracza[id], nazwy_perkow[perk_gracza[0][id]], nazwy_perkow[perk_gracza[1][id]]);
}
else 
{
new target = pev(id, pev_iuser2);
                new ileMa = doswiadczenie_gracza[target],ilePotrzeba = PobierzDoswiadczeniePoziomu(poziom_gracza[target]),ilePotrzebaBylo = poziom_gracza[target]-1 >= 0 ? PobierzDoswiadczeniePoziomu(poziom_gracza[target]-1) : 0;
                new Float:fProcent = 0.0;
                fProcent= (float((ileMa - ilePotrzebaBylo)) / float((ilePotrzeba - ilePotrzebaBylo))) * 100.0;
set_hudmessage(0, 255, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0);
ShowSyncHudMsg(id, SyncHudObj, "[Klasa : %s]^n[Doswiadczenie : %0.1f%%]^n[Poziom : %i]^n[Perk : %s]", nazwy_klas[klasa_gracza[id]],fProcent, poziom_gracza[id], nazwy_perkow[perk_gracza[0][id]]);
}
return PLUGIN_CONTINUE;
}

Załączone pliki


  • +
  • -
  • 0

#2 _McHappy

    Wszechwiedzący

  • Support Team

Reputacja: 243
Wszechwidzący

  • Postów:501
  • GG:
  • Imię:Radek
  • Lokalizacja:Tak
Offline

Napisano 28.09.2017 12:19

W kodzie po warunku if(!is_user_alive()) {} pobierasz exp gracza obserwowanego (target=pev(id, pev_iuser2)), zamiast sprawdzać exp gracza właściwego (id).

Użytkownik _McHappy edytował ten post 28.09.2017 12:20

  • +
  • -
  • 0

#3 wacho

    Pomocny

  • Użytkownik

Reputacja: 17
Początkujący

  • Postów:64
  • GG:
  • Imię:Jakub
Offline

Napisano 03.10.2017 11:18

public PokazInformacje(id)
{
id -= ZADANIE_POKAZ_INFORMACJE;
 
if(!is_user_connected(id))
{
remove_task(id+ZADANIE_POKAZ_INFORMACJE);
return PLUGIN_CONTINUE;
}
 
if(!is_user_alive(id))
{
new target = pev(id, pev_iuser2);
 
if(!target)
return PLUGIN_CONTINUE;
if(get_user_flags(target) & ADMIN_LEVEL_H)
{
				new ileMa = doswiadczenie_gracza[target],ilePotrzeba = PobierzDoswiadczeniePoziomu(poziom_gracza[target]),ilePotrzebaBylo = PobierzDoswiadczeniePoziomu(poziom_gracza[target]-1)
				new Float:fProcent = 0.0;
				fProcent = (float((ileMa - ilePotrzebaBylo)) / float((ilePotrzeba - ilePotrzebaBylo))) * 100.0;
set_hudmessage(255, 255, 255, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);
ShowSyncHudMsg(id, SyncHudObj, "Klasa : %s^nDoswiadczenie : %0.1f%%^nPoziom : %i^nPerk : %s^nPerk2 : %s", nazwy_klas[klasa_gracza[target]],fProcent, poziom_gracza[target], nazwy_perkow[perk_gracza[0][target]], nazwy_perkow[perk_gracza[1][target]]);
}
else
{
				new ileMa = doswiadczenie_gracza[target],ilePotrzeba = PobierzDoswiadczeniePoziomu(poziom_gracza[target]),ilePotrzebaBylo = PobierzDoswiadczeniePoziomu(poziom_gracza[target]-1)
				new Float:fProcent = 0.0;
				fProcent = (float((ileMa - ilePotrzebaBylo)) / float((ilePotrzeba - ilePotrzebaBylo))) * 100.0;
set_hudmessage(255, 255, 255, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);
ShowSyncHudMsg(id, SyncHudObj, "Klasa : %s^nDoswiadczenie : %0.1f%%^nPoziom : %i^nPerk : %s", nazwy_klas[klasa_gracza[target]],fProcent, poziom_gracza[target], nazwy_perkow[perk_gracza[0][target]]);
 
}
return PLUGIN_CONTINUE;
}
if(get_user_flags(id) & ADMIN_LEVEL_H)
{
                new ileMa = doswiadczenie_gracza[id],ilePotrzeba = PobierzDoswiadczeniePoziomu(poziom_gracza[id]),ilePotrzebaBylo = PobierzDoswiadczeniePoziomu(poziom_gracza[id]-1)
				new Float:fProcent = 0.0;
				fProcent = (float((ileMa - ilePotrzebaBylo)) / float((ilePotrzeba - ilePotrzebaBylo))) * 100.0;
set_hudmessage(0, 255, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0);
ShowSyncHudMsg(id, SyncHudObj, "[Klasa : %s]^n[Doswiadczenie : %0.1f%%]^n[Poziom : %i]^n[Perk : %s]^n[Perk2 : %s]", nazwy_klas[klasa_gracza[id]],fProcent, poziom_gracza[id], nazwy_perkow[perk_gracza[0][id]], nazwy_perkow[perk_gracza[1][id]]);
}
else 
{
                new ileMa = doswiadczenie_gracza[id],ilePotrzeba = PobierzDoswiadczeniePoziomu(poziom_gracza[id]),ilePotrzebaBylo = PobierzDoswiadczeniePoziomu(poziom_gracza[id]-1)
				new Float:fProcent = 0.0;
				fProcent = (float((ileMa - ilePotrzebaBylo)) / float((ilePotrzeba - ilePotrzebaBylo))) * 100.0;
set_hudmessage(0, 255, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0);
ShowSyncHudMsg(id, SyncHudObj, "[Klasa : %s]^n[Doswiadczenie : %0.1f%%]^n[Poziom : %i]^n[Perk : %s]", nazwy_klas[klasa_gracza[id]],fProcent, poziom_gracza[id], nazwy_perkow[perk_gracza[0][id]]);
}
return PLUGIN_CONTINUE;
}

Spróbuj czy teraz działa 


  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: cod nowy

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

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