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

Troche o nVault


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

#1 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 07.05.2010 20:34

*
Popularny

Chcialbym opisac tutaj jeden ze sposobow zapisu danych jaki mozemy uzyc tworzac nasze pluginy.

1. Opis uzywanych funkcji - opisze funkcje ktore beda nam nie zbedne
Spoiler



2. Przykladowe uzycie:

powiedzmy ze do zapisu i odczytu mamy liczbe fragow gracza ktora musi zostac zapisana przy rozlaczeniu i wczytana przy polaczeniu dodatkowo zapisujemy liczbe dead'ow. Przy okazji jest też pokazany sposób zapisania ciągu znaków, w tym przypadku nick gracza.
(wazniejsze linie maja komentarze)

Spoiler

Użytkownik sebul edytował ten post 19.05.2012 10:33

  • +
  • -
  • 35
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#2 sbstn

    Wszechwidzący

  • Użytkownik

Reputacja: 67
Pomocny

  • Postów:274
  • Lokalizacja:Szczecin
Offline

Napisano 07.05.2010 20:58

Już prawie miałem napisany tutorial o nVault! Wyprzedziłeś!! ;)

Poradnik ok, ale ja jakoś inaczej używam tego nVaulta. Bez 'nvault_close(plik_vault)' i w ogóle...

Dam plusa ;)
  • +
  • -
  • 0
-Piszę pluginy na zamówienie.
-Przerabiam pluginy (nie mody) na zamówienie.
-Piszę kursy/poradniki "Pisania pluginów w PAWN'ie"

Nie udzielam pomocy na GG, ani na innym komunikatorze internetowym.
Masz sprawę? PISZ NA PW

#3 G[o]Q

    I'm G[o]Q

  • Autor tematu
  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 07.05.2010 21:06

w zasadzie jesli sie cos otworzylo to kultura wymaga zeby to zamknac :D

pisalem ze mozna tez uzywac nvault_get/set przypisujac je do zmiennej
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#4 sbstn

    Wszechwidzący

  • Użytkownik

Reputacja: 67
Pomocny

  • Postów:274
  • Lokalizacja:Szczecin
Offline

Napisano 07.05.2010 21:14

Każdy robi jak chcę (albo jak przyzwyczajenie dyktuje!) ;)
Jeśli GoQ pozwolisz, pokażę kod robiony w nVault wg mnie ;)
(Dane dla odmiany zapisują się na steam_id, a nie jak u GoQ na nick ;)
#include <amxmodx>
#include <amxmisc>
#include <nvault>

#define PLUGIN "Frags&Deaths"
#define VERSION "1.0"
#define AUTHOR "sbstn for AMXX.pl"

new stats_vault
new player_frags[33]
new player_deaths[33]

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
stats_vault=nvault_open("Frags&Deaths")
register_event("DeathMsg","Death","a")
}

public Load_Data(id)
{
new steam_id[35]
get_user_authid(id,steam_id,34)
new vaultkey[64]
new vaultdata[256]

format(vaultkey,63,"%s-stats",steam_id)
format(vaultdata,255,"%i#%i#",player_frags[id],player_deaths[id])

nvault_get(stats_vault,vaultkey,vaultdata,255)
replace_all(vaultdata,255,"#"," ")
new p_f[32]
new p_d[32]
parse(vaultdata,p_f,31,p_d,31)
player_frags[id]=str_to_num(p_f)
player_deaths[id]=str_to_num(p_d)

return PLUGIN_CONTINUE
}

public Save_Data(id)
{
new steam_id[35]
get_user_authid(id,steam_id,34)
new vaultkey[64]
new vaultdata[256]

format(vaultkey,63,"%s-stats",steam_id)
format(vaultdata,255,"%i#%i#",player_frags[id],player_deaths[id])

nvault_set(stats_vault,vaultkey,vaultdata)

return PLUGIN_CONTINUE
}

public client_connect(id)
{

Load_Data(id)

}

public client_disconnect(id)
{
Save_Data(id)
}

public Death()
{
new killer=read_data(1)
new victim=read_data(2)

if(killer==victim)
{
return PLUGIN_HANDLED
}
else
{
player_frags[killer]+=1
player_deaths[victim]+=1
}
return PLUGIN_HANDLED
}

public client_putinserver(id)
{
set_task(1.0,"HUD",id,_,_,"b")
}

public HUD(id)
{
set_hudmessage(255,255,255,0.60,0.97,0,8.0,1.5,0.1,0.1,-1)
show_hudmessage(id, "Frags:%i | Deaths:%i",player_frags[id],player_deaths[id])
}


EDIT: Plugin nie działa tak jak GoQ, bo plugin GoQ pokazuje ostatnie nasze fragi sprzed zapisu. Mój kod to takjakby statystyki. Liczy wszystkie fragi i smierci od pierwszego wejscia gracza na serwer do konca ;)

Użytkownik sbstn edytował ten post 07.05.2010 21:26

  • +
  • -
  • 0
-Piszę pluginy na zamówienie.
-Przerabiam pluginy (nie mody) na zamówienie.
-Piszę kursy/poradniki "Pisania pluginów w PAWN'ie"

Nie udzielam pomocy na GG, ani na innym komunikatorze internetowym.
Masz sprawę? PISZ NA PW

#5 G[o]Q

    I'm G[o]Q

  • Autor tematu
  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 07.05.2010 21:25

nie chce nic mowic ale dales taki kod jak ja tylko zmieniles nazwy zmiennych i %i na %d :P
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#6 sbstn

    Wszechwidzący

  • Użytkownik

Reputacja: 67
Pomocny

  • Postów:274
  • Lokalizacja:Szczecin
Offline

Napisano 07.05.2010 21:31

Faktycznie :wstyd: , aczkolwiek chodziło mi o regułę mijania tego 'close'.
Nie ma tego:
 if (plik_vault == INVALID_HANDLE)
set_fail_state( "Nie moge otworzyc pliku :/");

... Co do pluginu to możemy odpowiednio dodać kod z tutoriala ( http://amxx.pl/opera...czu-t24028.html ) i mamy funkcję dawającą daną liczbę fragów lub śmierci przez admina :wstyd: (No bo po co to komu? :|)

Dobra, dobra, bez offtopu, poradnik zajeb**** ;)

Użytkownik sbstn edytował ten post 07.05.2010 21:31

  • +
  • -
  • 0
-Piszę pluginy na zamówienie.
-Przerabiam pluginy (nie mody) na zamówienie.
-Piszę kursy/poradniki "Pisania pluginów w PAWN'ie"

Nie udzielam pomocy na GG, ani na innym komunikatorze internetowym.
Masz sprawę? PISZ NA PW

#7 G[o]Q

    I'm G[o]Q

  • Autor tematu
  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 07.05.2010 21:41

mozemy a tamten kod co podales jest poprostu po to zeby wydrukowac blad jesli nie uda sie otwarcie pliku np zle chmody
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#8 sbstn

    Wszechwidzący

  • Użytkownik

Reputacja: 67
Pomocny

  • Postów:274
  • Lokalizacja:Szczecin
Offline

Napisano 07.05.2010 21:44

OK. Porządności trzeba uczyć ;)

EDIT:
Jeszcze jakbyś GoQ jakiś tutek o MySQL naskrobał, to byłby pełen sukces ;) (Przyda się :] )

Użytkownik sbstn edytował ten post 07.05.2010 21:48

  • +
  • -
  • 0
-Piszę pluginy na zamówienie.
-Przerabiam pluginy (nie mody) na zamówienie.
-Piszę kursy/poradniki "Pisania pluginów w PAWN'ie"

Nie udzielam pomocy na GG, ani na innym komunikatorze internetowym.
Masz sprawę? PISZ NA PW

#9 G[o]Q

    I'm G[o]Q

  • Autor tematu
  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 07.05.2010 22:05

moze kiedys jak zaczne uzywac w pluginach :D chociaz vault szybsze i stabilniejsze
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#10 sbstn

    Wszechwidzący

  • Użytkownik

Reputacja: 67
Pomocny

  • Postów:274
  • Lokalizacja:Szczecin
Offline

Napisano 08.05.2010 11:52

moze kiedys jak zaczne uzywac w pluginach :D chociaz vault szybsze i stabilniejsze


A właśnie.. Masz jakiś sposób na robienie rankingów z plików *.vault?
  • +
  • -
  • 0
-Piszę pluginy na zamówienie.
-Przerabiam pluginy (nie mody) na zamówienie.
-Piszę kursy/poradniki "Pisania pluginów w PAWN'ie"

Nie udzielam pomocy na GG, ani na innym komunikatorze internetowym.
Masz sprawę? PISZ NA PW

#11 G[o]Q

    I'm G[o]Q

  • Autor tematu
  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 11.06.2010 12:23

nom looknij sobie na cod stats :D
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#12 sbstn

    Wszechwidzący

  • Użytkownik

Reputacja: 67
Pomocny

  • Postów:274
  • Lokalizacja:Szczecin
Offline

Napisano 14.06.2010 20:40

Miesiąc czekałem ;)
  • +
  • -
  • 0
-Piszę pluginy na zamówienie.
-Przerabiam pluginy (nie mody) na zamówienie.
-Piszę kursy/poradniki "Pisania pluginów w PAWN'ie"

Nie udzielam pomocy na GG, ani na innym komunikatorze internetowym.
Masz sprawę? PISZ NA PW

#13 Monsulito

    Profesjonalista

  • Użytkownik

Reputacja: 17
Początkujący

  • Postów:201
  • Lokalizacja:Gdańsk
Offline

Napisano 19.06.2010 14:50

Mam 1 pytanko, jezeli
 stats_vault=nvault_open("Frags&Deaths") 
To jak nie bedzie pliku samo go utworzy?
  • +
  • -
  • 0
RPG MOD - [||||||||||] 5%

#14 G[o]Q

    I'm G[o]Q

  • Autor tematu
  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 19.06.2010 14:58

tak
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#15 Lunatic

    Zaawansowany

  • Użytkownik

Reputacja: 43
Pomocny

  • Postów:142
  • Lokalizacja:Olsztyn
Offline

Napisano 17.08.2010 00:50

Ja mam takie 2 amatorskie pytanie.
1. Czy nie lepiej pobrać nick raz w public client_connect??
1. Jak zapisuje do nVault exp to jak go poźniej zresetować??

Użytkownik Lunatic edytował ten post 17.08.2010 00:54

  • +
  • -
  • 0

#16 Vertricus

    Godlike

  • Przyjaciel

Reputacja: 426
Wszechobecny

  • Postów:1 549
  • Lokalizacja:.
Offline

Napisano 17.08.2010 01:53

1. To plugin pokazowy jak używamy tylko przy zapisie odczytu to nie trza pamięci marnować.
Jednak z drugiej strony gracz moze zmienic nick w trakcie więc lepiej jakby zapisywalo na ten na który wszedł.

2. Tworzysz komendę, w której: to tylko przykład "nvault_set(TWOJE_VAULT,"VERT_EXP","0")" innymi słowy zerujesz ^^. W zależności co masz w jako trzeci argument.
  • +
  • -
  • 1

#17 Lunatic

    Zaawansowany

  • Użytkownik

Reputacja: 43
Pomocny

  • Postów:142
  • Lokalizacja:Olsztyn
Offline

Napisano 17.08.2010 10:23

Dzięki mam jeszcze 1 pytanie jak miałem zapis exp na baze msql to po crashu serwera nie było leveli dopiero po zmianie mapy były czy tutaj będzie tak samo??
  • +
  • -
  • 0

#18 Vertricus

    Godlike

  • Przyjaciel

Reputacja: 426
Wszechobecny

  • Postów:1 549
  • Lokalizacja:.
Offline

Napisano 17.08.2010 18:47

To najprawdopodobniej problem z bazą jak jest dobrze napisany plugin to aniu tu ani tu nie powinno być problemów.
  • +
  • -
  • 0

#19 Boluus

    Zaawansowany

  • Użytkownik

Reputacja: -3
Nowy

  • Postów:95
  • Lokalizacja:Warsaw
Offline

Napisano 12.12.2011 16:14

Witam.Chciałbym zmienić zapis z Sql na zpis nvault jak mogę to zrobić ? co musze zrobić z kodem ? lub plikami
  • +
  • -
  • 0

Dołączona grafika
Dołączona grafika


#20 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 552
Godlike

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

Napisano 13.12.2011 09:11

załóż nowy temat
  • +
  • -
  • 0




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

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