45 lines
2.5 KiB
Python
45 lines
2.5 KiB
Python
import eb_engine
|
||
#import os
|
||
#os.environ['PYTHONJIT'] = '1'
|
||
|
||
def main():
|
||
e = eb_engine.Engine()
|
||
e.main_loop()
|
||
|
||
if __name__ == "__main__":
|
||
main()
|
||
# todo:
|
||
# прокрутка баг консоль и карта
|
||
# ОПТИМИЗАЦИИ
|
||
# перепроверять путь пореже, или только после столкновения, или локальный поиск
|
||
# очередь задач и задача рандомного патруля
|
||
# устроить краш тест поиску пути, запустив много объектов на маленьком поле, успел заметить баги
|
||
# добавить функцию движения за каким-то объектом
|
||
# сделать, чтобы в случае отменненого движения не телепортировался назад, а плавно
|
||
# приступаем к логике
|
||
# сделать по аналогии с текущей клеткой текущий объект
|
||
|
||
|
||
|
||
|
||
# посмотреть как в clock = pygame.time.Clock() работает фпс
|
||
# перемещать оъект в другую клетку при половине офсета
|
||
|
||
# техдолг Егору
|
||
# убрать cells и mapobject creature - перенести нужную логику в методы Map
|
||
# система имен спрайтов и Action - реализовать
|
||
# рисовать группой спрайтов как в перпл
|
||
# нужен ли теперь start_pos? grid_pos?
|
||
# class Task с проверками выполнения экшонов
|
||
|
||
#вернуть назад апдейт. вернул - работает, сравнить с новым и решить
|
||
#final_goal = None - check all!
|
||
#рефактор goal = (random.randint(self.grid_pos[0] - area,
|
||
# self.grid_pos[0] + area),
|
||
# random.randint(self.grid_pos[1] - area,
|
||
# self.grid_pos[1] + area))
|
||
|
||
# отловить баг - иногда всё равно встают - похоже из-за реплана и коллизий с эльфами
|
||
# вроде починил, добавив final_goal = None в реплан, проверить
|
||
|
||
# совет ксюши - не считать коллизии с объектами, только при перемещении в клетку проверять |