|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Feb 2012
Сообщений: 36
|
Различные насадки для руки робота и их использование по назначению. как реализовать?
Допустим у нас есть робот В.А.С.Я. К его двум его рукам можно прицепить различные инструменты такие как пушка, клешня, щит, в общем, что угодно). Нужно сделать так, что бы он мог использовать эти инструменты по назначению, вопрос как? Да, можно назначить всем инструментам интерфейс с методом use(), но, но, но... В.А.С.Я. должен знать, что у него есть пушка, а значит он может убить своих врагов, для чего ему нужно направить пушку в сторону врага и использовать ее, то бишь выстрелить/use(). Если в руке клешня, то ему нужно подумать, что ей подобрать и собственно подобрать/use() это. Если в сторону Васи летит снаряды, а в руке у него щит, то он может закрыться от них. Вот только я без понятия как все это реализовать.
|
|
|||||
[+4 07.04.12]
[+1 20.01.12] Регистрация: Nov 2009
Адрес: Украина, Славутич
Сообщений: 263
|
при чем тут as3 ?
|
|
|||||
Регистрация: Feb 2012
Сообщений: 36
|
Ну а куда еще?
Либо вы не поняли либо я. Хорошо, пушка может стрелять, но Васи мало просто выстрелить, ему ведь нужно еще и прицелится, да рассчитать упреждение на основании особенностей пушки. К тому же Васи еще нужно понять, что у него в руке пушка или скавородка. Вася не может просто слепо использовать инструменты. Он должен знать как их можно использовать и как это делать правильно. Последний раз редактировалось Den_root; 02.04.2012 в 20:22. |
|
|||||
Это называется полиморфизм. Как раз позволяет описать интерфейс некой хреновины которая надевается на руку и используется. У хреновины есть метод - пользовать хреновину. А она сама уже знает как ей пользуются, может стрелять, если пушка, а может жарить, если сковородка.
__________________
:) |
|
|||||
Регистрация: Feb 2012
Сообщений: 36
|
FlashRus
То есть предлагаете роботу прописать как использовать тот или иной девайс? Aquahawk См. выше, ничто не помешает роботу попытатся выстрелить из сковородки и поджарить что нибудь пушкой Еще вопрос: public class Gun implements Device{ public var bulletSpeed:int = 50; public var dammage:int = 50; public function use():void { //Shoot } } |
|
|||||
Цитата:
Получается робот должен знать как пользоваться основными типами девайсов, а не девайс знающий как заюзать робота.
__________________
http://www.chessmax.ru Последний раз редактировалось Inet_PC; 02.04.2012 в 21:44. |
|
|||||
Регистрация: Sep 2010
Адрес: Ростов-на-Дону
Сообщений: 369
|
Вот и Вот (продолжение), авось поможет
|
|
|||||
Регистрация: Feb 2012
Сообщений: 212
|
Inet_PC
Вы показали как использовать, тот или иной девайс, но не как достать его свойства. Можно держать в девайсе все возможные свойства и брать их в зависимости от того, что это за девайс. |
Часовой пояс GMT +4, время: 18:43. |
|
« Предыдущая тема | Следующая тема » |
|
|