Nehme die neuste R39
Beiträge von PermanenT
-
-
@[GSR]Kaito-sensei:
Sowas passiert wenn man Abends noch am PC sitzt -
format(LastKilledPlayer[playerid], sizeof(LastKilledPlayer[playerid]), "%s", kID);
Du kannst hier nicht mit sizeof arbeiten da es ein zweidimensionaler Array ist
Du musst es also so eingeben als Zahl oder wie hier mit "MAX_PLAYER_NAME"
Benutzt einfach das
format(LastKilledPlayer[playerid], MAX_PLAYER_NAME, "%s", kID);
So bist du eh immer auf dem guten Stand -
Hey,
gibt es die Tabelle faction -
Hey,
ich weiß nicht ob das jetzt eine frage ist aber ich beantworte sie dirmit sizeof(..) fragst du nur ab wie viele Zeichen das "Limit" ist
new Test[MAX_PLAYERS][10];
sizeof(Test[playerid]) das wäre dann 10
Sprich du kannst beim Format
format(Test[playerid],sizeof(Test[playerid]),"");
machen oder statt sizeof(...)
einfach 10 schreiben
format(Test[playerid],10,""); -
Wie steht es denn jetzt bei dir?
und rufst du den Stock LoadFactionbyID auch auf? -
sInfo[playerid][karte] += input;
Damit rechnest du auf den bisherigen Kontostand einfach das eingegebene drauf
+= -
format(LastKilledPlayer[playerid],MAX_PLAYER_NAME,"%s",kID);
Bitte
-
du hast das Sscanf2 Plugin nicht drinnen
Dazu kann es doch MySQL R39 etc. sein
Versuch es mal mit dem MySQL R38 Plugin -
Benutz GetPlayerScore(playerid);
dini_IntSet(Playerdatei,"Spielerlevel",GetPlayerScore);
Oder magst du uns dein gesamtes Speichern laden zeigen
Wo du das level setzt?
Damit wir besser schauen können -
Hey,
du musst da wo du den Admin Rang setzt es sofort in der Datenbank speichern
Da du es ja aus der Datenbank rausließt -
Hey,
hast du das Script auch mit den neusten Plugins Compiliert?
Sprich die neusten Includes vom Streamer und MySQL Plugin in den Include Ordner und neu compilieren dann starten
Dazu solltest du MySQL als erstes Laden
Dann den Streamer und dann Sccanf und dann den rest -
Hey,
kannst du uns jeden Balken Code zeigen
Sprich den Public von balken 2-5 oder so
Dazu sieht es mit diesen Textdraw43, Textdraw44, Textdraw45, Textdraw46, Textdraw47
Verdammt unübersichtlich aus
Kannst du mir/uns schnell sagen welcher textdraw was macht?
Textdraw43 = ...
Textdraw44 = ...Danke
-
Hey @[GSR]Kaito-sensei:,
hast du das schon hin bekommen?
Versuch es mal mit der "mysql_function_query" Funktion
stock LoadFactionbyID(fraction_id)
{
printf("LoadFactionbyID(%d)",fraction_id);
new query[50];
format(query, 50, "SELECT * FROM faction WHERE id='%d'", fraction_id);
print(query);
mysql_function_query(Handle,query,true,"OnFactionLoad","i",fraction_id);
return 1;
}forward OnFactionLoad(fraction_id);
public OnFactionLoad(fraction_id)
{
printf("OnFactionLoad(%d)",fraction_id);
new num_fields, num_rows;
cache_get_data(num_rows, num_fields);
if(num_rows == 1)
{
printf("OnFactionLoad(%d) -> 1",fraction_id); -
Hey @TheTutoFreak:,
kannst du uns vielleicht deinen gesamten OnGameModeInt schicken/posten?
oder mir Privat per PN schicken?
da ich glaube das du es irgendwo abbrichst
Hast du irgendwo ein return außer am ende? -
Hey @Dean Hunter:
Du brauchst das Streamer Plugin einfach das neuste von ingno oder wie er heißt
Desweiteren brauchst du noch das MySQL R5 Plugin von G-Star. -
Kannst du das vielleicht einrücken
Oben auf Quellcode klicken und neu einfügen
Quellcode -> pwn -> Code einfügen -> Absenden//EDIT: Dazu verstehe ich nicht was nich klappt.
Die textdraw's solltest du besser benennen
Kannst du uns Bilder zeigen? -
Guten Tag,
zeig uns diesen Public mal "EroberungBalken1" -
ERST AUF NULL SETZTEN:
Spoiler anzeigen ocmd:makeleader(playerid,params[])
{
new pID,Fraktion;
if(PlayerInfo[playerid][pEingeloggt] < 1 ) return SendClientMessage(playerid,Rot,"Du kannst diesen Befehl nicht nutzen, weil du nicht eingeloggt bist.");
if(PlayerInfo[playerid][pAdminlevel] <= 1337)return SendClientMessage(playerid,Grau,"Du bist nicht befugt, diesen Befehl zu nutzen!");
if(sscanf(params,"ui",pID,Fraktion))
{
SendClientMessage(playerid,Gelb,"Benutze: /makeleader [playerid/PartOfName] [Fraktion]");
SendClientMessage(playerid,Gelb,"1 = LSPD, 2 = FBI, 3 = Army, 4 = Medic, 5 = News, 6 = T-GmbH,");
SendClientMessage(playerid,Gelb,"7 = Abfallwirtschaft, 8 = Hitman, 9 = Grove Street, 10 = Al-Qaida,");
SendClientMessage(playerid,Gelb,"11 = Ballas, 12 = Fahrschule, 13 = La Cosa Nostra, 14 = Taxi,");
SendClientMessage(playerid,Gelb,"15 = Yakuza, 16 = Staatsverwaltung, 17 = SAPD, 18 = Aztecas,");
SendClientMessage(playerid,Gelb,"19 = Rifas, 20 = RS, 21 = Cripz, 22 = Russische Mafia, 23 = SFBC,");
SendClientMessage(playerid,Gelb,"24 = Vagos, 25 = Wheelmen");
return 1;
}
if(!IsPlayerConnected(pID))return SendClientMessage(playerid,Grau,"Der angegebene Spieler ist nicht Online!");
if(PlayerInfo[pID][pLeader] != 0)return SendClientMessage(playerid,GRAU,"Der angebene Spieler ist bereit in einer Fraktion Leader!");
if(Fraktion < 0 || Fraktion > 25)return SendClientMessage(playerid,Grau,"Bitte nimm eine Fraktion zwischen 0 und 25!");
if(frakGeschlossen[Fraktion] == true) return SendClientMessage(playerid,Grau,"Die Fraktion ist geschlossen!");
if(Fraktion == 0)
{
new Fraktionsdatei[64];
format(Fraktionsdatei,sizeof(Fraktionsdatei),"/Fraktionen/%s.txt",FraktionsNamen(PlayerInfo[pID][pFraktion]));
dini_Set(Fraktionsdatei, "LeaderName", "Niemand");
}
else
{
new Fraktionsdatei[64];
format(Fraktionsdatei,sizeof(Fraktionsdatei),"/Fraktionen/%s.txt",FraktionsNamen(Fraktion));
dini_Set(Fraktionsdatei, "LeaderName", SpielerName(pID));
}
PlayerInfo[pID][pLeader] = Fraktion;
PlayerInfo[pID][pFraktion] = Fraktion;
PlayerInfo[pID][pMember] = Fraktion;
PlayerInfo[pID][pRank] = 7;
SpawnPlayer(pID);
if(Fraktion == 0)
{
Leaders--;
}
else if(Fraktion >= 1)
{
Leaders++;
}
new string[128],name[MAX_PLAYER_NAME];
GetPlayerName(pID,name,sizeof(name));
GetPlayerName(playerid,name,sizeof(name));
format(string,sizeof(string),"Du hast %s Leader der Fraktion %s gemacht.",name,LeaderRank(pID));
SendClientMessage(playerid,Blau,string);
format(string,sizeof(string),"%s hat dich Leader der Fraktion %s gemacht.",name,LeaderRank(pID));
SendClientMessage(pID,Blau,string);
return 1;
}So, jetzt musst du den Spieler erst aus der aktuellen Fraktion wo er Leader ist ausladen und neu einladen
Oder möchtest du das es sich automatisch ändert so das du nicht erst 0 und dann die FraktionsID eingeben musst?AUTOMATISCH AUS DER INI ENTFERNEN ALS LEADER:
Spoiler anzeigen ocmd:makeleader(playerid,params[])
{
new pID,Fraktion;
if(PlayerInfo[playerid][pEingeloggt] < 1 ) return SendClientMessage(playerid,Rot,"Du kannst diesen Befehl nicht nutzen, weil du nicht eingeloggt bist.");
if(PlayerInfo[playerid][pAdminlevel] <= 1337)return SendClientMessage(playerid,Grau,"Du bist nicht befugt, diesen Befehl zu nutzen!");
if(sscanf(params,"ui",pID,Fraktion))
{
SendClientMessage(playerid,Gelb,"Benutze: /makeleader [playerid/PartOfName] [Fraktion]");
SendClientMessage(playerid,Gelb,"1 = LSPD, 2 = FBI, 3 = Army, 4 = Medic, 5 = News, 6 = T-GmbH,");
SendClientMessage(playerid,Gelb,"7 = Abfallwirtschaft, 8 = Hitman, 9 = Grove Street, 10 = Al-Qaida,");
SendClientMessage(playerid,Gelb,"11 = Ballas, 12 = Fahrschule, 13 = La Cosa Nostra, 14 = Taxi,");
SendClientMessage(playerid,Gelb,"15 = Yakuza, 16 = Staatsverwaltung, 17 = SAPD, 18 = Aztecas,");
SendClientMessage(playerid,Gelb,"19 = Rifas, 20 = RS, 21 = Cripz, 22 = Russische Mafia, 23 = SFBC,");
SendClientMessage(playerid,Gelb,"24 = Vagos, 25 = Wheelmen");
return 1;
}
if(!IsPlayerConnected(pID))return SendClientMessage(playerid,Grau,"Der angegebene Spieler ist nicht Online!");
if(Fraktion < 0 || Fraktion > 25)return SendClientMessage(playerid,Grau,"Bitte nimm eine Fraktion zwischen 0 und 25!");
if(frakGeschlossen[Fraktion] == true) return SendClientMessage(playerid,Grau,"Die Fraktion ist geschlossen!");
if(Fraktion == 0)
{
new Fraktionsdatei[64];
format(Fraktionsdatei,sizeof(Fraktionsdatei),"/Fraktionen/%s.txt",FraktionsNamen(PlayerInfo[pID][pFraktion]));
dini_Set(Fraktionsdatei, "LeaderName", "Niemand");
}
else
{
//Du fragst ab ob er bereits Leader ist
if(PlayerInfo[pID][pLeader] != 0)
{
//Du löscht seinen Namen als Leader und setzt "Niemand" dafür ein
new Fraktionsdatei[64];
format(Fraktionsdatei,sizeof(Fraktionsdatei),"/Fraktionen/%s.txt",FraktionsNamen(PlayerInfo[pID][pFraktion]));
dini_Set(Fraktionsdatei, "LeaderName", "Niemand");
//Du speicherst ihn in die neue Fraktion als Leader ein
format(Fraktionsdatei,sizeof(Fraktionsdatei),"/Fraktionen/%s.txt",FraktionsNamen(Fraktion));
dini_Set(Fraktionsdatei, "LeaderName", SpielerName(pID));
//Jetzt bist du immer nur in einer ini Leader
}
else
{
new Fraktionsdatei[64];
format(Fraktionsdatei,sizeof(Fraktionsdatei),"/Fraktionen/%s.txt",FraktionsNamen(Fraktion));
dini_Set(Fraktionsdatei, "LeaderName", SpielerName(pID));
}
}
PlayerInfo[pID][pLeader] = Fraktion;
PlayerInfo[pID][pFraktion] = Fraktion;
PlayerInfo[pID][pMember] = Fraktion;
PlayerInfo[pID][pRank] = 7;
SpawnPlayer(pID);
if(Fraktion == 0)
{
Leaders--;
}
else if(Fraktion >= 1)
{
Leaders++;
}
new string[128],name[MAX_PLAYER_NAME];
GetPlayerName(pID,name,sizeof(name));
GetPlayerName(playerid,name,sizeof(name));
format(string,sizeof(string),"Du hast %s Leader der Fraktion %s gemacht.",name,LeaderRank(pID));
SendClientMessage(playerid,Blau,string);
format(string,sizeof(string),"%s hat dich Leader der Fraktion %s gemacht.",name,LeaderRank(pID));
SendClientMessage(pID,Blau,string);
return 1;
}//EDIT: Automatische Änderung in der Ini hinzugefügt.
//EDIT: Code in Spoiler gepackt. -
Hey,
Benutzt format(Text[1],10,"..");