- ВойтиАвторизация через uNet
- РегистрацияРегистрация на сайте через uNet
Текущая версия SA-MP: 0.3.7
IP: 77.220.180.96:7777
Новые сообщения · Поиск |
|
|
Модератор форума: KaTacTpOqpa |
Форум Помощь по скриптингу SA-MP Вопросы по скриптингу Выбор города при коннекте! |
Выбор города при коннекте! | ||||
|
Demetrius | Сообщение # 2 | 12:10:06 09 Янв 2011 |
VIP-пользователи
Сообщений: 1192
Репутация: 158
|
о господи я такого не знаю О_о, жди владокса а как выбор городов сделать, так стащи код с grandlarc'a, он лежит в папке со стандартными модами в сервере Sweet >>> Armin >>> Demetrius SA:MP >> MTA:SA >> IRL |
DIZ_man | Сообщение # 3 | 12:36:58 09 Янв 2011 |
Пользователи
Сообщений: 27
Репутация: 0
|
Ну а объяснить???
|
BJIADOKC | Сообщение # 4 | 17:51:32 10 Янв 2011 |
Скриптеры
Сообщений: 601
Репутация: 161
|
ну ладно... начнем. в начало: Code #define VYBOR_GORODA 1234 new City[MAX_PLAYERS]; new RandomSpawnsLS[здесь число спавнов][3] = { x,y,z, x,y,z, x,y,z }; new RandomSpawnsSF[число спавнов][3] = { x,y,z, x,y,z, x,y,z }; new RandomSpawnsLV[число спавнов][3] = { x,y,z, x,y,z, x,y,z }; //x,y,z - координаты рандомного спавна (сам вставишь) в OnPlayerConnect Code City[playerid] = 0; ShowPlayerDialog(playerid,VYBOR_GORODA,DIALOG_STYLE_LIST,"Выбор города для спавна","Лос Сантос\nСан Фиерро\nЛас Вентурас","Ок","Отмена"); в OnDialogResponse Code if(dialogid == VYBOR_GORODA) { if(response == 1) { if(listitem == 0) { City[playerid] = 1; //тут вставляешь переменные фракций и всякую такую фигню } if(listitem == 1) { City[playerid] = 2; //тут вставляешь переменные фракций и всякую такую фигню } if(listitem == 2) { City[playerid] = 3; //тут вставляешь переменные фракций и всякую такую фигню } } if(response == 0) return SendClientMessage(playerid,0xFF0000AA,"Вы должны выбрать город!"); } и в OnPlayerSpawn Code if(City[playerid] == 1) { SetPlayerPos(playerid,RandomSpawnsLS[число спавнов][0],RandomSpawnsLS[число спавнов][1],RandomSpawnsLS[число спавнов][2]); } else if(City[playerid] == 2) { SetPlayerPos(playerid,RandomSpawnsSF[число спавнов][0],RandomSpawnsSF[число спавнов][1],RandomSpawnsSF[число спавнов][2]); } else if(City[playerid] == 3) { SetPlayerPos(playerid,RandomSpawnsLV[число спавнов][0],RandomSpawnsLV[число спавнов][1],RandomSpawnsLV[число спавнов][2]); } и в OnPlayerDisconnect Code City[playerid] = 0; урок от BJIADOKC тут больше не сижу... открыл свой проект Редактировано BJIADOKC - Понедельник, 10 Янв 2011, 17:59:33 |
DIZ_man | Сообщение # 5 | 16:58:45 11 Янв 2011 |
Пользователи
Сообщений: 27
Репутация: 0
|
Code (2222) : error 032: array index out of bounds (variable "RandomSpawnsLS") (2226) : error 032: array index out of bounds (variable "RandomSpawnsSF") (2230) : error 032: array index out of bounds (variable "RandomSpawnsLV") 3 Errors. Вот ошибки!
Code if(City[playerid] == 1) { [2222] SetPlayerPos(playerid,RandomSpawnsLS[3][0],RandomSpawnsLS[3][1],RandomSpawnsLS[3][2]); } else if(City[playerid] == 2) { [2226] SetPlayerPos(playerid,RandomSpawnsSF[3][0],RandomSpawnsSF[3][1],RandomSpawnsSF[3][2]); } else if(City[playerid] == 3) { [2230] SetPlayerPos(playerid,RandomSpawnsLV[3][0],RandomSpawnsLV[3][1],RandomSpawnsLV[3][2]); } |
Demetrius | Сообщение # 6 | 17:06:05 11 Янв 2011 |
VIP-пользователи
Сообщений: 1192
Репутация: 158
|
Quote (DIZ_man) Вот ошибки! а у меня все норм у тебя 3 спавна в каждом городе? Sweet >>> Armin >>> Demetrius SA:MP >> MTA:SA >> IRL |
DIZ_man | Сообщение # 7 | 17:15:47 11 Янв 2011 |
Пользователи
Сообщений: 27
Репутация: 0
|
по 3 городам 3 спавна в разных местах
|
BJIADOKC | Сообщение # 8 | 20:46:03 11 Янв 2011 |
Скриптеры
Сообщений: 601
Репутация: 161
|
попробуй придефайнить переменную MAX_CONNECT_SPAWNS: Code #define MAX_CONNECT_SPAWNS 3 и везде где число спавнов ставь MAX_CONNECT_SPAWNS тут больше не сижу... открыл свой проект |
DIZ_man | Сообщение # 9 | 22:24:50 11 Янв 2011 |
Пользователи
Сообщений: 27
Репутация: 0
|
Не а, не пашет! Тоже самое... ((( Можешь связаться со мной по скайпу??? ДА(напиши в пм свой скайп) Нет(напиши тут проблему моих ошибок) |
BJIADOKC | Сообщение # 10 | 08:46:11 12 Янв 2011 |
Скриптеры
Сообщений: 601
Репутация: 161
|
вот. попробуй немного другой вариант: Code new Float:RandomSpawnsLS[3][3] = { {x,y,z},{x,y,z},{x,y,z}}; new Float:RandomSpawnsSF[3][3] = { {x,y,z},{x,y,z},{x,y,z}}; new Float:RandomSpawnsLV[3][3] = { {x,y,z},{x,y,z},{x,y,z}}; //x y z собственно координаты и в OnPlayerSpawn Code new randls = random(sizeof(RandomSpawnsLS)); new randsf = random(sizeof(RandomSpawnsSF)); new randlv = random(sizeof(RandomSpawnsLV)); if(City[playerid] == 1) { SetPlayerPos(playerid,RandomSpawnsLS[randls][0],RandomSpawnsLS[randls][1],RandomSpawnsLS[randls][2]); } else if(City[playerid] == 2) { SetPlayerPos(playerid,RandomSpawnsSF[randsf][0],RandomSpawnsSF[randsf][1],RandomSpawnsSF[randsf][2]); } else if(City[playerid] == 3) { SetPlayerPos(playerid,RandomSpawnsLV[randlv][0],RandomSpawnsLV[randlv][1],RandomSpawnsLV[randlv][2]); } тут больше не сижу... открыл свой проект |
DIZ_man | Сообщение # 11 | 18:33:12 12 Янв 2011 |
Пользователи
Сообщений: 27
Репутация: 0
|
ХА! Получилось! Работает! СПС на тебе +
|
BJIADOKC | Сообщение # 12 | 18:53:55 12 Янв 2011 |
Скриптеры
Сообщений: 601
Репутация: 161
|
незачто) это почти моя работа тут больше не сижу... открыл свой проект |
Polcar | Сообщение # 13 | 06:47:28 27 Фев 2011 |
Руководитель проекта SM
Администраторы
Сообщений: 788
Репутация: 323
|
Тема закрыта!
|
| |||
| |||