Hallo Brotfische,
Ich habe mal wieder nen Problem: Ich habe ne Fraktion Wheelmen erstellt wegen meinem Freund so und jetzt soll man halt 10 Sekunden warten wenn man an dem Fahrzeug dran fährt, aber ich werde sofort wenn er den checkpoint betritt in sein auto/motorrad gezogen bei ihm bin ich aber immernoch im Auto Ich schicke euch mal alles was dazu gehört:
/wm befehl um ein wheelman zu rufen:
ocmd:wheelman(playerid)
{
new string[128];
if(Wheelmans == 0)return SendClientMessage(playerid,COLOR_GREY," Es ist kein Wheelman Online!");
format(string, sizeof(string), "** %s(Wanteds:%d) braucht einen Wheelman. Tippe '/accept wheelman' um den Auftrag anzunehmen.", PlayerName(playerid),GetPlayerWantedLevel(playerid));
for(new i = 0;i<MAX_PLAYERS;i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pLeader] == 12 || PlayerInfo[i][pMember] == 12)
{
SendClientMessage(i, COLOR_GREEN, string);
}
}
}
SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Du hast nach einem Wheelman gerufen, warte auf eine Antwort.");
WheelmanCall = playerid;
return 1;
}
ocmd:wm(playerid) return ocmd_wheelman(playerid);
Das Public:
public Wheelman(playerid,wheelmanid)
{
new Float:x, Float:y, Float:z,string[128];
if(wcp[wheelmanid] == 0)
{
GetPlayerPos(playerid,x,y,z);
SetPlayerCheckpoint(wheelmanid,x,y,z,10);
SetTimerEx("Wheelman",1000,0,"ii",playerid,wheelmanid);
}
else if(wcp[wheelmanid] == 1)
{
GetPlayerPos(playerid,x,y,z);
SetPlayerCheckpoint(wheelmanid,x,y,z,10);
if(!IsPlayerInRangeOfPoint(wheelmanid,20,x,y,z)){SendClientMessage(playerid,COLOR_GREY," Versuch es nochmal!"); wcp[wheelmanid] = 0; SetTimerEx("Wheelman",1000,0,"ii",playerid,wheelmanid);}
PutPlayerInVehicle(playerid,GetPlayerVehicleID(wheelmanid),1);
DisablePlayerCheckpoint(playerid);
if(Gefesselt[playerid] == 1)
{
GameTextForPlayer(wheelmanid,"~w~Versuche zu befreien. Warte ~g~15 ~w~Sekunden.",3000,1);
SetTimerEx("Wheelman",15000,0,"ii",playerid,wheelmanid);
format(string,sizeof string," Wheelman %s hat dich aus dem Fahrzeug befreit und versucht dich zu entfesseln.",PlayerName(wheelmanid));
SendClientMessage(playerid,COLOR_GREY,string);
wcp[wheelmanid] = 2;
WheelmanCallTime[wheelmanid] = 1;
}
else{ format(string,sizeof string," Wheelman %s hat dich aus dem Fahrzeug befreit und wird verschwinden.",PlayerName(wheelmanid));SendClientMessage(playerid,COLOR_GREY,string);WheelmanCallTime[wheelmanid] = 0; new geld = GetPlayerWantedLevel(playerid)*2000; PlayerInfo[wheelmanid][pGehalt] += geld; }
}
else if(wcp[wheelmanid] == 2)
{
if(GetPlayerVehicleID(wheelmanid) != GetPlayerVehicleID(playerid)){SendClientMessage(playerid,COLOR_GREY," Auftrag Fehlgeschlagen"); WheelmanCallTime[wheelmanid] = 0;}
Gefesselt[playerid] = 0;
UnFreezePlayer(playerid);
GameTextForPlayer(wheelmanid,"~w~Entfesselt!.",2000,1);
format(string,sizeof string," Wheelman %s hat dich erfolgreich befreit und wird verschwinden.",PlayerName(wheelmanid));
SendClientMessage(playerid,COLOR_GREY,string);
WheelmanCallTime[wheelmanid] = 0;
new geld = GetPlayerWantedLevel(playerid)*2000;
PlayerInfo[wheelmanid][pGehalt] += geld;
}
return 1;
}
OnPLayerEnterCheckpoint:
if(WheelmanCallTime[playerid] > 0)
{
if(wcp[playerid] == 0)
{
GameTextForPlayer(playerid, "~w~Warte 10 Sekunden und bleib dicht drann!", 5000, 1);
SetTimerEx("Wheelman",10000,0,"ii",AuftragID[playerid],playerid);
wcp[playerid] = 1;
}
}
Dann habe ich natürlich noch das new wcp[MAX_POLAYERS] erstellt;) aber wäre total nett wenn ihr mir helfen würdet.
Vielen Dank im Voraus
Adrian