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

GTA VI

Информация:

GTA V

Информация:

Информация:

Информация:

Информация:

Информация:

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

Информация:

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

GTA: Chinatown Wars

Информация:

GTA IV

Информация:

Информация:

Информация:

Информация:

GTA: Vice City Stories

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

GTA: Liberty City Stories

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

GTA: Trilogy

Файлы: ...


GTA: San-Andreas



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

GTA: Vice City



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

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

GTA ]I[



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

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

GTA 2

  • 1
  • 2

GTA: Advance

Информация:

GTA

  • 1
  • 2




[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Смена ограничений территории
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]
Страна:
Статус:


Всё нормально, всё работает
 
  • Страница 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

Меню сайта

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


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