also, ich wolte ein cmd machen, dass wenn man /oocon tippt, dass man nichtmehr /o text machen muss, sondern nur schreiben, jedoch sagt er mir immer wieder wenn ich /oocon mache, das occ schon on ist!
hier der code:
new isocc[MAX_PLAYERS];
//----------------------------------[ooc]-----------------------------------------------
if(strcmp(cmd, "/oocoff", true) == 0 || strcmp(cmd, "/ooff", true) == 0)
{
if(isocc[playerid] = 0)
{
SendClientMessage(playerid, COLOR_GRAD2, "OCC ist schon aus! Benutze /oocoff!");
return 1;
}
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, "Du bist nicht eingeloggt!");
return 1;
}
if ((noooc) && PlayerInfo[playerid][pAdmin] < 1)
{
SendClientMessage(playerid, COLOR_GRAD2, "Der OOC Channel wurde von einem Admin deaktiviert!");
return 1;
}
if(PlayerInfo[playerid][pMuted] == 1)
{
SendClientMessage(playerid, TEAM_CYAN_COLOR, "Du kannst nicht schreiben, weil du stummgeschaltet bist!");
return 1;
}
if(isocc[playerid] = 1)
{
isocc[playerid] = 0;
SendClientMessage(playerid, COLOR_GRAD2, "OCC ist jetzt aus.");
}
}
return 1;
}
//----------------------------------[ooc]-----------------------------------------------
if(strcmp(cmd, "/oocon", true) == 0 || strcmp(cmd, "/oon", true) == 0)
{
if(isocc[playerid] = 1)
{
SendClientMessage(playerid, COLOR_GRAD2, "OCC ist schon an! Benutze /oocoff!");
return 1;
}
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, "Du bist nicht eingeloggt!");
return 1;
}
if ((noooc) && PlayerInfo[playerid][pAdmin] < 1)
{
SendClientMessage(playerid, COLOR_GRAD2, "Der OOC Channel wurde von einem Admin deaktiviert!");
return 1;
}
if(PlayerInfo[playerid][pMuted] == 1)
{
SendClientMessage(playerid, TEAM_CYAN_COLOR, "Du kannst nicht schreiben, weil du stummgeschaltet bist!");
return 1;
}
if(isocc[playerid] = 0)
{
isocc[playerid] = 1;
SendClientMessage(playerid, COLOR_GRAD2, "OCC ist jetzt An. Du kannst nun ohne /o [Text] Schreiben. Zum ausmachen benutze /ooff.");
}
}
return 1;
}
//----------------------------------[ooc]-----------------------------------------------
if(strcmp(cmd, "/ooc", true) == 0 || strcmp(cmd, "/o", true) == 0)
{
if(isocc[playerid] = 1)
{
SendClientMessage(playerid, COLOR_GRAD2, "OCC ist schon an! Benutze /oocoff!");
return 1;
}
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, "Du bist nicht eingeloggt!");
return 1;
}
if ((noooc) && PlayerInfo[playerid][pAdmin] < 1)
{
SendClientMessage(playerid, COLOR_GRAD2, "Der OOC Channel wurde von einem Admin deaktiviert!");
return 1;
}
if(PlayerInfo[playerid][pMuted] == 1)
{
SendClientMessage(playerid, TEAM_CYAN_COLOR, "Du kannst nicht schreiben, weil du stummgeschaltet bist!");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Verwendung: (/o)oc [text]");
return 1;
}
format(string, sizeof(string), "(( %s: %s ))", sendername, result);
OOCOff(COLOR_OOC,string);
printf("%s", string);
}
return 1;
}
bei onplayertext:
if(isocc[playerid] = 1)
{
new idx;
new offset = idx;
new string[256];
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
new result[64];
result[idx - offset] = EOS;
format(string, sizeof(string), "((OCC Chat %s: %s ))", sendername, result);
OOCOff(COLOR_OOC,string);
printf("%s", string);
}
return 1;
}
was is falsch?
mfg multivan