alle klar wenn du das dann überarbeitest markiere das thema als erledigt dann bitte und evt. schau doch in meinen tutorials nach falls du neue oder bei systemen evt. hilfe brauchst mfg. Mogly1^
(https://www.youtube.com/playli…8ajrY2oORiCwAXylI9qFTQQld)
Beiträge von Mogly1
-
-
und so?
stock SavePlayerStats(playerid)
{
if(!PlayerInfo[playerid][pLoggedIn]) return 1;
new query[256];
new Float:pos_X, Float:pos_Y, Float:pos_Z, Float:pos_R;
GetPlayerPos(playerid, pos_X, pos_Y, pos_Z);
GetPlayerFacingAngle(playerid, pos_R);
mysql_format(handle, query, sizeof(query),
"UPDATE `spieler` SET `level` = '%d', `exp` = '%d', `skin` = '%d', `geld` = '%d', `vbank` = '%d', `kills` = '%d', `tode` = '%d', `ersterlogin`='%d', `posX`='%f', `posY`='%f',`posZ`='%f', `posR`='%f' WHERE `id` = '%d'",
PlayerInfo[playerid][pLevel], PlayerInfo[playerid][pExp], PlayerInfo[playerid][pSkin], PlayerInfo[playerid][pGeld],
PlayerInfo[playerid][pBank], PlayerInfo[playerid][pKills], PlayerInfo[playerid][pTode], PlayerInfo[playerid][pErsterLogin],
pos_X, pos_Y, pos_Z, pos_R, PlayerInfo[playerid][p_id]);
mysql_pquery(handle, query);
PlayerInfo[playerid][pLoggedIn] = false;
printf("[Spieler] (%s) Ausgeloggt und gespeichert!", PlayerInfo[playerid][pName]);
printf("%s", query);
return 1;
} -
print mal die query aus und schick ihn hier rein
printf("%s!", query); -
evt. so?
stock SavePlayerStats(playerid)
{
if(!PlayerInfo[playerid][pLoggedIn]) return 1;
new query[256];
new Float:pos_X, Float:pos_Y, Float:pos_Z, Float:pos_R;
GetPlayerPos(playerid, pos_X, pos_Y, pos_Z);
GetPlayerFacingAngle(playerid, pos_R);
mysql_format(handle, query, sizeof(query),
"UPDATE `spieler` SET `level` = '%d', `exp` = '%d', `skin` = '%d', `geld` = '%d', vbank` = '%d', `kills` = '%d', `tode` = '%d', `ersterlogin`='%d', `posX`='%f', `posY`='%f', `posZ`='%f', `posZ`='%f', `posR`='%f' WHERE `id` = '%d'",
PlayerInfo[playerid][pLevel], PlayerInfo[playerid][pExp], PlayerInfo[playerid][pSkin], PlayerInfo[playerid][pGeld],
PlayerInfo[playerid][pBank], PlayerInfo[playerid][pKills], PlayerInfo[playerid][pTode], PlayerInfo[playerid][pErsterLogin],
pos_X, pos_Y, pos_Z, pos_R, PlayerInfo[playerid][p_id]);
mysql_pquery(handle, query);
PlayerInfo[playerid][pLoggedIn] = false;
printf("[Spieler] (%s) Ausgeloggt und gespeichert!", PlayerInfo[playerid][pName]);
return 1;
} -
evt. gib dir doch mal die zahlen aus evt. ist ja da irgendwo ein fehler...
also printen z.b so
if(PRESSED(KEY_RIGHT))
{
if(pSkinAuswahl[playerid] == 1)
{
for( new i = 0; i < SERVER_MAX_SKIN; i++)
{
new CurPos = ( pSkinID[playerid]+i ) >= SERVER_MAX_SKIN ? ( pSkinID[playerid]+i-SERVER_MAX_SKIN ) : ( pSkinID[playerid]+i );
if(SkinData[CurPos][eSkinGeschlecht] == PlayerData[playerid][eGeschlecht] && SkinData[CurPos][eSkinFrak] == PlayerData[playerid][eFraktion])
{
if(SkinData[CurPos][eIDS] == pSkin[playerid])continue;
pSkinID[playerid] = CurPos;
SetPlayerSkin(playerid, SkinData[CurPos][eIDS]);
pSkin[playerid] = SkinData[CurPos][eIDS];
new string[250];
format(string,sizeof(string),"Skin: %d || CurPos: %d",SkinData[CurPos][eIDS],CurPos);
SendClientMessage(playerid,string,-1);
break;
}
}
}
} -
wi meinst du jetzt label?
einfach
new Brauch;
Brauch = floatround( Tanke[tankeID][tMaxLiter])-floatround( Tanke[tankeID][tLiter]);format(string, sizeof(string), "%d Liter wird benötigt für tanke XY",Brauche);
-
was genau ist da nen float?
edit:
nutz das das sollte dann 5000 ausgebenTanke[tankeID][tLiter]
zu
floatround( Tanke[tankeID][tLiter]);Tanke[tankeID][tMaxLiter]
zu
floatround( Tanke[tankeID][tMaxLiter]); -
was wird nochmal denn alles gerade geprintet?
-
HEy versuch mal den Code
CMD:unload(playerid, params[])
{
new vehicleid = GetPlayerVehicleID(playerid);
if(IsPlayerInRangeOfPoint(playerid, 5.0, 1563.4137,-1694.5535,5.8906))
{
if(GetVehicleModel(vehicleid) == 428)
{
new string[128], int;
if(sscanf(params, "i", int))return SendClientMessage(playerid, COLOR_GREY, "{247BA6}* Benutze {33AA33}/unload [Menge]");
new money = int*6;
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, COLOR_GREY, "** Du befindest dich in keinem Lieferwagen.");
if(!(Spieler[playerid][pFraktion] == 14))return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Member der Transport GmbH.");
if(Frak[1][frakEisen] + int > 250000)return SendClientMessage(playerid, -1, "Das Lager ist bei diesem Int-Wert voll");
if(Vehicle[GetPlayerVehicleID(playerid)][vehProds] <= 0)return SendClientMessage(playerid, -1, "Keine Produkte");
Frak[1][frakEisen] += (int);
Vehicle[vehicleid][vehProds] -= int;
format(string, sizeof(string), "{B4B5B7}Verbrecher mit /arrest einsperren\n\n{21DD00}Waffenkammer (LSPD)\n%d/250000\nMaterialien", Frak[1][frakEisen]);
Update3DTextLabelText(lspd3d, COLOR_LSPDSTOR, string);
format(string, sizeof(string), "{21DD00}Gehalt: %d$", money);
SendClientMessage(playerid, COLOR_WHITE, string);
format(string, sizeof(string), "{21DD00}Materialien: %d/50000", Vehicle[vehicleid][vehProds]);
SendClientMessage(playerid, COLOR_WHITE, string);
Spieler[playerid][pBank] += money;
format(string, sizeof(string), "* Staatskasse hat dir %d$ überwiesen. Betreff: Materialien abgeliefert (%d)", money, int);
SendClientMessage(playerid, COLOR_GREEN, string);
}
}
else if(GetVehicleModel(vehicleid) == 515 || GetVehicleModel(vehicleid) == 514)
{
if(GetVehicleModel(GetVehicleTrailer(vehicleid)) == 435)
{
new string[128], int;
if(sscanf(params, "i", int))return SendClientMessage(playerid, COLOR_GREY, "{247BA6}* Benutze {33AA33}/unload [Menge]");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Mitglied der Transport GmbH");
if(int < 1 || int > 200)return SendClientMessage(playerid, COLOR_GREY, "** Du kannst nur maximal 200 Produkte abladen.");
if(int > Vehicle[vehicleid][vehProds])return SendClientMessage(playerid, COLOR_GREY, "** Soviele Produkte hast du nicht dabei.");
if(!(Spieler[playerid][pFraktion] == 14))return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Mitglied der Transport GmbH");
for(new i=1;i<MAX_BIZ;i++)
{
if(Biz[i][bCreated] == 1)
{
if(IsPlayerInRangeOfPoint(playerid, 5.0, Biz[i][bEnterX], Biz[i][bEnterY], Biz[i][bEnterZ]))
{
if(GetVehicleModel(vehicleid) == 515 || GetVehicleModel(vehicleid) == 514)
{
if(GetVehicleModel(GetVehicleTrailer(vehicleid)) == 435)
{
if(Biz[i][bProdukte] == Biz[i][bMaxProdukte])return SendClientMessage(playerid, COLOR_GREY, "** Dieses Geschäft hat bereits die maximale Anzahl an Produkten.");
new bizmoney = Biz[i][bKasse];
new kosten = (Biz[i][bProdPreis]*int);
if(bizmoney < kosten)return SendClientMessage(playerid, COLOR_GREY, "** Die Geschäftskasse hat nicht genügend Geld für die Ware.");
if(int > (Biz[i][bMaxProdukte]-Biz[i][bProdukte]))return SendClientMessage(playerid, COLOR_GREY, "** Soviel Produkte kann dieses Geschäft nicht haben.");
Vehicle[vehicleid][vehProds] -= int;
Biz[i][bProdukte] += int;
format(string, sizeof(string), "* Du hast dem Geschäft %d Produkte für $%d verkauft.", int, kosten);
Biz[i][bKasse] -= kosten;
GiveMoney(playerid, kosten);
SendClientMessage(playerid, COLOR_GREEN, string);
UpdateBizLabel(i, Biz[i][bOwned]);
}
}
}
}
}
}
else if(GetVehicleModel(GetVehicleTrailer(vehicleid)) == 584)
{
if(sscanf(params, "i", int))return SendClientMessage(playerid, COLOR_GREY, "{247BA6}* Benutze {33AA33}/unload [Menge]");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, COLOR_GREY, "** Du befindest dich in keinem Tanker.");
if(!(Spieler[playerid][pFraktion] == 14))return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Member der Transport GmbH.");
if(int < 1 || int > 2500)return SendClientMessage(playerid, COLOR_GREY, "** Du kannst nur maximal 2500 Liter abladen.");
if(int > Vehicle[GetVehicleTrailer(vehicleid)][vehProds])return SendClientMessage(playerid, COLOR_GREY, "** Soviel Liter hast du nicht dabei.");
for(new it=1;it<MAX_TANKEN;it++)
{
if(Tanke[it][tCreated] == 1)
{
if(IsPlayerInRangeOfPoint(playerid, 5.0, Tanke[it][tPickupX], Tanke[it][tPickupY], Tanke[it][tPickupZ]))
{
if(Tanke[it][tLiter] == Tanke[it][tMaxLiter])return SendClientMessage(playerid, COLOR_GREY, "** Diese Tankstelle hat bereits die maximale Anzahl an Benzin.");
new cash = Tanke[it][tKasse];
new kosten = (Tanke[it][tBenzinAnkauf]*int);
if(cash < kosten)return SendClientMessage(playerid, COLOR_GREY, "** Die Kasse hat nicht genügend Geld für das Benzin.");
if(int > (Tanke[it][tMaxLiter]-Tanke[it][tLiter]))return SendClientMessage(playerid, COLOR_GREY, "** Soviel Liter kann diese Tankstelle nicht haben.");
Vehicle[GetVehicleTrailer(vehicleid)][vehProds] -= int;
new Float:intfloat = float(int);
new Float:add = floatadd(intfloat, Tanke[it][tLiter]);
Tanke[it][tLiter] = add;
format(string, sizeof(string), "* Du hast der Tankstelle %d Liter für $%d verkauft.", int, kosten);
Tanke[it][tKasse] -= kosten;
GiveMoney(playerid, kosten);
SendClientMessage(playerid, COLOR_GREEN, string);
UpdateTankLabel(it, Tanke[it][tOwned]);
}
}
}
}
}
return 1;
} -
Hey evt. die xyz Koordinaten falsch?
else if(IsPlayerInRangeOfPoint(playerid, 5.0, 264.9876,1392.1984,10.2901))
wenn nicht mach nen test befehl
if(!strcmp(cmdtext, "/check", true))
{
SetPlayerCheckpoint(playerid,264.9876,1392.1984,10.2901,3);
return 1;
}
fahr zum Checkpoint und gib den befehl ein -
evt. falsch kopiert?
bzw ich check die frage net
musst halt auf 90* setzen denn hier fehlen die
new myobject1 = CreateObject(19437, 1250.15869, -1842.18665, 17.12290, 0.0, 0.0, 0.0, 300.0);
die 0 da hinten eine zu 90 halt :D -
evt. stell die range höher
else if(IsPlayerInRangeOfPoint(playerid, 10.0, 264.9876,1392.1984,10.2901)) -
yo print mal also das hier
CMD:load(playerid, params[])
{
new vehicleid = GetPlayerVehicleID(playerid);
if(IsPlayerInRangeOfPoint(playerid, 5.0, 2185.9954,-2262.5286,13.5721))
{
if(GetVehicleModel(vehicleid) == 428)
{
new string[128], int;
if(sscanf(params, "i", int))return SendClientMessage(playerid, COLOR_GREY, "{247BA6}* Benutze {33AA33}/load [Menge]");
if(!(Spieler[playerid][pFraktion] == 14))return SendClientMessage(playerid, COLOR_RED, "Du bist kein Member der Transport GmbH.");
if(int < 1 || int > 50000)return SendClientMessage(playerid, COLOR_RED, "Du kannst nur maximal 50000 Produkte aufladen.");
new money = int*4;
if(GetMoney(playerid) < money)return SendClientMessage(playerid, COLOR_GREY, ERROR_MONEY);
if((int+Vehicle[vehicleid][vehProds]) > 50000)return SendClientMessage(playerid, COLOR_RED, "Du kannst nur maximal 50000 Materialien aufladen.");
Vehicle[vehicleid][vehProds] += int;
GiveMoney(playerid, -money);
SendClientMessage(playerid, COLOR_WHITE,"{21DD00}Ladung: Materialien");
format(string, sizeof(string), "{21DD00}Menge: %d/50000", Vehicle[vehicleid][vehProds], money);
SendClientMessage(playerid, COLOR_WHITE, string);
}
}
else if(IsPlayerInRangeOfPoint(playerid, 5.0, -14.7640,-277.4165,5.4297))
{
if(GetVehicleModel(vehicleid) == 515 || GetVehicleModel(vehicleid) == 514)
{
if(GetVehicleModel(GetVehicleTrailer(vehicleid)) == 435)
{
new string[128], int;
if(sscanf(params, "i", int))return SendClientMessage(playerid, COLOR_GREY, "{247BA6}* Benutze {33AA33}/load [Menge]");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, COLOR_GREY, "** Du befindest dich in keinem Lieferwagen.");
if(!(Spieler[playerid][pFraktion] == 14))return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Member der Transport GmbH.");
if(int < 1 || int > 200)return SendClientMessage(playerid, COLOR_GREY, "** Du kannst nur maximal 200 Produkte aufladen.");
new money = int*40;
if(GetMoney(playerid) < money)return SendClientMessage(playerid, COLOR_GREY, ERROR_MONEY);
if((int+Vehicle[vehicleid][vehProds]) > 200)return SendClientMessage(playerid, COLOR_GREY, "** Du kannst nur maximal 200 Produkte aufladen.");
Vehicle[vehicleid][vehProds] += int;
GiveMoney(playerid, -money);
SendClientMessage(playerid, COLOR_WHITE,"{21DD00}Ladung: Produkte");
format(string, sizeof(string), "{21DD00}Menge: %d/200", Vehicle[vehicleid][vehProds]);
SendClientMessage(playerid, COLOR_WHITE, string);
}
}
}
printf("1");
else if(IsPlayerInRangeOfPoint(playerid, 2.0, 264.9876,1392.1984,10.2901))
{
printf("2");
if(GetVehicleModel(GetVehicleTrailer(vehicleid)) == 584)
{
printf("3");
new string[128], int;
if(sscanf(params, "i", int))return SendClientMessage(playerid, COLOR_GREY, "{247BA6}* Benutze {33AA33}/load [Menge]");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, COLOR_GREY, "** Du befindest dich in keinem Tanker.");
if(!(Spieler[playerid][pFraktion] == 14))return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Member der Transport GmbH.");
if(int < 1 || int > 2500)return SendClientMessage(playerid, COLOR_GREY, "** Du kannst nur maximal 2500 Liter aufladen.");
new money = int*15;
if(GetMoney(playerid) < money)return SendClientMessage(playerid, COLOR_GREY, ERROR_MONEY);
if((int+Vehicle[GetVehicleTrailer(vehicleid)][vehProds]) > 2500)return SendClientMessage(playerid, COLOR_GREY, "** Du kannst nur maximal 2500 Liter aufladen.");
Vehicle[GetVehicleTrailer(vehicleid)][vehProds] += int;
GiveMoney(playerid, -money);
SendClientMessage(playerid, COLOR_WHITE,"{21DD00}Ladung: Benzin");
format(string, sizeof(string), "{21DD00}Liter: %d/2500", Vehicle[GetVehicleTrailer(vehicleid)][vehProds]);
SendClientMessage(playerid, COLOR_WHITE, string);
}
}
printf("4");
return 1;
} -
versuch mal über
if(sscanf(params, "i", int))return SendClientMessage(playerid, COLOR_GREY, "{247BA6}* Benutze {33AA33}/load [Menge]");
das hiier zu machen
SendClientMessage(playerid, COLOR_WHITE, "Ladung: Materialien");
format(string, sizeof(string), "{21DD00}Materialien: %d/50000", Vehicle[vehicleid][vehProds]);
SendClientMessage(playerid, COLOR_WHITE, string);
also so dann
SendClientMessage(playerid, COLOR_WHITE, "Ladung: Materialien");
format(string, sizeof(string), "{21DD00}Materialien: %d/50000", Vehicle[vehicleid][vehProds]);
SendClientMessage(playerid, COLOR_WHITE, string);
if(sscanf(params, "i", int))return SendClientMessage(playerid, COLOR_GREY, "{247BA6}* Benutze {33AA33}/load [Menge]"); -
wow neiin so hier

format(string, sizeof(string), "* Staatskasse hat dir %d$ überwiesen. Betreff: Materialien abgeliefert (%d)", money, int); -
zeig den abschnitt gerade nochmal bitte wie du es gerade hast
-
ja schaumal wenen dud as im string nutzt
Vehicle[vehicleid][vehProds]
änder das zu int glaube
denn du rechnest das ja ab
Vehicle[vehicleid][vehProds] -= int;
samot ist es 0 vorher -
wegen dem geld bei mats
hier
new money = int*6;
if(sscanf(params, "i", int))return SendClientMessage(playerid, COLOR_GREY, "{247BA6}* Benutze {33AA33}/unload [Menge]");
das musst du tauschen
if(sscanf(params, "i", int))return SendClientMessage(playerid, COLOR_GREY, "{247BA6}* Benutze {33AA33}/unload [Menge]");
new money = int*6;
denn 0*6 ist 0:D -
Viel spaß dir hier und willkommen
-
oaky die einzigste antwort auch von meinen tests ist...
das du anscheinend
nicht
EnablePlayerCameraTarget(playerid, true);
unter onplayerconenct hast
oder evt. weil du es irgendwann immer wieder aus machst
aber schau mal anch das du es wirklich an amchst im script