Setzt du auch alle FCarKeys auf -1 zum Start des Servers bei OnGameModeInit?
Wenn nicht, mache das, sonst ist der Wert 0, was wahrscheinlich deine playerid ist.
[SAMMELTHREAD] Kleine Scripting Fragen
- Rafelder
- Unerledigt
Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
Ja ich mache eine Schleife durch FCarKeys und durch Max_Vehicles und setze das dann auf -1
Kannst du mir zeigen wie ich es machen muss -
Kann mir da jemand helfen? Es spuckt Errors aus...
if(schein != "Auto" && schein != "Motorrad" && schein != "Flug" && schein != "LKW")return SendClientMessage(playerid,COLOR_RED,"» Diesen Schein gibt es nicht.");
-
Nutze strcmp um strings zu vergleichen.
-
Kann mir da jemand helfen? Es spuckt Errors aus...
if(schein != "Auto" && schein != "Motorrad" && schein != "Flug" && schein != "LKW")return SendClientMessage(playerid,COLOR_RED,"» Diesen Schein gibt es nicht.");
Codeif(!(schein == "Auto" || schein == "Motorrad" || schein == "Flug" || schein == "LKW")) return SendClientMessage(playerid, COLOR_RED, "» Diesen Schein gibt es nicht.");
Wenn denn, dann so
&& = und
| | = oderAber benutze lieber
-
-
-
Was möchtest du mir mit dem Link jetzt genau sagen / zeigen?
"strlen" kann nicht funktionieren, weil du damit nur die Länge von einem string bekommst. Die Länge eines Strings ist ein Unterschied zu dem Inhalt eines Strings.

-
Was möchtest du mir mit dem Link jetzt genau sagen / zeigen?
"strlen" kann nicht funktionieren, weil du damit nur die Länge von einem string bekommst. Die Länge eines Strings ist ein Unterschied zu dem Inhalt eines Strings.

Mein Fehler.. xD
-
Ich kann das leider nicht testen aber ich würde das ganz einfach so machen:
Code
Alles anzeigenif(strcmp(cmd, "/motor", true) == 0) { new car = GetPlayerVehicleID(playerid); if(Vehicle[car][fFrak] == FRAKID ) //Die ID der Fraktion eintragen. { if(!(pInfo[playerid][frak] == FRAKID)) //Die ID der Fraktion eintragen, die das Fahrzeug benutzen darf. { SendClientMessage(playerid, FARBE, "Du hast keine Schlüssel!"); return 1; } } }Schön wärs wenn es so einfach wäre, aber der Array ist ja der "row count" bei meinem LoadVehs, also wird das nicht funktionieren, da der row count und die vehicle ID nicht identisch sind
-
Schön wärs wenn es so einfach wäre, aber der Array ist ja der "row count" bei meinem LoadVehs, also wird das nicht funktionieren, da der row count und die vehicle ID nicht identisch sind
Verstehe nicht was du meinst.
Es wird abgefragt, ob die VehicleID zu der FraktionID gehört.
Wenn ja, dann soll abgefragt werden, ob der Spieler nicht zur FraktionID gehört.
Oder denk ich falsch?
-
Kannst du mir zeigen wie ich es machen muss
for(new i = 0; i < sizeof(FCarKeys); i++)
{
for(new j = 0; j < sizeof(FCarKeys[]); j++)
{
FCarKeys[i][j] = -1;
}
} -
Wieso wird mein print nicht aufgerufen ( der 2 Print ) ?
bzw der Dialog nicht angezeigt ?Code
Alles anzeigenif(listitem == 2) { if(!response) return 1; new veh = GetPVarInt(playerid,"fCarID"),string[128]; for(new i = 0; i < sizeof(FCarKeys); i++) { if(FCarKeys[veh][i] == -1) continue; printf("%d",FCarKeys[veh][i]); format(string,sizeof(string),"%s\n%s [%d] Key [%d]",string,getPlayerName(FCarKeys[veh][i]),FCarKeys[veh][i],i); } printf("1"); ShowPlayerDialog(playerid,DIALOG_FCARS_KEYANZEIGEN,DIALOG_STYLE_LIST,"Fraktions Car Schlüssel Anzeigen",string,"Ok",""); } return 1; -
Verstehe nicht was du meinst.Es wird abgefragt, ob die VehicleID zu der FraktionID gehört.
Wenn ja, dann soll abgefragt werden, ob der Spieler nicht zur FraktionID gehört.
Oder denk ich falsch?
Ja aber ich denke du hast mich von Anfang an misverstanden, ich würde gerne bei LoadVehs eine Funktion haben die den jeweiligen vehicle IDs halt diese Infos hinzufügt bzw jedes Auto wird mit der Vehicle ID geladen oder halt eine Lösung wie ich das am besten regeln kann
-
Wie kann ich die Kamera (z.B. im Einloggscreen) von A nach B schwenken lassen?
-
Ja aber ich denke du hast mich von Anfang an misverstanden, ich würde gerne bei LoadVehs eine Funktion haben die den jeweiligen vehicle IDs halt diese Infos hinzufügt bzw jedes Auto wird mit der Vehicle ID geladen oder halt eine Lösung wie ich das am besten regeln kann
Die FraktionID wird doch schon für jedes Fahrzeug geladen, oder nicht?
____________________________________________________________________________________________________________________________________________
Wie kann ich die Kamera (z.B. im Einloggscreen) von A nach B schwenken lassen?
Ja, kann man

Einfach dort einfügen, wo das Dialog für den Login gestartet wird:CodeTogglePlayerSpectating(playerid, 1); InterpolateCameraPos(playerid, 0.0, 0.0, 10.0, 1000.0, 1000.0, 30.0, 10000, CAMERA_MOVE); InterpolateCameraLookAt(playerid, 50.0, 50.0, 10.0, -50.0, 50.0, 10.0, 10000, CAMERA_MOVE);Es gibt dazu auch einen Editor: Klick
Beim Spawn aber bitte wieder
auf 0 setzen. Ansonsten schwebt der Kopf in der Luft. -
Hi, kann komischerweise mein Script nicht compilen obwohl sich die unten genannte Include im Ordner befindet.
C:\Users\David\Desktop\NR\pawno\include\YSI\internal\y_natives.inc(64) : fatal error 100: cannot read from file: "y_globaltags"
Woran liegt's ?
-
Was passiert wenn du die y_globaltags.inc Datei in den selben Ordner wie die y_natives.inc Datei zu verschieben.
-
Wieso wird mein print nicht aufgerufen ( der 2 Print ) ?
for(new i = 0; i < sizeof(FCarKeys); i++)
zu:
for(new i = 0; i < sizeof(FCarKeys[]); i++)Damit er das zweite Array nimmt, und nicht dessen Größe, wo "veh" drin steht.
-
@N1co es wird ja geladen aber nicht auf dem richtigen array gespeichert, @Jeffry könntest du mir vielleicht helfen? Würde gerne Fahrzeuge aus der Datenbank laden und dann ganz einfach bei befehlen abfragen, ich weiß aber nicht wie:
Code
Alles anzeigenstock LoadVehs() { new rows,fields; new Cache:Vehs = mysql_query(handle, "SELECT * FROM `fahrzeuge`",true); cache_get_data(rows,fields); for(new i=0;i<rows;i++) { Vehicle[i][VID] = cache_get_field_content_int(i, "id"); Vehicle[i][fModel] = cache_get_field_content_int(i, "modelid"); Vehicle[i][fSposX] = cache_get_field_content_float(i, "sPos-X"); Vehicle[i][fSposY] = cache_get_field_content_float(i, "sPos-Y"); Vehicle[i][fSposZ] = cache_get_field_content_float(i, "sPos-Z"); Vehicle[i][fSposO] = cache_get_field_content_float(i, "sPos-O"); Vehicle[i][fColor1] = cache_get_field_content_int(i, "color_1"); Vehicle[i][fColor2] = cache_get_field_content_int(i, "color_2"); Vehicle[i][fSirene] = cache_get_field_content_int(i, "sirene"); Vehicle[i][fFrak] = cache_get_field_content_int(i, "fraktion_id"); Vehicle[i][fFuel] = cache_get_field_content_int(i, "tank"); cache_get_field_content(i,"besitzer", Vehicle[i][fOwner],handle,64); cache_get_field_content(i,"lastdriver", Vehicle[i][fLastDriver],handle,64); cache_get_field_content(i,"2besitzer", Vehicle[i][fSecond_Owner],handle,64); cache_get_field_content(i,"plate", Vehicle[i][fPlate],handle,32); SetVehicleParamsEx(i, false, false, false, false, false, false, false); new cCarID = CreateVehicle(Vehicle[i][fModel],Vehicle[i][fSposX],Vehicle[i][fSposY],Vehicle[i][fSposZ],Vehicle[i][fSposO],Vehicle[i][fColor1],Vehicle[i][fColor2], CAR_RESPAWN_TIME,Vehicle[i][fSirene]); new numberplate[256]; format(numberplate, sizeof (numberplate), "%s %d", Vehicle[i][fPlate], Vehicle[i][VID]); SetVehicleNumberPlate(cCarID, numberplate); if (Vehicle[i][fFrak] == 3) { if (Vehicle[i][fModel] == 560) { SireneSAMD[i] = CreateObject(19419, 0.00, 0.20, 0.85, 0.00, 0.00, 0.00, 50.0); AttachObjectToVehicle(SireneSAMD[i], cCarID, 0.00, 0.00, 0.81, 0, 0, 0); } } } cache_delete(Vehs); print("Vehicles Spawned"); return 1; }

