|
Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/
|
Модификация deagsmapmanager
|
|
| WhiteBear | Дата: Суббота, 07.06.2008, 13:29:24 | Сообщение # 1 |
|
Подполковник
Группа: Пользователи
Сообщений: 132
Статус: Не в сети
| Всего доброго, скриптописатели!! Прошу помощи - нашел кусок кода для mapchooser.amxx Quote g_mapNums=0 if (get_playersnum() >=19) loadSettings("bigs_mapcycle.txt") else if (get_playersnum() <=9) loadSettings("mini_mapcycle.txt") else loadSettings("middle_mapcycle.txt") который добавляет выбор файла с набором карт в зависимости от количества играющих на сервере на момент голосования. Вопрос: можно ли привнести подобные изменения в плагин deagsmapmanager_v3.0. ps За ранее благодарен отозвавшимся  Добавлено (2008-06-07, 1:29 Pm) --------------------------------------------- ?? печально... хотяб знающиелюди сказали что это анреал... не надеялся бы ((
Сообщение отредактировал WhiteBear - Четверг, 05.06.2008, 15:32:06 |
| |
|
|
| DaTa | Дата: Суббота, 07.06.2008, 23:23:29 | Сообщение # 2 |
|
Генерал-полковник
Группа: Cупер-модеры
Сообщений: 1025
Статус: Не в сети
| эта такой мусорник, мне туда даже страшно смотреть
|
| |
|
|
| CLLlAgOB | Дата: Воскресенье, 08.06.2008, 21:08:40 | Сообщение # 3 |
 Полковник
Группа: Скриптеры
Сообщений: 217
Статус: Не в сети
| Ищи в исходниках где грузиться mapchoice.ini и сделай замену на свой кусочек только не забуть сделать запрос на колво игроков
|
| |
|
|
| WhiteBear | Дата: Вторник, 10.06.2008, 14:55:36 | Сообщение # 4 |
|
Подполковник
Группа: Пользователи
Сообщений: 132
Статус: Не в сети
| к сожалению в скриптах не силен и простым просмотром исходника найти место которое отвечает за выбор маплиста не смог кроме того у меня карты грузятся с mapcycle.txt, хотя это ничего не меняет...
|
| |
|
|
| se7h | Дата: Четверг, 12.06.2008, 15:18:24 | Сообщение # 5 |
 Генерал-майор
Группа: Cупер-модеры
Сообщений: 424
Статус: Не в сети
| Quote (WhiteBear) ?? печально... хотяб знающиелюди сказали что это анреал... не надеялся бы (( конечно возможно попробуй это, я изменил исходник в части public load_maps() теоретически должно быть три файла: big_mapchoice.ini, midle_mapchoice.ini, mini_mapchoice.ini, если игрков больше 20 - big_mapchoice.ini если от 10 до 20 - midle_mapchoice.ini если меньше 10 - mini_mapchoice.ini пробуй
Сообщение отредактировал se7h - Четверг, 12.06.2008, 15:33:44 |
| |
|
|
| WhiteBear | Дата: Четверг, 12.06.2008, 15:43:30 | Сообщение # 6 |
|
Подполковник
Группа: Пользователи
Сообщений: 132
Статус: Не в сети
| Спасибо за внимание! забрал, на днях попробую (когда до сервера дойду). Т.к. я использую все таки основной маплист mapcycle.txt, я разглядыванием исходника (именно разглядыванием ) пришел к выводу. что обращение к маплисту идет через значение сервера mapcyclefile, и если это так, то возможно проще будет написать (читай как "попросить написать") мини плагин для переодической проверки количества игроков и изменения в связи с этим значения mapcyclefile. Но это пока моя мысль, ничем кроме догадок не потвержденная. Написал автору плагина, по результату посмотрим.
|
| |
|
|
| se7h | Дата: Четверг, 12.06.2008, 18:03:40 | Сообщение # 7 |
 Генерал-майор
Группа: Cупер-модеры
Сообщений: 424
Статус: Не в сети
| не за что, делов на 5 минут
|
| |
|
|
| WhiteBear | Дата: Пятница, 13.06.2008, 15:20:59 | Сообщение # 8 |
|
Подполковник
Группа: Пользователи
Сообщений: 132
Статус: Не в сети
| Спасибо еще раз, вроде работает (почему "вроде" - потому что опробировано тока на 1 игроке =) на мне) Я еще по подобию добавил еще на 32 игрока маплист (тока почему то когда написал =32 - при компиляции изматерилось, а когда >31 то все норм...
|
| |
|
|
| se7h | Дата: Пятница, 13.06.2008, 19:16:06 | Сообщение # 9 |
 Генерал-майор
Группа: Cупер-модеры
Сообщений: 424
Статус: Не в сети
| равно в условии == , а не =
|
| |
|
|
| WhiteBear | Дата: Четверг, 19.06.2008, 04:20:30 | Сообщение # 10 |
|
Подполковник
Группа: Пользователи
Сообщений: 132
Статус: Не в сети
| se7h, снова требуется чуточку твоего времени, если не затруднит. Сегодня плотно тестировал модификацию плагина при малом числе народу, не работает =(( Code if(get_playersnum()>31) format(choicepath,64,"%s/mapchoice_6.ini",custompath) else if(get_playersnum()>24) format(choicepath,64,"%s/mapchoice_6.ini",custompath) else if(get_playersnum()>14) format(choicepath,64,"%s/mapchoice_6.ini",custompath) else if(get_playersnum()>5) format(choicepath,64,"%s/mapchoice_6.ini",custompath) else format(choicepath,64,"%s/mapchoice_0-6.ini",custompath) при любом количестве (в данном случае 5, 6 человек) карты берутся тока из нижнего mapchoice. Т.е. плагин берет новое значение mapchoice, по почему то не обрабатывает численность игроков. Запускал голосование при 5 человеках - берет карты из нижнего, захожу на сервер (то есть шестым), снова запускаю голосование, опять из нижнего. Я тут чуть подредактировал по подобию под себя, может где ошибку допустил (вроде не должен. На то что первые пять mapchoice одинаковые не смотри - это уже последние проверки были на то какой mapchoice берется - все равно последний ) Ps я тут сейчас глянул, может после get_playersnum() и перед условием пробел нужен, как в куске кода моего первого поста?? Добавлено (2008-06-19, 4:20 Am) --------------------------------------------- Добавление пробелов не помогло 
Сообщение отредактировал WhiteBear - Среда, 18.06.2008, 13:21:12 |
| |
|
|
| se7h | Дата: Четверг, 19.06.2008, 12:11:11 | Сообщение # 11 |
 Генерал-майор
Группа: Cупер-модеры
Сообщений: 424
Статус: Не в сети
| попробуй этот код (укажешь кол-ва игроков для каждого case, думаю логика ясна): Code switch(get_playersnum()) { case 1,2,3,4,5,6: format(choicepath,64,"%s/mapchoice_1-6.ini",custompath) case 7,8,9,10,11,12,13,14: format(choicepath,64,"%s/mapchoice_7-14.ini",custompath) case 15,16,17,18,19,20,21,22: format(choicepath,64,"%s/mapchoice_15-22.ini",custompath) case 23,24,25,26,27,28,29,30: format(choicepath,64,"%s/mapchoice_23-30.ini",custompath) case 31,32: format(choicepath,64,"%s/mapchoice_31-32.ini",custompath) }
|
| |
|
|
| WhiteBear | Дата: Пятница, 20.06.2008, 16:38:34 | Сообщение # 12 |
|
Подполковник
Группа: Пользователи
Сообщений: 132
Статус: Не в сети
| Спасибо, завтра (наверное) опробую. off se7h, помнишь я писал по поводу дергания картинки когда с awp (плаг real_snipe)? На днях заметил, что модель игрока, стоящего с awp на приближении, как бы кивает верхней частью тела. При этом стоящий целится ровно (ну насколько это возможно при колебании прицела) - это я спрашивал у игрока. Получается что поддергивания картинки, когда смотришь за спектра (а они остались после отключения видимости тряски и колебаний для спектров) вызваны этими киваниями. На геймплее это не сказывается, пишу по этому поводу, так сказать, для сведений. Может какие из установленных у меня плагинов вызывают такой эффект, не знаю... Просто протестить отключениями плагов на живом сервере мне не дадут и так слышу много интересного третий день из-за теста deagsmapmanager  Добавлено (2008-06-20, 4:38 Pm) --------------------------------------------- к сожалению, последний код совсем не работает а первый вариант срабатывает последней строкой, я так понимаю, потому что она в принципе повторяет ту, которую заменили кодом.. Т.е. комбинация if... else почему то вообще необрабатывается (( Путем насилия над своим мозгом и исходником выяснил что вместо mapcycle.txt можно использовать любой файл который указан переменной сервера mapcyclefile. НО плагин берет из нового mapcyclefile карты только после смены карты, а не перед очередным голосованием. Т.е. вариант с мини плагином меняющим значение mapcyclefile в зависимости от количества игроков не подходит Конечно завязать на сменяемые мапциклы было бы лучше (потому что можно переменной включить только использование мапцикла, а не 3 или 4 файлов с картами как сейчас) НО про мапциклы по коду плагина проходит много раз запрос переменной мапцикла (( ps изменил (по подобию где то увиденного if... else) первый вариант кода на Code if ((get_playersnum()<2)) { format(choicepath,64,"%s/mapchoice1.ini",custompath) } else if((get_playersnum()<3)) { format(choicepath,64,"%s/mapchoice2.ini",custompath) } else if((get_playersnum()<4)) { format(choicepath,64,"%s/mapchoice3.ini",custompath) } else { format(choicepath,64,"%s/mapchoice4.ini",custompath) } при первом тестировании карты на голосование поставились с ПЕРВОГО мапчойсе. Что уже радует )) доберусь до работы буду еще тестить...
|
| |
|
|
| DaTa | Дата: Суббота, 21.06.2008, 03:25:40 | Сообщение # 13 |
|
Генерал-полковник
Группа: Cупер-модеры
Сообщений: 1025
Статус: Не в сети
| se7h, Quote (se7h) case 1,2,3,4,5,6: можно записать как
Сообщение отредактировал DaTa - Суббота, 21.06.2008, 03:25:50 |
| |
|
|
| se7h | Дата: Суббота, 21.06.2008, 13:40:50 | Сообщение # 14 |
 Генерал-майор
Группа: Cупер-модеры
Сообщений: 424
Статус: Не в сети
| Quote (WhiteBear) off se7h, помнишь я писал по поводу дергания картинки когда с awp (плаг real_snipe)?На днях заметил, что модель игрока, стоящего с awp на приближении, как бы кивает верхней частью тела. При этом стоящий целится ровно (ну насколько это возможно при колебании прицела) - это я спрашивал у игрока. Получается что поддергивания картинки, когда смотришь за спектра (а они остались после отключения видимости тряски и колебаний для спектров) вызваны этими киваниями.На геймплее это не сказывается, пишу по этому поводу, так сказать, для сведений. если не влияет на игровой процесс - забей я не юзаю смену карт, поэтому слабо представляю что там и какие файлы нужны, поэтому ничего не могу ответить а вообще этот код должен работать, по крайней мере теоретически: Code switch(get_playersnum()) { case 1..6: format(choicepath,64,"%s/mapchoice_1-6.ini",custompath) case 7..14: format(choicepath,64,"%s/mapchoice_7-14.ini",custompath) case 15..22: format(choicepath,64,"%s/mapchoice_15-22.ini",custompath) case 23..30: format(choicepath,64,"%s/mapchoice_23-30.ini",custompath) case 31,32: format(choicepath,64,"%s/mapchoice_31-32.ini",custompath) } спасибо DaTa
Сообщение отредактировал se7h - Суббота, 21.06.2008, 13:41:25 |
| |
|
|
| WhiteBear | Дата: Понедельник, 23.06.2008, 15:52:02 | Сообщение # 15 |
|
Подполковник
Группа: Пользователи
Сообщений: 132
Статус: Не в сети
| После добавления 1 в get_playersnum первого варианта кода Code if(get_playersnum(1)<2) format(choicepath,64,"%s/mapchoice1.ini",custompath) else if(get_playersnum(1)<3) format(choicepath,64,"%s/mapchoice2.ini",custompath) else format(choicepath,64,"%s/mapchoice3.ini",custompath) начало переключаться между mapchoice1 и mapchoice2 при соответственно 1, 2 игроках. НО переключение происходит не сразу, а только через карту. Т.е. 1 человек - mapchoice1. Подключился еще один - mapchoice1, после смены мар - mapchoice2 Получается плагин считает количество игроков тока при загрузке карты Это поправимо?Добавлено (2008-06-23, 3:52 Pm) --------------------------------------------- как изменить //set_task(17.0,"load_maps"), чтобы блок кода выполнялся каждые 3 минуты?? Примерно так set_task(180,"load_maps",0,"",,"b")?
Сообщение отредактировал WhiteBear - Воскресенье, 22.06.2008, 12:13:19 |
| |
|
|
 | AMX Mod X Russian Community © 2006-2026  |  |
|
| |