[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 meine aber halt nicht wenn der Spieler online ist. Sondern auch wenn der Offline ist.. (Wegen Ban command)
-
Als Beispiel, ein Code von meinem alten Script.
Zeile 16 sollte deine Frage klären.Code
Alles anzeigenocmd:banoff(playerid, params[]) { new playerName[MAX_PLAYER_NAME], query[128]; if(PlayerInfo[playerid][pAdminRang] < 3)return ERROR_ADMIN; if(sscanf(params, "s[24]", playerName))return SendClientMessage(playerid, COLOR_SSCANF, "Benutze /banoff [Spieler-Name]"); format(query, sizeof(query), "SELECT * FROM `users` WHERE `name`='%s'", playerName); mysql_function_query(handle, query, true, "BanPlayer", "is", playerid, playerName); return 1; } forward BanPlayer(playerid, playerName[]); public BanPlayer(playerid, playerName[]) { new query[128], rows, fields; cache_get_data(rows, fields); if(!rows)return SendClientMessage(playerid, -1, "Kein Spieler mit diesem Namen wurde in der Datenbank gefunden."); format(query, sizeof(query), "UPDATE `users` SET `banned`='1' WHERE `name`='%s'", playerName); mysql_function_query(handle, query, false, "", ""); format(query, sizeof(query), "* Spieler %s wurde erfolgreich gebannt.", playerName); SendClientMessage(playerid, -1, query); return 1; }
-
-
Dafür kannst du das MapAndreas Plugin nutzen.
http://forum.sa-mp.com/showthread.php?t=275492 -
Sagt mal, gibt es sowas wie nen Farbverlauf im Textdraw ?
-
Sagt mal, gibt es sowas wie nen Farbverlauf im Textdraw ?
Sowas, nur eben als Textdraw? http://www.colorpicker.com/
Nicht dass ich wüsste. -
Ja, dass war eigentlich mein Plan. Wie sieht es aus, Java in PWN einzubinden ? Wäre das darüber möglich ?
-
Das weiß ich nicht, ich schätze nicht, da das ja auch nicht mehr als die vorhandenen Funktionen nutzen kann.
Das einzige was du machen kannst ist, viele Textdraws mit entsprechenden Farben auf 1 Pixel Breite (oder Höhe, je nach dem) hintereinander zu setzen, mit entsprechendem Farbverlauf. Würde halt ne Menge an Textdraws benötigen. -
Ich verzweifel. Kann mir einer nur Ansatzweise sagen, weshalb das Objekt nicht erscheint ?
SetPlayerAttachedObject(playerid, 4, 356, 1, 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0); -
Kurze Frage:
Kann es mir irgendwelche Schwierigkeiten bereiten, wenn ich diese Meldung beim herunterfahren des Servers bekomme?:Code[19:16:59] [debug] Server received interrupt signal [19:16:59] [debug] Native backtrace: [19:16:59] [debug] #0 77778e4c in ?? () from C:\WINDOWS\SYSTEM32\ntdll.dll [19:16:59] [debug] #1 74b714bf in ?? () from C:\WINDOWS\SYSTEM32\KERNELBASE.dll [19:16:59] [debug] #2 0048d53c in ?? () from samp-server.exe [19:16:59] [debug] #3 0049b4a1 in ?? () from samp-server.exe [19:16:59] [debug] #4 0049b4b1 in ?? () from samp-server.exe
Server wird in der Konsole per STRG+C heruntergefahren.
Server hatte sich beim herunterfahren schon ab und zu mal aufgehangen. -
-
Das sind etwas höhere Ladezeiten, möglicherweise abhängig von der Performance des Codes. Wenn du es auf 6000 setzt sollte die Meldung nicht mehr kommen, ist ja nur 29 drüber.
-
Ich schau mal ob's mit 6000 klappt, habe befürchtet das es bei mehreren Spielern zu höheren Zahlen kommen kann, aber das wird sich mit der Zeit herausstellen.
Habe noch eine kleine Frage:Habe bisher immer Slice's Timerfix Include benutzt, nur habe ich immer Warnungen in der server_log erhalten. Als ich Slice darauf angesprochen habe, hat er mir gesagt in seinem Thema sind
2 andere, aktuellere Includes verlinkt, welche ich benutzen soll.Ich habe dann auch die Include ersetzt, und erhalte folgende Errors wenn ich mein Server starte.
[hide]
[debug] Run time error 19: "File or function is not found"
[debug] KillPlayerTimers
[debug] Run time error 19: "File or function is not found"
[debug] KillPlayerTimers
Script[gamemodes/main.amx]: Run time error 19: "File or function is not found"
Number of vehicle models: 0
[/hide]Habe diese Include benutzt https://github.com/udan11/samp-plugin-timerfix
-
Wie lese ich einen Text aus der Tabelle aus mit der Version MySQL R39-3?
-
Ich habe dann auch die Include ersetzt, und erhalte folgende Errors wenn ich mein Server starte.
Möglicherweise passt die Include nicht zum Plugin, oder wird das Plugin nicht geladen. Prüfe das mal.
Wie lese ich einen Text aus der Tabelle aus mit der Version MySQL R39-3?
Mit einem SELECT Query, und dann mit:
http://wiki.sa-mp.com/wiki/MySQL/R33#cache_get_field_content -
Gibt es eine Möglich , von einen Spieler die ID rauszubekommen?
-> Also abfragen wenn der Spieler online ist , dass dann mit der angeben ID gekickt wird.
Bsp.
GetID.... -> ID Wurde herausgefunden.
Spieler = ID;
if(IsPlayerConnected(Spieler) == 1) return Kick(Spieler);
-
Das kannst du mit dieser Funktion machen:
stock ReturnPlayerID(l_PlayerName[]) //©Jeffry
{
new l_name[MAX_PLAYER_NAME];
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(GetPlayerName(i, l_name, MAX_PLAYER_NAME))
{
if(!strcmp(l_name,l_PlayerName, true)) return i;
}
}
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(GetPlayerName(i, l_name, MAX_PLAYER_NAME))
{
if(strfind(l_name,l_PlayerName,true)!=-1) return i;
}
}
return INVALID_PLAYER_ID;
} -
Ah perfek, danke dir..
Jetzt nur nächsten Fragen..
Hat jemand eine Idee wie ich anfangen sollte?
-> Ich möchte , nachdem der Spieler gebannt wurde, ein Timer starte der bis 2 Monate zählt.
Wie kann ich das machen, dass er die Timerzeit speichert , wenn der Server offline ist, und dann wenn der Server wieder online ist dass der Timer weiterzählt aber der bestimmten Zeit.//EDIT:
oder halt das der Timer ganzezeit läuft bis 2 Monate um sind.
-
Ah perfek, danke dir..
Jetzt nur nächsten Fragen..
Hat jemand eine Idee wie ich anfangen sollte?
-> Ich möchte , nachdem der Spieler gebannt wurde, ein Timer starte der bis 2 Monate zählt.
Wie kann ich das machen, dass er die Timerzeit speichert , wenn der Server offline ist, und dann wenn der Server wieder online ist dass der Timer weiterzählt aber der bestimmten Zeit.Du kannst ja z.B. einen Timer auf dem Server starten, wenn der Server Online ist.
C
Alles anzeigennew upTime=0; public OnGameModeInit(){ [...] OnlineTimer(); [...] } forward OnlineTimer(); public OnlineTimer(){ mysql_query("UPDATE 'benutzer' SET 'banZeit' = 'banZeit'-1 WHERE permanent=false"); //Hier wird mitgeh upTime++; //Hier rufen wir rekursiv den OnlineTimer wieder auf. //Deshalb ist diese Funktion auch eine Publlic Funktion - Timer können nur Publics aufrufen SetTimer("OnlineTimer",1000,false); }
Dieser rechnet dann bei allen gebannten User durchgängig eine Sekunde ab oder eine Stunde, was auch immer du als Maß nimmst.
Das Maß bestimmst du z.B. durch den Timer selbst (alle 60sek ausführen lassen -> Minuten in der DB abgespeichert, kannst du selbst einstellen)Falls du nicht eine Datenbank verwendest, sondern das auf Dateiebene hast, dann musst du alle Dateien durchgehen und prinzipiel das gleiche tun - Wert erfassen, gewissen Wert abziehen und wieder abspeichern.
-