if(Current == burgermenu)
{
new actstring[128];
new sendername[64];
new Float:health;
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerHealth(playerid, health);
switch (row)
{
case 0:
{
format(actstring, sizeof(actstring), "* %s eats a hamburger.", sendername);
SafeGivePlayerMoney(playerid, -2);
SetPlayerHealth(playerid, health + 20);
ShowMenuForPlayer(burgermenu, playerid);
TogglePlayerControllable(playerid, 0);
}
case 1:
{
format(actstring, sizeof(actstring), "* %s eats a donnut.", sendername);
SafeGivePlayerMoney(playerid, -2);
SetPlayerHealth(playerid, health + 20);
ShowMenuForPlayer(burgermenu, playerid);
TogglePlayerControllable(playerid, 0);
}
case 2:
{
format(actstring, sizeof(actstring), "* %s eats pizza.", sendername);
SafeGivePlayerMoney(playerid, -5);
SetPlayerHealth(playerid, health + 80);
ShowMenuForPlayer(burgermenu, playerid);
TogglePlayerControllable(playerid, 0);
}
case 3:
{
format(actstring, sizeof(actstring), "* %s eats french fries.", sendername);
SafeGivePlayerMoney(playerid, -1);
SetPlayerHealth(playerid, health + 10);
ShowMenuForPlayer(burgermenu, playerid);
TogglePlayerControllable(playerid, 0);
}
case 4:
{
TogglePlayerControllable(playerid, 1);
HideMenuForPlayer(burgermenu, playerid);
}
}
if (GetPlayerMoney(playerid) > 100) SetPlayerHealth(playerid, 100);
ProxDetector(30.0, playerid, actstring, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
public CreateFoodMenus()
{
// Burger Shot
burgermenu = CreateMenu("Food", 2, 35.0, 140.0, 100.0, 150.0);
AddMenuItem(burgermenu,0,"Hamburger");
AddMenuItem(burgermenu,0,"Donnut");
AddMenuItem(burgermenu,0,"Pizza");
AddMenuItem(burgermenu,0,"French Fries");
AddMenuItem(burgermenu,0,"Exit");
AddMenuItem(burgermenu,1,"$2");
AddMenuItem(burgermenu,1,"$2");
AddMenuItem(burgermenu,1,"$5");
AddMenuItem(burgermenu,1,"$1");
AddMenuItem(burgermenu,1," ");
DisableMenuRow(burgermenu, 10);
Originally Posted by pıʞoɹʎd
DisableMenuRow(burgermenu, 10);
What does that do? |
Originally Posted by backwardsman97
You shouldn't have to hide the menu when they select something. It should hide it by itself. Maybe it has something to do with it being called exit. Try changing the name.
|
Originally Posted by Zeromanster
Quote:
![]() Quote:
![]() |
Originally Posted by OmeRinG
Then it must be HideMenuForPlayer(burgermenu, playerid);....
remove it. |
AddMenuItem(burgermenu,1," ");
Originally Posted by Benjo
Is it anything to do with:
pawn Код:
|
if(Current == burgermenu) { new actstring[128]; //You are defining a new string (....) switch (row) { case 0: { format(actstring, sizeof(actstring), "* %s eats a hamburger.", sendername); //You formatted a string. This happens too in case 1, 2 and 3. } (...) case 4: { TogglePlayerControllable(playerid, 1); HideMenuForPlayer(burgermenu, playerid); //You don't format the string here } } (....) ProxDetector(30.0, playerid, actstring, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); //And here you send the string to players. A formatted string won't cause problems, but unformatted string, will crash the server. }