Hi Community,
ich bräuchte jemanden, der mir die folgenden Befehle auf ocmd umschreibt..ein paar habe ich selbst geschafft, jedoch habe ich die unten aufgeführten Befehle nicht umschreiben können.
Habe nur jeweils die erste Zeile umgeschrieben
Es ist ein Gangsystem...was auf strcmp geschrieben war.
Befehl /gang:
ocmd:gang(playerid,params[]) {
new gangcmd, Gang;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
ShowPlayerGangInfo2Dialog(playerid);
return 1;
}
giveplayerid = strval(tmp);
if(strcmp(tmp, "erstellen", true)==0)
gangcmd = 1;
else if(strcmp(tmp, "einladen", true)==0)
gangcmd = 2;
else if(strcmp(tmp, "beitreten", true)==0)
gangcmd = 3;
else if(strcmp(tmp, "verlassen", true)==0)
gangcmd = 4;
tmp = strtok(cmdtext, idx);
if(gangcmd < 3 && !strlen(tmp)) {
if(gangcmd==0)
SendClientMessage(playerid, COLOR_GREY, "{FF7700}Tippe /ganghilfe für die Gangbefehle!");
else if(gangcmd==1)
SendClientMessage(playerid, COLOR_GREY, "{FF7700}Tippe: /gang erstellen [Name]");
else if(gangcmd==2)
SendClientMessage(playerid, COLOR_GREY, "{FF7700}Tippe: /gang einladen [PlayerID]");
return 1;
}
if(gangcmd==1) {
if(SpielerGang[playerid]>0) {
SendClientMessage(playerid, TEAM_LIGHTBLUE_COLOR, "{FF7700}Du bist bereits in einer Gang!");
return 1;
}
for(new i = 1; i < MAXIMALE_GANGS; i++) {
if(GangInformationen[i][0]==0) {
format(GangNamen[i], MAXIMALER_GANG_NAME, "%s", tmp);
GangInformationen[i][0]=1;
GangInformationen[i][1]=1;
GangInformationen[i][2]=Farben[playerid];
GangMitglieder[i][0] = playerid;
format(string, sizeof(string),"{FF7700}Du hast die Gang '%s' erfolgreich erstellt! [ID: %d]", GangNamen[i], i);
SendClientMessage(playerid, COLOR_GREY, string);
GivePlayerMoney(playerid,-1000);
GameTextForPlayer(playerid,"-1000 $",5000,2);
SpielerGang[playerid]=i;
return 1;
}
}
return 1;
} else if (gangcmd==3) {
Gang = GangEinladen[playerid];
if(SpielerGang[playerid]>0) {
SendClientMessage(playerid, TEAM_LIGHTBLUE_COLOR, "{FF7700}Du bist schon in einer Gang!");
return 1;
}
if(GangEinladen[playerid]==0) {
SendClientMessage(playerid, TEAM_LIGHTBLUE_COLOR, "{FF7700}Du wurdest zu keiner Gang eingeladen!");
return 1;
}
if(GangInformationen[Gang][0]==0) {
SendClientMessage(playerid, TEAM_AZTECAS_COLOR, "{FF7700}Diese Gang existiert nicht mehr!");
return 1;
}
if(GangInformationen[Gang][1] < MAXIMALE_GANG_MITGLIEDER) {
new i = GangInformationen[Gang][1];
GangEinladen[playerid]=0;
GangMitglieder[Gang][i] = playerid;
GetPlayerName(playerid, sendername, MAX_PLAYER_NAME);
for(new j = 0; j < GangInformationen[Gang][1]; j++) {
format(string, sizeof(string),"%s {FF7700}hat deine Gang berteten!", sendername);
SendClientMessage(GangMitglieder[Gang][j], COLOR_GREY, string);
}
GangInformationen[Gang][1]++;
SpielerGang[playerid] = Gang;
SetPlayerColor(playerid,GangInformationen[Gang][2]);
format(string, sizeof(string),"{FF7700}Du bist der Gang '%s' beigetreten! [ID: %d]", GangNamen[Gang], Gang);
SendClientMessage(playerid, COLOR_GREY, string);
return 1;
}
SendClientMessage(playerid, COLOR_GREY, "{FF7700}Keine Leute wurden gesucht!");
return 1;
} else if (gangcmd==2) {
giveplayerid = strval(tmp);
if(SpielerGang[playerid]==0) {
SendClientMessage(playerid, COLOR_GREY, "{FF7700}Du bist in keiner Gang!");
return 1;
}
if(IsPlayerConnected(giveplayerid)) {
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string),"{FF7700}Du hast %s in deine Gang eingeladen!", giveplayer);
SendClientMessage(playerid, COLOR_GREY, string);
format(string, sizeof(string),"{FF7700}Du bekommst eine Gangeinladung von %s in seine Gang '%s' [ID: %d]", sendername, GangNamen[SpielerGang[playerid]],SpielerGang[playerid]);
SendClientMessage(giveplayerid, COLOR_GREY, string);
GangEinladen[giveplayerid]=SpielerGang[playerid];
} else
SendClientMessage(playerid, COLOR_GREY, "{FF7700}Spieler ist nicht verfügbar!");
} else if (gangcmd==4) {
SpielerGangVerlassen(playerid);
}
return 1;
}
----------------------------------------------------------------------------------------------------------------------------------------
Dieser Befehl ist schon zu 80% umschrieben, nur weiß ich nicht wie ich den Error weg bekomme:
Die Zeile des Errors habe ich im Befehl ausgeklammert und hier nochmal hingeschrieben
-> (( //GetPlayerName(GangMitglieder[Gang][i], Gang, sizeof(Gang)); ))
error 035: argument type mismatch (argument 2)
ocmd:ganginformationen(playerid,params[])
{
new Gang;
if(sscanf(params,"i",Gang))return SendClientMessage(playerid,COLOR_GREY,"{FF7700}Tippe: /Ganginformationen [Gang-ID]");
if(GangInformationen[Gang][0]==0)
{
SendClientMessage(playerid, COLOR_GREY, "{FF7700}Spieler ist nicht verfügbar!");
return 1;
}
new string[3];
format(string, sizeof(string),"'%s' Gang Mitglieder [ID: %d]", GangNamen[Gang], Gang);
SendClientMessage(playerid, COLOR_GREY, string);
for(new i = 0; i < GangInformationen[Gang][1]; i++)
{
//GetPlayerName(GangMitglieder[Gang][i], Gang, sizeof(Gang));
format(string, sizeof(string),"%s (%d)", Gang, GangMitglieder[Gang][i]);
SendClientMessage(playerid, 0x83BFBFFF, string);
}
return 1;
}
MfG