Und du verwendest schon die geänderte Variable von OnPlayerDeath, oder?
Welche? Meinst du sInfo[killerid][kills]?
Und du verwendest schon die geänderte Variable von OnPlayerDeath, oder?
Welche? Meinst du sInfo[killerid][kills]?
Beim Speichern überträgst du die Variablen in eine Dini Datei, MySQL Spalte oder wie auch immer du speicherst.
Ich speicher über MySQL in eine Spalte.
Am besten lässt du dir beim Sterben mit der printf-Funktion mal die Variablen beider Spieler in der Konsole anzeigen
Werde ich mal ausprobieren.
Wo zeigst du den Score an?
Also ich lasse das im List Dialog ausgeben.
Alles anzeigenZitat von »K3Ksii«
Ist das denn auch so richtig mit dem Save und so oder wird beiden +1 Kill / Tod gerechnet?
Das ist richtig so, aber ich würde es nicht für nötig sehen, den Spieler nach jedem Tod zu Speichern. Ich würde es eher beim Disconnect machen.
Doch das soll ja auch nach dem Tod schon in den Stats stehen.
EDIT: Es geht aber noch nicht. Wenn ich sterber, dann wird das nicht hochgerechnet.
Ist das denn auch so richtig mit dem Save und so oder wird beiden +1 Kill / Tod gerechnet?
Hey wie kann ich wenn jemand stirbt oder jemand jemanden tötet die Kills und die Tode hochsetzen?
Ich hab das jetzt so aber das geht nicht.
public OnPlayerDeath(playerid, killerid, reason)
{
//Killer +1 Kills
sInfo[killerid][kills] = ++;
savePlayer(killerid);
//Tote +1 Tod
sInfo[playerid][tode] = ++;
savePlayer(playerid);
return 1;
}
Das hatte ich auch nicht vor ich hab dir mal eine Pn geschrieben.
EDIT: Fehler gefunden
hatte bei new grund nicht [128] gingeschrieben da das ja ein String ist.
OK ich versuch das mal und zu den Wanteds das geht nicht, weil ich ein eigenes Wantedsystem geschrieben hab.
EDIT: es geht nicht!
Aber jetzt hab ich die Antwort auf meine Frage noch nicht also es geht immernoch nicht.
Der Server Crasht wenn ich den Command erfolgreich eingebe:
ocmd:akteleeren(playerid,params[])
{
new pID,grund,string[128];
if(!isPlayerInFrakt(playerid,1))return SendClientMessage(playerid,COLOR_DRED,"Du bist kein Polizist!");
if(sscanf(params,"us",pID,grund))return SendClientMessage(playerid,COLOR_GREY,"INFO: {00A5FF}/akteleeren {B3B3B3}[playerID] [Grund]");
if(sInfo[pID][wanteds] == 0)return SendClientMessage(playerid,COLOR_DRED,"Der Verdächtige hat keine Wanteds!");
sInfo[pID][wanteds] = 0;
savePlayer(pID);
format(string,sizeof(string),"Du hast die Akte von %s gereinigt.",SpielerName(pID));
SendClientMessage(playerid,COLOR_YELLOW,string);
SendClientMessage(pID,COLOR_YELLOW,"Ein Polizist hat deine Akte gereinigt.");
return 1;
}
Ich will ja ein eigenes schreiben und es auf meine Wünsche erstellen deswegen frag ich ja.
Wie kann ich Bilder in einem Textdraw anzeigen lassen? Also einen Skin ider ein Auto?
Vorab erstmal, wenn das hier der falsche Bereich ist bitte moven!
Hallo zusammen,
ich bin auf der suche nach einer Person, die mir ein WBB4 Design erstellt.
Das Design ist für einen Reallife Server und sollte im Grau Blauen ton gehalten werden, zudem sollte der Header einmal quer über das Forum gehen und halt GTA enthalten. Der Servername ist "German Sun Reallife". Bei dem Hintergrund könnt ihr euch austoben aber bitte mittel/wenig schnick schnack bis schlicht.
Ich hoffe es wird sich jemand finden der diesen Job erledigen wird.
Hat sich Erledigt ich habe meinen Mann gefunden.
Mit freundlichen Grüßen,
K3Ksii | Sven
Wie kann ich einer MySQL Variable etwas drauf geben?
sInfo[pID][wanteds] = wantedlvl;
Also wantedlvl soll auf sInfo wanteds draufgerechnet werden.
Okay Danke es geht.
Hey ich will wissen wie ich beim Spawnen nach dem Login den SKin der in der MySQL ist dem Spieler zu setzen.
Muss bei SpawnPlayerInfo bei dem Skin sInfo[playerid][skin] eingegeben werden oder wie?
new name[MAX_PLAYER_NAME],query[128],passwort[35];
GetPlayerName(playerid,name,sizeof(name));
if(strlen(inputtext)>0)
{
mysql_escape_string(inputtext,passwort,dbhandle);
format(query,sizeof(query),"SELECT * FROM user WHERE username='%s' AND password='%s'",name,passwort);
mysql_function_query(dbhandle,query,true,"OnPasswordResponse","i",playerid);
SetSpawnInfo(playerid,0,32,399.8955,-1534.8057,32.2734,0,0,0,0,0,0,0);
SpawnPlayer(playerid);
SetPlayerColor(playerid,COLOR_WHITE);
}
oder so
new name[MAX_PLAYER_NAME],query[128],passwort[35];
GetPlayerName(playerid,name,sizeof(name));
if(strlen(inputtext)>0)
{
mysql_escape_string(inputtext,passwort,dbhandle);
format(query,sizeof(query),"SELECT * FROM user WHERE username='%s' AND password='%s'",name,passwort);
mysql_function_query(dbhandle,query,true,"OnPasswordResponse","i",playerid);
SetSpawnInfo(playerid,0,sInfo[playerid][skin],399.8955,-1534.8057,32.2734,0,0,0,0,0,0,0);
SpawnPlayer(playerid);
SetPlayerColor(playerid,COLOR_WHITE);
}
Oder ist beides Falsch?
Jop das wars Danke!
Die Funktion:
//Fraktion system
isPlayerInFrakt(playerid,f_id)
{
if(sInfo[playerid][fraktion]>=f_id)return 1;
return 0;
}
Und es sieht folgend aus: Ich bin Leader von Fraktion 1 und kann den Rang der Member/Leader von Allen Fraks ändern. Bei Fraktion 2 das gleiche nur ab Frak 3 steht dann da das der andere spieler nicht in der Frak ist.
Nein es Funktioniert immernoch nicht es ist so Frak ID 1 & 2 können (wir sind 2 Personen) beide einen Rang geben und ab 3+ kann nur einer einen Rang geben an eine andere Fraktion.
mit ner Variabele prüfen ob der Spieler ein Leader etc. ist
if(sInfo[playerid][pLeader] !=0)
{
//blabla^^
}
Das ist ja schon drin und funktioniert
if(sInfo[playerid][rang] < 10)return SendClientMessage(playerid,COLOR_DRED,"Du bist nicht der Leader der Fraktion!");
Muss eher so:
fID = sInfo[playerid][fraktion];
Da nimmt er doch dann sich selbst oder nicht? Ich versuch das mal.
Ich hab mir den /ranggeben Befehl gemacht aber man kann als Leader jeden den Rang verändern.
ocmd:ranggeben(playerid,params[])
{
new pID,fID,rangzahl,string[128];
fID = sInfo[pID][fraktion];
if(sInfo[playerid][fraktion] == 0)return SendClientMessage(playerid,COLOR_DRED,"Du bist in keiner Fraktion!");
if(sInfo[playerid][rang] < 10)return SendClientMessage(playerid,COLOR_DRED,"Du bist nicht der Leader der Fraktion!");
if(!isPlayerInFrakt(pID,fID))return SendClientMessage(playerid,COLOR_DRED,"Der Spieler ist nicht in deiner Fraktion!");
if(sscanf(params,"ui",pID,rangzahl))return SendClientMessage(playerid,COLOR_GREY,"INFO: {00A5FF}/ranggeben {B3B3B3}[ID] [Rang]");
sInfo[pID][rang] = rangzahl;
savePlayer(pID);
format(string,sizeof(string),"Du hast %s den Rang %i gegeben.",SpielerName(pID),rangzahl);
SendClientMessage(playerid,COLOR_DGREEN,string);
format(string,sizeof(string),"%s hat deinen Rang auf %i gesetzt.",SpielerName(playerid),rangzahl);
SendClientMessage(playerid,COLOR_DGREEN,string);
return 1;
}