[sInfo[playerid][db_id]
zu:
sInfo[playerid][db_id]
Beiträge von Jeffry
-
-
X von TextDrawTextSize ist die X-Position + die Größe (sprich immer mehr als die Koordinate).
Y von TextDrawTextSize ist die geschätzte Höhe.Dadurch, dass X bei dir kleiner war als die Koordinate ging der selektierbare Bereich ins negative.
-
Hast du es mal einer anderen Taste versucht, zum Beispiel KEY_YES (Z)?
Nicht alle Tasten werden da richtig erkannt, ich hatte damit schon Probleme. -
Setzt du den Spieler in ein Interior, wenn er in den Pfeil läuft?
Oder kann es sein, dass du nicht alles vom NPC aufgenommen hast und er einfach neu spawnt? -
Korrekt.

Nur achte darauf, nicht zwei mal PRESSED zu definieren.
-
http://wiki.sa-mp.com/wiki/OnP…ting_first_pressing_a_key
Wenn die Taste gedrückt wird speicherst du gettime in einer Spielervariable, wenn sie los gelassen wird, machst du gettime minus die Spielervariable, wenn das größer gleich 5 ist, sind 5 Sekunden vorbei.
-
Mit SendClientMessage kannst du maximal 144 sichtbare Zeichen (plus EOS) anzeigen. Daher reicht es, wenn string 145 groß ist, mehr geht nicht, dann zeigt es dir gar nichts mehr an.
Falls du das sscanf Plugin verwendest, musst du in sscanf nach dem s die Größe des Strings in eckigen Klammern angeben.
EDIT: (Post unten)
ZeroTheHero: Gerne! Da dein Problem behoben ist, wäre es super, wenn du den Thread als erledigt markierst. Danke! -
Das liegt dann daran, dass es als purer Text ausgelesen wird.
Schreibe in deiner Datenbank
§n
anstatt \n und füge den Code bei den Auslesungen aus der Datenbank ein:
new i;
while((i=strfind(TEXT_VARIABLE, "§n")) != -1)
{
strdel(TEXT_VARIABLE, i, i+2);
strins(TEXT_VARIABLE, "\n", i);
}
Jeweils bevor du den Text anzeigen lässt, dann geht es. -
Wird es angezeigt, wenn du dir den Text mit einem print ausgeben lässt?
-
Das geht nur mit:
http://wiki.sa-mp.com/wiki/SetPVarInt
http://wiki.sa-mp.com/wiki/GetPVarInt
Und den entsprechenden Abwandlungen (String, Float). -
Kannst du mal ein Video posten, wie es aussieht, wenn du das Interior betrittst und nur kurz den NPC siehst?
-
for(new c=0; c<sizeof(Jobc); c++)
{
Jobc[code=c][v_ID] = AddStaticVehicleEx(Jobc[code=c][model],Jobc[code=c][c_x],Jobc[code=c][c_y],Jobc[code=c][c_z],Jobc[code=c][c_r],Jobc[code=c][Color1],Jobc[code=c][Color2],-1);
}if(GetPlayerVehicleID(playerid) == i)
zu:
if(GetPlayerVehicleID(playerid) == Jobc[i][v_ID])Und nochmal... dieser Thread ist für kleine Fragen und nicht für komplette Systeme. Mach doch für sowas einen Thread auf, das bewahrt die Übersichtlichkeit.
-
Zitat
FCNPC is a plugin where you can create controllable NPCs in your server! It is similar to the plugin CNPC (for old SA-MP members) but very different in code, and is supported to the latest SA-MP server version (0.3z-R4 as of now.)
https://github.com/zeelorenc/fcnpcKannst es ja trotzdem probieren.
-
140 ist kleiner als 532.
TextDrawTextSize(Textdraw[10], 140.625000, 23.333349);
zu:
TextDrawTextSize(Textdraw[10], 652.0, 23.333349);
Je nach dem wie groß es ist. -
Du musst 2 Variablen nehmen (oder ein Array).
Sprich: fraktion1 und fraktion2 oder: erlaubteFraktionen[2] -
Du musst den Gamemode mit der neusten streamer.inc kompilieren, Plugin und Include passen nicht zusammen.
-
Wenn test 0 ist, dann wirst du die SendClientMessage nicht mehr sehen, genau.
Sobald der Code an ein return kommt, wird die Funktion bzw. das Callback komplett beendet. -
Da wirst du wieder Probleme bekommen, wenn du es in bestimmten Reihenfolgen machst.
Schreibe es so:
ocmd:delveh(playerid,params[])
{
if(!IsPlayerAnAdmin(playerid,3))return SendClientMessage(playerid, ROT, "Du bist kein Admin oder dein Rang ist zu niedrig!");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, ROT, "Du musst in einem Fahrzeug sitzen!");
new vID=GetPlayerVehicleID(playerid);
new frakcar = IsCarFrakCar(vID);
new normcar = IsCarNormCar(vID);
new query[128];
if(frakcar!=0)
{
format(query,sizeof(query),"DELETE FROM fcars WHERE id='%i'",fcInfo[frakcar][fdb_id]);
mysql_tquery(dbverbindung,query);
SendClientMessage(playerid, GRUEN, "Du hast das Fraktionsfahrzeug erfolgreich gelöscht!");
DestroyVehicle(vID);
fcInfo[i][fid_x] = 0;
}
else if(normcar!=0)
{
format(query,sizeof(query),"DELETE FROM cars WHERE id='%i'",cInfo[normcar][db_id]);
mysql_tquery(dbverbindung,query);
SendClientMessage(playerid, GRUEN, "Du hast das Normfahrzeug erfolgreich gelöscht!");
DestroyVehicle(vID);
cInfo[i][id_x] = 0;
}
return 1;
}
Es ist wichtig die Variablen zurück zu setzen.
Übrigens, für User ist es so (mit einem Befehl) leichter, sie müssen sich nur einen Befehl merken.Zwecks der Frage:
Nein, bei return wird eine Funktion sofort beendet, es wird nichts mehr ausgeführt, was nach dem return kommt.
Sprich, du bekommst nur die 0 zurück, wenn es keine Übereinstimmung gibt, ansonsten das i. -
Im laufenden Betrieb des NPCs ist das nicht möglich.
Du könntest versuchen es mit http://wiki.sa-mp.com/wiki/NPC:PauseRecordingPlayback zu pausieren, und danach dann PutPlayerInVehicle zu verwenden.Oder eben hiermit:
http://forum.sa-mp.com/showthread.php?t=428066 -
Füge das Streamer Plugin in deinen Server ein (/plugins/ Ordner).
http://forum.sa-mp.com/showthread.php?t=102865