Problem with randoming...
#1

Hi, all I have a little problem with randomized gifts...

look:

Код:
public GivePlayerRandomGift()
  {
    new
    playerid,
    maxpls = GetMaxPlayers();
    do
    {
       playerid = random(maxpls);
    }
    while(!IsPlayerConnected(playerid));

    switch(random(10))
    {
    case 0:
    {
    GivePlayerMoney(playerid, 10000);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone gets 10000 money!");
    }
    case 1:
    {
    SetPlayerArmour(playerid, 100.0);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone gets free armour!");
    }
    case 2:
    {
    SetPlayerColor(playerid,0xFF66FFAA);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone is pink!");
    }
    case 3:
    {
    GivePlayerWeapon(playerid,38,5000);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone gets free minigun, rampage!");
    }
    case 4:
    {
    SetPlayerHealth(playerid, 100.0);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone gets full health!");
    }
    case 5:
    {
    GivePlayerWeapon(playerid,34,10);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone gets free sniper!, rampage!");
    }
    case 6:
    {
    GivePlayerWeapon(playerid,8,1);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone gets free katana!, rampage!");
    }
    case 7:
    {
    GivePlayerWeapon(playerid,8,1);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: I'm sorry, but no gifts!");
    }
    case 8:
    {
    GivePlayerWeapon(playerid,8,1);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: Noone got something!");
    }
    default:
    {
    GivePlayerWeapon(playerid,8,1);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: No random gift!");
    }
   }
  }
Ok, the problem is, sometimes the player gets a meesage: No random gift! when he just gained a katana... wich means, wrong clientmessage for wrong gift...

Can someone help me with this? what did I do wrong!?
Reply
#2

mabe?
pawn Код:
public GivePlayerRandomGift()
  {
    new
    playerid,
    maxpls = GetMaxPlayers();
    do
    {
       playerid = random(maxpls);
    }
    while(!IsPlayerConnected(playerid));

    switch(random(10))
    {
    case 0:
    {
    GivePlayerMoney(playerid, 10000);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone gets 10000 money!");
    }
    case 1:
    {
    SetPlayerArmour(playerid, 100.0);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone gets free armour!");
    }
    case 2:
    {
    SetPlayerColor(playerid,0xFF66FFAA);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone is pink!");
    }
    case 3:
    {
    GivePlayerWeapon(playerid,38,5000);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone gets free minigun, rampage!");
    }
    case 4:
    {
    SetPlayerHealth(playerid, 100.0);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone gets full health!");
    }
    case 5:
    {
    GivePlayerWeapon(playerid,34,10);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone gets free sniper!, rampage!");
    }
    case 6:
    {
    GivePlayerWeapon(playerid,8,1);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: everyone gets free katana!, rampage!");
    }
    case 7:
    {
    GivePlayerWeapon(playerid,8,1);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: I'm sorry, but no gifts!");
    }
    case 8:
    {
    GivePlayerWeapon(playerid,8,1);
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: Noone got something!");
    }
    default:
    {
    SendClientMessageToAll(0xDEEE20FF, "Random gifts: No random gift!");
    }
   }
  }
in default you had
GivePlayerWeapon(playerid,8,1);
SendClientMessageToAll(0xDEEE20FF, "Random gifts: No random gift!");
with giveweapon on top
so it would give and say no random gift
Reply
#3

thnx, other problem: sometimes it says: free minigun, but none get a minigun...
Reply
#4

Quote:
Originally Posted by knackworst
Посмотреть сообщение
thnx, other problem: sometimes it says: free minigun, but none get a minigun...
well i cant see it on that piece of script mabe its somewhere in your hole script
Reply
#5

Also in case 7 & 8 you have GivePlayerWeapon to give everyone a Katana... But the ClientMessage says, " No Gifts." maybe take the giveplayerweapon lines out? Just a thought or your still gonna see the messages when your actually getting something.

Not too sure about the random gift thingy but maybe your not getting a minigun because it doesnt give everyone a minigun... Its randomly giving certain players the gifts not all players...
Reply
#6

Quote:
Originally Posted by SuperS82
Посмотреть сообщение
Also in case 7 & 8 you have GivePlayerWeapon to give everyone a Katana... But the ClientMessage says, " No Gifts." maybe take the giveplayerweapon lines out? Just a thought or your still gonna see the messages when your actually getting something.
well spotted
Reply
#7

Код:
public GivePlayerRandomGift()
  {
    new
    playerid,
    maxpls = GetMaxPlayers();
    do
    {
       playerid = random(maxpls);
    }
    while(!IsPlayerConnected(playerid));

    switch(random(10))
    {
    case 0:
    {
    GivePlayerMoney(playerid, 10000);
    SendClientMessage(playerid,0xDEEE20FF, "Random gifts: You got 10000 money!");
    }
    case 1:
    {
    SetPlayerArmour(playerid, 100.0);
    SendClientMessage(playerid,0xDEEE20FF, "Random gifts: You got free armour!");
    }
    case 2:
    {
    SetPlayerColor(playerid,0xFF66FFAA);
    SendClientMessage(playerid,0xDEEE20FF, "Random gifts: You are pink!");
    }
    case 3:
    {
    GivePlayerWeapon(playerid,38,5000);
    SendClientMessage(playerid,0xDEEE20FF, "Random gifts: You got a free minigun, rampage!");
    }
    case 4:
    {
    SetPlayerHealth(playerid, 100.0);
    SendClientMessage(playerid,0xDEEE20FF, "Random gifts: You got full health!");
    }
    case 5:
    {
    GivePlayerWeapon(playerid,34,10);
    SendClientMessage(playerid,0xDEEE20FF, "Random gifts: You got a free sniper!, rampage!");
    }
    case 6:
    {
    GivePlayerWeapon(playerid,8,1);
    SendClientMessage(playerid,0xDEEE20FF, "Random gifts: You got a free katana!, rampage!");
    }
    case 7:
    {
    GivePlayerWeapon(playerid,8,1);
    SendClientMessage(playerid,0xDEEE20FF, "Random gifts: I'm sorry, but no gifts!");
    }
    case 8:
    {
    GivePlayerWeapon(playerid,8,1);
    SendClientMessage(playerid,0xDEEE20FF, "Random gifts: No one got anything!");
    }
    default:
    {
    SendClientMessage(playerid,0xDEEE20FF, "Random gifts: No random gift!");
    }
   }
  }
That should work flawlessly! :P Your welcome!!
Change SendClientMessageToAll to SendClientMessage(playerid,color, "Message");
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)