ok mit dem skin klappt es nicht aber mit geld und last x last y last z, nur bei gmx geht alles verloren, wie kann ich machen das bei server herunterfahren alles gespeichert wird?
Beiträge von Brinegd
-
-
t
Geld hat mir bei grad als ich GMX gemacht hat aufeinmal 10k gegeben.. lol..
aber Skin geht nicht, ich probiers mal eben nochmal. -
Funktion OnPlayerDisconnect(playerid, reason)
{
GetPlayerPos(playerid, Spieler[playerid][lastX], Spieler[playerid][lastY], Spieler[playerid][lastZ]);
SpielerSpeichern(playerid);
DestroyVehicle(Auto[playerid]);
return 1;
}und der ganze aufbau:
stock SpielerSpeichern(playerid)
{
new accpfad[40];
format(accpfad, sizeof(accpfad), ""#ACCOUNTVERZEICHNIS"%s.ini", SpielerName(playerid));
dini_IntSet(accpfad, "Adminlevel", Spieler[playerid][sAdmin]);
dini_IntSet(accpfad, "Level", Spieler[playerid][sLevel]);
dini_IntSet(accpfad, "Kills", Spieler[playerid][sKills]);
dini_IntSet(accpfad, "Tode", Spieler[playerid][sTode]);
dini_IntSet(accpfad, "Geld", GetPlayerMoney(playerid));
dini_IntSet(accpfad, "Fraktion", Spieler[playerid][sFraktion]);
dini_IntSet(accpfad, "Rang", Spieler[playerid][sRang]);
dini_IntSet(accpfad, "Zigaretten", Spieler[playerid][sZigaretten]);
dini_IntSet(accpfad, "SFPass", Spieler[playerid][sSFPass]);
GetPlayerHealth(playerid, Spieler[playerid][sLeben]);
dini_FloatSet(accpfad, "Leben", Spieler[playerid][sLeben]);
dini_FloatSet(accpfad,"lastX", Spieler[playerid][lastX]);
dini_FloatSet(accpfad,"lastY", Spieler[playerid][lastY]);
dini_FloatSet(accpfad,"lastZ", Spieler[playerid][lastZ]);
dini_IntSet(accpfad, "Perso", Spieler[playerid][sPerso]);
dini_IntSet(accpfad, "Skin", Spieler[playerid][sSkin]);
//Float:LVID,
//Float:LVP,
//Float:LVZA,
//Float:LVXYF
}stock CreateAccount(playerid)
{
new accpfad[40];
format(accpfad, sizeof(accpfad), ""#ACCOUNTVERZEICHNIS"%s.ini", SpielerName(playerid));
dini_IntSet(accpfad, "Adminlevel", 0);
dini_IntSet(accpfad, "Geld", 0);
dini_IntSet(accpfad, "Level", 1);
dini_IntSet(accpfad, "Kills", 0);
dini_IntSet(accpfad, "Tode", 0);
dini_IntSet(accpfad, "Fraktion", 0);
dini_IntSet(accpfad, "Rang", 0);
dini_IntSet(accpfad, "Zigaretten",0);
dini_IntSet(accpfad, "SFPass",1);
dini_IntSet(accpfad, "Perso",0);
serverkasse -= StartGeld;
SetPVarInt(playerid, "FirstSpawn", 1);
dini_IntSet(accpfad, "Skin",78);
}stock SpielerLaden(playerid)
{
new accpfad[40];
format(accpfad, sizeof(accpfad), ""#ACCOUNTVERZEICHNIS"%s.ini", SpielerName(playerid));
Spieler[playerid][sAdmin] = dini_Int(accpfad, "Adminlevel");
Spieler[playerid][sGeld] = dini_Int(accpfad, "Geld");
Spieler[playerid][sLevel] = dini_Int(accpfad, "Level");
Spieler[playerid][sKills] = dini_Int(accpfad, "Kills");
Spieler[playerid][sTode] = dini_Int(accpfad, "Tode");
Spieler[playerid][sFraktion] = dini_Int(accpfad, "Fraktion");
Spieler[playerid][sRang] = dini_Int(accpfad, "Rang");
Spieler[playerid][sZigaretten] = dini_Int(accpfad, "Zigaretten");
Spieler[playerid][sSFPass] = dini_Int(accpfad, "SFPass");
Spieler[playerid][lastX] = dini_Float(accpfad, "lastX");
Spieler[playerid][lastZ] = dini_Float(accpfad, "lastZ");
Spieler[playerid][lastY] = dini_Float(accpfad, "lastY");
GivePlayerMoney(playerid, Spieler[playerid][sGeld]);
Spieler[playerid][sPerso] = dini_Int(accpfad, "Perso");
SetPlayerSkin(playerid, Spieler[playerid][sSkin]);
} -
Hi Brotfische, keine Ahnung wieso er das nicht macht.
Ich denke mal das ist alles richtig, warum gibt er mir z.B. das Geld nicht, oder warum gibt er nicht mir mein Skin..
Hier ein paar stellen aus dem Script hier ist einmal das mit dem Skin
dini_IntSet(accpfad, "Skin", Spieler[playerid][sSkin]);
das ist bei Spielerspeichern, also beim verlassen..
Bei Spielerladen steht das:
SetPlayerSkin(playerid, Spieler[playerid][sSkin]);
das klappt nicht, bei der regi steht das:
dini_IntSet(accpfad, "Skin",78);
da sollte am anfang eigentlich skin id 78 immer sein tut es aber nicht.
und das mit geld:
bei regi
dini_IntSet(accpfad, "Geld", 0);
bei speichern:
dini_IntSet(accpfad, "Geld", GetPlayerMoney(playerid));
und bei laden:
GivePlayerMoney(playerid, Spieler[playerid][sGeld]);irgendein vorschlag warum er mir z.b. das geld nicht gibt..
-
Hat wer noch Ideen?
Ich baue grad selber an Beschäftigungen in meinem Script. -
Die Abfrage ist schon drinn, alles ist drinn nur wenn ich InGame /heal mache bekomme ich die
SCM = Dieser Ort ist kein Upgrade bla. Nur wenn ich /heal ID Preis mache kommen die heal nachrichten.@[GSL]Erik:
C:\Users\\Desktop\\gamemodes\(22988) : error 017: undefined symbol "params"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase1 Error.
Bekomme das hier.params ist nicht definiert, musste du definieren.
zeig die mal zeile wo der error ist.. -
ja würde mich auch mal intressieren ob es drin ist
nein es kommt noch, aber das dlc kostenlos sind ist geil, hab zwar noch nicht viel auf gta online gespielt aber mir hats bis jetzt irgendwie nicht so gefallen..
was macht ihr da eigentlich den ganzen tag? XD -
ocmd:persoabholencheck(playerid)
{
if(Spielerlaeuft[playerid] == 1)
{
SendClientMessage(playerid,Hellblau,"STADTHALLE: Du kannst dein Personalausweis abholen!");
}
else
{
SendClientMessage(playerid,Hellblau,"STADTHALLE: Dein Personalausweis ist noch nicht fertig.");
}
}
hab den benutzt davor hab ich ihn beantragt, es kam raus:
'Dein Personalausweis ist noch nicht fertig.'Ich versuche es eben mit SetTimerEx.. ich schreibe obs klappt.
-
Was meinst du mit reagiren ?
Kommt die TBox sofort nach dem du den Personalausweis kaufst.Ich vermute es liegt daran das du den Timer auf 3 Sekunden eingestellt hast.
3000 Millisekunden sind 3 Sekunden.
5 Minuten sind 300000 Millisekunden.Nein ich habe 3 Sekunden zum Testzweck eingestellt also ich will doch nicht 5 Minuten warten.
Nein die TBox kommt überhaupt nicht, also keine Reaktion. ich mach mal eben ein befehl das der mir sagt ob ich die genehmiung für den perso hab -
Hi, mein Timer reagiert für den Personalausweis nicht.. folgendes habe ich definiert:
forward PersoabholenTimer(playerid);
wo ich den Timer aufrufe ist hier:
{
SetTimer("PersoabholenTimer",3000,0);
SendClientMessage(playerid,Hellblau,"STADTHALLE: Dein Pass wurde beantragt, komm in 5 Minuten wieder um dein Personalausweis abzuholen!");
Persoabholen[playerid] = 0;
}und der Timer selber:
Funktion PersoabholenTimer(playerid)
{
ShowTBox(playerid,"Stadthalle","Dein Personalausweis ist fertig, du kannst ihn in der Stadt gegen 45$ tauschen",5);
Persoabholen[playerid] = 1;
}warum reagiert er nicht und zeigt mir die TBox?
-
Hallo ihr Brotfische, warum reagieren meine Checkpoints erst nach 10 sekunden oder wenn ihr erst 100x in die checkpoints reinlaufe, z.B. das erste:
Funktion OnPlayerEnterCheckpoint(playerid)
{
new veh = LastVehicleID[playerid];
new Float:vcoord[3]; GetVehiclePos(veh,vcoord[0],vcoord[1],vcoord[2]);
new Float:size[3]; GetVehicleModelInfo(GetVehicleModel(veh), VEHICLE_MODEL_INFO_SIZE, size[0],size[1],size[2]);
new Float:vangle; GetVehicleZAngle(veh,vangle);
if(MuellmannCP[playerid] == 1 && IsPlayerInRangeOfPoint(playerid,10.0,1650.7561,-1867.5532,13.3828) && Spielerlaeuft[playerid] == 1)
{
vcoord[0] = floatadd(vcoord[0],(-size[0]* floatsin(-vangle,degrees)));
vcoord[1] = floatadd(vcoord[1],(-size[1]* floatcos(-vangle,degrees)));
if(IsPlayerInRangeOfPoint(playerid,3.0,vcoord[0],vcoord[1],vcoord[2])) //return 1;
SetPlayerCheckpoint(playerid,vcoord[0],vcoord[1],vcoord[2],3.5);
MuellmannCP[playerid] = 2;
//return 0;
return 1;
}bitte um hilfe.. das ist erst passiert als ich die checkpoints in die größe 1 umgeändert habe..
-
Hallo ihr Brotfische, warum reagieren meine Checkpoints erst nach 10 sekunden oder wenn ihr erst 100x in die checkpoints reinlaufe, z.B. das erste:
Funktion OnPlayerEnterCheckpoint(playerid)
{
new veh = LastVehicleID[playerid];
new Float:vcoord[3]; GetVehiclePos(veh,vcoord[0],vcoord[1],vcoord[2]);
new Float:size[3]; GetVehicleModelInfo(GetVehicleModel(veh), VEHICLE_MODEL_INFO_SIZE, size[0],size[1],size[2]);
new Float:vangle; GetVehicleZAngle(veh,vangle);
if(MuellmannCP[playerid] == 1 && IsPlayerInRangeOfPoint(playerid,10.0,1650.7561,-1867.5532,13.3828) && Spielerlaeuft[playerid] == 1)
{
vcoord[0] = floatadd(vcoord[0],(-size[0]* floatsin(-vangle,degrees)));
vcoord[1] = floatadd(vcoord[1],(-size[1]* floatcos(-vangle,degrees)));
if(IsPlayerInRangeOfPoint(playerid,3.0,vcoord[0],vcoord[1],vcoord[2])) //return 1;
SetPlayerCheckpoint(playerid,vcoord[0],vcoord[1],vcoord[2],3.5);
MuellmannCP[playerid] = 2;
//return 0;
return 1;
}bitte um hilfe.. das ist erst passiert als ich die checkpoints in die größe 1 umgeändert habe..
-
x += (distanc * floatsin(-a, degrees));
y += (distanc * floatcos(-a, degrees));
return a;so sollte es eigt gehen ? falls nicht benutz den code von mir weiter oben .
Ich hab hier nur die Funktion rauszufinden ob der Spieler hinter dem Auto steht ..
stock IsPlayerBehindVehicle(playerid,veh)
{
new Float:vcoord[3]; GetVehiclePos(veh,vcoord[0],vcoord[1],vcoord[2]);
new Float:size[3]; GetVehicleModelInfo(GetVehicleMode(veh), VEHICLE_MODEL_INFO_SIZE, size[0],size[1],size[2]);
new Float:vangle; GetVehicleZAngle(veh,vangle);
vcoord[0] = floatadd(vcoord[0],(-size[0]* floatsin(-vangle,degrees)));
vcoord[1] = floatadd(vcoord[1],(-size[1]* floatcos(-vangle,degrees)));
if(IsPlayerInRangeOfPoint(playerid,3.0,vcoord[0],vcoord[1],vcoord[2])) return 1;
return 0;
}Versuch ich mal, hat wer noch Vorschläge wie ich da vorgehen sollte?
-
Die Funktion wird so nicht Funktionieren da diese nichts zurückgibt. Du rechnest mit Variablen aber danach kommt nichts und somit ist der Wert (wie alle variablen die nicht initialisiert wurden) 0. LastVehicleXYF hätte einfach mit dem Float: tag vershen werden müssen und es sollte klappen wie es vorher war
Und wie soll ich das dann sonst machen?
-
Funktion GetXYInFrontOf(&Float:a, &Float:x, &Float:y,Float:distanc );
GetXYInFrontOf(&Float:a, &Float:x, &Float:y, Float:distanc)
{
x += (distanc * floatsin(-a, degrees));
y += (distanc * floatcos(-a, degrees));
return;
}so isses richtig.
danke an alle€dit: Noch eine kleine Frage an alle:
Weiß wer vielleicht wie ich das mache das wenn ich aussteige aus dem Fahrzeug und in ein Checkpoint laufe hinter dem Fahrzeug ein Checkpoint erscheint? -
Dümmste Antwort....
Zeig mal die Funktion GetXYInFrontOf
Funktion Float:GetXYInFrontOf(&Float:a, &Float:x, &Float:y,Float:distanc );
Float:GetXYInFrontOf(&Float:a, &Float:x, &Float:y, Float:distanc)
{
x += (distanc * floatsin(-a, degrees));
y += (distanc * floatcos(-a, degrees));
return a;
} -
Hi! Kurze Frage warum krieg bei der Zeile eine Tag Mismatch problem?:
LastVehicleXYF[playerid] = GetXYInFrontOf(fR,fX,fY,5.0);
alles was ich dort habe:if(oldstate == PLAYER_STATE_ONFOOT && newstate == PLAYER_STATE_DRIVER)
{
new Float:fX,Float:fY,Float:fZ,Float:fR;
new veh = GetPlayerVehicleID(playerid);
LastVehicleID[playerid] = GetPlayerVehicleID(playerid);
LastVehiclePos[playerid] = GetVehiclePos(veh,fX,fY,fZ);
LastVehicleZAngle[playerid] = GetVehicleZAngle(veh,fR);
LastVehicleXYF[playerid] = GetXYInFrontOf(fR,fX,fY,5.0);
Spielerlaeuft[playerid] = 0;
}Ich weiß es hat was mit der 5.0 zu tun, leider weiß icht nicht wie das beheben könnte
-
Den Befehl gibts noch.
-
Der Server hat nix mit Panzern zu tun^^
Aber das mitm neuen Script ist RICHTIG GEIL *-*Mehr news zum Neuen Script gibt es sogar im Forum
Also ich finde der Server ist Empfehlenswert.
10000000/30 Brotfische
Hörst du mal auf so auffällig zu lügen?
Du hast bestimmt ein Rank in dem Server oder bist Co-Owner, sagst nur damit der Server gut aussieht.
Wenn das wirklich so ist.
0815 _ Server ohne Zukunft.. -
LastVehicleXYFront[playerid] = GetXYInFrontOf(fR, fX, fY,5.0);
warning 213: tag mismatch
why?