|
|
|
|
[Заказ] Мультиборд
|
|
Smartaros | Дата: Вторник, 23 Октября 2012, 20:18:51 | Сообщение # 1 |
9 уровень
Группа: Проверенные
Сообщений: 810
Награды: 0
Репутация: 135
Блокировки:
| Нужен ГИБКИЙ мультиборд на Jass2, который удобно и быстро настроить/изменить. Сам ими никогда не занимался, сегодня сел делать, что-то вылепил, но гибко не получилось, всерьез заняться этим нехватает времени из за учебы и работы. Что значит гибкий? Это значит, во первых: колличество строк должно изначально меняться в зависимости от числа играющих. В зависимости от того какие игроки играют подгонять их строчки чтобы все шло по порядку, и с дальнейшим удобным обращениям к этим строкам. Во вторых: все должно быть в глобалках. В общем надо типо этого:
|
|
|
|
Ty3uK | Дата: Вторник, 23 Октября 2012, 20:31:01 | Сообщение # 2 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Моя наработка давным давно ушла в никуда, нашел только код. Если есть желание изучить - пожалуйста. Еще могу дать свою карту, но там он на cJASS.
Сообщение отредактировал Ty3uK - Вторник, 23 Октября 2012, 20:32:26 |
|
|
|
Smartaros | Дата: Вторник, 23 Октября 2012, 23:29:21 | Сообщение # 3 |
9 уровень
Группа: Проверенные
Сообщений: 810
Награды: 0
Репутация: 135
Блокировки:
| жесть, я щас пытаюсь написать функцию определения строки игрока, а это увеличение колличества ифов в геометрической прогрессии, уже мозги спеклись, ничего не соображаю, может есть кто нибудь со свежими мозгами? Вообщем нужно узнать строку игрока, с учетом играбельности/неиграбельности игроков с меньшим индексом.
|
|
|
|
Borodach | Дата: Среда, 24 Октября 2012, 01:56:19 | Сообщение # 4 |
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
| Smartaros, Если я тебя правильно понял то Code globals integer array ForcePlayer [11] endglobals
function FirstPlayer takes nothing returns nothing local integer l = 0 local integer CountP = 0 loop if GetPlayerController(Player(l)) == MAP_CONTROL_USER and GetPlayerSlotState(Player(l)) == PLAYER_SLOT_STATE_PLAYING then set ForcePlayer [CountP] = GetPlayerId(Player(l)) set CountP = CountP + 1 endif set l = l +1 exitwhen l == 11 endloop endfunction В переменной ForcePlayer[0] будет номер первого играющего игрока, а в ForcePlayer[1] второго.
Karamba
|
|
|
|
Smartaros | Дата: Среда, 24 Октября 2012, 02:12:50 | Сообщение # 5 |
9 уровень
Группа: Проверенные
Сообщений: 810
Награды: 0
Репутация: 135
Блокировки:
| нет, мне нужно узнавать строчку с игроком, в зависимости от других играющих, к примеру у первого она в любом случае будет третей, у второго - четвертой, так как первый хост, если он ливнет то игра окончится, а вот допустим нужно узнать строчку шестого игрока, на скрине она восьмая, а если второй и четвертый не играют? то шестая.....а если второй и третий не играют? тоже шестая, получается очень много ифов, прикинь на сколько строк будет условие для 12 игрока? 12*12*колличество строк с ретурнами и ендифами. В доте это как то сделали, и наверняка не такой гигантской конструкцией из ифов.
|
|
|
|
Borodach | Дата: Среда, 24 Октября 2012, 13:10:06 | Сообщение # 6 |
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
| Code globals integer array ForcePlayer [11] integer array RowsPlayer [11] endglobals
function FirstPlayer takes nothing returns nothing local integer l = 0 local integer CountP = 0 local integer rows = 3 loop if /*GetPlayerController(Player(l)) == MAP_CONTROL_USER and*/ GetPlayerSlotState(Player(l)) == PLAYER_SLOT_STATE_PLAYING then if l < 5 then set ForcePlayer [CountP] = GetPlayerId(Player(l))+1 set RowsPlayer [CountP] = rows set CountP = CountP + 1 set rows = rows + 1 elseif l == 6 set rows = 10 set ForcePlayer [CountP] = GetPlayerId(Player(l))+1 set RowsPlayer [CountP] = rows set CountP = CountP + 1 set rows = 10 + 1 else set ForcePlayer [CountP] = GetPlayerId(Player(l))+1 set RowsPlayer [CountP] = rows set CountP = CountP + 1 set rows = rows + 1 endif endif set l = l +1 exitwhen l == 11 endloop endfunction ForcePlayer [0] = Номер игрока RowsPlayer [0] = № Строки для игрока
ForcePlayer [1] = Номер 2(играющего) игрока RowsPlayer [1] = № Строки для 2 игрока
Karamba
Сообщение отредактировал Borodach - Среда, 24 Октября 2012, 13:12:39 |
|
|
|
SirNikolas | Дата: Среда, 24 Октября 2012, 13:10:08 | Сообщение # 7 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Quote (Borodach) integer array ForcePlayer [11] [12]Quote (Smartaros) к примеру, у первого она в любом случае будет третьей Делай, как сказал Borodach, плюс следующее:Code function GetPlayerRow takes integer id returns integer if id < 6 then//Первые шесть игроков, с нулевого до пятого return ForcePlayer[id] + 2 endif return ForcePlayer[id] + 3 endfunction
|
|
|
|
lawson | Дата: Среда, 24 Октября 2012, 21:53:38 | Сообщение # 8 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Пфф, тоже раньше для меня это было тьмой беспросветной - думал так, но освоил за ровно один день. Написал библиотеку работы с таблицей для каждого героя и его спелов, но просто было лень закончить, очень долго это было все расписывать именно для каждого спела(перезарядка, иконка, актив\пассив и тд)
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
Сообщение отредактировал lawson - Среда, 24 Октября 2012, 21:55:45 |
|
|
|
Smartaros | Дата: Пятница, 26 Октября 2012, 16:19:35 | Сообщение # 9 |
9 уровень
Группа: Проверенные
Сообщений: 810
Награды: 0
Репутация: 135
Блокировки:
| ого, я оказывается тоже что-то умею, и я сделал проще: Code function GetPlayerRow takes integer id returns integer local integer i = 0 local integer count = 0 if id < 6 then loop if GetPlayerController(Player(i)) == MAP_CONTROL_USER and GetPlayerSlotState(Player(i)) == PLAYER_SLOT_STATE_PLAYING and i < id then set count = count + 1 endif exitwhen i == 5 set i = i + 1 endloop return count + 2 else set i = 6 loop if GetPlayerController(Player(i)) == MAP_CONTROL_USER and GetPlayerSlotState(Player(i)) == PLAYER_SLOT_STATE_PLAYING and i < id then set count = count + 1 endif exitwhen i == 11 set i = i + 1 endloop return count + 3 endif endfunction Добавлено (26 Октября 2012, 03:11:43) ---------------------------------------------
Добавлено (26 Октября 2012, 03:40:40) --------------------------------------------- Вообщем вот тут весь код, может кому надо будет в качестве шаблона, ну а если он говняный то жду исправления от про, слабо я в правильности уверен. Весь не влез, поэтому в txt Code Добавлено (26 Октября 2012, 16:19:35) --------------------------------------------- ну где про?
|
|
|
|
lawson | Дата: Пятница, 26 Октября 2012, 18:16:41 | Сообщение # 10 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Кому нахрен нужно разбираться в твоем говнокоде, ради того чтобы у тебя повысилась самооценка кодера, что ты сделал все правильно или нет?
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
Сообщение отредактировал lawson - Пятница, 26 Октября 2012, 18:17:57 |
|
|
|
SirNikolas | Дата: Пятница, 26 Октября 2012, 18:24:42 | Сообщение # 11 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Smartaros, функция GetPlayerRow реализована не лучшим образом.
|
|
|
|
Smartaros | Дата: Суббота, 27 Октября 2012, 04:47:22 | Сообщение # 12 |
9 уровень
Группа: Проверенные
Сообщений: 810
Награды: 0
Репутация: 135
Блокировки:
| lawson, а кому надо читать сообщения вроде твоих? ты что то мне доказать хочешь? смысл? говноюзеров вроде дрея итак хватает, еще ты... Если было все ок я бы ничего не показывал, а так как я не уверен что все ок, вот и показываю. Хочешь продолжать усераться - плз не в моих темах ок? я ждал замечания модера, но уж точно не твою отрыжку эгоизма и величия.
|
|
|
|
Ty3uK | Дата: Суббота, 27 Октября 2012, 09:34:55 | Сообщение # 13 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Smartaros, реквестировать огнетушитель? Он говорил о том, что раньше как и ты не шарил, а после того как не поленился почитать и изучить - понял, как это легко.
|
|
|
|
Smartaros | Дата: Суббота, 27 Октября 2012, 11:24:47 | Сообщение # 14 |
9 уровень
Группа: Проверенные
Сообщений: 810
Награды: 0
Репутация: 135
Блокировки:
| Ty3uK, он вообще то говорит, что я пытаюсь самоутвердиться, в чем он не прав, и специально для таких как он все в первом сообщении расписано - если он бездельник, в чем я сомневаюсь, то научишься всему сполна. Всем хочется выеживаться, но это глупо, зря старается
Добавлено (27 Октября 2012, 11:24:47) --------------------------------------------- Ty3uK, сколько я здесь чего любо не создавал, в итоге один треп о том насколько все великие, отсутствие фактической помощи. Как не странно пришлось делать самому, поэтому пусть подумает прежде чем писать что он гений вчему научился сам, я понятия не имею что он тут делает раз все знает, в любой теме где он отписывается он гадит, офтопит про то какие все нубы, какой у всех гавнокод, так по факту не напишет и не исправит, всралась всем его школьная критика
|
|
|
|
lawson | Дата: Суббота, 27 Октября 2012, 11:29:09 | Сообщение # 15 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Smartaros, давай я сюда тоже выложу около 2к строк кода ИИ на юнити и попрошу его проверить у про, ведь я уверен что код рабочий, но мне просто хочется померятся """" с другими пользователями. Quote (Smartaros) Всем хочется выеживаться Quote (Smartaros) может кому надо будет в качестве шаблона Quote (Smartaros) жду исправления от про Quote (Smartaros) я в правильности уверен
Добавлено (27 Октября 2012, 11:29:09) --------------------------------------------- Quote (Smartaros) Как не странно пришлось делать самому, поэтому пусть подумает прежде чем писать что он гений вчему научился сам сссэр да вы идиот, ведь все что я сделал на жассе какбы такого я ни где еще не видел(относительно ИИ который мне уже противно вспоминать) - сколько карт пересмотрел, может я и вправду гений...
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
Сообщение отредактировал lawson - Суббота, 27 Октября 2012, 11:36:06 |
|
|
|
Ty3uK | Дата: Суббота, 27 Октября 2012, 11:29:12 | Сообщение # 16 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Smartaros, я дал тебе код старой системы и предложил посмотреть исходники своей карты. Ты не пожелал этим воспользоваться. А после этого все виноваты в том, что тебе пришлось все делать самому. WTF??!! Да и делать все самому намного лучше, чем по системам или, не дай Бог, наработкам.
|
|
|
|
lawson | Дата: Суббота, 27 Октября 2012, 11:31:19 | Сообщение # 17 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| А что на счет таблицы, то твой, еще раз повторюсь, ГАВНОКОД, это еще раз изобретеный велосипед, таких наработок куча, от всяких попало шмуосов.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
Ty3uK | Дата: Суббота, 27 Октября 2012, 13:22:30 | Сообщение # 18 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| lawson, зачем ты меня обижаешь?
|
|
|
|
lawson | Дата: Суббота, 27 Октября 2012, 14:38:35 | Сообщение # 19 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Ty3uK, о хоспади даже в мыслях не было. причем о твоей наработке впервые слышу.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
Ty3uK | Дата: Суббота, 27 Октября 2012, 15:33:30 | Сообщение # 20 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Мультиборд для арены Там и твои комменты были
|
|
|
|
Smartaros | Дата: Суббота, 27 Октября 2012, 22:01:11 | Сообщение # 21 |
9 уровень
Группа: Проверенные
Сообщений: 810
Награды: 0
Репутация: 135
Блокировки:
| вот именно что для арены, строки не подгонены, короче спс хоть за это, узнал что надо делать релиз итем, закройте, а то тема разорвется от 2к кода
|
|
|
|
Ty3uK | Дата: Суббота, 27 Октября 2012, 22:11:21 | Сообщение # 22 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Чтобы понять механизм работы, можно и доску для арены изучить Я вообще сам изучал, без опоры на чью-либо примеры
|
|
|
|
Smartaros | Дата: Суббота, 27 Октября 2012, 23:51:10 | Сообщение # 23 |
9 уровень
Группа: Проверенные
Сообщений: 810
Награды: 0
Репутация: 135
Блокировки:
| я как бы сначала сам все сделал, потом тему создал, чтоб узнать как строчками манипулировать, бородач подкунул код, который я не вкурил, он немного не практичен, посидел ночь и сделал свой мультик рабочий, скинул код чтобы подсказали что можно совершенней сделать, николас сказал про функцию, но я че то не вижу в ней плохого, она норм работает как мне надо. Создавал тему из за отсутствия времени
|
|
|
|
SirNikolas | Дата: Понедельник, 29 Октября 2012, 08:05:10 | Сообщение # 24 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Quote (Smartaros) николас сказал про функцию, но я че то не вижу в ней плохого, она норм работает как мне надо. Она громоздкая. Я же писал, какой примерно она должна быть.
|
|
|
|
Smartaros | Дата: Вторник, 30 Октября 2012, 08:00:28 | Сообщение # 25 |
9 уровень
Группа: Проверенные
Сообщений: 810
Награды: 0
Репутация: 135
Блокировки:
| она компактней той, что прислал бородач в купе с твоей
|
|
|
|
|
|
|
|
|
|
|