Помогите Строительство как в RUST

diego070202

Активный участник
Пользователь
Баллы
66
Имя в Minecraft
PoZDnyak
Доброго времени форумчане.
Надеюсь здесь есть люди, игравшие в Rust.
Тема такая.
Можете объяснить, как реализовать строительство?
Я не знаю, как сделать, чтоб когда в руках был "план постройки" то показывалось, когда можно построить например стенку, а когда нет.
И как реализовать вообще это дело.
Пишу самопис.
Залип на этом уже месяц примерно, не зная как это реализовать.
 
Я не знаю как реализовать, чтоб блок, который изменяется, через 1-2 сек изменялся на тот, каким был
Записывай в HashMap<Location, Block> оригинальные блоки, отсылай фейковые, а потом через 1-2 сек шли опять в качестве фейковых блоков уже снова настоящие, из этого HashMap'а (и очищай его обязательно, hashmap.clear())

Но это надо для каждого игрока персональный, поэтому хз как тут. Вроде есть HashTable, как-то там. Если это оно. А так еще есть HashMap<UUIDигрока, HashMap<Location, Block>>
 
Когда локация блока смещается, делаем getState().update(), если кеш не пустой и sendBlockChange. Ничего сложного.
Можешь скинуть исходники как реализовал этот блок? Оочень благодарен был бы тебе
 
Когда локация блока смещается, делаем getState().update(), если кеш не пустой и sendBlockChange. Ничего сложного.
я фишку уловил. уже сделал, но чето люто не догоняю, как при новом срабатывании MoveEvent взять ПРОШЛЫЙ блок
 
Когда локация блока смещается, делаем getState().update(), если кеш не пустой и sendBlockChange. Ничего сложного.
И да, твоим определением направления, я воспользовался. Большой поклон тебе.
 
я фишку уловил. уже сделал, но чето люто не догоняю, как при новом срабатывании MoveEvent взять ПРОШЛЫЙ блок
Я локицию таргет блока записывал в мапу. И у меня был просто шедулер.
 
Последнее редактирование:
Я локицию таргет блока записывал в мапу. И у меня быть просто шедулер.
Долго вчера морочился.
Сделал так:в мапу кидаю основной блок и отталкиваясь от него, строю соседние.
Когда сдвинется курсор, из мапы беру тот блок, удаляю блоки, которые были до этого, удаляю из мапы, беру новый блок, от него простраиваю новые блоки и кидаю в мапу.
upload_2019-11-22_7-6-55.png
 
Назад
Верх