Real Discoteka
| |
Василий1626 | Дата: Воскресенье, 06.07.2014, 21:01 | Сообщение # 1 |
.::Offline::.
Бандит
Сообщений: 25
[ 0 ]
Награды: 0
Статус
отсутствует
| Ребят, я вот себе сделал на пляже ЛС танцпол с диджеевским пультом, лазерами :), но я бы хотел еще что-то типа роботы диджея там сделать, чтобы там один человек, который хочет побыть диджеем, подходил к пикапу возле танцпола, ему менялся скин на диджея (например, на ID 19), и он мог подходить к своему пульту, там вводить какую-то команду (например, /playdj), ему появляется окошко, где он вводит прямую ссылку на музыку в Интернете, и эта музыка будет играть на всем танцполе. В инете нигде этого не нашел, к сожалению(( Помогите пожалуйста это сделать, буду очень-очень-очень благодарен!)
Учусь писать Pawno скрипты :)
|
|
| |
[S]ilverbac[k] | Дата: Воскресенье, 06.07.2014, 21:59 | Сообщение # 2 |
.::Offline::.
Пахан
Сообщений: 723
[ 86 ]
Награды: 17
Статус
отсутствует
| Для начала создай пикап и присвой его переменной
Код new dancepick;//ко всем new new playerdj[MAX_PLAYERS];//для проверки на диджея
dancepick = CreatePickup(...)//в OnGameModeInit
Ко всем #define добавь это
Далее в OnPlayerPickupPickup сделай проверку стоит ли игрок у пикапа или нет Код if(pickupid == dancepick) { SetPlayerSkin(playerid,19);//установка скина playerdj[playerid] = 1;//для проверки на диджея при вводе команды }
Далее в OnPlayerCommandText Код if(strcmp(cmd, "/playdj", true) == 0) { if(IsPlayerInRangeOfPoint(playerid,Float:range, Float:x, Float:y, Float:z) && playerdj[playerid] == 1) { ShowPlayerDialog(playerid,DJ_URL,DIALOG_STYLE_INPUT,"Выбор трека","Введите URL вашего трека, чтобы его услышали все!!!\n\n","Ок","Отмена"); } }
В OnDialogResponse
Код if(dialogid == DJ_URL) { if(response) { for(new i=0; i<MAX_PLAYERS;i++) { if(IsPlayerInRangeOfPoint(i,Float:range, Float:x, Float:y, Float:z)) { PlayAudioStreamForPlayer(i, inputtext); } } } }
В общем, система не сложная, главное понять что как работает. Если код не рабочий, пиши.
[FS]Neon[APP]FCP[APP]Vehicle Tuning Generator ||||| 20% -- Работа приостановленаОбложка:
|
|
| |
Василий1626 | Дата: Понедельник, 07.07.2014, 21:41 | Сообщение # 3 |
.::Offline::.
Бандит
Сообщений: 25
[ 0 ]
Награды: 0
Статус
отсутствует
| У меня вот такая ошибка вылеает при компилировании:
C:\Users\D\Desktop\Real World RP\gamemodes\realworld.pwn(3248) : error 017: undefined symbol "range" C:\Users\D\Desktop\Real World RP\gamemodes\realworld.pwn(25975) : error 017: undefined symbol "range" Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
2 Errors.
Учусь писать Pawno скрипты :)
|
|
| |
[S]ilverbac[k] | Дата: Понедельник, 07.07.2014, 22:14 | Сообщение # 4 |
.::Offline::.
Пахан
Сообщений: 723
[ 86 ]
Награды: 17
Статус
отсутствует
| В IsPlayerInRangeOfPoint Float:Range замени на 1.0 или 2.0
[FS]Neon[APP]FCP[APP]Vehicle Tuning Generator ||||| 20% -- Работа приостановленаОбложка:
|
|
| |
Василий1626 | Дата: Понедельник, 07.07.2014, 22:50 | Сообщение # 5 |
.::Offline::.
Бандит
Сообщений: 25
[ 0 ]
Награды: 0
Статус
отсутствует
| хм, у меня такого паблика в павно вообще нет..Добавлено (07.07.2014, 22:50) --------------------------------------------- [S]ilverbac[k], напиши пожалуйста сюда или в лс свой скайп, там подумаем
Учусь писать Pawno скрипты :)
|
|
| |
[S]ilverbac[k] | Дата: Понедельник, 07.07.2014, 23:09 | Сообщение # 6 |
.::Offline::.
Пахан
Сообщений: 723
[ 86 ]
Награды: 17
Статус
отсутствует
| IsPlayerInRangeOfPoint это не паблик это функция которую я в своем примере использовал, там указано id игрока, радиус действия и коорды. Float:Range и есть радиус действия, просто вместо Float:Range поставь 1.0 или 2.0
p.s.: В скайпе не отвечаю.
[FS]Neon[APP]FCP[APP]Vehicle Tuning Generator ||||| 20% -- Работа приостановленаОбложка:
|
|
| |
Василий1626 | Дата: Понедельник, 07.07.2014, 23:23 | Сообщение # 7 |
.::Offline::.
Бандит
Сообщений: 25
[ 0 ]
Награды: 0
Статус
отсутствует
| Сделал так как Вы сказали, но:
C:\Users\D\Desktop\Real World RP\gamemodes\realworld.pwn(3248) : error 017: undefined symbol "x" C:\Users\D\Desktop\Real World RP\gamemodes\realworld.pwn(25975) : error 017: undefined symbol "x" Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
2 Errors.
Учусь писать Pawno скрипты :)
|
|
| |
[S]ilverbac[k] | Дата: Понедельник, 07.07.2014, 23:31 | Сообщение # 8 |
.::Offline::.
Пахан
Сообщений: 723
[ 86 ]
Награды: 17
Статус
отсутствует
| Вместо Float:x,Float:y,Float:z нужно поставить свои координаты
[FS]Neon[APP]FCP[APP]Vehicle Tuning Generator ||||| 20% -- Работа приостановленаОбложка:
|
|
| |
Василий1626 | Дата: Вторник, 08.07.2014, 00:14 | Сообщение # 9 |
.::Offline::.
Бандит
Сообщений: 25
[ 0 ]
Награды: 0
Статус
отсутствует
| Ура, все получилось! Сделайте пожалуйста еще такое: 1) Эту музыку с танцплощадки слышно аж до мерии :), а как можно ограничить радиус звучания (чтобы звучало только в некотором радиусе от танцпола или пульта)?; 2) Когда я подхожу к пульту в обычном скине и набираю команду /playdj, то окошко, где вводится ссылка песни, всеравно выскакивает, а как сделать, чтобы оно выскакивало только у диджея, который переоделся (сменил скин) у пикапа?; 3) Какой код еще нужно вставить, чтобы человек, который на тот момент был dj-ем, снова подошел к тому же пикапу, и эму вернулся тот же скин, что был до этого? Ну и чтобы у него не было права доступа к пульту (тоесть чтобы ему не выскакивало окошко, где вводится URL песни); 4) Ну и чтобы на танцполе был только один диджей, тоесть, чтобы когда там он уже есть, то когда другой человек подходит к пикапу, ему не меняется скин на dj-я, а в чате пишет что-то типа, что там dj уже есть (или без этого). Помогите пожалуйста с этим. P.S. и еще такое: когда тот игрок, который устроился диджеем, отошел на достаточно большое расстояние от пульта и танцпола, то чтобы его работа dj-я автоматически прекрашщалась, ему на месте возвращался его скин, и чтобы другой игрок возле танцпола смог наступить на тот же пикап, и уже ему выдавался скин и работа dj-я.
Учусь писать Pawno скрипты :)
Сообщение отредактировал
Василий1626 - Вторник, 08.07.2014, 00:31 |
|
| |
[S]ilverbac[k] | Дата: Вторник, 08.07.2014, 00:34 | Сообщение # 10 |
.::Offline::.
Пахан
Сообщений: 723
[ 86 ]
Награды: 17
Статус
отсутствует
| В OnDialogResponse Float:range надо установить примерно 15.0
Ограничение кол-ва диджеев:
Ко всем new
Вместо старой команды:
Код if(strcmp(cmd, "/playdj", true) == 0) { if(dj == true) { SendClientMessage(playerid,0xFF0000FF,"Место диджея уже занято!!!"); } if(playerdj[playerid] == 1) { if(IsPlayerInRangeOfPoint(playerid,Float:range, Float:x, Float:y, Float:z)) { ShowPlayerDialog(playerid,DJ_URL,DIALOG_STYLE_INPUT,"Выбор трека","Введите URL вашего трека, чтобы его услышали все!!!\n\n","Ок","Отмена"); } } }
Для возврата прежнего скина:
Ко всем new
Код new playerskinvar[MAX_PLAYERS]; new backskinpick;
В OnGameModeInit
Код backskinpick = CreatePickup(...);//пикап для возврата прежнего скина
В OnPlayerPickUpPickup вместо предыдущей части кода
Код if(pickupid == dancepick) { playerskinvar[playerid] = GetPlayerSkin(playerid); SetPlayerSkin(playerid,19);//установка скина playerdj[playerid] = 1;//для проверки на диджея при вводе команды dj = true; } else if(pickupid == backskinpick) { SetPlayerSkin(playerid,playerskinvar[playerid]);//возврат старого скина playerdj[playerid] = 0;//игрок больше не диджей dj = false; }
[FS]Neon[APP]FCP[APP]Vehicle Tuning Generator ||||| 20% -- Работа приостановленаОбложка:
|
|
| |
Василий1626 | Дата: Вторник, 08.07.2014, 01:10 | Сообщение # 11 |
.::Offline::.
Бандит
Сообщений: 25
[ 0 ]
Награды: 0
Статус
отсутствует
| Все вроде бы правильно вписал, но вот:
C:\Users\D\Desktop\Real World RP\gamemodes\realworld.pwn(18321) : error 033: array must be indexed (variable "dancepick") C:\Users\D\Desktop\Real World RP\gamemodes\realworld.pwn(18328) : error 033: array must be indexed (variable "backskinpick") C:\Users\D\Desktop\Real World RP\gamemodes\realworld.pwn(25993) : warning 202: number of arguments does not match definition Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
2 Errors.
Учусь писать Pawno скрипты :)
|
|
| |
[S]ilverbac[k] | Дата: Вторник, 08.07.2014, 11:37 | Сообщение # 12 |
.::Offline::.
Пахан
Сообщений: 723
[ 86 ]
Награды: 17
Статус
отсутствует
| Скинь строку 25993
[FS]Neon[APP]FCP[APP]Vehicle Tuning Generator ||||| 20% -- Работа приостановленаОбложка:
|
|
| |
Василий1626 | Дата: Вторник, 08.07.2014, 16:00 | Сообщение # 13 |
.::Offline::.
Бандит
Сообщений: 25
[ 0 ]
Награды: 0
Статус
отсутствует
| Этой строки вообще нету в моде, даже самого числа 25993 нет.. Тоже самое с 18321 и 18328 - этих числ нету в моде.
Учусь писать Pawno скрипты :)
|
|
| |
[S]ilverbac[k] | Дата: Вторник, 08.07.2014, 16:24 | Сообщение # 14 |
.::Offline::.
Пахан
Сообщений: 723
[ 86 ]
Награды: 17
Статус
отсутствует
|
[FS]Neon[APP]FCP[APP]Vehicle Tuning Generator ||||| 20% -- Работа приостановленаОбложка:
|
|
| |
dr40 | Дата: Воскресенье, 20.07.2014, 17:32 | Сообщение # 15 |
.::Offline::.
Разбойник
Сообщений: 55
[ 0 ]
Награды: 0
Статус
отсутствует
| Тема исчерпала себя . Закрыто !!!!
Сообщение отредактировал
dr40 - Воскресенье, 20.07.2014, 17:32 |
|
| |
|