Como se crea un Menu en los CheckPoints?
#1

Disculpen xD
pero me dirian como se crean los menus en CheckPoints o.o
nose como D: asi como el del ammu? :S
Gracias D:


pawn Код:
public OnPlayerEnterCheckpoint(playerid)
{
  //Aqui iria el Menu ? pero no se como :S
  return 1;
}
Reply
#2

usa la funcion ShowPlayerDialog para un menu con botones, o ShowPlayerMenu para uno clasico sin botones.
Reply
#3

Quote:
Originally Posted by the_chaoz
usa la funcion ShowPlayerDialog para un menu con botones, o ShowPlayerMenu para uno clasico sin botones.
Intente hacerlo asi:

pawn Код:
public OnPlayerEnterCheckpoint(playerid)
{
  armas = CreateMenu("Lista de Armas", 2, 200.0, 100.0, 150.0, 150.0);
  AddMenuItem(armas, 0, "Vida ===> $50");
  AddMenuItem(armas, 0, "Chaleco ===> $100");
  AddMenuItem(armas, 0, "Cuchillo ===> $150");
  AddMenuItem(armas, 0, "Aerosol ===> $200");
  AddMenuItem(armas, 0, "Bomba ===> $250");
  AddMenuItem(armas, 0, "Desert ===> $300");
  AddMenuItem(armas, 0, "M4 ===> $350");
  AddMenuItem(armas, 0, "Sniper ===> $400");
  AddMenuItem(armas, 0, "Rocket ===> $1500");
  AddMenuItem(armas, 0, "<<Salir>>");
  return 1;
}
pawn Код:
public OnPlayerSelectedMenuRow(playerid, row)
{
  new Menu:CurrentMenu = GetPlayerMenu(playerid);
  if(CurrentMenu == armas)
{
  switch(row)
  {
    case 0:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 50)
    {
            DarVida(jugador,30);
            DarDinero(jugador,-50);
            Mensaje(jugador,azul," -= Has Comprado Algo de Vida =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $50 para poder comprar Vida.");
    }
    }
    case 1:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 100)
    {
            DarChaleco(jugador,100);
            DarDinero(jugador,-100);
            Mensaje(jugador,azul," -= Has Comprado un Chaleco =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $100 para poder comprar Chaleco.");
    }
    }
    case 2:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 150)
    {
            DarArma(jugador,4,1);
            DarDinero(jugador,-150);
            Mensaje(jugador,azul," -= Has Comprado un Cuchillo =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $150 para poder comprar un Cuchillo.");
    }
    }
    case 3:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 200)
    {
            DarArma(jugador,41,200);
            DarDinero(jugador,-200);
            Mensaje(jugador,azul," -= Has Comprado un Aerosol =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $200 para poder comprar un Aerosol.");
    }
    }
    case 4:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 250)
    {
            DarArma(jugador,16,100);
            DarDinero(jugador,-250);
            Mensaje(jugador,azul," -= Has Comprado Granadas =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $250 para poder comprar Grandas.");
    }
    }
    case 5:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 300)
    {
            DarArma(jugador,24,250);
            DarDinero(jugador,-300);
            Mensaje(jugador,azul," -= Has Comprado una Desert Eagle =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $300 para poder comprar una Desert.");
    }
    }
    case 6:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 350)
    {
            DarArma(jugador,31,950);
            DarDinero(jugador,-350);
            Mensaje(jugador,azul," -= Has Comprado una M4 =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $350 para poder comprar una M4.");
    }
    }
    case 7:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 400)
    {
            DarArma(jugador,34,300);
            DarDinero(jugador,-400);
            Mensaje(jugador,azul," -= Has Comprado una Sniper =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $400 para poder comprar una Sniper.");
    }
    }
    case 8:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >=1500)
    {
            DarArma(jugador,35,150);
            DarDinero(jugador,-1500);
            Mensaje(jugador,azul," -= Has Comprado una Rocket =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $1500 para poder comprar una Rocket.");
    }
    }
    case 9:
    {
             Mensaje(jugador,verde," -= Has Decidido no Comprar nada =- ");
        }}}}
Me copila Bien pero entro al Check Point pero no me sale nada XD
Reply
#4

tenes que usar:
pawn Код:
public OnPlayerEnterCheckpoint(playerid)
{
  //aca mostras el menu usando ShowMenuForPlayer
  return 1;
}

public OnPlayerLeaveCheckpoint(playerid)
{
  //aca escondes el menu usando HideMenuForPlayer
  return 1;
}
Reply
#5

es normal?
esto :
Код:
  armas = CreateMenu("Lista de Armas", 2, 200.0, 100.0, 150.0, 150.0);
  AddMenuItem(armas, 0, "Vida ===> $50");
  AddMenuItem(armas, 0, "Chaleco ===> $100");
  AddMenuItem(armas, 0, "Cuchillo ===> $150");
  AddMenuItem(armas, 0, "Aerosol ===> $200");
  AddMenuItem(armas, 0, "Bomba ===> $250");
  AddMenuItem(armas, 0, "Desert ===> $300");
  AddMenuItem(armas, 0, "M4 ===> $350");
  AddMenuItem(armas, 0, "Sniper ===> $400");
  AddMenuItem(armas, 0, "Rocket ===> $1500");
  AddMenuItem(armas, 0, "<<Salir>>");
En on game mode init?ї
y en el

Код:
public OnPlayerEnterCheckpoint(playerid)
{
Pongo el:
Код:
public OnPlayerSelectedMenuRow(playerid, row)
{
  new Menu:CurrentMenu = GetPlayerMenu(playerid);
  if(CurrentMenu == armas)
{
  switch(row)
  {
    case 0:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 50)
    {
DarVida(jugador,30);
DarDinero(jugador,-50);
Mensaje(jugador,azul," -= Has Comprado Algo de Vida =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $50 para poder comprar Vida.");
    }
    }
    case 1:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 100)
    {
DarChaleco(jugador,100);
DarDinero(jugador,-100);
Mensaje(jugador,azul," -= Has Comprado un Chaleco =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $100 para poder comprar Chaleco.");
    }
    }
    case 2:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 150)
    {
DarArma(jugador,4,1);
DarDinero(jugador,-150);
Mensaje(jugador,azul," -= Has Comprado un Cuchillo =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $150 para poder comprar un Cuchillo.");
    }
    }
    case 3:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 200)
    {
DarArma(jugador,41,200);
DarDinero(jugador,-200);
Mensaje(jugador,azul," -= Has Comprado un Aerosol =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $200 para poder comprar un Aerosol.");
    }
    }
    case 4:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 250)
    {
DarArma(jugador,16,100);
DarDinero(jugador,-250);
Mensaje(jugador,azul," -= Has Comprado Granadas =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $250 para poder comprar Grandas.");
    }
    }
    case 5:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 300)
    {
DarArma(jugador,24,250);
DarDinero(jugador,-300);
Mensaje(jugador,azul," -= Has Comprado una Desert Eagle =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $300 para poder comprar una Desert.");
    }
    }
    case 6:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 350)
    {
DarArma(jugador,31,950);
DarDinero(jugador,-350);
Mensaje(jugador,azul," -= Has Comprado una M4 =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $350 para poder comprar una M4.");
    }
    }
    case 7:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >= 400)
    {
DarArma(jugador,34,300);
DarDinero(jugador,-400);
Mensaje(jugador,azul," -= Has Comprado una Sniper =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $400 para poder comprar una Sniper.");
    }
    }
    case 8:
    {
    new Dinero = GetPlayerMoney(playerid);
    if(Dinero >=1500)
    {
DarArma(jugador,35,150);
DarDinero(jugador,-1500);
Mensaje(jugador,azul," -= Has Comprado una Rocket =-");
    } else {
      SendClientMessage(playerid, rojo, "[[InfO:]] Debes tener $1500 para poder comprar una Rocket.");
    }
    }
    case 9:
    {
Mensaje(jugador,verde," -= Has Decidido no Comprar nada =- ");
}}}}
O como xD
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)