Was ist daran falsch?
Hey. Ich möchte, das wenn man in der /dm Arena ist, das man nicht sofort zu einer anderen Arena wechseln kann.
Man sollte davor mit /exit die Arena verlassen. Hab das auch gemacht, klappt aber nicht.
Beispiel mit /dm
if(strcmp("/dm",cmdtext,true,10)==0)
{
if(IstInArena[playerid] == 0)
{
if(IstInDM[playerid] == 0)
{
new name[MAX_PLAYER_NAME];
new string[128];
GetPlayerName(playerid,name,sizeof(name));
format(string,sizeof(string),"[ARENA] Der Spieler {FFFFFF}%s {8200FF}ist der DM-Arena {FFFFFF}[/DM] {8200FF}beigetreten.",SpielerName(playerid));
SendClientMessageToAll(LILA,string);
SetPlayerInterior(playerid,10);
SetPlayerVirtualWorld(playerid,10);
new rand=random(sizeof(DMSpawn));
SetPlayerPos(playerid,DMSpawn[rand][0],DMSpawn[rand][1],DMSpawn[rand][2]);
SetPlayerFacingAngle(playerid,DMSpawn[rand][3]);
GivePlayerWeapon(playerid,24,2208);
GivePlayerWeapon(playerid,25,2201);
GivePlayerWeapon(playerid,34,2201);
IstInArena[playerid] = 1;
IstInDM[playerid] = 1;
}
}
else if(IstInArena[playerid] == 1)
{
SendClientMessage(playerid,GRAU,"Du bist bereits in einer Arena!");
return 1;
}
}
Der /exit befehl
if(strcmp("/exit",cmdtext,true,10)==0)
{
if(IstInArena[playerid] == 0)
{
SetPlayerInterior(playerid,0);
SetPlayerVirtualWorld(playerid,0);
SetPlayerPos(playerid,-50.1974,-288.3651,5.4297);
ResetPlayerWeapons(playerid);
SendClientMessage(playerid,GRAU,"Du hast die Arena verlassen.");
SetPlayerColor(playerid,WEIß);
IstInArena[playerid] = 1;
}
else if(IstInArena[playerid] == 1)
{
SendClientMessage(playerid,GRAU,"Du bist schon in der /dm Arena!");
return 1;
}
return 1;
}