Du musst auch erstmal die Tage bzw. Stunden von der verbleibenden Zeit abziehen um die z.B. Minuten zu bekommen.
[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
-
-
Ja habs schon danke @LeonMrBonnie
-
So müsste es gehen:
Cnew string[128], x = Spieler[playerid][pFlyLicenseSperre]-gettime(); format(string, sizeof(string), "Flugschein Sperre: {33AA33}Vorhanden (%d Tage, %d Stunden, %d Minuten und %d Sekunden verbleibend)", x/86400, (x % 86400) / 3600, (x%3600) / 60, x%60); SendClientMessage(playerid, COLOR_WHITE, string);
-
Hallo!
Ich habe ein kleines Problem mit meinem /stats Befehl...
Undzwar habe ich nun Jobs ins Script eingebaut, möchte den Jobnamen bei der Ausführung von /stats auslesen lassen, jedoch wird dieser nicht ausgelesen.der /stats Befehl:
ocmd:stats(playerid,params[])
{
new pID, string[1024],pStats[128];
new fID = sInfo[playerid][fraktion];
new jID = sInfo[playerid][job];
new Float:ratio=floatdiv(sInfo[playerid][kills], sInfo[playerid][tode]);
if(sInfo[playerid][eingeloggt]==0) return SendClientMessage(playerid,Kaminrot,"ERROR: Du bist nicht eingeloggt.");
if(sscanf(params,"u",pID)) return SendClientMessage(playerid,Orange,"INFO: /stats [id/name]"),
format(pStats,sizeof(pStats),"Statistiken von %s",getPlayerName(playerid)),
format(string,sizeof(string),"Name:[%s], ID:[%i], Level:[%i], XP:[%i/%i]\nSpielstunden:[], Payday:[%i/30], Account:[], Adminlevel:[%i]\nVerwarnungen:[], Geld ges.:[%i], Bargeld:[%i], Bank:[%i]\nFraktion:[%s], Rang:[%i], Drogen:[%i]\nKills:[%i], Tode:[%i], K/D Rate:[%.2f], Wanteds:[%i], Job:[%s]",
getPlayerName(playerid),playerid,GetPlayerScore(playerid),sInfo[playerid][xpres],sInfo[playerid][xpmax],sInfo[playerid][payday],sInfo[playerid][alevel],GetPlayerMoney(playerid)+sInfo[playerid][bank],GetPlayerMoney(playerid),sInfo[playerid][bank],fInfo[fID][f_name],
sInfo[playerid][rang],sInfo[playerid][drogen],sInfo[playerid][kills],sInfo[playerid][tode],ratio,GetPlayerWantedLevel(playerid)),jInfo[jID][j_name],
ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX,pStats,string,"Okay","");
return 1;
}Ich habe dann testweise einen Befehl programmiert, der grundsätzlich auch auslesen soll:
ocmd:wieistmeinjobundfraktion(playerid,params[])
{
new string[128],fID,jID;
fID=sInfo[playerid][fraktion];
jID=sInfo[playerid][job];
format(string,sizeof(string),"Fraktion: %s || Job: %s ",fInfo[fID][f_name], jInfo[jID][j_name]);
SendClientMessage(playerid,Ak,string);
return 1;
}
Bei der Ausführung dieses Befehls konnte der Jobname ausgelesen werden.. Ich weiß aber nicht, was beim /stats Befehl fehlt, könnte mir bitte jemand weiterhelfen?Grüße
-
Ich weiß aber nicht, was beim /stats Befehl fehlt, könnte mir bitte jemand weiterhelfen?
2 Fehler waren da:
1. Du hast nirgends pID genutzt, das heißt egal welche ID du eingegeben hättest, du hättest immer die stats von dir selbst gesehen.
2. Du setzt zu oft ein , obwohl du ein ; verwenden willst. Dadurch hast du einen ) Fehler gemacht, der zu dem Problem führt.
Schreibe es mal so:
C
Alles anzeigenocmd:stats(playerid,params[]) { if(sInfo[playerid][eingeloggt]==0) return SendClientMessage(playerid,Kaminrot,"ERROR: Du bist nicht eingeloggt."); new pID: if(sscanf(params,"u",pID)) return SendClientMessage(playerid,Orange,"INFO: /stats [id/name]"); new string[1024],pStats[16 + MAX_PLAYER_NAME]; new fID = sInfo[pID][fraktion], jID = sInfo[pID][job]; new Float:ratio=floatdiv(sInfo[pID][kills], sInfo[pID][tode]); format(pStats,sizeof(pStats),"Statistiken von %s",getPlayerName(pID)); format(string,sizeof(string),"Name:[%s], ID:[%i], Level:[%i], XP:[%i/%i]\nSpielstunden:[], Payday:[%i/30], Account:[], Adminlevel:[%i]\nVerwarnungen:[], Geld ges.:[%i], Bargeld:[%i], Bank:[%i]\nFraktion:[%s], Rang:[%i], Drogen:[%i]\nKills:[%i], Tode:[%i], K/D Rate:[%.2f], Wanteds:[%i], Job:[%s]", getPlayerName(pID),pID,GetPlayerScore(pID),sInfo[pID][xpres],sInfo[pID][xpmax],sInfo[pID][payday],sInfo[pID][alevel],GetPlayerMoney(pID)+sInfo[pID][bank],GetPlayerMoney(pID),sInfo[pID][bank],fInfo[fID][f_name], sInfo[pID][rang],sInfo[pID][drogen],sInfo[pID][kills],sInfo[pID][tode],ratio,GetPlayerWantedLevel(pID),jInfo[jID][j_name]); ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX,pStats,string,"Okay",""); return 1; }
-
Hat jemand von euch ein Befehl den er geben kann um ein Cop Outfit anzuziehen? Also Gürtel und kp Waffen/Spray oder so dran?
-
Hat jemand von euch ein Befehl den er geben kann um ein Cop Outfit anzuziehen? Also Gürtel und kp Waffen/Spray oder so dran?
Das was du suchst? https://forum.sa-mp.com/showthread.php?t=220112
Gibt auch einfach n Filterskript, wo du beliebiges einstellen kannst: https://forum.sa-mp.com/showthread.php?t=501924
-
Hat irgendjemand eigentlich mal die C#/C++ SDKs/GDKs ausprobiert f. SAMP? Sieht ja schon ziemlich heftig aus einen Gamemode in C# oder C++ zu schreiben.
Ich versuche mich da mal reinzulesen. -
Hat irgendjemand eigentlich mal die C#/C++ SDKs/GDKs ausprobiert f. SAMP? Sieht ja schon ziemlich heftig aus einen Gamemode in C# oder C++ zu schreiben.
Ich versuche mich da mal reinzulesen.Hat das denn irgendwelche Vorteile?
-
Hat das denn irgendwelche Vorteile?
Viele sagen ja, dass objektorientiertes Programmieren ganz toll sein soll.
Ich habe nur Erfahrung mit C und PAWN, daher kenne ich die Vorteile davon nicht.
Alles was ich bisher in C und PAWN umsetzen wollte habe ich auch in irgendeiner Form geschafft, aber sicherlich gibt es mit diesen Sprachen komfortablere Wege. -
Der einzige Vorteil ist glaube ich, dass Leute die mit C++ oder C# besser vertraut sind, somit keine neue Sprache erlernen müssen.
Viele sagen ja, dass objektorientiertes Programmieren ganz toll sein soll.
Es ist auch, wenn man es richtig anwendet, für dich und auch alle weiteren Leute die deinen Code bearbeiten wollen, viel einfacher den Code zu verstehen und auch einfach strukturierter.
Teilweise kann man sowas ja in PAWN auch umsetzen. -
wie kann ich das machen das wenn zb Spieler B sich einloggt und er Admin ist
das er vor seinen namen was bekommt wie zb [Admin]Peter
OnPlayerSpawn(playerid)
{
if(sinfo[playerid][admin]>=1)
{
SetName(playerid,[Admin]
GetName(playerid... um sein namen davor zu behalten aber weiter weiß ich nicht..
} -
public OnPlayerSpawn(playerid)
{
if(sinfo[playerid][admin]>=1)
{new name[20],newname[24];
GetPlayerName(playerid, name, sizeof(name));
format(newname,sizeof(newname),"[Admin]%s",name);SetPlayerName(playerid,newname);
}
} -
Frage zu CreateDynamicMapIcon : Welche Distanz muss ich beim letzten Parameter eingeben, damit man das Icon auch schon aus weitere Distanz erkennen kann? Also sind da so die üblichen Werte? Klar könnte ich aus selbst ausprobieren, habe jedoch gerade nicht viel Zeit..
MFG
-
Kann jemand vielleicht, wenn irgendwer Zeit hat, ueber mein Script schauen? Will da grobe Fehler vermeiden, bzw. Optimierungen vornehmen wenn jemandem ggf. was auffaellt.
-
üblichen Werte
Der Default Wert beträgt 100.0
Eine normale Stream-Distance, wie z.B. die von Objekten beträgt 300.0
Kann aber auch bis zu 600.0 gehen, das ist dann aber schon sehr weit.
Will da grobe Fehler vermeiden, bzw. Optimierungen vornehmen wenn jemandem ggf. was auffaellt.
Nutze dafür das Profiler Plugin für große Optimierungen.
So im kleinen, schau in den Code Optimierungs Thread
-
Der Default Wert beträgt 100.0
Eine normale Stream-Distance, wie z.B. die von Objekten beträgt 300.0Kann aber auch bis zu 600.0 gehen, das ist dann aber schon sehr weit
Danke! Und wie kann ich diese Map Icons auch auf der großen Karte anzeigen lassen? Auf der Minimap sind sie zusehen, aber auf der Karte nicht (Esc -> MAP).
-
Und wie kann ich diese Map Icons auch auf der großen Karte anzeigen lassen?
Mit dem richtigen style, sollte das automatisch gehen: https://wiki.sa-mp.com/wiki/MapIconStyle
-
Mit dem richtigen style, sollte das automatisch gehen: https://wiki.sa-mp.com/wiki/MapIconStyle
Vielen Dank!
-
Gibt es eigentlich gute Tutorials um den Umgang mit MySQL in SA-MP bzw. PAWN zu erlernen?
Ich finde nur steinalte aus 2009, bei welchen irgendwie nur noch ein Bruchteil der Befehle funktioniert.