Skripta koju koristim: radim od 0 ( POCETNIK SAM! )
Detaljan opis problema:
Trenutno imam log/reg Y_INI kao i bazu podataka tj. spremanje u vidu "pInfo", sada me zanimam kako cu da napravitim npr sistem kaciga (to je samo za primjer), ali kad uzmem kacigu da mi ostane u statsu tj. da ne kupuje svaki put kad udje na srv, to je samo primjer, ne mora biti u pitanju kaciga... ???
Dio skripte:
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Kao sto sam ti vec objasnjavao za skin isti je princip u pravljenju varijable samo naziv u enumu stavis recimo pKaciga i onda kada napravis komandu sredis da mu se varijabla postavi na odredjene vrednosti recimo broj 1 neka predstavlja da igrac ima kagicu a 0 da predstavlja da nema kacigu...
1. Dodaj Enum :
enum pInfo
{
pKaciga
}
2. Pod uÄitavanjem podataka, kod mene je to ovo :
forward LoadUser_data(playerid,name[],value[]);
public LoadUser_data(playerid,name[],value[])
Dodaj :
INI_Int("Kaciga",PlayerInfo[playerid][pKaciga]);
3. Pod OnPlayerDisconnect (da se saÄuva pri izlazu) dodaj :
INI_WriteInt(File,"Kaciga",PlayerInfo[playerid][pKaciga]);
4. E sada za komandu kaciga dodaj ovo :
command(kaciga, playerid, params[])
{
if(PlayerInfo[playerid][pKaciga] >=1)
{
//TVOJE KOMANDE AKO IGRAČ IMA KACIGU
}
else SendClientMessage(playerid,B_CRVENA, "Ti nemaš kacigu!");
}
5. E sada ako igraÄ pokuÅ¡a da kupi kacigu a već je ima, dodaj ovo :
command(kupikacigu, playerid, params[])
{
if(PlayerInfo[playerid][pKaciga] <=0)
{
PlayerInfo[playerid][pKaciga] = 1;
// TVOJE KOMANDE KADA IGRAČ KUPI KACIGU
}
else SendClientMessage(playerid, -1, "Vec imaš kacigu!");
}
Naravno, ti sada tu možeš dodati i mjesto za kupovinu kacige koristeći IsPlayerInRangeOfPoint i Create3DTextLabe, može se to još srediti, ali to bi bilo od prilike to.
P.S: Nadam se da sam pomogao.