Главная О проекте Статьи Файлы Фотоальбомы Форум
Добавить сайт в «Избранное» | Вход в профиль

GTA VI

Информация:

GTA V

Информация: iFruit

Информация: Изображения:

Информация:

Информация:

Информация:

Информация:

Информация:

GTA: Chinatown Wars

Информация:

GTA IV

Информация:

Информация:

Информация:

Информация:

GTA: Vice City Stories

Информация: Изображения:

GTA: Liberty City Stories

Файлы: Информация: Изображения:

GTA: Trilogy Definitive Edition

Файлы: ...

GTA: San-Andreas

Информация: Статьи: Изображения:

GTA: Vice City

Информация: Изображения: Файлы:

Информация: Изображения:

GTA ]I[

Информация: Файлы:

Информация: Изображения:

GTA 2

  • 1
  • 2

GTA: Advance

Информация:

GTA




  • 1
  • 2

Меню сайта

Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
    • Страница 1 из 1
    • 1
    Форум » PAWN » Вопросы и проблемы » Смена ограничений территории
    Смена ограничений территории
    Ma4eteGT Дата: Четверг, 30/07/2009, 19:39 | Сообщение # 1
    Сержант



    Регистрация: 20/01/2009
    Клан:
    [Flyer]
    Страна:
    Статус:


    На мой вопрос:
    Quote
    Мне требуется помощь в одном вопросе. Мне нужно узнать как сделать так, чтобы игроки спаунились на одном месте, но чтобы после смерти они спаунились уже в другом месте, и так до 5, последнего спауна. (но не рандом, а по строгому порядку!).

    Ответили:
    Quote (Lex)
    создаём массив с координатами спаунов:

    new Float:Spawns[][3] = {
    {1.0, 1.0, 1.0},
    {2.0, 2.0, 2.0},
    {3.0, 3.0, 3.0},
    {4.0, 4.0, 4.0},
    {5.0, 5.0, 5.0}
    };
    new curSpawn[MAX_PLAYERS];

    Ну и при самом спауне игрока соответственно пишем как и с рандомными, только тут будет по-порядку:

    curSpawn[playerid] ++;
    if(curSpawn[playerid] >= sizeof(Spawns)) {curSpawn[playerid] = 0;}
    SetPlayerPos(playerid, Spawns[curSpawn[playerid]][0], Spawns[curSpawn[playerid]][1], Spawns[curSpawn[playerid]][2]);

    В общем сам вопрос таков - как сделать чтобы при каждом спауне у игрока менялось (но не уничтожалось) ограничение территории (а то спаунится он в одном месте, а его несёт на предыдущий спаун, якобы он зашёл за ограничение. После 5 - ТП куданить в лобби или в нейтральную зону, де судьи спауняца.

     
    OKStyle Дата: Четверг, 30/07/2009, 19:55 | Сообщение # 2
    Analgésico



    Регистрация: 17/01/2009
    Клан:
    [ACF]
    Статус:


    Массивы, конечно, хорошо, но можно решить этот вопрос куда более проще и наглядно:

    В начало:

    Code
    new CurSpawn[MAX_PLAYERS]=0; // любая созданная переменная равна нулю, но мы явно прировняем на всякий случай - текущий спавн

    В OnPlayerConnect:

    Code
    CurSpawn[playerid]=1; // чтобы появлялся сразу в раунде

    В OnPlayerSpawn:

    Code
    if(CurSpawn[playerid]==0)
    {
    SetPlayerPos(playerid,x,y,z); // стандартый спавн (можешь указать лобби)
    SetPlayerWorldBounds(playerid,-4000,4000,-4000,4000); // ставим ограничение зоны, размером во всю карту
    }
    else if(CurSpawn[playerid]==1)
    {
    SetPlayerPos(playerid,x,y,z); // спавн 1
    SetPlayerWorldBounds(playerid,wXmin,wXmax,wYmin,wYmax); // ставим ограничение зоны для спавна 1
    }
    else if(CurSpawn[playerid]==2)
    {
    SetPlayerPos(playerid,x,y,z); // спавн 2
    SetPlayerWorldBounds(playerid,wXmin,wXmax,wYmin,wYmax); // ставим ограничение зоны для спавна 2
    }
    else if(CurSpawn[playerid]==3)
    {
    SetPlayerPos(playerid,x,y,z); // спавн 3
    SetPlayerWorldBounds(playerid,wXmin,wXmax,wYmin,wYmax); // ставим ограничение зоны для спавна 3
    }
    else if(CurSpawn[playerid]==4)
    {
    SetPlayerPos(playerid,x,y,z); // спавн 4
    SetPlayerWorldBounds(playerid,wXmin,wXmax,wYmin,wYmax); // ставим ограничение зоны для спавна 4
    }
    else
    {
    SetPlayerPos(playerid,x,y,z); // спавн 5
    SetPlayerWorldBounds(playerid,wXmin,wXmax,wYmin,wYmax); // ставим ограничение зоны для спавна 5
    }

    В OnPlayerDeath:

    Code
    if(CurSpawn[playerid]==5)
    {
    CurSpawn[playerid]=0;
    }
    else
    {
    CurSpawn[playerid] = CurSpawn[playerid]+1; // или же CurSpawn[playerid]++;
    }




     
    009 Дата: Пятница, 31/07/2009, 13:40 | Сообщение # 3
    Criminal Syndicate Developer



    Регистрация: 10/06/2008
    Клан:
    [ACF]
    Страна:
    Статус:


    Немного изменю код...

    Code
    swich(CurSpawn[playerid])
    {
    case 0:
    {
    SetPlayerPos(playerid,x,y,z); // стандартый спавн (можешь указать лобби)
    SetPlayerWorldBounds(playerid,-4000,4000,-4000,4000); // ставим ограничение зоны, размером во всю карту
    }
    case 1:
    {
    SetPlayerPos(playerid,x,y,z); // спавн 1
    SetPlayerWorldBounds(playerid,wXmin,wXmax,wYmin,wYmax); // ставим ограничение зоны для спавна 1
    }
    case 2:
    {
    SetPlayerPos(playerid,x,y,z); // спавн 2
    SetPlayerWorldBounds(playerid,wXmin,wXmax,wYmin,wYmax); // ставим ограничение зоны для спавна 2
    }
    case 3:
    {
    SetPlayerPos(playerid,x,y,z); // спавн 3
    SetPlayerWorldBounds(playerid,wXmin,wXmax,wYmin,wYmax); // ставим ограничение зоны для спавна 3
    }
    case 4:
    {
    SetPlayerPos(playerid,x,y,z); // спавн 4
    SetPlayerWorldBounds(playerid,wXmin,wXmax,wYmin,wYmax); // ставим ограничение зоны для спавна 4
    }
    case 5:
    {
    SetPlayerPos(playerid,x,y,z); // спавн 5
    SetPlayerWorldBounds(playerid,wXmin,wXmax,wYmin,wYmax); // ставим ограничение зоны для спавна 5
    }
    }




     
    Ma4eteGT Дата: Суббота, 01/08/2009, 17:41 | Сообщение # 4
    Сержант



    Регистрация: 20/01/2009
    Клан:
    [Flyer]
    Страна:
    Статус:


    Всё нормально, всё работает
     
    Форум » PAWN » Вопросы и проблемы » Смена ограничений территории
    • Страница 1 из 1
    • 1
    Поиск:

    GTA MP

    Мультиплееры

    GTA Modding

    Статьи:
    GTA III

    GTA: Criminal Russia


    GTA: Underground


    GTA Network


    GTA WIKI


    Блок пользователя

    Календарь новостей
    «  Март 2015  »
    ПнВтСрЧтПтСбВс
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031

    Поиск

    Наша кнопка



    Партнёры

    Multi Theft Auto Community Russia

    Alliance of Cheater's Fighters
    Elite Force Opossition
    Brotherhood of Plumbum
    E1ect
    San-Andreas Bugousers
    Seville Crew
    Русский•Exclusive•Сервер
    Mixes
    http://rus-gta.do.am/
    Здесь вы можете все узнать про pawno,так же скачать моды, скрипты, программы, новости и много другое
    Pawno-Info: всё о GTA, статьи, wiki, скрипты и многое другое

    Вход на сайт

    Поиск

    Мини-чат

    Наш опрос
    Считаете ли вы IV-MP лучше SA-MP?
    Всего ответов: 481

    Статистика


    Copyright © Лаборатория O.K.Style 2001-2024 | GTA-Exclusive 2007-2024 | GTA News 2007-2024 | Хостинг от uCoz