Fishing Help -
AphexCCFC - 06.02.2013
pawn Код:
new FishNames[][] =
{
"Shark",
"Clownfish",
"Angelfish",
"Catfish",
"Dogfish",
"Eel"
};
pawn Код:
forward FishingTime(playerid);
public FishingTime(playerid)
{
new fish, string[256], query[500], pname[24];
new FishName = random(sizeof(FishNames));
GetPlayerName(playerid, pname, 24);
fish = 22 + random(46);
if(PlayerInfo[playerid][pFishes] == 0)
{
PlayerInfo[playerid][pFishes] = 1;
PlayerInfo[playerid][pFish1] = fish;
format(query, sizeof(query), "UPDATE playerdata SET Fish1=%d, Fishes=%d WHERE Username='%s'",
PlayerInfo[playerid][pFish1],
PlayerInfo[playerid][pFishes],
pname);
}
else if(PlayerInfo[playerid][pFishes] == 1)
{
PlayerInfo[playerid][pFishes] = 2;
PlayerInfo[playerid][pFish2] = fish;
format(query, sizeof(query), "UPDATE playerdata SET Fish2=%d, Fishes=%d WHERE Username='%s'",
PlayerInfo[playerid][pFish2],
PlayerInfo[playerid][pFishes],
pname);
}
else if(PlayerInfo[playerid][pFishes] == 2)
{
PlayerInfo[playerid][pFishes] = 3;
PlayerInfo[playerid][pFish3] = fish;
format(query, sizeof(query), "UPDATE playerdata SET Fish3=%d, Fishes=%d WHERE Username='%s'",
PlayerInfo[playerid][pFish3],
PlayerInfo[playerid][pFishes],
pname);
}
else if(PlayerInfo[playerid][pFishes] == 3)
{
PlayerInfo[playerid][pFishes] = 4;
PlayerInfo[playerid][pFish4] = fish;
format(query, sizeof(query), "UPDATE playerdata SET Fish4=%d, Fishes=%d WHERE Username='%s'",
PlayerInfo[playerid][pFish4],
PlayerInfo[playerid][pFishes],
pname);
}
else if(PlayerInfo[playerid][pFishes] == 4)
{
PlayerInfo[playerid][pFishes] = 5;
PlayerInfo[playerid][pFish5] = fish;
format(query, sizeof(query), "UPDATE playerdata SET Fish5=%d, Fishes=%d WHERE Username='%s'",
PlayerInfo[playerid][pFish5],
PlayerInfo[playerid][pFishes],
pname);
}
if(FishName == 0)
{
if(PlayerInfo[playerid][pFishes] == 0)
{
PlayerInfo[playerid][pFishName1] = fishnamez;
format(query, sizeof(query), "UPDATE playerdata SET FishName1=%s WHERE Username='%s'",
FishNames[FishName],
pname);
}
format(string, sizeof(string), "* %s has caught a %s weighing %d lbs.", Name(playerid), FishNames[FishName], fish);
SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE);
}
else if(FishName == 1)
{
if(PlayerInfo[playerid][pFishes] == 0)
{
format(string, sizeof(string), "* %s has caught a %s weighing %d lbs.", Name(playerid), FishNames[FishName], fish);
SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE);
}
}
else if(FishName == 2)
{
format(string, sizeof(string), "* %s has caught an %s weighing %d lbs.", Name(playerid), FishNames[FishName], fish);
SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE);
}
else if(FishName == 3)
{
format(string, sizeof(string), "* %s has caught a %s weighing %d lbs.", Name(playerid), FishNames[FishName], fish);
SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE);
}
else if(FishName == 4)
{
format(string, sizeof(string), "* %s has caught a %s weighing %d lbs.", Name(playerid), FishNames[FishName], fish);
SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE);
}
else if(FishName == 5)
{
format(string, sizeof(string), "* %s has caught an %s weighing %d lbs.", Name(playerid), FishNames[FishName], fish);
SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE);
}
mysql_query(query);
return 1;
}
How do I go about adding the text displayed in FishNames[FishName] into a new variable PlayerInfo[playerid][pFishName1] ?
pawn Код:
PlayerInfo[playerid][pFishName1] = FishNames[FishName];
^^ This doesn't work.
Re: Fishing Help -
LarzI - 06.02.2013
Use strcat or format:
pawn Код:
strcat( PlayerInfo[playerid][pFishName1], FishNames[FishName] );
//
format( PlayerInfo[playerid][pFishName1], sizeof( PlayerInfo[playerid][pFishName1] ), "%s", FishNames[FishName] );
Re: Fishing Help -
AphexCCFC - 06.02.2013
Thanks, one more thing if that's cool, cheers! I have now added this:
pawn Код:
new FishNames[][] =
{
"Shark",
"Clownfish",
"Angelfish",
"Catfish",
"Dogfish",
"Eel",
"$23",
"$28",
"$37",
"$53",
"$61",
"$80",
"$121",
"$133",
"$178",
"$500"
};
pawn Код:
if(FishName == 6 || FishName == 7 || FishName == 8 || FishName == 9 || FishName == 10 || FishName == 11 || FishName == 12 || FishName == 13 ||
FishName == 14 || FishName == 15)
{//Moneybags
format(string, sizeof(string), "* %s has fished up a $%s moneybag.", Name(playerid), FishNames[FishName]);
SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE);
return 1;
}
How do I make it give the player the amount of money shown in the random section above ^
Re: Fishing Help -
LarzI - 06.02.2013
You could just use strval from index 1 so that the dollar symbol wouldn't be included:
pawn Код:
GivePlayerMoney( playerid, strval( FishNames[ FishName ][ 1 ] ));
The string "$500" is built up like this:
pawn Код:
FishNames[ FishName ][ 0 ] = '$'
FishNames[ FishName ][ 1 ] = '5'
FishNames[ FishName ][ 2 ] = '0'
FishNames[ FishName ][ 3 ] = '0'
FishNames[ FishName ][ 4 ] = '\0' //null - end of string
So when you get the value of the string (string to int) but start on index 1, the first index ([0]) will be excluded, thus making your code work just like intended.
I'm sorry if you already knew this, I just like to explain just in case.
Re: Fishing Help -
AphexCCFC - 06.02.2013
Hmm, a little confused on that one