/// <summary>
 /// </summary>
 /// <param name="eventType"> </param>
 /// <param name="eventArgs"> </param>
 public TimelineChangedEvent(TimelineEventType eventType, params object[] eventArgs)
 {
     EventType = eventType;
     EventArgs = eventArgs;
 }
Example #2
0
 /// <summary>
 /// </summary>
 /// <param name="eventType"> </param>
 /// <param name="eventArgs"> </param>
 public TimelineChangedEvent(TimelineEventType eventType, params object[] eventArgs)
 {
     EventType = eventType;
     EventArgs = eventArgs;
 }
 /// <summary>
 /// </summary>
 /// <param name="eventType"> </param>
 /// <param name="eventArgs"> </param>
 public void PublishTimelineEvent(TimelineEventType eventType, params object[] eventArgs)
 {
     var args = (eventArgs != null && eventArgs.Any()) ? eventArgs[0] : "(no args)";
     Logging.Log(Logger, String.Format("TimelineEvent : {0} {1}", eventType, args));
     if (eventArgs != null)
     {
         var monsterName = eventArgs.First() as String;
         switch (eventType)
         {
             case TimelineEventType.PartyJoin:
             case TimelineEventType.PartyDisband:
             case TimelineEventType.PartyLeave:
                 break;
             case TimelineEventType.PartyMonsterFighting:
             case TimelineEventType.AllianceMonsterFighting:
             case TimelineEventType.OtherMonsterFighting:
                 DeathFound = false;
                 if (monsterName != null && (monsterName.ToLower()
                                                        .Contains("target") || monsterName == ""))
                 {
                     break;
                 }
                 Fight fighting;
                 if (!Fights.TryGet(monsterName, out fighting))
                 {
                     fighting = new Fight(monsterName);
                     Fights.Add(fighting);
                 }
                 Controller.Timeline.LastEngaged = monsterName;
                 break;
             case TimelineEventType.PartyMonsterKilled:
             case TimelineEventType.AllianceMonsterKilled:
             case TimelineEventType.OtherMonsterKilled:
                 DeathFound = true;
                 if (monsterName != null && (monsterName.ToLower()
                                                        .Contains("target") || monsterName == ""))
                 {
                     break;
                 }
                 Fight killed;
                 if (!Fights.TryGet(monsterName, out killed))
                 {
                     killed = new Fight(monsterName);
                     Fights.Add(killed);
                 }
                 switch (eventType)
                 {
                     case TimelineEventType.PartyMonsterKilled:
                         GetSetMonster(monsterName)
                             .SetKill(killed);
                         break;
                     case TimelineEventType.AllianceMonsterKilled:
                         GetSetMonster(monsterName)
                             .SetKill(killed);
                         break;
                     case TimelineEventType.OtherMonsterKilled:
                         GetSetMonster(monsterName)
                             .SetKill(killed);
                         break;
                 }
                 Controller.Timeline.LastKilled = monsterName;
                 break;
         }
     }
     RaiseTimelineChangedEvent(this, new TimelineChangedEvent(eventType, eventArgs));
 }
Example #4
0
        /// <summary>
        /// </summary>
        /// <param name="eventType"> </param>
        /// <param name="eventArgs"> </param>
        public void PublishTimelineEvent(TimelineEventType eventType, params object[] eventArgs)
        {
            var args = (eventArgs != null && eventArgs.Any()) ? eventArgs[0] : "(no args)";

            Logging.Log(Logger, String.Format("TimelineEvent : {0} {1}", eventType, args));
            if (eventArgs != null)
            {
                var monsterName = eventArgs.First() as String;
                switch (eventType)
                {
                case TimelineEventType.PartyJoin:
                case TimelineEventType.PartyDisband:
                case TimelineEventType.PartyLeave:
                    break;

                case TimelineEventType.PartyMonsterFighting:
                case TimelineEventType.AllianceMonsterFighting:
                case TimelineEventType.OtherMonsterFighting:
                    DeathFound = false;
                    if (monsterName != null && (monsterName.ToLower()
                                                .Contains("target") || monsterName == ""))
                    {
                        break;
                    }
                    Fight fighting;
                    if (!Fights.TryGet(monsterName, out fighting))
                    {
                        fighting = new Fight(monsterName);
                        Fights.Add(fighting);
                    }
                    Controller.Timeline.LastEngaged = monsterName;
                    break;

                case TimelineEventType.PartyMonsterKilled:
                case TimelineEventType.AllianceMonsterKilled:
                case TimelineEventType.OtherMonsterKilled:
                    DeathFound = true;
                    if (monsterName != null && (monsterName.ToLower()
                                                .Contains("target") || monsterName == ""))
                    {
                        break;
                    }
                    Fight killed;
                    if (!Fights.TryGet(monsterName, out killed))
                    {
                        killed = new Fight(monsterName);
                        Fights.Add(killed);
                    }
                    switch (eventType)
                    {
                    case TimelineEventType.PartyMonsterKilled:
                        GetSetMonster(monsterName)
                        .SetKill(killed);
                        break;

                    case TimelineEventType.AllianceMonsterKilled:
                        GetSetMonster(monsterName)
                        .SetKill(killed);
                        break;

                    case TimelineEventType.OtherMonsterKilled:
                        GetSetMonster(monsterName)
                        .SetKill(killed);
                        break;
                    }
                    Controller.Timeline.LastKilled = monsterName;
                    break;
                }
            }
            RaiseTimelineChangedEvent(this, new TimelineChangedEvent(eventType, eventArgs));
        }
Example #5
0
 public GameEvent(TimelineEventType type, bool timed, int duration = 0)
 {
     this.type     = type;
     this.timed    = timed;
     this.duration = duration;
 }
Example #6
0
 /*
  * GameEvent-
  * A game event is a phase of gameplay that all players experience simultaneously.
  * For example, watching an intro, the adventurer being chosen, cards being played,
  * the adventurer making a decision, each of these sections of play is a game event.
  *
  * type - What TimelineEventType is associated with this game event?
  * timed - Is this an event with a timer, or can it go on as long as the players want it to go on for?
  * duration - (optional) Default 0.  If timed, how long does the timer last?
  *
  * */
 public GameEvent()
 {
     this.type     = TimelineEventType.None;
     this.timed    = false;
     this.duration = 0;
 }