Moinsen!
Sag mal gibt es einen Befehl mit dem man eine ID (zB die ID 0) blockieren kann? Sprich das niemand die ID 0 erhalten kann. Oder müsste ich mir das selbst schreiben?
Moinsen!
Sag mal gibt es einen Befehl mit dem man eine ID (zB die ID 0) blockieren kann? Sprich das niemand die ID 0 erhalten kann. Oder müsste ich mir das selbst schreiben?
Hast du von einem Bot gedacht? der besetzt jeden Slot.
Ansonsten geht es anders nicht, Nein.
Ich kann mir doch eine Funktion schreiben die einem Spieler eine neue Playerid gibt oder geht sowas nicht?
So hatte ich mir das jetzt vorgestellt, aber vllt kennt ja jemand schon einen Befehl dafür^^
Nein dafür gibt es keine Funktion.
Das einzige ist wohl ein Bot/NPC.
Warum genau willst du denn die ID 0 verhinden? (Nur Interesse)
Nutze die ID 0 als leere ID für meine Systeme^^
wieso machst du das denn? Die id's werden vom System vergeben und man hat da keinen Einfluss drauf und kann sie nicht ändern außer wie schon gesagt man lässt einen bot drauf
So sind die Systeme am besten geschrieben und funktionieren dann auch schneller, sprich der Verbrauch ist nicht so hoch. Wenn ich dafür die ID 0 opfern muss was solls^^
Die Begründung kann ich nicht nachvollziehen. Wenn du alle Systeme bei 0 anfangend (was auch normal ist) schreibst, dann ändert das nichts an der Performance, im Gegenteil eher, da du die ID 0 nicht verschenkst.
Wobei Kye ja mit "tollem" Beispiel voran geht und die Fahrzeuge bei ID 1 anfangen lässt...
Daher die Empfehlung: Fange überall bei 0 an, dann sparst du dir solche Umstände, zu versuchen eine ID zu blockieren (was nur mit einem NPC gehen würde).
Ne es geht dadrum das ich die Playerid vebundenen Systeme auf die 0 umleite falls diese nicht genutzt werden. Sollte jetzt ein Spieler die ID 0 haben ist er aufeinmal in all diesen Systemen von allen Spielern die es ja nicht nutzen sollen drin^^
Hab mir das so besser vorgestellt als das ich extra Funktionen schreibe die alles deaktivieren und diese dann immer nutze. Im schlimmsten Fall muss ich ja immer noch extra Enums erstellen und Variablen, das lässt die amx einmal noch größer werden und ist bestimmt nicht so sparend wie die 0 einfach zum Abfalleimer zu machen.
Dann wäre es nach diesem Prinzip sinnvoller, nicht die 0 zu nehmen, sondern den höchsten Index (sprich MAX_PLAYERS-1) und dem Server in der server.cfg einen Slot weniger zu geben, als dass du in a_samp.inc bei MAX_PLAYERS stehen hast.
Je nach dem was du mit "umleiten" meinst, könnte man auch einfach INVALID_PLAYER_ID oder -1 anstatt der 0 nutzen, dann fragst du halt ab, ob die Variable -1 ist, anstatt 0. So mache ich es eigentlich immer.
Zeige gegebenenfalls mal ein Beispiel von einem Code mit einer solchen "auf-0-Umleitung".
warum nutzt du nicht eine -1 bei nicht benutzung oder ein MAX_PLAYER+1?
somit ist die ID0 nutzbar.
sonst kann mna die 0 nicht sperren ausser indem man einen bot erstellt.
Ach das mit der -1 wusste ich noch gar nicht. Auf die Idee muss man erstmal kommen. Danke euch werde dann die -1 nutzen, sollte ohne Probleme gehen.