Fishing Help
#1

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.
Reply
#2

Use strcat or format:

pawn Код:
strcat( PlayerInfo[playerid][pFishName1],  FishNames[FishName] );
//
format( PlayerInfo[playerid][pFishName1], sizeof( PlayerInfo[playerid][pFishName1] ), "%s", FishNames[FishName] );
Reply
#3

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 ^
Reply
#4

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.
Reply
#5

Hmm, a little confused on that one
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)