GTA Közösség - A magyar GTA fórum
San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: kadaradam - 2011. szeptember 04. - 10:17:13
-
Sziasztok
A szerveremen nagyon buggol a LuxAdmin,és úgy döntöttem hogy írok majdnem 0 sorról kezdve egy új aminrendszert!Ki is választottam hogy melyiket bõvítem, és az kb 600 soros volt,nemsok minden van benne de az alapok megvannak,tehát elkezdtem a bõvítéstét: több parancs:/setscore,/changepass....,regisztrálási idõ elmentése,utoljára online dátumban,stb.... ez eddig ment,de elakadtam annál hogy azt hogyan csináljam meg hogy összesen mennyi idõt töltött a player a szerveren!Maga a függvény kéne,az elmentése az menne!
Valaki eltudná magyarázni hogy kurta hogy csinálta meg a Regisztrálási ID-jét a felhasználónak mert nem jövök rá! :)
Mivel kb csak 4 napja foglalkozok a MySQL-al ezért valaki segítene abban is,hogy hogyan olvassam ki a LastOn-t az accounts táblából?
Nagyon megköszönném ha tudna valaki segíteni!
-
Létrehozol minden játékosnak mondjuk 4 változót.
[pawn]
new online_Secons[MAX_PLAYERS];
new online_Minutes[MAX_PLAYERS];
new online_Hours[MAX_PLAYERS];
new online_Days[MAX_PLAYERS];
[/pawn]
Másodpercenként hozzáadsz 1-et a seconds változóhoz. Ha az elérte a 60at nullázod és hozzá adsz 1et a minuteshoz, ha az elérte a 60at nullázod, hozzáadsz 1et a hours-hoz, ha az elérte a 24-et nullázod, és hozzáadsz egyet a days-hez.
-
Létrehozol minden játékosnak mondjuk 4 változót.
[pawn]
new online_Secons[MAX_PLAYERS];
new online_Minutes[MAX_PLAYERS];
new online_Hours[MAX_PLAYERS];
new online_Days[MAX_PLAYERS];
[/pawn]
Másodpercenként hozzáadsz 1-et a seconds változóhoz. Ha az elérte a 60at nullázod és hozzá adsz 1et a minuteshoz, ha az elérte a 60at nullázod, hozzáadsz 1et a hours-hoz, ha az elérte a 24-et nullázod, és hozzáadsz egyet a days-hez.
Á köszönöm,de úgy döntöttem megpróbálom a LuxAdminosat,de van egy bökkenõ:
[pawn]enum PlayerData
{
hours,
mins,
secs,
TotalTime,
ConnectTime
};
new AccInfo[MAX_PLAYERS][PlayerData];
public OnPlayerConnect(playerid)
{
AccInfo[playerid][ConnectTime] = gettime();
return 1;
}
TotalGameTime(playerid, &h=0, &m=0, &s=0)
{
AccInfo[playerid][TotalTime] = ( (gettime() - AccInfo[playerid][ConnectTime]) + (AccInfo[playerid][hours]*60*60) + (AccInfo[playerid][mins]*60) + (AccInfo[playerid][secs]) );
h = floatround(AccInfo[playerid][TotalTime] / 3600, floatround_floor);
m = floatround(AccInfo[playerid][TotalTime] / 60, floatround_floor) % 60;
s = floatround(AccInfo[playerid][TotalTime] % 60, floatround_floor);
return AccInfo[playerid][TotalTime];
}[/pawn]
Szóval az a baj hogy felülírja a mezõt nem hozzáadja,tehát valahogy le úgy kéne megcisnálni hogy lekéri a régit és hozzáadja az új idõt,vagy nem tudom!