Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 23

Тема: [ inc ][ all ][ Key Teleport Systems ]

  1. #1
    Активный пользователь Аватар для _[Bupyc]_
    Регистрация
    08.04.2010
    Адрес
    Chelyabinsk
    Возраст
    27
    Сообщений
    1,375
    Репутация: 85

    Звание: скоро придёт к известности

    Сообщение [ inc ][ all ][ Key Teleport Systems ]

    Всем привет!
    Поскольку у меня так мало работ я решил написать ченить новинькое.
    По руку попался PPS от оффреала и в голову пришла мысль сделать подобное ну на клавишу
    И я ето зделал! xD

    Начнем с установки:
    Для начала кидаем инклуд в папку с инклудами
    В моде(скрипте) прописываем
    PHP код:
    #include <KTS> 
    Теперь паблик
    PHP код:
    OnPlayerKeyStateChange(playerid,newkeys,oldkeys
    В конец добавить
    PHP код:
    KTS_OnPlayerKeyStateChange(playerid,newkeys,oldkeys); 
    Далее раскажу как создать сам телепорт
    Идем в OnGameModeInit()
    и добавляем туда телепорт создаеться он по такой форме
    PHP код:
    AddTeleport(X,Y,Z,A,Interior,VirtWorld,X2,Y2,Z2,A2,Interior2,VirtWorld2); 
    Описывать не буду поскольку слов не подобрать xD
    Вот 1 уже созданый
    PHP код:
    AddTeleport(-2026.7411,-100.6460,35.1641,175.7967,0,0,-2027.9166,-105.1811,1035.1719,125.0000,3,10);//Автошкола SF 
    поймите как он работает и всё станет ясно
    и ещё при создании телепорта создаються пикапы белой стрелки на обоих координатах xD
    ну вот вроде и всё!

    PHP код:
    // Key Teleport Systems (KTS)
    // Created by _[Bupyc]_ for lightcode.ru
    #if defined _KTS_included
    #endinput
    #endif

    #define _KTS_included
    #pragma library KTS

    forward KTS_OnPlayerKeyStateChange(playerid,newkeys,oldkeys);

    static 
    number=0;

    #define kts_Key 1024 // клавиша (по умолч ALT)
    #define kts_RADIUS 2.0 // рекомендую не менять

    enum KTS_Tele
    {
        
    Float:kts_X,
        
    Float:kts_Y,
        
    Float:kts_Z,
        
    Float:kts_A,
        
    kts_Int,
        
    kts_Virt,
        
    Float:kts_ToX,
        
    Float:kts_ToY,
        
    Float:kts_ToZ,
        
    Float:kts_ToA,
        
    kts_ToInt,
        
    kts_ToVirt,
    };
    new 
    Teleport[1000][KTS_Tele];


    public 
    KTS_OnPlayerKeyStateChange(playerid,newkeys,oldkeys)
    {
        if(
    newkeys == kts_Key)
        {
            for(new 
    num=0;num<number+1;num++)
            {
                if(
    IsPlayerInRangeOfPoint(playerid,kts_RADIUS,Teleport[num][kts_X],Teleport[num][kts_Y],Teleport[num][kts_Z]) && GetPlayerVirtualWorld(playerid) == Teleport[num][kts_Virt])
                {
                    
    KTS_PlayerTeleport(playerid,Teleport[num][kts_ToX],Teleport[num][kts_ToY],Teleport[num][kts_ToZ],Teleport[num][kts_ToA],Teleport[num][kts_ToInt],Teleport[num][kts_ToVirt]);
                    break;
                }
                else if(
    IsPlayerInRangeOfPoint(playerid,kts_RADIUS,Teleport[num][kts_ToX],Teleport[num][kts_ToY],Teleport[num][kts_ToZ]) && GetPlayerVirtualWorld(playerid) == Teleport[num][kts_ToVirt])
                {
                    
    KTS_PlayerTeleport(playerid,Teleport[num][kts_X],Teleport[num][kts_Y],Teleport[num][kts_Z],Teleport[num][kts_A],Teleport[num][kts_Int],Teleport[num][kts_Virt]);
                    break;
                }
            }
        }
        return;
    }

    stock KTS_PlayerTeleport(playerid,Float:X,Float:Y,Float:Z,Float:A,Int,Virt)
    {
        
    SetPlayerPos(playerid,X,Y,Z); SetPlayerFacingAngle(playerid,A);
        
    SetPlayerInterior(playerid,Int); SetPlayerVirtualWorld(playerid,Virt);
        return 
    1;
    }

    stock AddTeleport(Float:X,Float:Y,Float:Z,Float:A,Int,Virt,Float:ToX,Float:ToY,Float:ToZ,Float:ToA,ToInt,ToVirt)
    {
        
    number++;
        
    CreatePickup(1318,1,X,Y,Z,Virt); CreatePickup(1318,1,ToX,ToY,ToZ,ToVirt);
        
    Teleport[number][kts_X] = XTeleport[number][kts_Y] = YTeleport[number][kts_Z] = ZTeleport[number][kts_A] = A;
        
    Teleport[number][kts_Int] = IntTeleport[number][kts_Virt] = Virt;
        
    Teleport[number][kts_ToX] = ToXTeleport[number][kts_ToY] = ToYTeleport[number][kts_ToZ] = ToZTeleport[number][kts_ToA] = ToA;
        
    Teleport[number][kts_ToInt] = ToIntTeleport[number][kts_ToVirt] = ToVirt;
        return 
    1;

    Автор: _[Bupyc]_ тобиш я

  2. #2
    PowerNet Аватар для Hawkins
    Регистрация
    05.09.2010
    Адрес
    Волжский
    Сообщений
    1,879
    Репутация: 134

    Звание: скоро придёт к известности

    Re: [INC][ALL][Key Teleport Systems]

    Можешь на видео снять. Я чё то не понял как он работает

  3. #3
    Активный пользователь Аватар для _[Bupyc]_
    Регистрация
    08.04.2010
    Адрес
    Chelyabinsk
    Возраст
    27
    Сообщений
    1,375
    Репутация: 85

    Звание: скоро придёт к известности

    Re: [INC][ALL][Key Teleport Systems]

    Цитата Сообщение от Hawkins Посмотреть сообщение
    Можешь на видео снять. Я чё то не понял как он работает
    это телепорты работают по нажатию клавиши Alt(1024)
    как создовать их написал в 1 посту
    я бы снял на видео если бы комп не лагал

  4. #4
    Активный пользователь Аватар для _[Bupyc]_
    Регистрация
    08.04.2010
    Адрес
    Chelyabinsk
    Возраст
    27
    Сообщений
    1,375
    Репутация: 85

    Звание: скоро придёт к известности

    Re: [INC][ALL][Key Teleport Systems]

    где коментыыыы??

  5. #5
    Активный пользователь Аватар для Fenicks35
    Регистрация
    12.04.2011
    Адрес
    Экибастуз
    Возраст
    27
    Сообщений
    532
    Репутация: -8

    Звание: имеет немного плохого в прошлом

    Re: [INC][ALL][Key Teleport Systems]

    Отлично))Может быть и удобно.Надо попробывать.
    Помог?Ставь +-сик.
    Делаю мод TDM
    Основа-new.pwn

    PHP код:
    Профи епт :

  6. #6
    Активный пользователь Аватар для _[Bupyc]_
    Регистрация
    08.04.2010
    Адрес
    Chelyabinsk
    Возраст
    27
    Сообщений
    1,375
    Репутация: 85

    Звание: скоро придёт к известности

    Re: [INC][ALL][Key Teleport Systems]

    77 просмотров и 2 скачивания =(
    я че зря трудился =(

  7. #7
    [GM] Skill Training Mode Аватар для Gameyer
    Регистрация
    13.04.2010
    Адрес
    Россия
    Возраст
    28
    Сообщений
    2,296
    Репутация: 236

    Звание: - весьма и весьма положительная личность

    Re: [INC][ALL][Key Teleport Systems]

    Неплохая вещь. Можно сделать по оптимизированее. =)
    Skill Training Mode v3.1 Download
    Download

    Skill Training Mode Offical Web Site
    www.samp-stm.ru

    Skill Training Mode Offical Forum
    www.samp-stm.do.am

  8. #8
    Активный пользователь Аватар для _[Bupyc]_
    Регистрация
    08.04.2010
    Адрес
    Chelyabinsk
    Возраст
    27
    Сообщений
    1,375
    Репутация: 85

    Звание: скоро придёт к известности

    Re: [INC][ALL][Key Teleport Systems]

    Цитата Сообщение от Gameyer Посмотреть сообщение
    Неплохая вещь. Можно сделать по оптимизированее. =)
    согласен можно ну я на оптимизацию несмотрел да и время работы 28минут xD

  9. #9
    ?????? ??????? Аватар для OFFREAL
    Регистрация
    31.03.2010
    Адрес
    Калининград
    Возраст
    33
    Сообщений
    2,521
    Репутация: 249

    Звание: - весьма и весьма положительная личность

    Re: [INC][ALL][Key Teleport Systems]

    Интересная система, и не такая запутанная как моя.
    Вот думаю, а может в AddTeleport автоматически number++ делать?
    Только укажи в начале инклуда
    static number = 0;
    и в циклах вместо MAX_KTS тогда можно будет использовать number
    - - -
    Исходный код мог бы и в первом сообщении выложить, на так уж там много строк
    - - -
    moderator: Тема одобрена
    [Θpposing Force]

    Урок: [SQLite Database]
    Урок: [Оптимизация Циклов]
    Урок: [Битовые Операции]
    Полезные функции: [Useful Tools]
    #include [Pickup Portal System]
    Filterscript [Simple AFK System]
    Filterscript [Лазерное Наведение Ракет]
    Filterscript [TextDraw Arcanoid]
    Разное: [Func Tests]
    [Рейтинг Пользователей]

    Реклама в подписи запрещена!!!
    Я ВКонтакте: [vk.com/offreal]

    [SIGPIC][/SIGPIC]

    Код:
                  C---C  GTO  C---C
           \     /     \     /     \     /
            C---C   E   C---C   I   C---C
           /     \     /     \     /     \
       ---C   R   C---C   N   C---C   N   C---
           \     /     \     /     \     /
            C---C   U   C---C   O   C---C
           /     \     /     \     /     \
                  C---C  R11  C---C
                 /     \     /     \
                        C---C

  10. #10
    Активный пользователь Аватар для _[Bupyc]_
    Регистрация
    08.04.2010
    Адрес
    Chelyabinsk
    Возраст
    27
    Сообщений
    1,375
    Репутация: 85

    Звание: скоро придёт к известности

    Re: [INC][ALL][Key Teleport Systems]

    Цитата Сообщение от OFFREAL Посмотреть сообщение
    Интересная система, и не такая запутанная как моя.
    Вот думаю, а может в AddTeleport автоматически number++ делать?
    Только укажи в начале инклуда
    static number = 0;
    и в циклах вместо MAX_KTS тогда можно будет использовать number
    - - -
    Исходный код мог бы и в первом сообщении выложить, на так уж там много строк
    - - -
    moderator: Тема одобрена
    сделал!
    изменил 1 пост
    почемуто мне это в голову неприло =(

Страница 1 из 3 123 ПоследняяПоследняя

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •