Показать сообщение отдельно
Старый 03.04.2012, 13:52
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 14  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Смысл моего поста был в том, что надо подняться от руки к голове))) Абстрагировать один метод use() мало, так ведь? Дивайс влияет не только на то, как будет двигаться, выглядеть и действовать сам дивайс, но и на то, как будет вести себя робот.
1. Поведение робота в какие-то моменты учитывает, какой именно дивайс у него смонтирован.
Как это абстрагировать? "Мозг" робота должен учитывать при расчете поведения какие-то параметры дивайса. Например, что это armor, или это weapon, или это tool. Это и есть "робот знает, что у него есть пушка". Надо определиться, какие базовые типы могут быть – защита, оружие, инструмент. У них естественно подтипы – оружие ближнего боя или на расстоянии, или массового поражения, и т.д. Инструмент для механики, для микроэлектроники, для жарки картошки?
Мозг анализирует объект в поле "зрения" ина основании своей оснащенности определяет, может ли с этим объектом взаимодействовать. Таким образом дивайс ни о чем сам не думает за робота, а только предоставляет ему данные о себе, чтобы тот решил, стоит ли вообще вызывать use(), и надо ли перед этим что-то сделать (подойти поближе, сходить подзарядиться и т.п.)
__________________
Reality.getBounds(this);