8gabriel8, фикс позиций отключен.
Рандом работает нормально, все игроки всегда получают разные расы. Просто получается так, что сперва рандомный игрок выбирает расу, а потом отправляется на стартовую локацию этого же рандомного игрока.
PS: если игроков будет меньше 4 то его место займёт AI. (но это уже совсем другая история :D)
MaxSnoK, только в твоём триггере всегда каждая раса на фиксированном месте будет, а также игроку при старте надо будет камеру сдвигать в сторону своего дома. Если расставишь стартовые позиции игроков по областям и укажешь в действиях создания дома (RandomPlayer start position) вместо (Center of X player start <gen>), то дома должны создаваться в разных местах и камера у игрока будет на его дом направлена.
Вот тебе костыльный вариант.
Число определяет пул выдачи всем игрокам.
1 - Хум, Орк, Андед, НЭ
2 - Хум, Андед, Орк, НЭ
3 - Хум, НЭ, Андед, Орк
И т.д.
Ультра костыльно и упорото, но как вариант
Кстати, интересно было бы придумать триггер для автоматического составления всех возможных вариантов. Для 4 рас будет 4х3х2х1=24 варианта, для 10 рас 10х9х8х7=5040 вариантов, что точно вручную составлять не захочется)
Вы прям предсказали мою следующую головную боль :)
На данный момент у меня спавн выглядит следующим образом:
Таким образом рассы меняют своё положение на карте, а вот игроки всегда стартуют на своих точках.
Ииии на самом деле это тоже проблема.
В идеале у меня и игроки должны ресаться на рандомных точках и рассы у них должны быть рандомные.
На данный момент я в поисках решения данной проблемы.
PT153 верно указал. полностью триггер будет выглядеть так:
Пусть у случайного игрока переменная PlayerX, а у группы игроков PlayerGroup.
Устанавливаешь PlayerGroup
Set PlayerX=(Random player from PlayerGroup)
Player Group - Remove PlayerX from PlayerGroup
Unit - Create Ratusha for PlayerX at (PlayerX start position) facing 270.00 degrees
Set PlayerX=(Random player from PlayerGroup)
Player Group - Remove PlayerX from PlayerGroup
Unit - Create Dom Vojdei for PlayerX at (PlayerX start position) facing 270.00 degrees
Set PlayerX=(Random player from PlayerGroup)
Player Group - Remove PlayerX from PlayerGroup
Unit - Create Nekropol for PlayerX at (PlayerX start position) facing 270.00 degrees
Set PlayerX=(Random player from PlayerGroup)
Unit - Create Drevo Zhizni for PlayerX at (PlayerX start position) facing 270.00 degrees
Всё работает хорошо.
Можете пож-та объяснить, почему мы назначаем переменной значение Random player from PlayerGroup , потом сразу удаляем этого игрока из группы и только после этого спавним юнита.
Я думал, что нужно сперва назначить значение Random player from PlayerGroup, потом заспавнить юнита, а уже после этого удалить игрока из группы и назначить нового.
Вот тебе костыльный вариант.
Число определяет пул выдачи всем игрокам.
1 - Хум, Орк, Андед, НЭ
2 - Хум, Андед, Орк, НЭ
3 - Хум, НЭ, Андед, Орк
И т.д.
Ультра костыльно и упорото, но как вариант
такой вариант я тоже рассматривал, но в дальнейшем расс может быть не 4, а например 10. И тогда прописывать все вариации будет проблематично )
Создаёшь группу игроков из своих четырёх. Далее определяешь каждой расе своего игрока, например, для расы эльфов выбираешь случайного игрока из группы, удаляешь его из группы и создаёшь ему соответствующее здание в его позиции. Потом повторяешь это для остальных трёх рас. Понадобятся переменные для группы игроков и для запоминания случайного игрока.
Мне очень понравился ваш метод, единственная проблема в том, что я не совсем понял как запомнить рандомного игрока.
» WarCraft 3 / Случайная раса без повторений.
Рандом работает нормально, все игроки всегда получают разные расы. Просто получается так, что сперва рандомный игрок выбирает расу, а потом отправляется на стартовую локацию этого же рандомного игрока.
PS: если игроков будет меньше 4 то его место займёт AI. (но это уже совсем другая история :D)
» WarCraft 3 / Случайная раса без повторений.
На данный момент у меня спавн выглядит следующим образом:
Ииии на самом деле это тоже проблема.
В идеале у меня и игроки должны ресаться на рандомных точках и рассы у них должны быть рандомные.
На данный момент я в поисках решения данной проблемы.
Ред. PT153
» WarCraft 3 / Случайная раса без повторений.
» WarCraft 3 / Случайная раса без повторений.
Можете пож-та объяснить, почему мы назначаем переменной значение Random player from PlayerGroup , потом сразу удаляем этого игрока из группы и только после этого спавним юнита.
Я думал, что нужно сперва назначить значение Random player from PlayerGroup, потом заспавнить юнита, а уже после этого удалить игрока из группы и назначить нового.
» WarCraft 3 / Случайная раса без повторений.
» WarCraft 3 / Случайная раса без повторений.