Вообщем, такой трабл, написал первый раз код на создание, пошел тестить с другом, как и ожидалось выдал фатал.
Потом порылся на сайте, нашел решение:
Создать юнита двух одинаковых, но для нашего помеять модель. Так и сделал(понимаю, что у меня будет милион юнитов, но всё же для теста). Юнитов создает, но я не могу к ним обратиться.
В итоге, надо создать юнита для одного игрока, подскажите кто сталкивался.
cdn1.savepice.ru/uploads/2017/9/7/5556f3371d3fb84edc8c6d9f66376e... моя помойка, перелопатил всё, что мог.

Можно сделать локально прозрачность, а если и управлять не нужно, то добавить москитов и будет не видимый юнит для других игроков
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
1
Заработало в таком виде, не знаю с чего...
И всё же, есть у кого другой подход? Т.к я еще не проверял на диcинх.
TheNoyl:
Заработало в таком виде, не знаю с чего...
И всё же, есть у кого другой подход? Т.к я еще не проверял на диcинх.
Протестил, дисинх.
Загруженные файлы
32
Будет всегда десинх, типы юнитов проверяются практически постоянно, у тебя будет несоответствие типов.
Локально создавать не локальные объекты не получится, будет десинх.
Максимум что можно, это сменить модельку с помощью мемхака.
Всякие там примеры про карты типа мафия, там юнитов создают как куклу, её не трогать ниче делать с ней низя...
18
Можно сделать локально прозрачность, а если и управлять не нужно, то добавить москитов и будет не видимый юнит для других игроков
Принятый ответ
28
ты не правильно создаёшь
вот тебе пример
int rawcode='h000';
unit u;
if(Player(0)==GetLocalPlayer()){
	rawcode='h001';
}
u=CreateUnit(Player(1), rawcode, 0, 0, 0)
т.е. ты должен локально менять равкод и потом создавать юнита для всех игроков
а ты пытаешься локально создать юнита (что вызывает десинк)
18
nvc123, А ты сам проверял? Просто я раньше также думал, что если поменяю не хендл, то десинка не будет, но в реальности все по другому получилось. Хотя было давно, может и не так делал.
28
Borodach, проверял
если различия между типами только в модельке и нету кривых триггеров которые 1 равкод обрабатывают а другой нет то всё нормально
есть же статья на тему
1
quq_CCCP:
Будет всегда десинх, типы юнитов проверяются практически постоянно, у тебя будет несоответствие типов.
Локально создавать не локальные объекты не получится, будет десинх.
Максимум что можно, это сменить модельку с помощью мемхака.
Всякие там примеры про карты типа мафия, там юнитов создают как куклу, её не трогать ниче делать с ней низя...
Мне впринципе не важно, можно и не юнитов использовать.
Главное чтобы были "пустышки" как на закрепе.
nvc123:
ты не правильно создаёшь
вот тебе пример
int rawcode='h000';
unit u;
if(Player(0)==GetLocalPlayer()){
	rawcode='h001';
}
u=CreateUnit(Player(1), rawcode, 0, 0, 0)
т.е. ты должен локально менять равкод и потом создавать юнита для всех игроков
а ты пытаешься локально создать юнита (что вызывает десинк)
Я так и делаю ._.
private integer array MODEL
private function CreateDummy takes integer id, integer did returns nothing
local integer i = 'h004'
local integer l = 0
call KillUnit(DUMMYUNIT[id])
call RemoveUnit(DUMMYUNIT[id])
loop
exitwhen (l == PLAYERCOUNTE)
if (l == 0 and GetLocalPlayer() == Player(id)) then
set i = MODEL[did]//Равкоды моих моделей
endif
set DUMMYUNIT[id] = CreateUnit(Player(l), i, DUMMYx, DUMMYy, FACEDUMMY)
set i = 'h004'
set l = l + 1
endloop
set DUMMYUNIT[id] = bj_lastCreatedUnit
call BJDebugMsg("Dummy: "+GetUnitName(DUMMYUNIT[id])+" player: "+I2S(id))
endfunction
Загруженные файлы
28
TheNoyl, ты какую то херню делаешь
if (l == 0 and GetLocalPlayer() == Player(id)) then
set i = MODEL[did]//Равкоды моих моделей
endif
нафига этот код в цикле?
я так понял id это номер игрока?
если да то нафига ты циклом для каждого игрока создаёшь юнитов, у тебя лишние юниты получаются
и вообще у тебя твой код работает только для красного игрока
объясни нормально что именно ты хочешь сделать
1
nvc123:
TheNoyl, ты какую то херню делаешь
if (l == 0 and GetLocalPlayer() == Player(id)) then
set i = MODEL[did]//Равкоды моих моделей
endif
нафига этот код в цикле?
я так понял id это номер игрока?
если да то нафига ты циклом для каждого игрока создаёшь юнитов, у тебя лишние юниты получаются
и вообще у тебя твой код работает только для красного игрока
объясни нормально что именно ты хочешь сделать
Мне нужны пустышки. Юнит или нет, не важно, просто чтобы каждый игрок видел только свою пустышку.
Я же выше закрепил пикчи.
28
TheNoyl, что за пустышка?
откуда я знаю что на тех скринах пустышка
пустышкой может быть всё что угодно, начиная с модели героя которого пикаешь и заканчивая рамкой
1
nvc123:
TheNoyl, что за пустышка?
откуда я знаю что на тех скринах пустышка
пустышкой может быть всё что угодно, начиная с модели героя которого пикаешь и заканчивая рамкой
Модели мне нужны не важно где: декор или юнит. Главное чтобы их видел только один игрок из всех играющих, так понятней?
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.