Interior
#1

Hello. I made a entrance point to an interior but when I enter it there is nothing there. Just sky.

PHP код:
public OnPlayerPickUpPickup(playeridpickupid)
{
    if(
pickupid == cityhall)
    {
        
SetPlayerPos(playerid,1529.399519.265824.1406);
        
SetPlayerInterior(playerid384.808624,173.804992,1008.382812);
    }
    return 
1;

I want to be teleported to this interior.

Reply
#2

Код:
public OnPlayerPickUpPickup(playerid, pickupid) 
{ 
    if(pickupid == cityhall) 
    { 
        SetPlayerPos(playerid,1529.3995, 19.2658, 24.1406); 
        SetPlayerInterior(playerid, interior ID); 
        //SetplayerVirtualworld(playerid,virtualworldid);//if you using diferrent virtual world
    } 
    return 1; 
}
This is format for setplayerinterior SetPlayerInterior(playerid,interiorid)
Reply
#3

Aha thanks I fixed it now!
Reply
#4

Quote:
Originally Posted by Roddan
Посмотреть сообщение
Aha thanks I fixed it now. But how do I remove the original pickups from Single Player?
add DisableInteriorEnterExits()
under public OnGameModeInit()
Reply
#5

OK but I have one more problem.

I made an Exit position inside there and when I exit it I spawn in the sky not at the position I /save'ed right outside the building.

This is how I made it.

PHP код:
   if(pickupid == cityhallexit)
    {
       
SetPlayerPos(playerid1380.1812, -1088.767327.3906);
    } 
Reply
#6

You have make CMD for exit and enter, when you inside interior, add SetPlayerPos to outside interior. Don't forget to SetplayerVirtualworld

Like this:
Код:
CMD:enter(playerid, params[])
{
    if(IsPlayerInRangOfPoint(playerid, 2, 1281.3237,305.3041,19.5547))//outside interior
    {
        SetPlayerInterior(playerid, 6);
        SetPlayerVirtualWorld(playerid, 1);
        SetPlayerPos(playerid, 296.79998779297,-111.69999694824,1001.5);//inside interior
        SCM(playerid,WHITE, "Welcome to Cityhall");
    }
    return 1;
}

CMD:exit(playerid, params[])
{
    if(IsPlayerInRangOfPoint(playerid, 2, 296.79998779297,-111.69999694824,1001.5))//inside interior
    {
        SetPlayerInterior(playerid, 0);
        SetPlayerVirtualWorld(playerid, 0);
        SetPlayerPos(playerid, 1281.3237,305.3041,19.5547);//outside interior
    }
    return 1;
}
Thats example for enter or exit command
Reply
#7

Quote:
Originally Posted by blackbhuta
Посмотреть сообщение
You have make CMD for exit and enter, when you inside interior, add SetPlayerPos to outside interior. Don't forget to SetplayerVirtualworld

Like this:
Код:
CMD:enter(playerid, params[])
{
    if(IsPlayerInRangOfPoint(playerid, 2, 1281.3237,305.3041,19.5547))//outside interior
    {
        SetPlayerInterior(playerid, 6);
        SetPlayerVirtualWorld(playerid, 1);
        SetPlayerPos(playerid, 296.79998779297,-111.69999694824,1001.5);//inside interior
        SCM(playerid,WHITE, "Welcome to Cityhall");
    }
    return 1;
}

CMD:exit(playerid, params[])
{
    if(IsPlayerInRangOfPoint(playerid, 2, 296.79998779297,-111.69999694824,1001.5))//inside interior
    {
        SetPlayerInterior(playerid, 0);
        SetPlayerVirtualWorld(playerid, 0);
        SetPlayerPos(playerid, 1281.3237,305.3041,19.5547);//outside interior
    }
    return 1;
}
Thats example for enter or exit command
So lets say I have like 100 houses and interiors do I have to make a command for EVERYONE?
Reply
#8

Just have to add more if statements into the command. Like so;

pawn Код:
CMD:enter(playerid, params[])
{
    if( IsPlayerInRangeOfPoint(playerid, 2.0, 1281.3237,305.3041,19.5547))//outside interior
    {
        SetPlayerInterior(playerid, 6);
        SetPlayerVirtualWorld(playerid, 1);
        SetPlayerPos(playerid, 296.79998779297,-111.69999694824,1001.5);//inside interior
        SCM(playerid,WHITE, "Welcome to Cityhall");
    }
    else if( IsPlayerInRangeOfPoint( playerid, 2.0, 0.0, 0.0, 0.0 ) )
    {
        SetPlayerInterior( playerid, 0 ); // ... Blah
    }
    return 1;
}
Reply
#9

Quote:
Originally Posted by Roddan
Посмотреть сообщение
OK but I have one more problem.

I made an Exit position inside there and when I exit it I spawn in the sky not at the position I /save'ed right outside the building.

This is how I made it.

PHP код:
   if(pickupid == cityhallexit)
    {
       
SetPlayerPos(playerid1380.1812, -1088.767327.3906);
    } 
You should consider setting their interior as well (probably to '0')

pawn Код:
if(pickupid == cityhallexit)
{
    SetPlayerInterior(playerid, 0);
    SetPlayerPos(playerid, 1380.1812, -1088.7673, 27.3906);
}
Reply
#10

Quote:
Originally Posted by HellSphinX
Посмотреть сообщение
You should consider setting their interior as well (probably to '0')

pawn Код:
if(pickupid == cityhallexit)
{
    SetPlayerInterior(playerid, 0);
    SetPlayerPos(playerid, 1380.1812, -1088.7673, 27.3906);
}
I will try that.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)