Hallo habe hiervon das script Los Angelos Roleplay
Hier das Quellscript : [ GAMEMODE ] Los Angeles Reallife [ v4.9.1 ]
Allerdings gibt es da einen Bug bei /legbombe
ein spieler hatte den befehl ausprobiert und mir gemeldet das die bombe nicht erstellt wird weis jeman wo der fehler liegen könnte??
??
Hier mal das Snippet aus dem script:
Erstmal der comand der scheint ja nach meines ersehens i.o zu sein
befindet sich unter OnPlayerCommandText
if(strcmp(cmd, "/legbombe", true) == 0 || strcmp(cmd, "/bombelegen", true) == 0)
{
if(PlayerInfo[playerid][pMember] == 20 || PlayerInfo[playerid][pLeader] == 20)
{
if(BombStatus == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "Du kannst nur alle 40min eine Bombe legen.");
}
else if(PlayerInfo[playerid][pAdmin] == 1337)
{
}
else if(PlayerInfo[playerid][pJailed] > 0)
{
SendClientMessage(playerid, COLOR_WHITE, "Du kannst dich nicht im Gefängnis hochjagen.");
}
else if(GetPlayerInterior(playerid) > 0)
{
SendClientMessage(playerid, COLOR_WHITE, "Das ist ein schlechter Ort für eine Bombe...");
}
else
{
ShowMenuForPlayer(Menu:BOMB,playerid);
}
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "*Du bist kein Terrorist.");
}
return 1;
}
Nun aber zum hauptteil
Die bombe wird im dem Script mit einem dialog erstellt
public OnPlayerSelectedMenuRow(playerid, row)
{
new Menu:CurrentMenu = GetPlayerMenu(playerid);
if(CurrentMenu == BOMB)
{
switch(row)//rot,gelb,grün,blau
{
case 0://rot
{
GetPlayerPos(playerid, PlayerExplosionX[1], PlayerExplosionY[1], PlayerExplosionZ[1]);
SendClientMessage(playerid, COLOR_LIGHTRED, "** Bombe wurde gelegt! Du hast den ROTEN Draht genommen!");
bombe =CreateObject(1719, PlayerExplosionX[1], PlayerExplosionY[1], PlayerExplosionZ[1]-0.85, 0.0000, 0.0000, 0.0000);
ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0);
bombexplotimer = SetTimerEx("bombexplode",60000,0,"i",playerid);
BombStatus = 1;
Bombactivated=1;
bombdrahtchoosen = 1;
bombdraht1 = 1;
bombdraht2 = 0;
bombdraht3 = 0;
bombdraht4 = 0;
for(new i = 0; i <MAX_PLAYERS; i++)
{
if(IsACop(i))
{
SendClientMessage(i,COLOR_RED,"** Passanten melden, das sie eine Verdächtige Person entdeckt haben");
SendClientMessage(i,COLOR_RED,"** die eine Bombe gelegt haben soll!!");
bombzone = GangZoneCreate(PlayerExplosionX[1]-random(60), PlayerExplosionY[1]-random(60), PlayerExplosionX[1]+random(60), PlayerExplosionY[1]+random(60));
GangZoneShowForPlayer(i,bombzone,COLOR_RED);
GangZoneFlashForPlayer(i,bombzone,COLOR_GREEN);
}
}
}
case 1://gelb
{
GetPlayerPos(playerid, PlayerExplosionX[1], PlayerExplosionY[1], PlayerExplosionZ[1]);
SendClientMessage(playerid, COLOR_LIGHTRED, "** Bombe wurde gelegt! Du hast den GELBEN Draht genommen!");
bombe =CreateObject(1719, PlayerExplosionX[1], PlayerExplosionY[1], PlayerExplosionZ[1]-0.85, 0.0000, 0.0000, 0.0000);
ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0);
bombexplotimer = SetTimerEx("bombexplode",60000,0,"i",playerid);
BombStatus = 1;
Bombactivated=1;
bombdrahtchoosen = 1;
bombdraht1 = 0;
bombdraht2 = 1;
bombdraht3 = 0;
bombdraht4 = 0;
for(new i = 0; i <MAX_PLAYERS; i++)
{
if(IsACop(i))
{
SendClientMessage(i,COLOR_RED,"BOMBENALARM: Es wurde eine Bombe gelegt!");
bombzone = GangZoneCreate(PlayerExplosionX[1]-random(60), PlayerExplosionY[1]-random(60), PlayerExplosionX[1]+random(60), PlayerExplosionY[1]+random(60));
GangZoneShowForPlayer(i,bombzone,COLOR_RED);
GangZoneFlashForPlayer(i,bombzone,COLOR_GREEN);
}
}
}
case 2://grün
{
GetPlayerPos(playerid, PlayerExplosionX[1], PlayerExplosionY[1], PlayerExplosionZ[1]);
SendClientMessage(playerid, COLOR_LIGHTRED, "** Bombe wurde gelegt! Du hast den GRÜNEN Draht genommen!");
bombe =CreateObject(1719, PlayerExplosionX[1], PlayerExplosionY[1], PlayerExplosionZ[1]-0.85, 0.0000, 0.0000, 0.0000);
ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0);
bombexplotimer = SetTimerEx("bombexplode",60000,0,"i",playerid);
BombStatus = 1;
Bombactivated=1;
bombdrahtchoosen = 1;
bombdraht1 = 0;
bombdraht2 = 0;
bombdraht3 = 1;
bombdraht4 = 0;
for(new i = 0; i <MAX_PLAYERS; i++)
{
if(IsACop(i))
{
SendClientMessage(i,COLOR_RED,"BOMBENALARM: Es wurde eine Bombe gelegt!");
bombzone = GangZoneCreate(PlayerExplosionX[1]-random(60), PlayerExplosionY[1]-random(60), PlayerExplosionX[1]+random(60), PlayerExplosionY[1]+random(60));
GangZoneShowForPlayer(i,bombzone,COLOR_RED);
GangZoneFlashForPlayer(i,bombzone,COLOR_GREEN);
}
}
}
case 3://blau
{
GetPlayerPos(playerid, PlayerExplosionX[1], PlayerExplosionY[1], PlayerExplosionZ[1]);
SendClientMessage(playerid, COLOR_LIGHTRED, "** Bombe wurde gelegt! Du hast den BLAUEN Draht genommen!");
bombe =CreateObject(1719, PlayerExplosionX[1], PlayerExplosionY[1], PlayerExplosionZ[1]-0.85, 0.0000, 0.0000, 0.0000);
ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0);
bombexplotimer = SetTimerEx("bombexplode",60000,0,"i",playerid);
BombStatus = 1;
Bombactivated=1;
bombdrahtchoosen = 1;
bombdraht1 = 0;
bombdraht2 = 0;
bombdraht3 = 0;
bombdraht4 = 1;
for(new i = 0; i <MAX_PLAYERS; i++)
{
if(IsACop(i))
{
SendClientMessage(i,COLOR_RED,"BOMBENALARM: Es wurde eine Bombe gelegt!");
bombzone = GangZoneCreate(PlayerExplosionX[1]-random(60), PlayerExplosionY[1]-random(60), PlayerExplosionX[1]+random(60), PlayerExplosionY[1]+random(60));
GangZoneShowForPlayer(i,bombzone,COLOR_RED);
GangZoneFlashForPlayer(i,bombzone,COLOR_GREEN);
}
}
}
}
}
if(CurrentMenu == BOMBD && bombdrahtchoosen == 1)
{
switch(row)//rot,gelb,grün,blau
{
case 0://rot
{//&& bombdraht2 = 0 || bombdraht3 = 0 || bombdraht4 && 0
if(bombdraht1 == 1)
{
Bombtimer(3,playerid);
bombdraht1 = 0;
bombdraht2 = 0;
bombdraht3 = 0;
bombdraht4 = 1;
}
else if(bombdraht1 == 0)
{
bombexplode(playerid);
bombdraht1 = 0;
bombdraht2 = 0;
bombdraht3 = 0;
bombdraht4 = 1;
}
bombdrahtchoosen = 0;
}
case 1://gelb
{
bombdrahtchoosen = 0;
if(bombdraht2 == 1)
{
Bombtimer(3,playerid);
bombdraht1 = 0;
bombdraht2 = 0;
bombdraht3 = 0;
bombdraht4 = 1;
}
else if(bombdraht2 == 0)
{
bombexplode(playerid);
bombdraht1 = 0;
bombdraht2 = 0;
bombdraht3 = 0;
bombdraht4 = 1;
}
}
case 2://grün
{
bombdrahtchoosen = 0;
if(bombdraht3 == 1)
{
Bombtimer(3,playerid);
bombdraht1 = 0;
bombdraht2 = 0;
bombdraht3 = 0;
bombdraht4 = 1;
}
else if(bombdraht3 == 0)
{
bombexplode(playerid);
bombdraht1 = 0;
bombdraht2 = 0;
bombdraht3 = 0;
bombdraht4 = 1;
}
}
case 3://blau
{
bombdrahtchoosen = 0;
if(bombdraht4 == 1)
{
Bombtimer(3,playerid);
bombdraht1 = 0;
bombdraht2 = 0;
bombdraht3 = 0;
bombdraht4 = 1;
}
else if(bombdraht4 == 0)
{
bombexplode(playerid);
bombdraht1 = 0;
bombdraht2 = 0;
bombdraht3 = 0;
bombdraht4 = 1;
}
}
}
}
// restlicher code vom Script
Es geht darum man sieht die bombe nicht.. die animation allerdings wird abgespielt..
Wo könnte der fehler liegen ?