Wysłany: 2013-08-18, 00:18
akon823
Czekotubka :D
Wiek: 29 Na forum: 4816 dni Posty: 399
Nick w MP: Remik14
Piwa : 152
Witam jako i? dawno mnie tu nie by?o nagromadzi?o mi si? du?o pyta? i problem?w.
A wi?c zaczn? .
1.Mam taki problem wywali?em wybieralke w rejestracji zrobi?em ze si? w gui wybiera co tam si? chce i zapisuje skina do pliku po wybraniu odpowiedniej rzeczy no i jest ?adnie i pi?knie wszystko fajnie chodzi lecz po zalogowaniu si? zmienia mi skina na 0 czyli CJ . Nawalilem ju? wsz?dzie zapis?w do pliku itd. ale to nie pomaga
Oto kod
Stock rejestracja/login/wczytaj gracza/zapisz gracza
Kod: stock Rejestracja(playerid, key[])
{
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz,sizeof(Gracz), "/Gracze/%s.txt", Gname);
dini_Create(Gracz);
dini_Set(Gracz, "Haslo", key);
dini_IntSet(Gracz, "Kasa", 10000);
dini_IntSet(Gracz, "Punkty", 0);
dini_IntSet(Gracz, "Doswiadczenie", 0);
dini_IntSet(Gracz, "Lvl", 1);
WczytajGracza(playerid);
return 1;
}
stock Login(playerid, key[])
{
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz, sizeof(Gracz), "/Gracze/%s.txt", Gname);
if(!strcmp(key, dini_Get(Gracz,"Haslo"), false))
{
WczytajGracza(playerid);
}
else
{
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "{E10000}Login", "{E10000}Z?e has?o!\n {00FF0A}Wpisz has?o aby si? zalogowa?.", "Loguj", "Anuluj");
}
return 1;
}
stock WczytajGracza(playerid)
{
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz, sizeof(Gracz), "/Gracze/%s.txt", Gname);
if(dini_Exists(Gracz))
{
GivePlayerMoney(playerid, dini_Int(Gracz,"Kasa"));
SetPlayerSkin(playerid, dini_Int(Gracz, "Skin"));
SetPlayerScore(playerid, dini_Int(Gracz,"Punkty"));
gGracz[playerid][Doswiadczenie] = dini_Int(Gracz,"Doswiadczenie");
gGracz[playerid][Lvl] = dini_Int(Gracz,"Lvl");
SendClientMessage(playerid, Zielony, "Wszystkie dane zosta?y wczytane.");
}
return 1;
}
stock ZapisGracza(playerid)
{
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz, sizeof(Gracz), "/Gracze/%s.txt", Gname);
if(dini_Exists(Gracz))
{
dini_IntSet(Gracz,"Kasa", GetPlayerMoney(playerid));
dini_IntSet(Gracz,"Punkty", GetPlayerScore(playerid));
dini_IntSet(Gracz,"Skin", GetPlayerSkin(playerid));
dini_IntSet(Gracz,"Doswiadczenie", gGracz[playerid][Doswiadczenie]);
dini_IntSet(Gracz,"Lvl", gGracz[playerid][Lvl]);
}
}
Dialog reje
Kod: if(dialogid == SWOJ)
{
if(response == 1)
{
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz,sizeof(Gracz), "/Gracze/%s.txt", Gname);
dini_IntSet(Gracz, "Skin", 96);
SetSpawnInfo(playerid, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
ZapisGracza(playerid);
TogglePlayerSpectating(playerid,0);
}
}
if(dialogid == WOJR)
{
if(response == 1)
{
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz,sizeof(Gracz), "/Gracze/%s.txt", Gname);
dini_IntSet(Gracz, "Skin", 18);
SetSpawnInfo(playerid, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
ZapisGracza(playerid);
TogglePlayerSpectating(playerid,0);
}
}
if(dialogid == SWOJKA)
{
if(response == 1)
{
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz,sizeof(Gracz), "/Gracze/%s.txt", Gname);
dini_IntSet(Gracz, "Skin", 91);
SetSpawnInfo(playerid, 0, 91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
ZapisGracza(playerid);
TogglePlayerSpectating(playerid,0);
}
}
if(dialogid == WOJKAR)
{
if(response == 1)
{
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz,sizeof(Gracz), "/Gracze/%s.txt", Gname);
dini_IntSet(Gracz, "Skin", 90);
SetSpawnInfo(playerid, 0, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
ZapisGracza(playerid);
TogglePlayerSpectating(playerid,0);
}
}
if(dialogid == ZC)
{
if(response == 1)
{
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz,sizeof(Gracz), "/Gracze/%s.txt", Gname);
dini_IntSet(Gracz, "Skin", 181);
SetSpawnInfo(playerid, 0, 181, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
ZapisGracza(playerid);
TogglePlayerSpectating(playerid,0);
}
}
if(dialogid == ZZ)
{
if(response == 1)
{
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz,sizeof(Gracz), "/Gracze/%s.txt", Gname);
dini_IntSet(Gracz, "Skin", 162);
SetSpawnInfo(playerid, 0, 162, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
ZapisGracza(playerid);
TogglePlayerSpectating(playerid,0);
}
}
if(dialogid == ZC2)
{
if(response == 1)
{
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz,sizeof(Gracz), "/Gracze/%s.txt", Gname);
dini_IntSet(Gracz, "Skin", 238);
SetSpawnInfo(playerid, 0, 238, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
ZapisGracza(playerid);
TogglePlayerSpectating(playerid,0);
}
}
if(dialogid == ZZ2)
{
if(response == 1)
{
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz,sizeof(Gracz), "/Gracze/%s.txt", Gname);
dini_IntSet(Gracz, "Skin", 244);
SetSpawnInfo(playerid, 0, 244, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);
ZapisGracza(playerid);
TogglePlayerSpectating(playerid,0);
}
}
Dialog Logowania by? mo?e tu jest problem
Kod: if(dialogid == LOGIN)
{
if(response == 0)
{
SendClientMessage(playerid, Czerwony, "Anulowa?e? logowanie.");
Kick(playerid);
return 1;
}
if(response == 1)
{
Login(playerid, MD5_Hash(inputtext));
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz,sizeof(Gracz), "/Gracze/%s.txt", Gname);
SpawnPlayer(playerid);
SetSpawnInfo(playerid, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
TogglePlayerSpectating(playerid,0);
}
}
Oraz daje jeszcze OnPlayerSpawn jakby by?o potrzebne
Kod: public OnPlayerSpawn(playerid)
{
new Gracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(Gracz,sizeof(Gracz), "/Gracze/%s.txt", Gname);
SetCameraBehindPlayer(playerid);
SetPlayerSkin(playerid, dini_Int(Gracz,"Skin"));
TextDrawShowForPlayer(playerid,PasekStanu[playerid]);
TogglePlayerSpectating(playerid, 0);
return 1;
}
2.Chcia?bym dok?adnie wiedzie? jak zapisac do pliku bronie kt?re ma gracz powiedzmy w stocku zapisz gracza powy?ej on jest . Jak to zrobi??
3. Czy mo?na jako? zrobi? aby amunicja si? nie ko?czy?a . Mo?e by? co? takiego , ?e je?li amunicja gracza wyniesie 0 to ma mu da? zn?w 200
Jak na razie tyle
Pozdrawiam.
Wysłany: 2013-08-18, 00:25
DWD99
Wiek: 29 Na forum: 6264 dni Posty: 159
Nick w MP: #BENG
Piwa : 1695
Wysłany: 2013-08-18, 15:08
akon823
Czekotubka :D
Wiek: 29 Na forum: 4816 dni Posty: 399
Nick w MP: Remik14
Piwa : 152
1. No przecie? jest
Kod: SetPlayerSkin(playerid, dini_Int(Gracz,"Skin"));
2. okej dzi?ki z tym pokmini?.
3.Nie tego nie chce , chce aby gdy amunicja osi?gnie 0 to aby dawalo zn?w amunicje np. 200:P
Wysłany: 2013-08-18, 15:22
Sillence
Wiek: 26 Na forum: 5157 dni Posty: 1514
Nick w MP: Sillence
Piwa : 1517
Co do 1 to spr?buj tak:
Kod: new zmienna;
zmienna = dini_Int(Gracz,"Skin"));
SetPlayerSkin(playerid,zmienna);
A co do 2 to tak:
Kod: if(GetPlayerAmmo(playerid) == 0)
{
SetPlayerAmmo(playerid, NAZWA_BRONI, 2500);
return 1;
}
Pozdrawiam
Wysłany: 2013-08-18, 15:31
IgrexolonO
Wiek: 34 Na forum: 6809 dni Posty: 1386
Piwa : 1062
"Sillence" napisał/a :A co do 3 to tak:
Kod: if(GetPlayerAmmo(playerid) == 0)
{
SetPlayerAmmo(playerid, NAZWA_BRONI, 2500);
return 1;
}
Pozdrawiam
A ja nie pozdrawiam. W momencie, kiedy gracz osi?gnie 0 naboi automatycznie bro? zmieni si? na pi???, co uniemo?liwi wykrycie broni.
OnPlayerUpdate:
Kod: if(GetPlayerWeaponState(playerid) == WEAPONSTATE_NO_BULLETS && GetPlayerWeapon(playerid) > 15)
{
GivePlayerWeapon(playerid, GetPlayerWeapon(playerid), 200);
}
Tagi: spawn
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: