Beiträge von BlackFoX
-
-
-
Versuch mal von der Basis auszugehen , wenn du bei einem Wanted Theoretisch 200€ Strafe bekommen würdest,
könntest du diese 200 x Wantedlevel nehmen so würde ein unendliches System entstehen dazu baust du eine Abfrage ein
die Abfragt ob der Spieler z.b. über 5 Wantedlevel besitzt, da könntest du die Wantedlevel geteilt durch 5 nehmen
da würde z.b. 2 herauskommen bei 10 Wantedleveln , diese Zeit wäre die Zeit für das Gefängnis ,reine Theorie aber
ich hoffe es sagt dir was -
Versuch mal
- Den GTA San Andreas Ordner umzubenennen in irgendwas anderes wie GTA SA ( dann starte das Spiel )
- Wenn das nicht geht Kompatibilität ( Win 98 oder 2000 / ME )
-
Wenn es nicht klappt, hast du vllt den Falschen Editor offen der wiederum den Falschen Pfad für den Compiler besitzt,
sprich der auf den Ordner mit den Includes verweist -
Warnings = Egal
Errors = WichtigFalsch , viele Warnungen in mehreren Zusammenhängen können zu Laufzeit Fehlern führen & somit den Server stürzen
das Script abstürzt bzw. sich beendet. -
Ich finde es wirklich Sinnlos zumal das Forum gar nicht damit zu tun hat
-
Ups , najo ist mir nicht aufgefallen o_x , ist ja nicht so schlimm
-
Kann es sein das du die Kommandos anders übergibst oder so ? Also einfach so kann der Fehler ja nicht auftreten
-
// Beispiel
if(!strcmp(cmdtext,"/sterbenftw",true))return SetTimerEx("GehSterben",500,0,"i",playerid);// Funktion
forward GehSterben(playerid);
public GehSterben(playerid)return SetPlayerHealth(playerid,0.0); -
wieso eine Rückgabe in der Abfrage das Kommando muss so oder so 1 zurückgeben an die Funktion damit das Kommando als richtig erkannt wird
-
Eure Kritikfähigkeit ist gleich NULL,
Du nennst uns nicht Kritik fähig aber sich selber guckt man dann erst gar nicht an,
beziehe das mal auf deinen tollen Freund , zudem übersteigt unser Horizont nicht sondern
es ist das normale Gefühl das etwas nicht stimmt, sprich Jason wollte nur was klar stellen,
da der Autor nichts davon erwähnt hat, zudem muss Kritik wohl berechtigt sein & das war sie. -
Eventuell liegts am Script, wo sonst ?
Eventuell versuchst du eine nicht vorhandene Datei auszulesen oder greifst im Speicher auf
eine Variablen oder ihrem Index zu der/die nicht existiert.
genaueres kann ich dir auch nicht sagen -
kann nur Fabi's Worte übernehmen , für mich ist es wichtig einfach bei der Sprachbasis zu bleiben,
wieso extra Umleitungen bauen, sscanf lässt sich zudem auch in der StringCompare Methode verwenden -
Ich meinte damit das Code Abschnitte in den meisten fällen doch wirklich nützlich sind,
doch da gilt wiederum , entweder sie verschaffen einem Übersicht oder
gestalten das ganze komplexer als die normale Methode , sprich es kann ja nicht den gleichen Zweck erfüllen
ohne wirklich Vorteile zu schaffen. -
Ich bleib bei der Basis, mein Kommando Script war nur zum Spaß erstellt um zu beweisen das es einfach Sinnlos ist,
warum Umwege , eine Sprache sollte so Nativ stattfinden wie Möglich, wegen der Ressourcen & der Geschwindigkeit,
zudem ist die reine Basis für mich größtenteils spannender wenn man das so ausdrücken darf. -
Bei mehreren Zonen empfiehlt sich Identifikatoren zu nutzen für jede Zonen einen bestimmten
-
Warum nicht eine Variable die einmalig gesetzt wird , die dem Timer sagt ob gesetzt werden darf oder nicht,
ist doch total einfach :> -
-
Hallo Lieber Community ,
Mit der Zeit musste ich feststellen das einige Leute nicht wissen Wozu die Begriffe bzw. Operatoren & = AdressOf und * = Pointer bedeuten ,
jedoch sind diese Operatoren bezüglich der Ressourcen von großer Wichtigkeit, zudem sind sie Extrem komplex in ihrer Anwendungsweise.Als Beispiel :
Ganz einfach, "variablebla" hat den Inhalt 5 , so nun haben wir den Zeiger "zeiger" was man ganz gut durch * erkennen kann,
wir verweisen den zeiger nun auf variablebla , also geben den Zeigt er die Adresse von "variablebla"
die enthält den Wert 5, nun hat "zeiger" nur die Adresse von "variablebla" also wenn wir "zeiger" ändern würden,
würde "variablebla" auch den selben Wert erhalten.Wie man sieht Funktioniert das ganze wie eine Verknüpfung , kommen wir so den Arrays in Kombination mit den Zeigern,
diese haben noch eine spezielle Eigenschaft , jetzt folgt erst einmal ein Beispiel :Würden wir hier Adressof verwenden also den Operator & würden wir angeben das zeiger ebenfalls ein Array der Größe 2 wäre
wie man sieht daher verweisen wir nur auf den Anfang der Array.der Zugriff erfolgt ganz leicht , als Beispiel erzeugen wir eine Ausgabe :
printf("Unser Wert wäre %i",*zeiger);
Hier setzen wir eine Zeiger Markierung damit das Programm weiß das wir ihm keine Adresse geben ,
würden wir Adressof verwenden würde er uns ebenso die Adresse ausgeben wie ohne AdressOf,
da wir so auf keine Spezielle stelle zeigen würden & somit einfach die Adresse im Speicher ausgegeben wird.Kommen wir zum Spezial , wir können mit einem Zeiger auch wandern , sprich
Wir würden im Speicher einmal vor springen so würden wir in dem Fall auf den nächsten Wert in der Array zeigen, der 8 wäre.
Wir können den Zeiger auch wie eine Array behandeln, da kommt es noch besser, da wir uns so eine gewisse Arbeit ersparen & gleichzeitig
mit den gleichen Variablen arbeiten können.Hier müssen wir nicht extra auf die Stelle zeigen da die stelle durch die Array Angabe schon vorhanden ist,
wenn wir die Adresse des Speichers haben wollen können wir ein AdressOf verwenden ( & )Für die verarbeitung großer Datenmengen sind Zeiger ziemlich nützlich wie ihr seht, Zeiger kosten im Speicher zudem nur einen Byte,
sie sind wie man sieht extrem komplex.Erweiterte Anwendungen von Zeigern im Bezug auf Speicherreservierung :
usw...
Hierbei gibt der zeiger an die Startadresse für das Speicherfeld an von der Stelle aus können im Speicher später Plätze reserviert werden,
egal wie groß , löschen kann man sie auch ganz leicht wieder.Hiermit gebt ihr den reservierten Speicher wieder komplett Frei.
So das war es fürs erste, ich werde das Tutorial bei bedarf noch erweitern.
Ich hoffe ich konnte euch helfen.