Habe es gerade mal getestet jetzt stimmt es mit /fill wieder
aber /fill Zahl dann kommt du bist an keiner tankstelle
Beiträge von eli
-
-
45574) : warning 225: unreachable code
else
{
return SendClientMessage(playerid, COLOR_YELLOW,"Du bist an keiner Tankstelle!");
}
return 1; -
Wie meinst mit sscanf?
Jetzt kommt /fill 2: du bist an keiner tankstelle und bei
/fill kommt du hast kein geld -
/fill an keiner Tankstelle kommt meldeung(Richtig)
/fill an der Tankstelle(Füllt komplett auf Richtig)
/fill ZAHL Sollte eigentlich ja tanken macht aber nicht und es kommt auch keine Meldung
/fill Menge als Trucker beim Trucker Deport stelle, passiert nix -
Servus, ne hat auch nicht geklappt Kompiler stürzt ab
-
Ne ist eigentlich gleich geblieben, das Problem wird sein das der Befehl Ansicht nicht richtig funktioniert,
z.B mache ich /fill 50 dann kommt du bist an keiner tankstelle,
mache ich /fill irgendwo kommt nix
eigentlich soll dabei kommen du bist bei Keiner Tankstelle
genau wie bei /fill 50ich weiß nicht wie ich das problem Genau erklären soll
-
Müsste ich dann halt als Dialog machen sonst müsste man so viel immer eingeben /fill voll oder /fill Liter 500, etc
aber es muss doch auch möglich sein das es in einem befehl Definiert wird z.B bevor die Veränderung kam war es so:
/fill (hat es voll gemacht aber es war auch die Möglichkeit /fill Menge anzugeben)Seit der Veränderung ist es halt komplett anderes,
Ich hatte vorher auch 2 Getrennte Befehle einmal /fill für´s Tanken halt
und dann /fill2 [MENGE] Für denn Trucker, aber ich wollte halt das /fill ein befehl ist -
Hallo zusammen.
Ich habe einen /fill befehl der nicht so ganz funktioniert, mir wurde von Montero Schon gut dabei geholfen und Klappt auch soweit aber es ist noch nicht ganz so richtig und ich weiß nicht wie ich das genau machen müsste:
Es soll so ein /fill (An Tankstelle dann wird auto vollgetankt aber es soll auch die Möglichkeit geben /fill 10 (das dann nur 10 Liter getankt wird))
Dann des weiteren soll /fill für den Job Trucker auch sein, Tankstellen müssen ja Beliefert werden und dafür muss LKW mit Anhänger befüllt werden und dies soll über /fill [MENGE] passieren:if (strcmp(cmd, "/fill", true) == 0)
{
new veh = GetPlayerVehicleID(playerid);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
if(!IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid,COLOR_YELLOW, "Du bist in Keinem Fahrzeug:");
return 1;
}
if(IsANoTachoVehicle(veh))
{
SendClientMessage(playerid,COLOR_YELLOW," Ein Fahrrad hat doch keinen Tank.");
return 1;
}
if(IsAtGasStation(playerid))
{
for(new i = 0; i < sizeof(TankstellenInfo); i ++)
{
//new Float:TestX, Float:TestY, Float:TestZ;
//GetPlayerPos(playerid, TestX, TestY, TestZ);
//printf("User: %f %f %f", TestX, TestY, TestZ);
//printf("Tank: %f %f %f", TankstellenInfo[i][tsEntranceX], TankstellenInfo[i][tsEntranceY], TankstellenInfo[i][tsEntranceZ]);
if(IsPlayerInRangeOfPoint(playerid,10.0, TankstellenInfo[i][tsEntranceX], TankstellenInfo[i][tsEntranceY], TankstellenInfo[i][tsEntranceZ]))
{
if(PlayerInfo[playerid][pPtankkey] == 0 || GetPlayerMoney(playerid) >= TankstellenInfo[i][tsEntranceCost])
{
if(PlayerInfo[playerid][pPtankkey] != 0)
{
if(TankstellenInfo[i][tsLocked] == 1)
{
SendClientMessage(playerid,COLOR_RED, "Die Tanke hat geschlossen");
return 1;
}
if(TankstellenInfo[i][tsProducts] == 5000)
{
SendClientMessage(playerid,COLOR_RED, "Die Tankstelle hat kein Benzin mehr");
return 1;
}
if(Refueling[playerid] == 1) {
SendClientMessage(playerid, COLOR_RED, "Du bist gerade am tanken...");
return 1;
}
Refueling[playerid] = 1;
FreezePlayer(playerid);
SendClientMessage(playerid,COLOR_WHITE," Dein Fahrzeug wird betankt, Bitte warten....");
SetTimerEx("Fillup",RefuelWait,0, "ii", playerid, i);
}
}
else
{
GameTextForPlayer(playerid, "~r~Du hast nicht genug Geld", 5000, 1);
}
}
}
}
//else
//{
// SendClientMessage(playerid, COLOR_RED,"Du bist an keiner Tankstelle!");
// return 1;
//}
}
else if(IsPlayerInRangeOfPoint(playerid,90.0, 78.8584, -291.3175, 1.5781))
{
new tmpcar = GetPlayerVehicleID(playerid);
new compcost2 = 50;
if(PlayerInfo[playerid][pJob] != 22)
{
SendClientMessage(playerid, COLOR_WHITE, "du bist kein Trucker");
return 1;
}
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "FEHLER: /fill [Menge]");
return 1;
}
new vehicleid = GetPlayerVehicleID(playerid);
if(IsATruck2(tmpcar))
{
if(!IsTrailerAttachedToVehicle(vehicleid))
{
SendClientMessage(playerid, COLOR_RED, "Du hast keinen anhänger dran");
return 1;
}
new typ=GetPlayerHaul(tmpcar);
if(PlayerHaul2[typ][pLoad2] < PlayerHaul2[typ][pCapasity2])
{
new amount;
amount = strval(tmp);
if(amount < 1 || amount > 1500)
{
SendClientMessage(playerid, COLOR_GREY, " Die Menge muss zwischen 1 und 1500 sein !");
return 1;
}
new check= PlayerHaul2[typ][pLoad2] + amount;
if(check > PlayerHaul2[typ][pCapasity2])
{
format(string, sizeof(string), " Du hast das Limit mit %d Benzin erreicht, Benzin: %d.",PlayerHaul2[typ][pCapasity2],PlayerHaul2[typ][pLoad2]);
SendClientMessage(playerid, COLOR_GREY, string);
return 1;
}
new cost = amount*compcost2;
if(GetPlayerMoney(playerid) >= cost)
{
PlayerHaul2[typ][pLoad2] += amount;
format(string, sizeof(string), "Benzin: %d/%d.", PlayerHaul2[typ][pLoad2],PlayerHaul2[typ][pCapasity2]);
SendClientMessage(playerid, TEAM_GROVE_COLOR, string);
format(string, sizeof(string), "Du hast %d Benzin für $%d gekauft.", amount,cost);
SendClientMessage(playerid, TEAM_GROVE_COLOR, string);
GivePlayerMoney(playerid,-cost);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
return 1;
}
else
{
format(string, sizeof(string), "Du kannst nicht %d Benzin für $%d anfordern!", amount,cost);
SendClientMessage(playerid, TEAM_GROVE_COLOR, string);
return 1;
}
}
else
{
format(string, sizeof(string), "Benzin: %d/%d.", PlayerHaul2[typ][pLoad2],PlayerHaul2[typ][pCapasity2]);
SendClientMessage(playerid, TEAM_GROVE_COLOR, string);
return 1;
}
}
else
{
SendClientMessage(playerid, TEAM_GROVE_COLOR, "Dieses Fahrzeug kann keine Benzin ausliefern.");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_YELLOW,"Du bist an keiner Tankstelle!");
}
} -
Guten Tag zusammen, ich habe ein Problem mit den Attach3DTextLabelToVehicle,
Und zwar habe ich folgendes vor:
egal ob Taxi im Script oder /veh 420 2 2 gerufen wird es soll ein 3DTextLabel an diesem Kleben(Wenn es über /veh nicht geht dann muss es halt im GM nur definiert werden)Ich habe folgendes Probiert:
bei new:
new Text3D:Taxivehicletext[MAX_VEHICLES],Taxivehicle_id;if(IsATaxi(newcar))
{
Taxivehicletext[ Taxivehicle_id ] = Create3DTextLabel( "San Andreas Taxi \nSteig ein, um als Fahrer zu arbeiten", 0xFF0000AA, 0.0, 0.0, 0.0, 50.0, 0, 1 );
Attach3DTextLabelToVehicle( Taxivehicletext[ Taxivehicle_id ] , Taxivehicle_id, 0.0, 0.0, 2.0);
ShowPlayerDialog(playerid,DIALOG_TAXIBUS,DIALOG_STYLE_INPUT,"Taxifahrer","{FFFFFF}Um als Taxifahrer zu arbeiten, gib hier den Fahrpreis ein. Du erhälst ihn alle 15 Sekunden.","Fortsetzen","Abbrechen");
return 1;
}und natürlich beim Dialog soll dieser Text gelöscht werden:
Delete3DTextLabel( Taxivehicletext[ Taxivehicle_id ] );Also wenn ich Fahr preis eingeben habe bleibt er noch da, Danach kommt wieder ein Dialog mit:
Gib nun einen Namen für dein Taxi einSo dann muss ich natürlich im dem Dialog Bereich wenn man Den name eingeben hat das er dies macht:
Delete3DTextLabel( Taxivehicletext[ Taxivehicle_id ] );und wieder ein neues 3DTextLabel erstellt:
bei New
new Text3D:imdienstTaxivehicletext[MAX_VEHICLES],imdienstTaxivehicle_id;beim Dialog:
if(response == 1)
{
TaxiDrivers += 1; TransportDuty[playerid] = 1;Delete3DTextLabel( Taxivehicletext[ Taxivehicle_id ] );
new namevomtaxi = strlen(inputtext);
imdienstTaxivehicletext[ imdienstTaxivehicle_id ] = Create3DTextLabel( "%s [ San Andreas Taxi ]\n Fahrer: %s\n Preis: %d$ / 15 Sekunden", 0xFF0000AA, 0.0, 0.0, 0.0, 50.0, 0, 1 ,namevomtaxi ,sendername, TransportValue[playerid]);
Attach3DTextLabelToVehicle( imdienstTaxivehicletext[ imdienstTaxivehicle_id ] , imdienstTaxivehicle_id, 0.0, 0.0, 2.0);
GetPlayerName(playerid,sendername,sizeof(sendername));
format(string, sizeof(string), "Taxifahrer %s is im Dienst, Preis: $%d.", sendername, TransportValue[playerid]);
OOCNews(TEAM_GROVE_COLOR,string);
}und natürlich wenn er Aussteigt/zerstört wieder:
Delete3DTextLabel( imdienstTaxivehicletext[ imdienstTaxivehicle_id ] );und dann halt wieder das er das am Anfang wieder erstellt
Aber 1. werden keine Label angezeigt 2. habe ich bei namevomtaxi ein warning
-
Vielen Danke
-
Wenn ich das so mache:
format(string,sizeof(string),"{EB0000}Der Fahrpreis muss zwischen 1$ und 1000$ liegen.");
format(string,sizeof(string),"Um als Taxifahrer zu arbeiten, gib hier den Fahrpreis ein. Du erhälst ihn alle 15 Sekunden.", string);
ShowPlayerDialog(playerid,DIALOG_TAXIBUS,DIALOG_STYLE_INPUT,"Taxifahrer",string,"Fortsetzen","Abbrechen");wird mir auf dem Server im DIALOG nur der Untere Text angezeigt, Hast es was damit zu tuen das es DIALOG_STYLE_INPUT ist ?
-
Ah kann ich auch z.B das so machen:
"{COLOR_RED}Der Fahrpeis......
oder muss es der HTML COD sein ?
-
Hallo Zusammen,
Ich würde es gerne so machen das der Obere Text in Rot angezeigt wird:
format(string,sizeof(string),"Der Fahrpreis muss zwischen 1$ und 1000$ liegen.");
format(string,sizeof(string),"Um als Taxifahrer zu arbeiten, gib hier den Fahrpreis ein. Du erhälst ihn alle 15 Sekunden.", string);
ShowPlayerDialog(playerid,DIALOG_TAXIBUS,DIALOG_STYLE_INPUT,"Taxifahrer",string,"Fortsetzen","Abbrechen");Wie müsste ich das Definieren ?
-
Musste halt mehre Dialoge machen denke ich mal, bei alles selbst schreiben weiß ich es nicht genau kenne mich bei ocmd nicht so aus,
-
Also ich will mir auch mein Arbeitsamt als Dialog machen, es ist je nach dem wie du es Nutzen willst:
z.B /jobs(DIALOG Öffnet sich) Wählst job aus und ist direkt angenommen und text kommt deinen Job angenommen)
oder
/jobs(Dialog öffnet sich) Wählst Job aus z.B Trucker dann kommt ein weiters Dialog mit Informationen über denn JOB und unten steht dann Anehmen / Zurück
oder
Wie gehabt dann nach dem Infomation Dialog gibt es zu Auswahl Weiter / Zurück, wenn man auf Weiter Drückt kommt wieder ein Dialog wo einer gefragt wird Bist du dir Sicher das du diesen Job anehmen möchte, Ja / HauptmenüJe nach dem wie es einer gestellten möchte so viele Dialoge brauch man dann
//edit hast du ein Godfahter script ? oder sprich was für ein Script nutz du ? oder schreibst eins komplett selbst ?
-
Das war ja nur aus seinem Script Kopiert, sein Problem ist mir bissi unschlüssig,
Weil wenn er z.B 7 Fraktion hat und die 7 nicht ging aber der Rest dann liegt es dran das die 7 nicht definiert ist, oder wenn er wie oben nur /f probiert hat dann heißt es das er ja einmal /family drinnen hat und /f und Villt/f anderes definiert ist wie /family
-
Was genau meinst mit der Befehl wurde nicht gefunden ?
nach dem hier:if(!(Spieler[playerid][pFraktion] == 2 || Spieler[playerid][pFraktion] == 4 || Spieler[playerid][pFraktion] == 6 || Spieler[playerid][pFraktion] == 1 || Spieler[playerid][pFraktion] == 3 || Spieler[playerid][pFraktion] == 5))return SendClientMessage(playerid, COLOR_GREY, "Du bist in keiner Fraktion.");
Kann Fraktion 2,4,6,1,3,5 ( 1,2,3,4,5,6 )
diesen Befehl nutzen -
Hat geklappt danke, aber nochmal zu dem new string45[768]
ist es schlimm wenn dieses so hoch ist ? -
Ok, Schaue ich mir gleich nochmal an ich habe es mal so Probiert:
new string45[768]
und halt die Alte Variation genommen so hat es nun auch geklapptist es denn schlimm wenn ich es auf 768 habe ?
eine frage hätte ich noch
undzwar habe ich ja beim namen eingeben dieses Hier:
if (!IsPlayerConnected(giveplayerid))
{
format(string,sizeof(string),"%s ist kein Aktiver Spieler",inputtext);
ShowPlayerDialog(playerid,DIALOG_UEBERWEISEN_PLAYER,DIALOG_STYLE_INPUT,"Überweisen",string,"Bestätigen","Zurück");
return 1;
}Damit wird ja geprüft ob der Spieler Online ist, wie müsste ich diese abfrage machen wenn er Prüft ob es der eigende Spieler ist?
if (!playerid)
{
format(string,sizeof(string),"Du kannst dir nicht selbst was überweisen");
ShowPlayerDialog(playerid,DIALOG_UEBERWEISEN_PLAYER,DIALOG_STYLE_INPUT,"Überweisen",string,"Bestätigen","Zurück");
return 1;
} -
Ich weiß wieder wieso ich + hatte
Kontostand - gled wäre ja z.B2000 habe ich 1000 überweise ich wäre: 1000 weil er ja 1000 abzieht
aber beim alten stand brauch ich ja denn alten also Kontostand + geld
Kontostand abgezogen: 1000 + 1000 = 2000
new alterKontostand = PlayerInfo[playerid][pAccount] + geld;So in der Form wird nur das auf dem server angezeigt:
format(string,sizeof(string),"\n Neuer Kontostand: %d$",PlayerInfo[playerid][pAccount]);der rest wird nicht angezeigt