Jump to content


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

Posted Image Posted Image

Guest Message by DevFuse
 

Zapis wieeelu zmiennych


  • This topic is locked This topic is locked
3 replies to this topic

#1 d0naciak

    Godlike

  • Power User

  • Reputacja: 1,029
    Hero

  • Postów:2,414
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Kotlarka
Offline

Posted 09.11.2012 20:03

public SaveData(id)
{
new vaultkey[128],vaultdata[256], name[64], szOsiagniecie[5];
get_user_name(id, name, 63);
for(new i = 1; i <= ILOSC_OSIAGNIEC; i++)
{
format(szOsiagniecie, 4, "#%d", osiagniecie[i]);
add(vaultdata, 255, szOsiagniecie, 4);
}

format(vaultkey, charsmax(vaultkey),"%s-osiagniecie", name);
nvault_set(vault,vaultkey,vaultdata);

return PLUGIN_CONTINUE;
}

public ReadData(id)
{
new vaultkey[128],vaultdata[256], name[64];

get_user_name(id, name, 63);
format(vaultkey, charsmax(vaultkey),"%s-osiagniecie", name);


if(!nvault_get(vault,vaultkey,vaultdata,255))
{
format(vaultkey, charsmax(vaultkey), "%s-osiagniecie", name);
nvault_get(vault,vaultkey,vaultdata,255);
}

replace_all(vaultdata, 255, "#", "");

for(new i = 1; i <= ILOSC_OSIAGNIEC; i++)
{
osiagniecie[id][i] = str_to_num(vaultdata[i]);
}

return PLUGIN_CONTINUE;
}


Odnośnie chciałbym aby mój kod zapisywał dużo zmiennych, ten kod wyżej to sposób z jakim dotychczas się męczyłem, i nie wiem co możę być w nim nie tak ;[

P.S. Prośże o dokładne wytłumaczenie błędu jeśli można
  • +
  • -
  • 0

#2 speedkill

    Godlike

  • Przyjaciel

  • Reputacja: 1,592
    Godlike

  • Postów:2,733
  • GG:
  • Steam:steam
  • Imię:Michał
  • Lokalizacja:Prudnik
Offline

Posted 09.11.2012 20:22

Musiałbym zobaczyć jak tworzysz zmienną osiągnięcie. Ale ogólnie Twój problem znajduje się w funkcji SaveData(id).

Domyślam się, że Twoja zmienna osiągnięcia wygląda w tym stylu:
osiagniecie[33][24];

Jeśli tak, to Twój błąd jest tutaj:
format(szOsiagniecie, 4, "#%d", osiagniecie[i]);

A odczytujesz ją tak:
osiagniecie[id][i] = str_to_num(vaultdata[i]);

W takim razie błąd jest taki, że w zapisie w format nie podałeś indexu gracza, w funkcji z zapisem podmień sobie ten format na ten i sprawdź czy zadziała ;)
format(szOsiagniecie, 4, "#%d", osiagniecie[id][i]);

  • +
  • -
  • 1

If you can dream it, you can do it.


#3 d0naciak

    Godlike

  • Autor tematu
  • Power User

  • Reputacja: 1,029
    Hero

  • Postów:2,414
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Kotlarka
Offline

Posted 09.11.2012 20:52

speedkill, sprawdze zara ale jak cos to zmienna osiagniecie[id][i] = 1, kiedy gracz zdobyl osiagniecie, a na 0, kiedy jeszcze tego nie zrobil
  • +
  • -
  • 0

#4 Ojciec Dyrektor

    papa smerf.

  • Przyjaciel

  • Reputacja: 477
    Wszechobecny

  • Postów:3,035
  • Imię:Paweł
  • Lokalizacja:Rabka-Zdrój
Offline

Posted 09.11.2012 21:28

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Temat zamknięty na prośbę użytkownika.


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




  


1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users

Coinsy CSGOPolygon Za SMS, PSC , Przelew - CoinSell.pro
Skiny do CS:GO za SMS, PSC, Przelew - CSGOPaka.com
Automatyczny Bot Levelowania Steam - LVLUPSteam.com
CSGO Gambling Sites and Free Betting Codes - DreamCodes.gg

Sign In