Beiträge von ShiiX
-
-
ocmd:rangaendern(playerid,params[])
{
new pID,F_Rang,gemacht[200],gekriegt[200],rtext[90];
if(sInfo[playerid][Rang]!=6) return SendClientMessage(playerid,COLOR_RED,"Dein Rang ist zu niedrig");
if(sscanf(params,"ui",pID,F_Rang)) return SendClientMessage(playerid,COLOR_RED,"INFO: /rangaendern [PlayerID] [Rang 0-6]");
if(sInfo[playerid][Fraktion]==1)
{
sInfo[playerid][Rang]=F_Rang;
if(sInfo[playerid][Rang] == 1) { rtext = "Auszubildenderr"; }
else if(sInfo[playerid][Rang] == 2) { rtext = "Officer"; }
else if(sInfo[playerid][Rang] == 3) { rtext = "Bike-Officer"; }
else if(sInfo[playerid][Rang] == 4) { rtext = "Kommissar"; }
else if(sInfo[playerid][Rang] == 5) { rtext = "Stellv. Oberkommissar"; }
else if(sInfo[playerid][Rang] == 6) { rtext = "Oberkommissar"; }
}
format(gemacht,sizeof(gemacht),"Dein Leader: %s hat deinen Rang zu %i geändert.",PlayerName(playerid),F_Rang);
SendClientMessage(pID,Blau,gemacht);
format(gekriegt,sizeof(gekriegt),"Du hast %s den Rang zu %i geändert.",PlayerName(pID),F_Rang);
SendClientMessage(playerid,Blau,gekriegt);
savePlayer(pID);
printf("%d",sInfo[playerid][Rang]);
return 1;
}Probiers so.
-
print(f?)(F_Rang);
In den Befehl einbauen.
-
...
new verletzter; //Variable wird erstellt; Hat automatisch den Wert 0.
new preis;
if(PlayerInfo[playerid][pMember]== 4 || PlayerInfo[playerid][pLeader] == 4)
{
if(playerid == verletzter) //HIER überprüfst du, ob playerid == verletzter, also ob playerid 0 ist.
{
if(sscanf(params,"ui",verletzter,preis))return [...] // HIER bekommt "verletzter" seinen eigentlichen Wert zugeteilt, welcher mit playerid verglichen werden muss!...
Also noch mehr helfen, ohne die Lösung direkt zu posten, geht nicht.
Selbst ist der Mann, also ergreife Eigeninitiative und überleg. -
Du willst "playerid" mit "verletzter" vergleichen, obwohl die letztere Variable erst später seinen gedachten Wert zugeteilt bekommt.
Wenn du den Befehl ausführst, wird immer mit 0 verglichen.Sollte als Denkanstoß und Lösung genügen.
-
Dragosta Din Tei?
-
Externer Inhalt www.youtube.comInhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.
-
Versuchs Probeweise mal mit einem Timer.
Zwar nicht die ressourcenfreundlichste Methode, aber vielleicht wird der Scriptteil PutPlayerInVehicle(...) einfach übersprungen. -
= Oder
&& = UndIn deinem Fall muss hin, außer du willst, dass pMember größer als 0 ist, und dass pLeader ebenfalls größer 0 ist.
-
Famarca du hast recht
Aber ich kenn mich überhaupt nicht aus ich weiß wirklich nicht was alles T4ls
Geschrieben hat
Versuch einfach die Scriptteile zu verstehen. Lies dir das ganz genau durch, und versuch zu verstehen, was das Script macht. Dann klappt das. -
Ja, hab ich doch geschrieben? Wo liegt dein Problem?
Bedingung 1, um den Befehl ausführen zu können, ist, dass in der Accountdatei/-datenbank bei Adminrang 2 steht.
Bedingung 2 ist, dass er als RCON-Admin eingeloggt ist.Welche Bedingung er erfüllt, ist mir rille, nur muss er eine dieser beiden erfüllen.
-
Du musst diese Bedingungen erfüllen:
if(PlayerInfo[playerid][pAdmin] == 2 || IsPlayerAdmin(playerid)) -
geht das nicht CreateDynamicObject
CreateDynamicObject erstellt Objekte. Außerdem ist "CreateDynamicObject" teil eines Streamerplugins von Incognito.Du kannst - vorausgesetzt du hast den Incognito Object Streamer - MoveDynamicObject nutzen.
-
Wie währe es mir einem Timer haha
Ist nicht unbedingt nötig.
@TE:
Schau dir mal den Aufbau von MoveObject an:
MoveObject(objectid, Float:X, Float:Y, Float:Z, Float:Speed, Float:RotX = -1000.0, Float:RotY = -1000.0, Float:RotZ = -1000.0)und lies dir diesen Artikel durch:
Klick -
Ich würde auch gerne mitmachen, kann allerdings erst ab ca. 18 Uhr.
-
-
Hast du das Script auch compiliert, ggf. auf den Server hochgeladen und diesen neugestartet?
-
Such dir einen GameMode, öffne Pawno, ruf das Script auf, Lies dich rein. - So hab ich's gelernt.
Kannst dir im Grunde jeden Codeschnipsel nehmen, und versuchen zu verstehen, was er bewirkt (Im Spiel, sowie im Script (bspw. ein Login u. Registersystem)). -
-
Kann das jemand umwandeln?eventuell mit Grund
/checkpoints [PlayerID] [Checkpoints] [Grund]
Kannst du auch mal was selbst machen? Ich hab in dem Thread hier keinen einzigen Willen von dir gesehen, etwas selbst zu erstellen.
Für den Grund machst du ein neues "new":
new pID, str[128], grund[64];Bei der SSCANF-Abfrage fügst du einen neuen String (s) ein, mit dem "Wert" "grund".
Diesen fügst du dann einfach in die Nachricht ein, die gesendet wird, also:
format(string, sizeof string, "Admin ... steckt ... für ... Checkpoints ins Prison. Grund: %s", ..., grund);