OnPlayerSelectedMenuRow ES

From SA-MP Wiki

Jump to: navigation, search



Descripción:

Este callback es llamado cuando un jugador selecciona un item de un menu.


Parámetros:
(playerid, row)
playeridID del jugador que selecciono el item del menu.
rowID del item seleccionada.


Ejemplo:

new Menu:menuautos;
 
public OnGameModeInit()
{
    menuautos = CreateMenu("Autos", 1, 50.0, 180.0, 200.0, 200.0);
    AddMenuItem(menuautos, 0, "Infernus");
    AddMenuItem(menuautos, 0, "Bullet");
    AddMenuItem(menuautos, 0, "Banshee");
    AddMenuItem(menuautos, 0, "NRG-500");
    AddMenuItem(menuautos, 0, "Salir");
    return 1;
}
 
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(!strcmp(cmdtext, "/autos", true)){
        if(IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, 0xFF0000FF, "Ya estas en un vehiculo");
        return ShowMenuForPlayer(menuautos, playerid);
    }
    return 0;
}
 
public OnPlayerSelectedMenuRow(playerid, row)
{
    new Menu:current;
    current = GetPlayerMenu(playerid);
    if(current == menuautos)
    {
        switch(row)
        {
            case 0://Infernus
            {
                new Float:P[4], veh;
                GetPlayerPos(playerid, P[0], P[1], P[2]);
                GetPlayerFacingAngle(playerid, P[3]);
                veh = CreateVehicle(411, P[0], P[1], P[2], P[3], random(126), random(126), -1);
                LinkVehicleToInterior(veh, GetPlayerInterior(playerid));
                SetVehicleVirtualWorld(veh, GetPlayerVirtualWorld(playerid));
                PutPlayerInVehicle(playrid, veh, 0);
            }
            case 1://Bullet
            {
                new Float:P[4], veh;
                GetPlayerPos(playerid, P[0], P[1], P[2]);
                GetPlayerFacingAngle(playerid, P[3]);
                veh = CreateVehicle(541, P[0], P[1], P[2], P[3], random(126), random(126), -1);
                LinkVehicleToInterior(veh, GetPlayerInterior(playerid));
                SetVehicleVirtualWorld(veh, GetPlayerVirtualWorld(playerid));
                PutPlayerInVehicle(playrid, veh, 0);
            }
            case 2://Banshee
            {
                new Float:P[4], veh;
                GetPlayerPos(playerid, P[0], P[1], P[2]);
                GetPlayerFacingAngle(playerid, P[3]);
                veh = CreateVehicle(429, P[0], P[1], P[2], P[3], random(126), random(126), -1);
                LinkVehicleToInterior(veh, GetPlayerInterior(playerid));
                SetVehicleVirtualWorld(veh, GetPlayerVirtualWorld(playerid));
                PutPlayerInVehicle(playrid, veh, 0);
            }
            case 3://NRG-500
            {
                new Float:P[4], veh;
                GetPlayerPos(playerid, P[0], P[1], P[2]);
                GetPlayerFacingAngle(playerid, P[3]);
                veh = CreateVehicle(522, P[0], P[1], P[2], P[3], random(126), random(126), -1);
                LinkVehicleToInterior(veh, GetPlayerInterior(playerid));
                SetVehicleVirtualWorld(veh, GetPlayerVirtualWorld(playerid));
                PutPlayerInVehicle(playrid, veh, 0);
            }
            case 4://Salir
            {
                HideMenuForPlayer(menuautos, playerid);
            }
        }
    }
    return 1;
}

Callbacks relacionadas

Las siguientes callbacks pueden ser útiles, ya que éstas están relacionadas con esta función de alguna u otra manera.


Funciones relacionadas

Las siguientes funciones pueden ser útiles, ya que éstas están relacionadas con esta función de alguna u otra manera.