Warum gibst du eine Range an чøυиgвυ¢κ
Das ist totaler Schwachsinn, wir reden hier von einer Zone und keiner Range ![]()
Der Code an sich sieht eigentlich richtig aus, wüsste nicht warum das nicht funzt ![]()
mfg. ![]()
Warum gibst du eine Range an чøυиgвυ¢κ
Das ist totaler Schwachsinn, wir reden hier von einer Zone und keiner Range ![]()
Der Code an sich sieht eigentlich richtig aus, wüsste nicht warum das nicht funzt ![]()
mfg. ![]()
DestroyVehicle(eventcar[v]);
mfg. ![]()
Bitte schön ![]()
muss ich vllt Roxx rein hauen?
Was ist Roxx ![]()
Da haste aber viel falsch gemacht ![]()
Hier so muss das aussehen:
//In kein public schreiben ganz oben in dein Script
new Float:Tx, Float:Ty, Float:Tz;
//unter OnPlayerDeath
for(new i = 0;i < MAX_PLAYERS;i++)
{
if(IsPlayerConnected(i))
{
if(GetPVarInt(i,"Fraktion") == 2)
{
GetPlayerPos(playerid, Tx, Ty, Tz);
new string[128];
new user1[20];
GetPlayerName(playerid,user1,sizeof(user1));
format(string,sizeof(string),"[HQ] NOTFALL!!! %s ist gestorben. Rückt aus!",user1);
SendClientMessage(i,ROT,string);
SendClientMessage(i,ROT,"Mit /notan kannst du den Notfall annehmen.");
}
}
}
//Der Befehl
ocmd:notan(playerid,params[])
{
if(GetPVarInt(playerid,"Fraktion") == 2)
{
if(Notruf[playerid] == 1)
{
SetPlayerCheckpoint(playerid,Tx,Ty,Tz,3.0);
SendClientMessage(playerid,GRUEN,"Notfall angenommen. Beeil dich!");
Notruf[playerid] = 0;
}
else if(Notruf[playerid] == 0)
{
SendClientMessage(playerid,GRAU,"Kein Notruf vorhanden!");
}
}
return 1;
}
mfg. ![]()
So ungefähr:
new eventan, eventcar[10];
//Bei dem Befehl der die Eventcars macht
eventcar[0] = CreateVehicle(..);
eventcar[1] = CreateVehicle(..);
//event befehl
eventan = 1;
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate == PLAYER_STATE_DRIVER)
{
new carid = GetPlayerVehicleID(playerid);
for(new v=0; v<10; v++)
{
if(eventcar[v] == carid && eventan == 0) return RemovePlayerFromVehicle(playerid);
}
}
return 1;
}
mfg. ![]()
Schreibe oben in dein Script:
new armytor1[3];
und lösche deine andere Definition ![]()
mfg. ![]()
Müsste so funktionieren, tut mir leid, finde den Fehler nicht ![]()
mfg. ![]()
Gibst du 0 als Adminlevel ein oder was anderes ![]()
mfg. ![]()
Omg, ich sehe den großen Fehler ![]()
Übernehme das mal so, wie ich es jetzt schreibe und lösche deine deklerationen also new armytor < lösche das bei dir !
hier:
new armytors, armytors1, armytors2, armytor[3], armytor3[3];
if(strcmp(cmdtext,"/army1",true)==0)
{
if(IsPlayerInRangeOfPoint(playerid,10.0,283.4176,1821.6686,17.6406))
{
if(armytors2 == 0)
{
armytors2 = 1;
MoveObject(armytor[0],289.60000610352, 1821.0999755859, 10, 2.00);// army Rein OPEN
MoveObject(armytor1[1],284.89999389648, 1819.8000488281, 10, 2.00);// Army1 Rein OPEN
}
else
{
armytors2 = 0;
MoveObject(armytor[0],289.60000610352, 1821.0999755859, 0, 2.00);// Army raus CLOSE
MoveObject(armytor1[1],284.89999389648, 1819.8000488281, 0, 2.00);//army1 raus CLOSE
}
}
return 1;
}
if(strcmp(cmd,"/army2",true) == 0)
{
if(IsACop(playerid))
{
if(armytors1 == 0)
{
MoveObject(armytor2, 96.599998474121, 1921.4000244141, 17.10000038147, 5.0);
SendClientMessage(playerid, COLOR_GREEN, "Tor geöffnet");
PlaySoundForPlayer(playerid,1035);
SetTimerEx("PlaySoundForPlayer",2000,0,"id",playerid,1036);
armytors1 = 1;
}
else
{
MoveObject(armytor2, 96.599998474121, 1921.4000244141, 17.10000038147,5.0);
SendClientMessage(playerid, COLOR_RED, "Tor geschlossen");
PlaySoundForPlayer(playerid,1035);
SetTimerEx("PlaySoundForPlayer",2000,0,"id",playerid,1036);
armytors1 = 0;
}
}
else SendClientMessage(playerid,COLOR_RED," Du bist kein Beamter");
return 1;
}
if(strcmp(cmdtext,"/army3",true)==0)
{
if(IsPlayerInRangeOfPoint(playerid,10.0,134.7282,1938.2645,19.2865))
{
if(armytors == 0)
{
armytors = 1;
MoveObject(armytor3[0],134.39999389648, 1942.5, 10, 2.00);// army3 Rein OPEN
MoveObject(armytor3[1],284.89999389648, 1819.8000488281, 10, 2.00);// Army4 Rein OPEN
}
else
{
armytors = 0;
MoveObject(armytor3[0],289.60000610352, 1821.0999755859, 0, 2.00);// Army3 raus CLOSE
MoveObject(armytor3[1],134.19999694824, 1937.9000244141, 0, 2.00);//army4 raus CLOSE
}
}
return 1;
}
mfg. ![]()
Hatte nicht darauf geachtet, was du zuerst eingibst ![]()
Da:
if(strcmp(cmd, "/makeadmin", true) == 0)
{
if(IsPlayerAnAdmin(playerid,6))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, GRAU, "Benutze /makeadmin [SpielerID] [Level]");
new Spieler = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
new level = strval(tmp);
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
GetPlayerName(Spieler, giveplayer, sizeof(giveplayer));
format(Spielerdatei,sizeof(Spielerdatei),"/Account's/%s.txt",giveplayer);
dini_IntSet(Spielerdatei,"Adminlevel",level);
new string[124];
format(string,sizeof(string),"Du hast %s zu einem Admin des Levels %d befördert.", giveplayer, level);
SendClientMessage(playerid,ROT,string);
new string2[124];
format(string2,sizeof(string2),"Du wurdest von %s zu einem Admin des Levels %d befördert.",name, level);
SendClientMessage(Spieler,ROT,string2);
return 1;
}
else return SendClientMessage(playerid,GRAU,"Diesen Befehl darfst du nicht benutzen!");
}
mfg. ![]()
wie hast du armytor deklariert ?
Hier schonmal die verbesserte Version:
if(strcmp(cmdtext,"/army1",true)==0)
{
if(IsPlayerInRangeOfPoint(playerid,10.0,283.4176,1821.6686,17.6406))
{
if(armytor == 0)
{
armytor = 1;
MoveObject(armytor[0],289.60000610352, 1821.0999755859, 10, 2.00);// army Rein OPEN
MoveObject(armytor1[1],284.89999389648, 1819.8000488281, 10, 2.00);// Army1 Rein OPEN
}
else
{
armytor = 0;
MoveObject(armytor[0],289.60000610352, 1821.0999755859, 0, 2.00);// Army raus CLOSE
MoveObject(armytor1[1],284.89999389648, 1819.8000488281, 0, 2.00);//army1 raus CLOSE
}
}
return 1;
}
if(strcmp(cmd,"/army2",true) == 0)
{
if(IsACop(playerid))
{
if(armytor2 == 0)
{
MoveObject(armytor2, 96.599998474121, 1921.4000244141, 17.10000038147, 5.0);
SendClientMessage(playerid, COLOR_GREEN, "Tor geöffnet");
PlaySoundForPlayer(playerid,1035);
SetTimerEx("PlaySoundForPlayer",2000,0,"id",playerid,1036);
armytor2 = 1;
}
else
{
MoveObject(armytor2, 96.599998474121, 1921.4000244141, 17.10000038147,5.0);
SendClientMessage(playerid, COLOR_RED, "Tor geschlossen");
PlaySoundForPlayer(playerid,1035);
SetTimerEx("PlaySoundForPlayer",2000,0,"id",playerid,1036);
armytor2 = 0;
}
}
else SendClientMessage(playerid,COLOR_RED," Du bist kein Beamter");
return 1;
}
if(strcmp(cmdtext,"/army3",true)==0)
{
if(IsPlayerInRangeOfPoint(playerid,10.0,134.7282,1938.2645,19.2865))
{
if(armytor == 0)
{
armytor3 = 1;
MoveObject(armytor3[0],134.39999389648, 1942.5, 10, 2.00);// army3 Rein OPEN
MoveObject(armytor4[1],284.89999389648, 1819.8000488281, 10, 2.00);// Army4 Rein OPEN
}
else
{
armytor3 = 0;
MoveObject(armytor3[0],289.60000610352, 1821.0999755859, 0, 2.00);// Army3 raus CLOSE
MoveObject(armytor4[1],134.19999694824, 1937.9000244141, 0, 2.00);//army4 raus CLOSE
}
}
return 1;
}
mfg. ![]()
Sry das ich dich heute so oft nerve Kaliber.
Kein Problem ![]()
Also hatte nicht darauf geachtet, was du zugeordnet hast hier ist es korrigiert:
if(strcmp(cmd, "/makeadmin", true) == 0)
{
if(IsPlayerAnAdmin(playerid,6))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, GRAU, "Benutze /makeadmin [SpielerID] [Level]");
new level = strval(tmp);
tmp = strtok(cmdtext, idx);
new Spieler = ReturnUser(tmp);
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
GetPlayerName(Spieler, giveplayer, sizeof(giveplayer));
format(Spielerdatei,sizeof(Spielerdatei),"/Account's/%s.txt",giveplayer);
dini_IntSet(Spielerdatei,"Adminlevel",level);
new string[124];
format(string,sizeof(string),"Du hast %s zu einem Admin des Levels %d befördert.", giveplayer, level);
SendClientMessage(playerid,ROT,string);
new string2[124];
format(string2,sizeof(string2),"Du wurdest von %s zu einem Admin des Levels %d befördert.",name, level);
SendClientMessage(Spieler,ROT,string2);
return 1;
}
else return SendClientMessage(playerid,GRAU,"Diesen Befehl darfst du nicht benutzen!");
}
mfg. ![]()
Schreibs mal so:
new cmd[256];
cmd = strtok(cmdtext, idx);
mfg. ![]()
Es heißt so:
if(strcmp(cmdtext, "/army1", true) == 0)
mfg. ![]()
lösche das new idx; das hattest du anscheinend schon deklariert ![]()
mfg. ![]()
So hier der komplette Code:
new idx;
new cmd[256] = strtok(cmdtext, idx);
if(strcmp(cmd, "/makeadmin", true) == 0)
{
if(IsPlayerAnAdmin(playerid,6))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, GRAU, "Benutze /makeadmin [SpielerID] [Level]");
new level = strval(tmp);
tmp = strtok(cmdtext, idx);
new Spieler = ReturnUser(tmp);
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
GetPlayerName(Spieler, giveplayer, sizeof(giveplayer));
format(Spielerdatei,sizeof(Spielerdatei),"/Account's/%s.txt",giveplayer);
dini_IntSet(Spielerdatei,"Adminlevel",level);
new string[124];
format(string,sizeof(string),"Du hast %d zu einem Admin des Levels %s befördert.",giveplayer, level);
SendClientMessage(playerid,ROT,string);
new string2[124];
format(string2,sizeof(string2),"Du wurdest von %d zu einem Admin des Levels %s befördert.",name, level);
SendClientMessage(Spieler,ROT,string2);
return 1;
}
else return SendClientMessage(playerid,GRAU,"Diesen Befehl darfst du nicht benutzen!");
}
mfg. ![]()
Du solltest mit meinem Command nur deinen oberen Teil ersetzen ![]()
mfg. ![]()