Помогите, проект пошаговая 2D стратегия (сетка)
Всем привет! Прошу помощи!
Вот так выглядит игровое поле. Сетка: А именно каждая ячейка это type, который в себе содержит id-ячейки,x,y - координаты [ к примеру :(1;1)(1;2)(1;3) ], tile - id спрайта поверхности (1- песок, 2 - лес, 3 - горы, 4 - вода и т.д.) К примеру в позиции 3;3 - есть некий юнит, который может ходить по любой поверхности кроме воды... и ход может быть от 1 до 3х ячеек... Помогите реализовать именно этот момент т.т PS: я могу реализовать это говно-кодом... но суть в том что если юнит будет окружен вокруг водой в одну ячейку, то он все равно сможет перескачить через нее на сухую поверхность... а мне этого не надо... Я не прошу, готовый код, но если такой имеется, не буду против. Пожалуйста, помогите с идеями, может кто сталкивался, очень надо. |
Ответ: Помогите, проект пошаговая 2D стратегия (сетка)
добавляеш в тип информацию о поверхности ячейки. При ходе производишь проверку. Если вода на пути, ход идет только до ближайшей ячейки или если пешка вплотную к воде не ходить.
|
Ответ: Помогите, проект пошаговая 2D стратегия (сетка)
Цитата:
и он может туже воду перескочить... -------------- я сделал что каждая ячейка теперь имеет значение количество имеющихся еще шагов, и когда я выбераю юнита вокруг него сначало проверяются ячейки и заполняются к примеру "3" т.е. что еще можно сделать 3 шага, как проверить остальные ячейки, так как у меня тип, у меня все путается, т.е. какой тип выбран и т.д. ... :''(( |
Ответ: Помогите, проект пошаговая 2D стратегия (сетка)
вот, тут я сделал что бы некий юнит, не мог ходить по скалам(горам) и по юнитам. как видно на скрине зелеными ячейками подсвечиваются те, на которые можно передвинуться... а вот на те которые я выделил вручную розовым маркером, мне надо как то сделать что бы и эти ячейки проверялись в зависимости не от положения Юнита, а от положения зеленых ячеек. да бы не было такого что бы средний юнит к примеру не мог за один шаг подняться выше ячеек скал, так как через них ходить нельзя... (это вам не конь в шахматах т.т) помогите, мне нужны идеи как это все сделать, как правильно перебрать типы, что бы найти зеленые ячейки, я могу, а что бы проверить какие ячейки окружают каждую зеленую ячейку, уже получается чушь с типами, так как сбивается их счетчик... |
Ответ: Помогите, проект пошаговая 2D стратегия (сетка)
Если правильно понял то так:
Обозначаем стартовую ячейку нулевой. Все смежные нулевой ячеки (и проходимые) - первыми. Все смежные и проходимые первым ячейкам - вторые, и т.д. Волновой алгоритм короче, только не полный проход, а до определенного уровня. |
Ответ: Помогите, проект пошаговая 2D стратегия (сетка)
Цитата:
Ура я еле как это сделал *_* по говно-кодил малясь, но за-то все работает как часы |
Ответ: Помогите, проект пошаговая 2D стратегия (сетка)
Тему можно закрывать! :)
|
Ответ: Помогите, проект пошаговая 2D стратегия (сетка)
Спасибо что ты "внимательно" прочитал мой ответ. Волновой алгоритм знаеш что такое? Поисчи в энете, найдеш сразу гарантирую. Он тебе поможет...
|
Ответ: Помогите, проект пошаговая 2D стратегия (сетка)
Shtamp, поговнокодил ты не только у себя в проге))
|
Ответ: Помогите, проект пошаговая 2D стратегия (сетка)
Цитата:
спасибо на том что были рядом :super: |
Ответ: Помогите, проект пошаговая 2D стратегия (сетка)
Если не трудно, напиши как ты это сделал? Просто в прошлом у меня с этим тоже была проблема.
|
Часовой пояс GMT +4, время: 08:56. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot