Da kommt eine Gleitkommazahl (Typ = Float) raus und keine Ganzzahl (Typ = Integer).
Beiträge von Campbell
-
-
2. Wurzel = Basis hoch 1/2.
3. Wurzel = Basis hoch 1/3.
etc. -
Man kann es sich noch denken, da 2^3 = 8 und 4^3 = 64.
-
new bool:DoesAudioStreamPlay[MAX_PLAYERS] = {false, ...};public OnPlayerStateChange(playerid, newstate, oldstate) {
if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER) {
PlayAudioStreamForPlayer(playerid, radioURL);
DoesAudioStreamPlayer[playerid] = true;
} else if((oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER) && DoesAudioStreamPlayer[playerid] == true) {
StopAudioStreamForPlayer(playerid);
SendClientMessage(/*...*/);
}
} -
WTF Leute?!
Das geht gabz einfach.ocmd:befehl(playerid, params)
return ocmd_befehl2(playerid, params);
Das ist genau das selbe, nur dass ich es einfacher mit einem Define versehen habe.ZitatVom Prinzip her klappt es aber ich würd es sicherheitsmäßig so machen:
Was redest du von Sicherheit? Das ist genau das selbe nur nicht mit einem Define mit einem anderen Format versehen. -
Wie sieht's bei dir Design Pattern mäßig aus? MVC etc. - wie gut kannst du damit umgehen, du schreibst ja, dass du dich mit OOP bereits auskennst - dann sollten dir auch solche Design Patterns liegen. Hätte da evt. einen Platz für dich, da ich selbst gerade zu viel um die Ohren habe bzw. Unterstützung benötige.
-
Ich habe das Thread gelesen. Jedoch finde ich persönlich die anderen Methoden zu kompli
Also habe ich nur gesagt was ich machen würde. Aber wenn er die Kompli Methode haben will bitte!
Was ist an einem Define kompli`? -
Deine Fehlerbeschreibung ist suboptimal. Quellcode und klare Fehlerbeschreibung bitte.
-
Ungetestet.
#define ADDCMD:%1->%2; \
ocmd:%1(playerid, params[]) \
return ocmd_%2(playerid, params);ADDCMD:su->wanted;
ocmd:wanted(playerid, params[]) {
// ...
return 1;
} -
Kurz ist nicht gleich ressourcenfreundlich. Wo sollen dort die fetten Ressourcen gespart werden außer nun ein paar Zellen, BlackAce_Jr.?
-
Debugge und Validiere.
-
Eine Validierung der SpielerID wäre auch angebracht.
-
Im auszugebenen Text verwechselst du schonmal playerid mit pID. Ansonsten sollte dort nichts schief laufen, solange du valide playerids angibst.
-
Ungetestet.
new MoveTimerIDs[MAX_PLAYERS] = {0, ...};public OnPlayerDisconnect(playerid) {
KillTimer(MoveTimerIDs[playerid]);
return 1;
}forward MoveTimer(playerid, user);
public MoveTimer(playerid, user) {
new Float:X, Float:Y, Float:Z;
DisablePlayerCheckpoint(playerid);
GetPlayerPos(user, X, Y, Z);
SetPlayerCheckpoint(playerid, X, Y, Z, 6);
return 1;
}if(strcmp(cmd, "/orten", true) == 0) {
tmp = strtok(cmdtext, idx);if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD2, "Benutzung: /orten [Spieler ID]");
if(!IsACop(playerid)) return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Polizist!");new Float:X,
Float:Y,
Float:Z,
user = ReturnUser(tmp);if(!IsPlayerConnected(user)) return SendClientMessage(playerid, COLOR_GREY, "Falsche ID!");
GetPlayerPos(user, X,Y,Z);
SetPlayerCheckpoint(playerid, X,Y, Z, 6);
MoveTimerIDs[user] = SetTimerEx("MoveTimer", 5000, true, "ii", playerid, user);
return 1;
} -
Ich ging davon aus, dass er sich selbst etwas schreiben möchte. Dass so ein API bereits existiert wusste ich garnicht. Aber um das Vorhaben zu erledigen kann man per Sockets das sehr einfach gestalten.
-
Könntest du mir bitte das erklären wie ich sowas einfüge
In dem Link, den ich dir gegeben habe, steht alles nötige zu Plugins. -
Ein plugins-Parameter mit deinen Plugins. http://wiki.sa-mp.com/wiki/Server.cfg
-
Bearbeite die server.cfg.
-
Falls du Plugins verwendest, dann solltest du diese mitladen lassen.
-
Da man nicht so per Console Funktionen in einem Script aufrufen kann müsstest du dir zuerst in deinen Script etwas einbauen, was mit PHP kommuniziert. Sockets und CallLocalFunction() hätte ich gerade im Kopf.