04.07.2016, 18:14
Hello, why is this crashing pawno?
pawn Код:
forward FishTimer(playerid);
public FishTimer(playerid)
{
if((IsPlayerInWater(playerid)) || IsPlayerNearWater(playerid))
{
if(Fishing[playerid] == 1)
{
new Caught;
new rand;
new fstring[MAX_PLAYER_NAME];
new Level = PlayerInfo[playerid][pFishSkill];
if(Level >= 0 && Level < 50) { Caught = random(20)-7; }
else if(Level >= 50 && Level < 100) { Caught = random(50)-20; }
else if(Level >= 100 && Level < 200) { Caught = random(100)-50; }
else if(Level >= 200 && Level < 400) { Caught = random(140)-60; }
else if(Level >= 400 && Level < 500) { Caught = random(170)-60; }
rand = random(FishNamesNumber);
if(Caught <= 0)
{
SendClientMessage(playerid, COLOR_GREY, " Line snapped!");
RemovePlayerAttachedObject(playerid,0);
return 1;
}
else if(rand == 3)
{
SendClientMessage(playerid, COLOR_GREY, " You caught a headcrab and threw it away!");
RemovePlayerAttachedObject(playerid,0);
return 1;
}
else if(rand == 4)
{
SendClientMessage(playerid, COLOR_GREY, " You caught a g-string and threw it away!");
RemovePlayerAttachedObject(playerid,0);
return 1;
}
else if(rand == 7)
{
SendClientMessage(playerid, COLOR_GREY, " You caught a can and threw it away!");
RemovePlayerAttachedObject(playerid,0);
return 1;
}
else if(rand == 10)
{
SendClientMessage(playerid, COLOR_GREY, " You caught a used condom and threw it away!");
RemovePlayerAttachedObject(playerid,0);
return 1;
}
else if(rand == 13)
{
SendClientMessage(playerid, COLOR_GREY, " You caught some garbage and threw it away!");
RemovePlayerAttachedObject(playerid,0);
return 1;
}
else if(rand == 10)
{
new weapon[MAX_PLAYERS];
AddWeapon(playerid,weapon[playerid] = 22);
SendClientMessage(playerid, COLOR_GREY, " You caught a Colt 45!");
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s reels in a Colt 45.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
RemovePlayerAttachedObject(playerid,0);
return 1;
}
else if(rand == 10)
{
new weapon[MAX_PLAYERS];
AddWeapon(playerid,weapon[playerid] = 30);
SendClientMessage(playerid, COLOR_GREY, " You caught an AK 47!");
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s reels in an AK 47.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
RemovePlayerAttachedObject(playerid,0);
return 1;
}
else if(rand == 10) //
{
new weapon[MAX_PLAYERS];
AddWeapon(playerid,weapon[playerid] = 23);
SendClientMessage(playerid, COLOR_GREY, " You caught a Silenced Pistol!");
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s reels in a SD Pistol.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
RemovePlayerAttachedObject(playerid,0);
return 1;
}
else if(rand == 11)
{
new weapon[MAX_PLAYERS];
AddWeapon(playerid,weapon[playerid] = 5);
SendClientMessage(playerid, COLOR_GREY, " You caught a Bat!");
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s reels in a Bat.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
RemovePlayerAttachedObject(playerid,0);
return 1;
}
else if(rand == 12)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
CreateExplosion(x, y, z, 5, 10.0);
SendClientMessage(playerid, COLOR_GREY, " You caught an undetonated sea mine!");
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s reels in an undetonated sea mine!", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
RemovePlayerAttachedObject(playerid,0);
return 1;
}
else if(rand == 20)
{
new mrand = random(2000);
format(string, sizeof(string), "You caught a money bag, containing $%d.", mrand);
SendClientMessage(playerid, COLOR_GREY, string);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s reels in a money bag, containing $%d.", sendername, mrand);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
GiveMoney(playerid, mrand);
RemovePlayerAttachedObject(playerid,0);
return 1;
}
if(PlayerInfo[playerid][pFishLic] < 1)
{
}
if(Fishes[playerid][pWeight1] == 0)
{
PlayerInfo[playerid][pFishes] += 1;
PlayerInfo[playerid][pFishSkill] += 1;
format(fstring, sizeof(fstring), "%s", FishNames[rand]);
strmid(Fishes[playerid][pFish1], fstring, 0, strlen(fstring), 255);
Fishes[playerid][pWeight1] = Caught;
format(string, sizeof(string), "* You have caught a %s, which weights %d pounds.", Fishes[playerid][pFish1], Caught);
SendClientMessage(playerid, COLOR_GREY, string);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s reels in a %s, on %d lbs.", sendername, Fishes[playerid][pFish1], Caught);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
RemovePlayerAttachedObject(playerid,0);
Fishes[playerid][pLastWeight] = Caught;
Fishes[playerid][pLastFish] = 1;
Fishes[playerid][pFid1] = rand;
Fishes[playerid][pFishID] = rand;
if(Caught > PlayerInfo[playerid][pBiggestFish])
{
format(string, sizeof(string), "* You've beaten your old record of %d pounds! Your new biggest fish is: %d pounds.", PlayerInfo[playerid][pBiggestFish], Caught);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
PlayerInfo[playerid][pBiggestFish] = Caught;
}
}
else if(Fishes[playerid][pWeight2] == 0)
{
PlayerInfo[playerid][pFishes] += 1;
PlayerInfo[playerid][pFishSkill] += 1;
format(fstring, sizeof(fstring), "%s", FishNames[rand]);
strmid(Fishes[playerid][pFish2], fstring, 0, strlen(fstring), 255);
Fishes[playerid][pWeight2] = Caught;
format(string, sizeof(string), "* You have caught a %s, which weights %d pounds.", Fishes[playerid][pFish2], Caught);
SendClientMessage(playerid, COLOR_GREY, string);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s reels in a %s, on %d lbs.", sendername, Fishes[playerid][pFish2], Caught);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
RemovePlayerAttachedObject(playerid,0);
Fishes[playerid][pLastWeight] = Caught;
Fishes[playerid][pLastFish] = 2;
Fishes[playerid][pFid2] = rand;
Fishes[playerid][pFishID] = rand;
if(Caught > PlayerInfo[playerid][pBiggestFish])
{
format(string, sizeof(string), "* You've beaten your old record of %d pounds! Your new biggest fish is: %d pounds.", PlayerInfo[playerid][pBiggestFish], Caught);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
PlayerInfo[playerid][pBiggestFish] = Caught;
}
}
else if(Fishes[playerid][pWeight3] == 0)
{
PlayerInfo[playerid][pFishes] += 1;
PlayerInfo[playerid][pFishSkill] += 1;
format(fstring, sizeof(fstring), "%s", FishNames[rand]);
strmid(Fishes[playerid][pFish3], fstring, 0, strlen(fstring), 255);
Fishes[playerid][pWeight3] = Caught;
format(string, sizeof(string), "* You have caught a %s, which weights %d pounds.", Fishes[playerid][pFish3], Caught);
SendClientMessage(playerid, COLOR_GREY, string);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s reels in a %s, on %d lbs.", sendername, Fishes[playerid][pFish3], Caught);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
RemovePlayerAttachedObject(playerid,0);
Fishes[playerid][pLastWeight] = Caught;
Fishes[playerid][pLastFish] = 3;
Fishes[playerid][pFid3] = rand;
Fishes[playerid][pFishID] = rand;
if(Caught > PlayerInfo[playerid][pBiggestFish])
{
format(string, sizeof(string), "* You've beaten your old record of %d pounds! Your new biggest fish is: %d pounds.", PlayerInfo[playerid][pBiggestFish], Caught);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
PlayerInfo[playerid][pBiggestFish] = Caught;
}
}
else if(Fishes[playerid][pWeight4] == 0)
{
PlayerInfo[playerid][pFishes] += 1;
PlayerInfo[playerid][pFishSkill] += 1;
format(fstring, sizeof(fstring), "%s", FishNames[rand]);
strmid(Fishes[playerid][pFish4], fstring, 0, strlen(fstring), 255);
Fishes[playerid][pWeight4] = Caught;
format(string, sizeof(string), "* You have caught a %s, which weights %d pounds.", Fishes[playerid][pFish4], Caught);
SendClientMessage(playerid, COLOR_GREY, string);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s reels in a %s, on %d lbs.", sendername, Fishes[playerid][pFish4], Caught);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
RemovePlayerAttachedObject(playerid,0);
Fishes[playerid][pLastWeight] = Caught;
Fishes[playerid][pLastFish] = 4;
Fishes[playerid][pFid4] = rand;
Fishes[playerid][pFishID] = rand;
if(Caught > PlayerInfo[playerid][pBiggestFish])
{
format(string, sizeof(string), "* You've beaten your old record of %d pounds! Your new biggest fish is: %d pounds.", PlayerInfo[playerid][pBiggestFish], Caught);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
PlayerInfo[playerid][pBiggestFish] = Caught;
}
}
else if(Fishes[playerid][pWeight5] == 0)
{
PlayerInfo[playerid][pFishes] += 1;
PlayerInfo[playerid][pFishSkill] += 1;
format(fstring, sizeof(fstring), "%s", FishNames[rand]);
strmid(Fishes[playerid][pFish5], fstring, 0, strlen(fstring), 255);
Fishes[playerid][pWeight5] = Caught;
format(string, sizeof(string), "* You have caught a %s, which weights %d pounds.", Fishes[playerid][pFish5], Caught);
SendClientMessage(playerid, COLOR_GREY, string);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s reels in a %s, on %d lbs.", sendername, Fishes[playerid][pFish5], Caught);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
RemovePlayerAttachedObject(playerid,0);
Fishes[playerid][pLastWeight] = Caught;
Fishes[playerid][pLastFish] = 5;
Fishes[playerid][pFid5] = rand;
Fishes[playerid][pFishID] = rand;
if(Caught > PlayerInfo[playerid][pBiggestFish])
{
format(string, sizeof(string), "* You've beaten your old record of %d pounds! Your new biggest fish is: %d pounds.", PlayerInfo[playerid][pBiggestFish], Caught);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
PlayerInfo[playerid][pBiggestFish] = Caught;
}
}
}
}
return 1;
}