Wenn Dus ressourcensparend machen willst, machst du das ned mit ner Funktion,sondern mit hem makro/define. Die Verwendung ist im endeffekt die selbe, nur is eben ein methodebaufruf weniger.
[SAMMELTHREAD] Kleine Scripting Fragen
- Rafelder
- Unerledigt
Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
Ich möchte gerne IsPlayerAnAdmin(playerid,rang) als makro
meins sieht so aus:
#define IsPlayerAnAdmin(%0,%1) if(Spieler[%0][Admin]>=%1)
//so möchte ich es verwenden
if(!IsPlayerAdmin(playerid)|| !IsPlayerAnAdmin(playerid,1))return SCM(playerid,grau,"Nicht befugt!"); -
Ich habe ein GF script es basiert zurzeit auf Dini aber ich will es auf MySQL scripten, muss ich nur bei OnPlayerConnect das was geladen wird & bei OnPlayerDisconnect das was gespeichert wird ändern?

-
Alles anzeigen
Ich möchte gerne IsPlayerAnAdmin(playerid,rang) als makro
meins sieht so aus:
#define IsPlayerAnAdmin(%0,%1) if(Spieler[%0][Admin]>=%1)
//so möchte ich es verwenden
if(!IsPlayerAdmin(playerid)|| !IsPlayerAnAdmin(playerid,1))return SCM(playerid,grau,"Nicht befugt!");
Du musst schon das Adminlevel wiedergeben -
Falscher Thread

-
Hey,
warum kann man bei OnPlayerKeyStateChange nicht Rechts und Links (pfeiltasten) benutzen ?
@BlackAce: Weiß der Scripting-Gott evtl. warum?
Und wie kann ich die benutzen, beispiel wäre nett
-
Und wie kann ich die benutzen, beispiel wäre nett

OnPlayerUpdate und GetPlayerKeys
-
Und wie kann ich die benutzen, beispiel wäre nett

Nun, ganz einfach so:public OnPlayerUpdate(playerid) {
new Keys,ud,lr;
GetPlayerKeys(playerid,Keys,ud,lr);
if(ud == KEY_UP) SendClientMessage(playerid, -1, "UP");
else if(ud == KEY_DOWN) SendClientMessage(playerid, -1, "DOWN");
if(lr == KEY_LEFT) SendClientMessage(playerid, -1, "LEFT");
else if(lr == KEY_RIGHT) SendClientMessage(playerid, -1, "RIGHT");
return 1;
}mfg.

-
Ist das nicht blöd?
Ich mein die Taste soll nur EINMAL wärend des ganzens Spielverlaufes benutzt werden
-
-
-
Nein, ich mein das geht doch an die Ressourcen, die ganze Zeit abzufragen (Callback wird ja aufgerufen, wenn pakete vom client zum server gesendet werden) ?
Wenn dies der Fall wäre, dann würde OnPlayerUpdate bei jeder Sache wie zB beim Connecten ausgeführt (tut es aber nicht).OnPlayerUpdate wird bei jeder Art von Spieler Spezifischen Aktionen ausgeführt (Lite & Full Onfootupdate).
Das heißt wenn er sich bewegt wird das Callback bei Standard Einstellungen im Abstand von 40MS ausgeführt (das gleiche im Fahrzeug).Um es schnell auszudrücken, du solltest einfach keine langwierige Codesequenzen in OnPlayerUpdate ausführen aber diese kleine IF abfrage sollte keinen großen Performance Einbruch bringen (vor allem brauchst du diese jedes mal oder nur in bestimmten Momenten?).
-
NUR in einem bestimmten Moment.
Aber hat sich eh erledigt,
da man keine Taste drücken kann wären man SelectTextDraw(playerid,color);
hat... -
Ich habe ein GF script es basiert zurzeit auf Dini aber ich will es auf MySQL scripten, muss ich nur bei OnPlayerConnect das was geladen wird & bei OnPlayerDisconnect das was gespeichert wird ändern?

-
Ich mlöchte einen tv befehl machen, würde das gehen wenn ich einfach die Camera hintert die pID mache also mit SetCameraBehindPlayer(pID);
-
Probiers aus...?
-
Alles anzeigen
Ich möchte gerne IsPlayerAnAdmin(playerid,rang) als makro
meins sieht so aus:
#define IsPlayerAnAdmin(%0,%1) if(Spieler[%0][Admin]>=%1)
//so möchte ich es verwenden
if(!IsPlayerAdmin(playerid)|| !IsPlayerAnAdmin(playerid,1))return SCM(playerid,grau,"Nicht befugt!");
#define IsPlayerAnAdmin(%0,%1) (Spieler[%0][Admin] >= %1)so geht das ganze

-
Ich habe ein GF script es basiert zurzeit auf Dini aber ich will es auf MySQL scripten, muss ich nur bei OnPlayerConnect das was geladen wird & bei OnPlayerDisconnect das was gespeichert wird ändern?

-
manche machen ja
new const string[128];
meine frage: was ist
'const'
und was bringt es? -
const bringt in verbindung mit new rein gar nichts.
const legt einfach einen Wert fest, der sich nicht ändern lässt.
Es heißt ja schließlich auch "Konstant"
