Суббота, 18.04.2026, 19:53
Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Урок №1: Вход и выход в здание по команде
Jaime_DeasДата: Суббота, 02.04.2011, 15:24 | Сообщение # 1
Сержант
Группа: Администраторы
Сообщений: 30
Репутация: 0
Статус:


Так я уже не знал какой мне урок написать ну и решил этот. Знаю что все уже умеют это делать. И всех троллей прошу в лес идти.
Так что же с начало сделаем? Конечно же возьмем координаты входа в здание.
Идем на место где будет вход и пишем команду /save Вход №1
Далее идем в папку Мои Документы => GTA San Andreas User Files => SAMP
И видим файл savedpositions.txt в этом файле сохранены координаты места где мы прописали /save Вход №1.
Так открываем его текстовым редактором и смотрим. Что же мы там видим? Вот такую строчку.
Code
AddPlayerClass(19,2421.2844,-1220.8048,25.4617,175.5618,0,0,0,0,0,0); // Вход №1   

Так давайте разберем где же тут координаты?
Первая цифра 19 это айди твоего скина когда ты писал команду
Заметьте что далее стоит запятая, а потом уже точка.
Так вот это координаты X.

Code
2421.2844

Это координаты Y
Code
-1220.8048

Это координаты Z
Code
25.4617

Это угол поворота
Code
175.5618

Далее идет айди оружия оно нам не нужно.
Так теперь открываем ваш мод. Находим паблик
Посмотреть координаты и айди интерьеров можно Тут
Code
public OnPlayerCommandText(playerid, cmdtext[])

И туда вставляем команду.

Code
if(strcmp(cmd, "/enter", true) == 0)    
       {    
           if(IsPlayerConnected(playerid))    
           {    
        if (PlayerToPoint(2.0,playerid,2421.2844,-1220.8048,25.4617))//Координаты входа    
        {    
                        SetPlayerInterior(playerid,15); //Интерьер    
                SetPlayerPos(playerid,207.5863,-109.9778,1005.1328); //Место где должен появится    
                SetPlayerVirtualWorld(playerid, 0); //Виртуальный мир    
                         return 1;    
        }    
                    }    
                    return 1;    
              }   

Так это была команда входа. Теперь же я напишу команду выхода
Code
if(strcmp(cmd, "/exit", true) == 0)    
       {    
           if(IsPlayerConnected(playerid))    
           {    
        if (PlayerToPoint(2.0,playerid,207.5863,-109.9778,1005.1328))//Координаты где должен выходить    
        {    
                SetPlayerPos(playerid,2421.2844,-1220.8048,25.4617); //Место куда должен выйти    
                SetPlayerVirtualWorld(playerid, 0); //Виртуальный мир    
                         return 1;    
        }    
                    }    
                    return 1;    
              }   

Так а теперь добавим сам пикап входа.

Code
AddStaticPickup(1318, 2, 1153.9050,-1772.3301,16.5992);

Разберем опять же каждую циферку.
1318 это айди пикапа
Далее 2 это тип пикапа
ну и последнее это координаты.
Так же можно сделать что бы входил и выходил по команде. Для этого.
Находим паблик
Code
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)

И туда вставляем
Code
     if (newkeys == KEY_WALK)///Клавиша альт    
          {    
              OnPlayerCommandText(playerid, "/enter");    
              OnPlayerCommandText(playerid, "/exit");    
          }    

          if (newkeys == KEY_WALK)///Клавиша альт    
          {    
              OnPlayerCommandText(playerid, "/enter");    
              OnPlayerCommandText(playerid, "/exit");    
          }   

Так ну всё я вроде урок закончил.
Автор: VokVis aka TylerG
 
  • Страница 1 из 1
  • 1
Поиск: