Добрый день!
Ситуация такая - что ни делай, когда-то 13-16 были нейтралами, и теперь, если ставлю на их место игроков, то все нейтральные юниты переходят под их контроль(пассивные, враждебные). А что насчет 24+, они же теперь должны быть нейтралами? Почему такой баг происходит и как его исправить.
Вопрос заодно - почему я обнаруживаю такое только когда со мной хоть один игрок в лобби. Если я тестирую с ботами, даже по сети, но один, сажусь на 13,14 слоты и все норм, а когда есть хоть еще один игрок, обнаруживается что нейтралы теперь уже принадлежат кому-то.
Тут скорее вопрос адресован тем, кто с этим уже сталкивался и либо знает ответ, либо уверенно скажет что делать нечего и не надо давать эти слоты игрокам.
UPD: специально сейчас проверил, нейтрально враждебные достаются 13 игроку, магазины(пассивные) 16 игроку.

Принятый ответ

А в чём проблема? Если карта сохранена в редакторе до 1.29, то в ней будет 12 игроков. Если же она сохранена после, то 24.
Для номеров игроков и их количества есть специальные константы.
    constant integer            PLAYER_NEUTRAL_PASSIVE          = GetPlayerNeutralPassive()
    constant integer            PLAYER_NEUTRAL_AGGRESSIVE       = GetPlayerNeutralAggressive()
    constant integer   bj_MAX_PLAYERS                   =  GetBJMaxPlayers()
    constant integer   bj_PLAYER_NEUTRAL_VICTIM         =  GetBJPlayerNeutralVictim()
    constant integer   bj_PLAYER_NEUTRAL_EXTRA          =  GetBJPlayerNeutralExtra()
    constant integer   bj_MAX_PLAYER_SLOTS              =  GetBJMaxPlayerSlots()
Используйте их и всё будет в порядке на любой версии.
`
ОЖИДАНИЕ РЕКЛАМЫ...
2
28
2 года назад
Отредактирован PT153
2
А в чём проблема? Если карта сохранена в редакторе до 1.29, то в ней будет 12 игроков. Если же она сохранена после, то 24.
Для номеров игроков и их количества есть специальные константы.
    constant integer            PLAYER_NEUTRAL_PASSIVE          = GetPlayerNeutralPassive()
    constant integer            PLAYER_NEUTRAL_AGGRESSIVE       = GetPlayerNeutralAggressive()
    constant integer   bj_MAX_PLAYERS                   =  GetBJMaxPlayers()
    constant integer   bj_PLAYER_NEUTRAL_VICTIM         =  GetBJPlayerNeutralVictim()
    constant integer   bj_PLAYER_NEUTRAL_EXTRA          =  GetBJPlayerNeutralExtra()
    constant integer   bj_MAX_PLAYER_SLOTS              =  GetBJMaxPlayerSlots()
Используйте их и всё будет в порядке на любой версии.
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.