Sign in to follow this  
Followers 0
DEST

Телепорт по карте с помощью метки (улучшено)

1 post in this topic

Внимание! Данная система не всегда работает корректно, и может возвращать нулевые координаты (т.е. телепортировать в поле). Вроде бы как это пофикшено в версии Beta Testing 2.4.3 CRMP 0.3.7. 

Улучшения:

  • После того, как вы выбрали точку на карте, система вас спросит, телепортироваться или нет. 
  • Вы телепортируетесь в 0 виртуальный мир и 0 интерьер. 

 глобальным переменным (new) добавляем:

new Float:pos[MAX_PLAYERS][3];

Далее создаем паблик, если он отсутствует, если есть, то в него суем код:
 

public OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ)
{
       if(PlayerInfo[playerid][pAdmin] >= 1)
       {
             pos[playerid][0] = fX;
             pos[playerid][1] = fY;
             pos[playerid][2] = fZ;
             ShowPlayerDialog(playerid, 122, DIALOG_STYLE_MSGBOX, "Телепорт", "\t\t\t{9ACD32}Уважаемый администратор!\n Вы подтверждаете действие: {9ACD32}переместиться на поставленую точку", "Да", "Нет");
        }
}

Ну и диалог в OnDialogResponse:

if(dialogid == 122)
    {
       if(response)
       {
       SetPlayerInterior(playerid,0);
       SetPlayerVirtualWorld(playerid, 0);
       SetPlayerPos(playerid, pos[playerid][0], pos[playerid][1], pos[playerid][2]);
       SendClientMessage(playerid,0x88AA88AA,"Вы переместились на отмеченную точку!");
       }
       else
       {
       SendClientMessage(playerid,0x88AA88AA,"Вы отменили перемещение!");
       return 1;
    }
}

На этом все!

Автор: неизвестен.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content