[SAMMELTHREAD] Kleine Scripting Fragen
- Rafelder
- Unerledigt
-
-
Wie kann ich Pickups ausserhalb der Map setzen? Bei mir verschwindet die bzw. sind unsichtbar o.Ä...
Aber New-Dawn Maps bspw. sind auch ausserhalb der Map und haben Pickups. Weiß einer, wie ich das machen kann? -
Wie kann ich Pickups ausserhalb der Map setzen? Bei mir verschwindet die bzw. sind unsichtbar o.Ä...
Aber New-Dawn Maps bspw. sind auch ausserhalb der Map und haben Pickups. Weiß einer, wie ich das machen kann?New Dawn benutzt keine pickups nur 3dtextlabels und einen timer um die pickups oder eventuell auch erstellte zonen über das streamer plugin um die textlabels
-
-
Nutzt jemand von euch das samphp Plugin? Wollte dafür jetzt kein Thema aufmachen, hätte da aber paar kleinere Fragen zu.
-
Ich hätte da ne kleine Frage zu Threaded Queries.
Gäbe es eine Möglichkeit mehrere Thread über ein Callback laufen zu lassen ?
Ein grobes Beispiel:mysql_tquery(handle, query, "OnCheckTimeban", "i", playerid);
mysql_tquery(handle, query, "OnCheckBan", "i", playerid);So würde ich zwei Callbacks haben, in einem werden die Timebans kontrolliert und im anderen die permanenten Bans. Wie könnte ich nun beide Queries in OnCheckBan prüfen ?
Lg
-
Ganz simple...zb so:
mysql_tquery(handle, query, "OnCheckban", "ii", playerid,1);//Ban 1== ID
mysql_tquery(handle, query, "OnCheckban", "ii", playerid,2);//TBan 2== ID
public OnCheckban(playerid,type)
{
switch(type)
{
case 1://Ban
{
// ban zeugs
}
case 2://Tban
{
// Tban zeugs
}
}
} -
Wie kann ich auslesen von welchen spielern ein User zu letzt getötet wurde und welche User ein Spieler zuletzt getötet hat?
Hat jemand gerade einen Code/FS da hab schon gesucht doch leider nicht gefunden -
Als erstes speicherst du es wie immer in deinem Script zwischen. (Mit pVars oder Arrays)
-> Sprich das erstmal ggf. deklarieren
Jetzt als Beispiel die Array.
new mylastkiller[MAX_PLAYERS];
Unter dem Callback
public OnPlayerDeath(playerid, killerid, reason)setzt du
mylastkiller[playerid] = killerid;Die Array 'mylastkiller' enthällt nun die playerid des letzten killers.
Der Name kann mit GetPlayerName herausgefunden werden.
Aber vorsicht: Wenn sich der Spieler ausloggt ist die ID nicht mehr aktuell. -> Also Namen unbedingt auslesen.L.g.
-
Wie kann ich auslesen von welchen spielern ein User zu letzt getötet wurde und welche User ein Spieler zuletzt getötet hat?
Hat jemand gerade einen Code/FS da hab schon gesucht doch leider nicht gefunden
Nun, das kannst du über eine globale Variable einfach lösen://Oben in dein Script
#define MAX_KILL_STATS 5
#define getKillID(%0) d_idx{%0}static DeathInfo[MAX_KILL_STATS][MAX_PLAYERS] = {{-1,...},{-1,...},{-1,...},{-1,...},{-1,...}},d_idx[MAX_PLAYERS char];
//Unter dem Callback
public OnPlayerDeath(playerid, killerid, reason)
{
if(killerid != INVALID_PLAYER_ID) {
DeathInfo[getKillID(playerid)][playerid] = killerid;
d_idx{playerid}++;
if(getKillID(playerid) == MAX_KILL_STATS) d_idx{playerid} = 0;
}
return 1;
}stock GetLastKillerName(playerid) //Gibt den Namen von dem Spieler zurück, der ihn zuletzt getötet hat
{
new name[MAX_PLAYER_NAME] = "Nieamnd";
if(DeathInfo[getKillID(playerid)-1][playerid] == -1) return name;
return GetPlayerName(DeathInfo[getKillID(playerid)-1][playerid],name,MAX_PLAYER_NAME),name;
}stock ListLastKills(playerid) //Listet die Usernamen, von den Spielern die er zuletzt getötet hat (wenn sie noch on sind)
{
new name[MAX_PLAYER_NAME],string[25 + MAX_PLAYER_NAME];
for(new i; i<MAX_PLAYERS; i++) {
if(!IsPlayerConnected(i)) continue;
for(new x; x<MAX_KILL_STATS; x++) {
if(DeathInfo[x][i] == playerid) {
GetPlayerName(i,name,MAX_PLAYER_NAME);
format(string,sizeof string,"Du hast %s getötet gehabt!",name);
SendClientMessage(playerid,-1,string);
}
}
}
return 1;
}Ist aus dem Kopf geschrieben..weiß nicht ob es funktioniert, kannst es ja mal probieren
mfg.
-
-
mal ne kleine Frage
Bei der Zeile hier
format(string, 256, "INSERT IGNORE INTO `player` (`username`,`passwort`,`skin`,`geld`,`register`) VALUES ('%s',%s'%s'%s,'181','0','%d');", Name, ((!PassKey)?(""):((PassKey==1)?("md5("):("sha1("))), inputtext, ((!PassKey)?(""):(")")), gettime());
bekomme ich die Fehler:
C:\Users\Beavis\Desktop\Neuer Ordner (3)\gamemodes\bRP.pwn(1529) : warning 205: redundant code: constant expression is zero
C:\Users\Beavis\Desktop\Neuer Ordner (3)\gamemodes\bRP.pwn(1529) : warning 206: redundant test: constant expression is non-zero
C:\Users\Beavis\Desktop\Neuer Ordner (3)\gamemodes\bRP.pwn(1529) : warning 205: redundant code: constant expression is zero
Seit ich das mit den ()?... eingefügt habe und der PassKey ist so aufgebaut:
#define PassKey 1 //0 = kein Hash 1 = MD5 Hash 2 = SHA1 Hash -
Das liegt daran, dass der Compiler schon weiß was bei der Abfrage raus kommt, da es eine Konstante ist die du da abfragst und keine Variable. Somit steht da für den Compiler:
if(!0) ... => if(1)
Da diese Abfrage immer wahr, bzw andersrum immer unwahr ist, denkt der Compiler, dass die Abfrage keinen Sinn hat.Nimm eine Variable und es tut:
new PassKey = 1; -
Kennt jemand die Animation vom Grafitti Sprühen?
-
Kennt jemand die Animation vom Grafitti Sprühen?
http://wiki.sa-mp.com/wiki/Animations
STRG+F => GRAFFITI -
Woran kann das liegen?
[06:07:55] [ERROR] CMySQLQuery::Execute[()] - (error #1054) Unknown column '2014/5/24' in 'field list'
Der Letzte Login wird mir nicht in die Tabelle geschrieben, wenn ich aber denn Typen vom Letzten Login in der Datenbank auf UTC_DATE stelle,
wird mir das Datum angezeigt. Dies aber ohne / . -
Wir brauchen den Code zu dem query. Da wird wohl irgendwas falsch sein, bezüglich der Spaltenangabe.
-
Wir brauchen den Code zu dem query. Da wird wohl irgendwas falsch sein, bezüglich der Spaltenangabe.
Habe dir mal das Script auf Pastebin gepackt. Ich hoffe du kannst mir Helfen... bin gerade erst dabei Pawn zu lernen.
Kann ich auch irgendwie die genaue Uhrzeit in der selben Tabelle/Spalte Speichern? Also so2014-05-24 07:56:33
Pastebin:http://pastebin.com/7LkRJLBh
-
Habe dir mal das Script auf Pastebin gepackt. Ich hoffe du kannst mir Helfen... bin gerade erst dabei Pawn zu lernen.
Kann ich auch irgendwie die genaue Uhrzeit in der selben Tabelle/Spalte Speichern? Also soJa das ist Möglich du musst jedoch den Datentyp auf date oder timestamp stellen und zusätzlich ein Format angeben in welchem du es haben möchtest, das Format ist jedoch in MySQL festgelegt.
Ein Beispiel:Um die Zeit einzutragen gibt es die Funktion
um das Datum in einem anderen Format auszulesen kannst du DATE_FORMAT nutzen
Beispiel: -
IPrototypeI: Erstmal Danke, werde ich versuchen, aber mein Problem mit dem Error ist noch nicht behoben
-
IPrototypeI: Erstmal Danke, werde ich versuchen, aber mein Problem mit dem Error ist noch nicht behoben
Kannst du kurz deinen MySQL Befehl posten den du ausführst, da der pastebin removed wurde.
-