![]() |
|
[Pawn] press enter instead of /enter - Printable Version +- open.mp forum (https://forum.open.mp) +-- Forum: SA-MP (https://forum.open.mp/forumdisplay.php?fid=3) +--- Forum: Pawn Scripting (https://forum.open.mp/forumdisplay.php?fid=10) +--- Thread: [Pawn] press enter instead of /enter (/showthread.php?tid=3537) |
press enter instead of /enter - Cruncher - 2025-09-20 I have made a code for pressing "y" to enter a house which works fine but the exit code doesnt work, When i am inside the house interior /exit cmd doesnt work either but if i enter the house with /enter then /exit works fine. I am new to scripting so dont know if i am missing something or what, any input would be greatly appreciated... Code: // House entry
if(newkeys & KEY_YES)
{
for(new i = 0; i < sizeof(HouseInfo); i++)
{
if(IsPlayerInRangeOfPoint(playerid, 3, HouseInfo[i][hExteriorX], HouseInfo[i][hExteriorY], HouseInfo[i][hExteriorZ]))
{
SetPlayerInterior( playerid, HouseInfo[i][hInteriorID]);
SetPlayerVirtualWorld( playerid, HouseInfo[i][hVirWorld]);
PlayerInfo[playerid][pVirtualWorld] = HouseInfo[i][hVirWorld];
SetPlayerPos( playerid, HouseInfo[i][hInteriorX], HouseInfo[i][hInteriorY], HouseInfo[i][hInteriorZ]);
}
}
return 1;
}
// House exit
if(newkeys & KEY_YES)
{
for(new i = 0; i < sizeof(HouseInfo); i++)
{
if(IsPlayerInRangeOfPoint(playerid, 3, HouseInfo[PlayerInfo[playerid][InHouse]][hInteriorX], HouseInfo[PlayerInfo[playerid][InHouse]][hInteriorY], HouseInfo[PlayerInfo[playerid][InHouse]][hInteriorZ]))
{
PlayerInfo[playerid][pVirtualWorld] = 0;
SetPlayerVirtualWorld(playerid, 0);
SetPlayerInterior(playerid, HouseInfo[i][hExteriorID]);
SetPlayerPos(playerid, HouseInfo[i][hExteriorX], HouseInfo[i][hExteriorY], HouseInfo[i][hExteriorZ]);
}
}
return 1;
}RE: press enter instead of /enter - phanchikiet060 - 2025-09-22 your problem lies in the your problem lies in the return 1; fix Code: <code>// House entry
if(newkeys & KEY_YES)
{
for(new i = 0; i < sizeof(HouseInfo); i++)
{
if(IsPlayerInRangeOfPoint(playerid, 3, HouseInfo[i][hExteriorX], HouseInfo[i][hExteriorY], HouseInfo[i][hExteriorZ]))
{
SetPlayerInterior( playerid, HouseInfo[i][hInteriorID]);
SetPlayerVirtualWorld( playerid, HouseInfo[i][hVirWorld]);
PlayerInfo[playerid][pVirtualWorld] = HouseInfo[i][hVirWorld];
SetPlayerPos( playerid, HouseInfo[i][hInteriorX], HouseInfo[i][hInteriorY], HouseInfo[i][hInteriorZ]);
return 1;
}
}
}
// House exit
if(newkeys & KEY_YES)
{
for(new i = 0; i < sizeof(HouseInfo); i++)
{
if(IsPlayerInRangeOfPoint(playerid, 3, HouseInfo[PlayerInfo[playerid][InHouse]][hInteriorX], HouseInfo[PlayerInfo[playerid][InHouse]][hInteriorY], HouseInfo[PlayerInfo[playerid][InHouse]][hInteriorZ]))
{
PlayerInfo[playerid][pVirtualWorld] = 0;
SetPlayerVirtualWorld(playerid, 0);
SetPlayerInterior(playerid, HouseInfo[i][hExteriorID]);
SetPlayerPos(playerid, HouseInfo[i][hExteriorX], HouseInfo[i][hExteriorY], HouseInfo[i][hExteriorZ]);
return 1;
}
}
}
[color=#e8eaed][size=1]your problem lies in the[/size][/color]
<code>RE: press enter instead of /enter - Cruncher - 2025-09-22 Code: if(newkeys & KEY_YES)
{
for(new i = 0; i < sizeof(HouseInfo); i++)
{
if(IsPlayerInRangeOfPoint(playerid, 3, HouseInfo[i][hExteriorX], HouseInfo[i][hExteriorY], HouseInfo[i][hExteriorZ]))
{
TogglePlayerControllable(playerid, false);
Loaded[playerid] = 1;
ShowLoading(playerid);
SetTimer("LoadPlayer",3100,false);
SetPlayerInterior( playerid, HouseInfo[i][hInteriorID]);
SetPlayerVirtualWorld( playerid, HouseInfo[i][hVirWorld]);
PlayerInfo[playerid][pVirtualWorld] = HouseInfo[i][hVirWorld];
SetPlayerPos(playerid, HouseInfo[i][hInteriorX], HouseInfo[i][hInteriorY], HouseInfo[i][hInteriorZ]);
}
else if(IsPlayerInRangeOfPoint(playerid, 3, HouseInfo[i][hInteriorX], HouseInfo[i][hInteriorY], HouseInfo[i][hInteriorZ]))
{
PlayerInfo[playerid][pVirtualWorld] = 0;
SetPlayerVirtualWorld(playerid, 0);
SetPlayerInterior(playerid, HouseInfo[i][hExteriorID]);
SetPlayerPos(playerid, HouseInfo[i][hExteriorX], HouseInfo[i][hExteriorY], HouseInfo[i][hExteriorZ]);
}
}
return 1;
}I have redone the code for enter and exit which works fully for houses now, But i have made one for biz system and that doesnt work at all, Any ideas as to why? Code: if(newkeys & KEY_YES)
{
for(new i = 0; i < sizeof( BizzInfo ); i++)
{
if(IsPlayerInRangeOfPoint( playerid, 3, BizzInfo[PlayerInfo[playerid][InBusiness]][bEntranceX], BizzInfo[PlayerInfo[playerid][InBusiness]][bEntranceY], BizzInfo[PlayerInfo[playerid][InBusiness]][bEntranceZ]))
{
TogglePlayerControllable(playerid, false);
Loaded[playerid] = 1;
ShowLoading(playerid);
SetTimer("LoadPlayer",3100,false);
SetPlayerInterior( playerid, BizzInfo[i][bInteriorID]);
SetPlayerPos( playerid, BizzInfo[PlayerInfo[playerid][InBusiness]][bExitX], BizzInfo[PlayerInfo[playerid][InBusiness]][bExitY], BizzInfo[PlayerInfo[playerid][InBusiness]][bExitZ]);
PlayerInfo[playerid][InBusiness] = i;
SetPlayerVirtualWorld( playerid, BizzInfo[i][bVirWorld]);
PlayerInfo[playerid][pVirtualWorld] = BizzInfo[i][bVirWorld];
PlayerInfo[playerid][InBusiness] = 1;
}
else if(IsPlayerInRangeOfPoint( playerid, 5, BizzInfo[PlayerInfo[playerid][InBusiness]][bExitX], BizzInfo[PlayerInfo[playerid][InBusiness]][bExitY], BizzInfo[PlayerInfo[playerid][InBusiness]][bExitZ]))
{
PlayerInfo[playerid][pVirtualWorld] = 0;
SetPlayerVirtualWorld( playerid, 0);
SetPlayerInterior( playerid, BizzInfo[PlayerInfo[playerid][InBusiness]][bExteriorID]);
SetPlayerPos( playerid, BizzInfo[PlayerInfo[playerid][InBusiness]][bEntranceX], BizzInfo[PlayerInfo[playerid][InBusiness]][bEntranceY], BizzInfo[PlayerInfo[playerid][InBusiness]][bEntranceZ]);
PlayerInfo[playerid][InBusiness] = 0;
}
return 1;
}
}RE: press enter instead of /enter - phanchikiet060 - 2025-09-24 PHP Code: if(newkeys & KEY_YES)
{
for(new i = 0; i < sizeof( BizzInfo ); i++)
{
if(IsPlayerInRangeOfPoint( playerid, 3, BizzInfo[PlayerInfo[playerid][InBusiness]][bEntranceX], BizzInfo[PlayerInfo[playerid][InBusiness]][bEntranceY], BizzInfo[PlayerInfo[playerid][InBusiness]][bEntranceZ]))
{
TogglePlayerControllable(playerid, false);
Loaded[playerid] = 1;
ShowLoading(playerid);
SetTimer("LoadPlayer",3100,false);
SetPlayerInterior( playerid, BizzInfo[i][bInteriorID]);
SetPlayerPos( playerid, BizzInfo[PlayerInfo[playerid][InBusiness]][bExitX], BizzInfo[PlayerInfo[playerid][InBusiness]][bExitY], BizzInfo[PlayerInfo[playerid][InBusiness]][bExitZ]);
PlayerInfo[playerid][InBusiness] = i;
SetPlayerVirtualWorld( playerid, BizzInfo[i][bVirWorld]);
PlayerInfo[playerid][pVirtualWorld] = BizzInfo[i][bVirWorld];
PlayerInfo[playerid][InBusiness] = 1;
return 1; // yes , end for
}
else if(IsPlayerInRangeOfPoint( playerid, 5, BizzInfo[PlayerInfo[playerid][InBusiness]][bExitX], BizzInfo[PlayerInfo[playerid][InBusiness]][bExitY], BizzInfo[PlayerInfo[playerid][InBusiness]][bExitZ]))
{
PlayerInfo[playerid][pVirtualWorld] = 0;
SetPlayerVirtualWorld( playerid, 0);
SetPlayerInterior( playerid, BizzInfo[PlayerInfo[playerid][InBusiness]][bExteriorID]);
SetPlayerPos( playerid, BizzInfo[PlayerInfo[playerid][InBusiness]][bEntranceX], BizzInfo[PlayerInfo[playerid][InBusiness]][bEntranceY], BizzInfo[PlayerInfo[playerid][InBusiness]][bEntranceZ]);
PlayerInfo[playerid][InBusiness] = 0;
return 1; // yes end for
}
//return 1; erro
}
}
|