private AbsGameEventSubject GetGameEvents(GameEventType _type)
    {
        AbsGameEventSubject subject = null;

        if (!gameEvents.TryGetValue(_type, out subject))
        {
            switch (_type)
            {
            case GameEventType.Null:
                break;

            case GameEventType.EnemyKilled:
                subject = new EnemyKilledSubject();
                gameEvents.Add(GameEventType.EnemyKilled, subject);
                break;

            case GameEventType.SoldierKilled:
                subject = new SoldierKilledSubject();
                gameEvents.Add(GameEventType.SoldierKilled, subject);
                break;

            case GameEventType.NewStage:
                subject = new NewStageSubject();
                gameEvents.Add(GameEventType.NewStage, subject);
                break;
            }
        }
        if (subject == null)
        {
            Debug.Log("gameEvents not have key:" + gameEvents);
        }
        return(subject);
    }
Beispiel #2
0
 public override void SetSubject(AbsGameEventSubject _subject)
 {
     subject = _subject as NewStageSubject;
 }
 public override void SetSubject(AbsGameEventSubject _subject)
 {
     //subject = _subject as EnemyKilledSubject;
 }
Beispiel #4
0
 public abstract void SetSubject(AbsGameEventSubject _subject);
Beispiel #5
0
 public override void SetSubject(AbsGameEventSubject _subject)
 {
 }