Dein Tank wird nur weniger wenn du stehst.
if(GetVehicleSpeed(i) < 1)
Zu
if(GetVehicleSpeed(i) > 1)
Beiträge von Jeffry
-
-
Oh ja, ein paar Tage her.
Der Streamer verwendet ebenfalls CreateObject, nur eben nur für Objekte in deiner Nähe, oder in der Nähe von jedem anderen Spieler.
Wenn das mehr als 1000 sind wird auch kein CreateObject direkt mehr angezeigt.Versuche es mal wie beschrieben mit der Limitierung auf 800 angezeigten Objekten, möglicherweise löst das das Problem.
Wenn nicht, entferne mal testweise einige, oder alle, deiner gestreamten Objekte, klappt es dann? Wenn ja, dann ist es auf jeden Fall das Limit.
-
So viel wie ich weiß, kann man doch nur Tabellen vom Script aus erstellen, aber keine Datenbanken oder?
Wenn ich da falsch liege, dann entschuldige mich und nehme die Lösung dazu gerne mit an.
Klar geht das, wenn der Benutzer die entsprechenden Berechtigungen hat. Bei einer Hosting-Firma wird es nicht gehen, wenn man nur einen Gameserver angemietet hat (da hat der User-Panel-Benutzer die Rechte, bzw weist einen entsprechenden Benutzer an, aber nicht der MySQL-Benutzer), aber wenn man seinen eigenen Root-Server hat, bzw. es lokal laufen hat, geht es über die ganz normale CREATE DATABASE Anweisung:
http://dev.mysql.com/doc/refman/5.6/en/create-database.htmlUnter der Voraussetzung, dass man die Rechte dazu hat.
-
Noch ne Frage zu meinem Befehl da oben /clearchat, ich habe jetzt im Script ganz oft SendClientMessageToAll verwendet bis man den Chat nicht mehr lesen kann, das sind aber viele Zeilen im Script, kann man das nicht irgendwie verkürzen?
Für sich immer wiederholende Anweisungen kann man Schleifen verwenden:
for(new i=0; i<100; i++)
{
SendClientMessageToAll(-1,"");
}Das würde dir jetzt 100x eine Nachricht ausgeben, ohne Inhalt.
Hier noch ein Tutorial: http://forum.sa-mp.com/showthread.php?t=305770
-
Gibt es irgende bestimmten Menge an Datensätzen, bei der sich die Verwendung von MySQL lohnt?
Bei kleineren Datensätzen ist ja eigentlich SQL-Lite besser, oder?
Das kommt auch auf die Operationen an. Generell ist aber SQLite (meistens) schneller: https://www.sqlite.org/speed.html
Kannst es ja selbst mal testen, aber ich schätze mal selbst bei 1 Million Datensätzen ist SQLite schneller. Und das wirst du nicht erreichen.Siehe auch: http://www.sqlite.org/whentouse.html
EDIT: @Raven^: Die Zeit-Tests sind zwar veraltet (steht ja ganz groß oben dran, hab ich erst mal knall hart überlesen), aber trotzdem dürften kleinere Datenbanken mit SQLite schneller sein, vor allem weil du nicht erst mit einem MySQL Server kommunizieren musst.
Hier nochmal ein Vergleich:
https://www.digitalocean.com/c…tabase-management-systems -
Ja, das Beispiel im Wiki ist einfach schlecht.
Die 10 sagt aus, dass nur die ersten 10 Buchstaben überprüft werden.Also:
/clearchatdhafgjdgshdgsdgsjdhasjkd
würde erkannt werden als:
/clearchatZufällig sind es eben genau 10 Buchstaben.
Wäre der Befehl aber:
/cc
und du gibst
/ccjhdkasdhashdashd
ein, dann würde es nicht erkannt werden. Das ist nicht wirklich toll, da die Spieler es dann nicht mehr blicken.Das macht nur dann Sinn, wenn du es wirklich so haben willst.
10 = Es wird nur bis zum 10. Buchstabe auf Gleichheit geprüft.
-
Hast du den Code genau so wie ich ihn dir gegeben habe? Bei der Berechnung von "mini" habe ich ja auch etwas geändert, da es ja auch 0 Minuten geben kann, fällt das +1 weg.
Zwecks deinem anderen Problem:
Den Aduty Code und den Masken Code. Dann erkläre bitte, welchen Teil du sehen willst.EDIT: @toniyo:
Code wurde in PN gesendet.Zum /aduty Befehl das hinzufügen:
for(new i = 0; i < MAX_PLAYERS; i++) if(Maske[i] == 1) ShowPlayerNameTagForPlayer(playerid, i, 1); -
if(strcmp("/clearchat",cmdtext,true,10 == 0)
zu:
if(strcmp("/clearchat",cmdtext,true)== 0) -
Also am Code liegt es nicht, bei mir zeigt es die Objekte ohne Probleme an:
Möglicherweise hast du das Limit an Objekten erreicht. Wenn mehr als 1000 Objekte sichtbar sind kann auch der Streamer nichts mehr machen.
Du hast ja hier schonmal eine ganze Menge Objekte auf einem Haufen.Klammere mal alle deine anderen Objekte aus und lasse nur die zwei Interiors stehen, werden sie dann angezeigt?
-
Öffne mal deine "a_samp.inc" und suche darin "TextDrawSetSelectable". Findest du es? Wenn ja, poste die Zeile.
Wenn nein, gehe in die zip Datei die ich dir gegeben habe und kopiere die a_samp.inc aus der zip Datei in deinen Server-Ordner, also die alte überschreiben. -
new mini = (PlayerInfo[playerid][pFriedhofTime]-gettime())/60;
new secs = PlayerInfo[playerid][pFriedhofTime]-gettime() - (mini*60);
format(chat, sizeof(chat), "Du bist noch für ca %d Minuten und %d Sekunden auf dem Friedhof",mini,secs); -
SetPVarInt(playerid,"b_zig", -1);
b_zig = -1SetPVarInt(playerid,"b_zig", 5);
b_zig = 5SetPVarInt(playerid,"b_zig", GetPVarInt(playerid,"b_zig")+5);
b_zig = b_zig + 5 = 10 (es war oben ja 5).SetPVarInt(playerid,"b_zig", GetPVarInt(playerid,"b_zig")-1);
b_zig = b_zig - 1 = 9Einen Ausdruck
SetPVarInt(playerid,"b_zig", +5);
gibt es nicht, da das "+5" einer "5" entspricht und das Plus nicht benötigt wird. Eine Warnung wäre auch in Ordnung gewesen, aber da der Compiler diese Konstellation nicht kennt, gibt er einen Error (oder eben gleich mehrere) aus. -
Wie öffnest du deinen Code?
Doppelklick auf den Code, oder über die pawno.exe? Wenn ersteres, starte die pawno.exe und öffne damit den Code. -
Willst du es erhöhen oder setzen?
+5 ist kein gültiger Ausdruck.Entweder:
SetPVarInt(playerid,"b_zig", 5);
oder:
SetPVarInt(playerid,"b_zig", GetPVarInt(playerid,"b_zig")+5); -
Dann hast du es nicht richtig gemacht.
Füge die Includes in /pawno/includes ein. Alle.
Dann starte die pawno.exe in /pawno/pawno.exe und öffne deinen Gamemode über das "Öffnen" Symbol. Dann kompiliere den Code. -
Aktualisiere deine Includes.
http://files.sa-mp.com/samp03z_svr_R4_win32.zip -
PlayerInfo[playerid][pFriedhofTime] = 180;
zu:
PlayerInfo[playerid][pFriedhofTime] = gettime() + 180;mini = PlayerInfo[playerid][pFriedhofTime]/60;
zu:
mini = (PlayerInfo[playerid][pFriedhofTime]-gettime())/60 + 1; -
KEVAPL: Hast du auch einen Code dazu? Wäre gut wenn du den dazupostest, damit ich es ausprobieren kann und ggf. beheben kann.
-
@Jeffty: Kann ich das bitte via. PM machen?
Jo. Geht in Ordnung.EDIT:
Problem behoben.Problem war, dass alles so aussah:
Textdraw4 = TextDrawCreate(537.599975, 416.639953, "L");
TextDrawLetterSize(Textdraw0, 0.449999, 1.600000);
Textdraw4 wird erstellt, und Textdraw 0 wird verändert. -
Poste bitte die Textdraws, dann teste ich es kurz bei mir, ob es an den Textdraws liegt, oder an etwas anderem.