Здрасьте, есть некоторая проблема. Имеется: Класс1 - суперкласс. Класс2, Класс3, Класс4 его потомки. И есть Класс 4 который является агрегатом всего этого сброда =) Необходимо чтобы при совпадении координат х,у Классов 2 и 3 вызываелось Событие1, а при совпадении х,у классов 3 и 4 Событие 2. Собственно что хочу делать:
Создать обработчик событий Класса 3:
public delegate void SnakeDelegate();
class ZmeyEventHandler
{
public event SnakeDelegate Eat;
public event SnakeDelegate Death;
public void Simulate(){
if (Eat != null)
Eat();
if (Death != null)
Death();
}
}
Запихать слушатель в агрегат:
public class POLE
{
ZmeyEventHandler zm = new ZmeyEventHandler();
public POLE()
{
zm.Eat += new SnakeDelegate(zm_Eat);
zm.Death += new SnakeDelegate(zm_Death);
}
}
И собственно обрабатывать эти события...
void zm_Death()
{
if(...)
}
void zm_Eat()
{
if (...)
}
Собственно правильно ли идет ход моих мыслей, и нельзя ли обработчик события поедания и умирания запихать прямо в класс3 ? И как потом обрабатывать эти события?
Примечание:
Ой, агрегат класс 5 =)
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.