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

[ROZWIĄZANE] Jak stworzyć top10 pod względem jakiegoś eventu..

bhz top15

  • Zamknięty Temat jest zamknięty
10 odpowiedzi w tym temacie

#1 kapi10072

    Wszechpomocny

  • Użytkownik

Reputacja: 70
Pomocny

  • Postów:318
  • Steam:steam
  • Imię:Kacper
  • Lokalizacja:Polska
Offline

Napisano 18.12.2011 20:10

Witam..
Chciałbym zrobić ranking top10 w taki sposób:
mam np tak.

new zmienna[33];

public client_disconnect(id)
{
zmienna[id] += 1
}

I jak zrobić do tego tak, aby można było pobrać top10 graczy, którzy w tym przypadku się rozłączyli.
Dane zapisywane są do nvault i najlepiej żeby ktoś podał, jak to do nvault zapisać.

Pozdrawiam !

Użytkownik kapi10072 edytował ten post 19.12.2011 18:43

  • +
  • -
  • 0

Dołączona grafika
Najlepszy serwer TeamPlay w Polsce !
Pomogłem, wejdź ;)
Zapraszam na BHZ-Game.pl
Bo nie liczą się fragi tylko dobra atmosfera ;D


#2 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 552
Godlike

  • Postów:11 974
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 19.12.2011 21:28

wczytujesz do tablicy https://forums.allie...ad.php?t=139584 i sortujesz
http://amxx.pl/dokum...cja/s49/sorting
  • +
  • -
  • 1

#3 kapi10072

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 70
Pomocny

  • Postów:318
  • Steam:steam
  • Imię:Kacper
  • Lokalizacja:Polska
Offline

Napisano 19.12.2011 22:49

A jak to dobrze, zapisać do nvalut.. bo próbowałem i mi czasami wyskakiwały różne liczby..
  • +
  • -
  • 0

Dołączona grafika
Najlepszy serwer TeamPlay w Polsce !
Pomogłem, wejdź ;)
Zapraszam na BHZ-Game.pl
Bo nie liczą się fragi tylko dobra atmosfera ;D


#4 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 552
Godlike

  • Postów:11 974
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 20.12.2011 06:12

http://amxx.pl/topic...roche-o-nvault/
  • +
  • -
  • 0

#5 kapi10072

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 70
Pomocny

  • Postów:318
  • Steam:steam
  • Imię:Kacper
  • Lokalizacja:Polska
Offline

Napisano 20.12.2011 11:17



set_user_frags(id,fragi[id])
cs_set_user_deaths ( id, deads[id] )

return PLUGIN_CONTINUE
}

public save_frags(id){

fragi[id]+=get_user_frags(id) // zwiekszamy liczbe fragow i deadow o stan bierzacy
deads[id]+=get_user_deaths(id)



Jak powiększyć liczbę zmiennej..

fragi[id]+=get_user_frags(id) // zwiekszamy liczbe fragow i deadow o stan bierzacy

bo raczej
get_user_frags(id) nie zadziała :D

i jak jeszcze pobrać za pomocą nvault_util te pierwsze 10 osób ?

Użytkownik kapi10072 edytował ten post 20.12.2011 19:03

  • +
  • -
  • 0

Dołączona grafika
Najlepszy serwer TeamPlay w Polsce !
Pomogłem, wejdź ;)
Zapraszam na BHZ-Game.pl
Bo nie liczą się fragi tylko dobra atmosfera ;D


#6 dram

    Wszechwidzący

  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:277
  • Lokalizacja:xxxx
Offline

Napisano 21.12.2011 00:05

Pobierasz wszystkich do jednej tablicy. Potem sortujesz i masz wyniki ulożone np. od największej do najmniejszej ilości expa.
2. w deathmsg możesz przechwytywać i dopisywać do tablicy fragi/dedy
  • +
  • -
  • 0
Co oferuje?

Pisanie pluginów amxx/modow itd
Skryptow php

Kontakt na PW LUB GG

#7 kapi10072

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 70
Pomocny

  • Postów:318
  • Steam:steam
  • Imię:Kacper
  • Lokalizacja:Polska
Offline

Napisano 25.12.2011 10:29

To drugie to jest podany przykład z Trochę o nVault..
a ja chcę powiększyć jakąś zmienną o ilość tej zmiennej, jakoś tak :P

ok, mam taki kod

#include <amxmodx>
#include <nvault>

new a[33];
new b[33];
new c[33];
new d[33];
new e[33];
new EXP[33];

new g_vault;

public plugin_init() {
register_plugin("Nowy", "0.1", "kapi10072");
register_clcmd("top10", "ShowTop");
register_clcmd("dodaj", "dodaj");

g_vault = nvault_open("mod")
}

public dodaj(id)
{
a[id] += 1
b[id]+= 1
c[id] += 1
d[id] += 1
e[id] += 1
EXP[id] += 10
}

public client_connect(id)
{
LoadData(id)

}
public client_disconnect(id)
{
SaveData(id)
a[id] = 0
b[id] = 0
c[id] = 0
d[id] = 0
e[id] = 0
EXP[id] = 0
}
public SaveData(id)
{
new AuthID[35]
get_user_name(id, AuthID, 34)
new vaultkey[64], vaultdata[256]

format(vaultkey,63,"%s-Mod",AuthID)
format (vaultdata,255,"%i#%i#%i#%i#%i#%i#",a[id], b[id],c[id],d[id],e[id],EXP[id])

nvault_set(g_vault,vaultkey,vaultdata)

return PLUGIN_CONTINUE
}

public LoadData(id)
{
new AuthID[35]
get_user_name(id,AuthID,34)
new vaultkey[64], vaultdata[256]

format(vaultkey,63,"%s-Mod",AuthID)
format(vaultdata,255,"%i#%i#%i#%i#%i#i#",a[id], b[id],c[id],d[id],e[id],EXP[id])

nvault_get(g_vault,vaultkey,vaultdata,255)
replace_all(vaultdata,255,"#"," ")

new playerxp[32], playera[32], playerb[32], playerc[32], playerd[32], playere[32]

parse(vaultdata, playerxp,31, playera,31, playerb, 31, playerc,31 ,playerd ,31, playere, 31)

EXP[id] = str_to_num(playerxp)
a[id] = str_to_num(playera)
b[id] = str_to_num(playerb)
c[id] = str_to_num(playerc)
d[id] = str_to_num(playerd)
e[id] = str_to_num(playere)

return PLUGIN_CONTINUE
}
public ShowTop(id)
{
// ???????
}




I jak teraz zrobić z tego top10, uwzględniając 1 pozycję od ilości EXP'a oraz chce żeby reszta danych (a,b,c,d,e) także były pokazane.

Liczę na pomoc, pozdrawiam

@refresh

Użytkownik kapi10072 edytował ten post 23.12.2011 14:20

  • +
  • -
  • 0

Dołączona grafika
Najlepszy serwer TeamPlay w Polsce !
Pomogłem, wejdź ;)
Zapraszam na BHZ-Game.pl
Bo nie liczą się fragi tylko dobra atmosfera ;D


#8 ^Grzyboo

    Wszechobecny

  • Użytkownik

Reputacja: 246
Wszechwidzący

  • Postów:461
  • Imię:Grzyboo
  • Lokalizacja:Tak
Offline

Napisano 26.12.2011 13:57

Ojj top wg. nvault to ciężka sprawa. Zabawa arrayami oraz może się przydać Nvault - Util

Użytkownik ^Grzyboo edytował ten post 26.12.2011 13:57

  • +
  • -
  • 1

#9 diablix

    emeryt

  • Przyjaciel

Reputacja: 507
Wszechwiedzący

  • Postów:663
  • GG:
  • Steam:steam
  • Imię:Daniel
  • Lokalizacja:Warszawa
Offline

Napisano 26.12.2011 14:00

Jakbyś chciał przerzucić się na bazę to wystarczy jedno zapytanie

SELECT * FROM `tabela` ORDER BY `kolumna_z_xp` DESC LIMIT 10

  • +
  • -
  • 1

#10 kapi10072

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 70
Pomocny

  • Postów:318
  • Steam:steam
  • Imię:Kacper
  • Lokalizacja:Polska
Offline

Napisano 26.12.2011 23:17

Podziękował za odpowiedź..
Przejdę na SQL - sądzę, że sobie poradzę :P

Kod na nvault jakiś mam, ale rzeczywiście to jest ciężka sprawa..

Dziękuje i do zobaczenia..
Temat do zamknięcia.
  • +
  • -
  • 0

Dołączona grafika
Najlepszy serwer TeamPlay w Polsce !
Pomogłem, wejdź ;)
Zapraszam na BHZ-Game.pl
Bo nie liczą się fragi tylko dobra atmosfera ;D


#11 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 26.12.2011 23:46

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo






Również z jednym lub większą ilością słów kluczowych: bhz, top15

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

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