SA-MP Forums Archive
[Ajuda] Substituir comando por letra - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Substituir comando por letra (/showthread.php?tid=517592)



Substituir comando por letra - Luucass - 05.06.2014

Bom pessoal , tenho um gm PPC_trucking , eu queria substituir o comando /entrar pela tecla RETURN " Apagar " alguem pode me ajudar a fazer isso ? nao precisa de comando pronto mas pelo menos me guiar ?

comando : entrar
pawn Код:
COMMAND:entrar(playerid, params[])
{
// Setup local variables
new HouseID, hLevel, BusID, BusType;

// Send the command to all admins so they can see it
SendAdminText(playerid, "/entrar", params);

// Check if the player has logged in
if (APlayerData[playerid][LoggedIn] == true)
{
// Make sure the player isn't inside a vehicle
if (GetPlayerVehicleID(playerid) == 0)
{
// Loop through all houses
for (HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
{
// Check if this house exists
if (AHouseData[HouseID][PickupID] != 0)
{
// Check if the player is in range of the house-pickup
if (IsPlayerInRangeOfPoint(playerid, 2.5, AHouseData[HouseID][HouseX], AHouseData[HouseID][HouseY], AHouseData[HouseID][HouseZ]))
{
// Check if the house is closed to the public
if (AHouseData[HouseID][HouseOpened] == false)
{
// The house isn't open to the public, so keep anyone out who isn't the owner of the house
if (House_PlayerIsOwner(playerid, HouseID) == 0)
{
// Let the player know that this house isn't open to the public and he can't enter it
SendClientMessage(playerid, 0xFFFFFFFF, "{808080}Esta Casa nao esta Aberta ao Publico");
return 1;
}
}

// The house is open to the public, or the player trying to enter is the owner, so let the player inside the house

// Get the level of the house
hLevel = AHouseData[HouseID][HouseLevel];
// Set the worldid so other players cannot see him anymore
SetPlayerVirtualWorld(playerid, 5000 + HouseID);
// Set the player inside the interior of the house
SetPlayerInterior(playerid, AHouseInteriors[hLevel][InteriorID]);
// Set the position of the player at the spawn-location of the house's interior
SetPlayerPos(playerid, AHouseInteriors[hLevel][IntX], AHouseInteriors[hLevel][IntY], AHouseInteriors[hLevel][IntZ]);
// Also set a tracking-variable to enable /housemenu to track in which house the player is
APlayerData[playerid][CurrentHouse] = HouseID;
// Also let the player know he can use /housemenu to upgrade/exit his house
SendClientMessage(playerid, 0xFFFFFFFF, "{FFFFFF}{808080}Digite {FFFFFF}/menucasa{808080} para Ver as opcoes da Sua Casa");

// Exit the function
return 1;
}
}
}

// Loop through all player-owned businesses
for (new i; i < MAX_BUSINESSPERPLAYER; i++)
{
// Get the business-id at the selected slot from the player
BusID = APlayerData[playerid][Business][i];

// Check if the player has owned a business in this slot
if (BusID != 0)
{
// Check if the player is in range of the business-pickup
if (IsPlayerInRangeOfPoint(playerid, 2.5, ABusinessData[BusID][BusinessX], ABusinessData[BusID][BusinessY], ABusinessData[BusID][BusinessZ]))
{
// Get the business-type
BusType = ABusinessData[BusID][BusinessType];
// Set the worldid so other players cannot see him anymore
SetPlayerVirtualWorld(playerid, 1000 + playerid);
// Set the player inside the interior of the business
SetPlayerInterior(playerid, ABusinessInteriors[BusType][InteriorID]);

// Set the position of the player at the spawn-location of the business's interior
SetPlayerPos(playerid, ABusinessInteriors[BusType][IntX], ABusinessInteriors[BusType][IntY], ABusinessInteriors[BusType][IntZ]);
// Also set a tracking-variable to enable /busmenu to track in which business the player is
APlayerData[playerid][CurrentBusiness] = BusID;
// Also let the player know he can use /busmenu to upgrade/exit his business
SendClientMessage(playerid, 0xFFFFFFFF, "{FFFFFF}{808080}Digite {FFFFFF}/menuempresa{808080} para ver as Opcoes da Sua Empresa");

// Exit the function
return 1;
}
}
}
}
}
else
return 0;

// Let the server know that this was a valid command
return 1;
}



Re: Substituir comando por letra - Kuddy - 05.06.2014

https://sampwiki.blast.hk/wiki/OnPlayerKeyStateChange
pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if(newkeys == KEY_SECONDARY_ATTACK) cmd_entrar(playerid, "");
}
Nгo tenho certeza se funciona, faz tempo que nгo mecho com essa callback. Se nгo funcionar й sу falar.


Re: Substituir comando por letra - Luucass - 05.06.2014

Quote:
Originally Posted by Kuddy
Посмотреть сообщение
https://sampwiki.blast.hk/wiki/OnPlayerKeyStateChange
pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if(newkeys == KEY_SECONDARY_ATTACK) cmd_entrar(playerid, "");
}
Nгo tenho certeza se funciona, faz tempo que nгo mecho com essa callback. Se nгo funcionar й sу falar.
Funcionou ++REP , nгo sabia que era tгo facil assim , ele ta funcionando com a tecla enter , mais pode deixar q isso eu procuro saber
Obrigado