Beiträge von Kaliber
-
-
-
Ich weiß gar nicht was du von mir verwendest

Aber wenn die Funktion darin vorkommt, musst das Include einfach reinmachen

-
Musst deine samp Include updaten.
Downloade dir mal die neusten
-
Schreib es mal vernünftig:
C
Alles anzeigenocmd:restart(playerid) { if (sSpieler[playerid][Adminlevel] < 4)return SendClientMessage(playerid,rot,"Du darfst diesen Befehl nicht verwenden!"); if (logged[playerid][Eingeloggt] == 0)return SendClientMessage(playerid,rot,"Du bist nicht eingeloggt!"); new restarter[MAX_PLAYER_NAME]; GetPlayerName(playerid,restarter,sizeof(restarter)); printf("%s hat den Server mit dem Befehl /restart neugestartet.",restarter); for(new i=GetPlayerPoolSize(); i!=-1; i--) { if(!IsPlayerConnected(i) || IsPlayerNPC(i)) continue; SpielerSpeichern(i); } SendClientMessageToAll(-1, "{00FF00}Der Server wird neugestartet!{FFFFFF}"); SetTimer("Restart",2000,false); return 1; } forward Restart(); public Restart() { SendRconCommand("GMX"); return 1; }Wenn das nicht geht, lade mal crashdetect und schau, ob was im Server-Log steht

-
Tabelle ist auch richtig. Bitte um Hilfe.
Na, wenns am speichern net liegt, dann liegts am laden

-
Schau dir doch einfach an, wie das DEFAULT Constraint funktioniert und wende es an:
https://www.w3schools.com/sql/sql_default.asp
du musst nur deine .sql Datei bearbeiten, die du hochlädst..und fertig

-
Das hat nix mit php zu tun..sondern einfach mit den Pfaden.
Schau mal, bei dir sieht der Pfad so aus:
C:\xampp2\htdocs\home\sentixgaming\browsergame\main\/language/" . $config['lang'] . "/global.inc.php
Abgesehen davon, dass anscheinend $config['lang'] leer ist...musst du entweder überall backslash oder überall slash nutzen...
-
Du failst mit dem /
Im define nutzt du einen Blackslash, im include selbst nur slashs und in der $config anscheinend am Ende noch einen Slash...wodurch du da 2 hintereinander hast

Musst dich für eine Richtung entscheiden xD
Und 2 hintereinander sind schlecht

Am einfachsten bekommt man sowas raus, indem du einfach den kompletten Pfad mal in eine Variable packst und dir diese Ausgibst, quasi als Debug. Dann kannst du genau sehen, wo der Fehler liegt

-
ich wollte eigentlich dass es runterfällt.
Dann musst du es mit MovePlayerObject bewegen

Das mit dem Anfahren ist nur eine Clientseitige Berechnung, die du nicht steuern kannst.
-
-
Glaub so viel Bots sind nicht möglich oder
Wenn soviele Spieler möglich wären, türlich

Leider liegt das maximum bei 1.000 Spielern bei der 0.3.7 Version

In der Deutschen Szene wäre sowas aber schwer...da ein GF Skript mit 5000 Spielern..ein klein wenig laggen würde

-
würde das so auch erlaubt sein?
Natürlich

-
-
Warum so kompliziert?
Weil diese Funktion das für alle Spieler entfernt und nur unter OnGameModeInit verwendbar ist.
Hier ist es aber so (so wie ich es verstanden habe), dass er einen Hacker Job hat und den Namen nur von einem Spieler entfernen möchte.
Nicht von allen.
-
fügst du "ShowPlayerName(playerid, true)" ein.
Nein unter OnPlayerConnect ist das nicht nötig, da der Name ja so oder so schon angezeigt wird.
Das einfach so einfügen? Oder muss ich noch was extra Einsetzen?
Die Funktion ("den stock") fügst du unten im Skript ein.
Dann verwendest du anstatt dem Create3DTextLabel, ShowPlayerName(playerid, true);.Und bei dem Delete3DTextLabel verwendest du ShowPlayerName(playerid, false);.
Und dann musst du noch den Callback OnPlayerStreamIn verwenden:
-
Der Name des Spielers ist kein normales 3DTextLabel.
C
Alles anzeigenstock ShowPlayerName(playerid,bool:mode) { for(new i = GetPlayerPoolSize(); i != -1; --i) { ShowPlayerNameTagForPlayer(i, playerid, mode); } return 1; } //Anwendung: ShowPlayerName(playerid, false); //Versteckt den Namen des Spielers ShowPlayerName(playerid, true); //Macht den Namen wieder sichtbar//Edit: Das macht das für die Spieler die auf dem Server sind. Wenn jetzt neue connecten, dann würden Sie den Namen sehen. Deshalb das ganze nochmal unter: OnPlayerStreamIn
-
@>Apple: Ganz ruhig, kein Grund ausfallend zu werden. Offensichtlich weiß er noch nicht ganz bescheid, deshalb kann man es ihm ja erklären.
Dass die Minuten hier nicht nochmal extra abgefragt werden müssen sollte relativ klar sein.
Denn hour == 19 && min <= 59
Bedeutet, es wird 1 returnt, bis: 19:59:59 (weil danach ja 20 vorne steht).
Allerdings reicht es, wenn man nur abfragt hour == 19, da das ja auch bis 19:59:59 geht, da bis zu diesem Zeitpunkt eine 19 vorne steht.
-
Ob du machst:
C
Alles anzeigennew x = 5; //1. Möglichkeit if(x == 5) return 1; else return 0; //2. Möglichkeit if(x == 5) return 1; return 0; //3. Möglichkeit return (x == 5); //4. Möglichkeit return (x == 5) ? 1 : 0;
Ist fast Jacke wie Hose..außer, dass Möglichkeit 3 am schnellsten ist, dicht gefolgt von Möglichkeit 4.
Möglichkeit 1 und 2 sind äquivalent.Das bedeutet nichts anderes, als das dir 1 zurück gegeben wird wenn x == 5 ist, also true.
Wenn es nicht 5 ist, wird false zurück gegeben (0).In dem Sinne erübrigt dies deine if-Abfrage.
Aber wenn du es lieber so haben willst, kannst du die if-Abfrage ja wieder einbauen:
-