Exemplo n.º 1
0
 public override void NotifyOfEvent(AbstractEvent eventData)
 {
     if (eventData.type == EventType.POISE_APPLIED)
     {
         EventPoiseApplied data = (EventPoiseApplied)eventData;
         if (data.target.OWNER == this.OWNER)
         {
             NegotiationManager.Instance.AddAction(new AddStacksToArgumentAction(this, 1));
         }
     }
     else if (eventData.type == EventType.TURN_END)
     {
         EventTurnEnd data = (EventTurnEnd)eventData;
         if (data.end == this.OWNER)
         {
             NegotiationManager.Instance.AddAction(new DestroyArgumentAction(this));
         }
     }
     else if (eventData.type == EventType.ARGUMENT_DESTROYED)
     {
         EventArgDestroyed data = (EventArgDestroyed)eventData;
         if (data.argumentDestroyed == this)
         {
             AbstractCharacter enemy = TurnManager.Instance.GetOtherCharacter(this.OWNER);
             NegotiationManager.Instance.AddAction(new DamageAction(null, enemy, this.stacks, this.stacks, this));
         }
     }
 }
Exemplo n.º 2
0
    public override void NotifyOfEvent(AbstractEvent eventData)
    {
        EventTurnEnd data = (EventTurnEnd)eventData;

        if (data.end == this.host.OWNER)
        {
            this.ExpireEffect();
        }
    }
Exemplo n.º 3
0
    public override void NotifyOfEvent(AbstractEvent eventData)
    {
        EventTurnEnd data = (EventTurnEnd)eventData;

        if (data.end == this.OWNER)
        {
            NegotiationManager.Instance.AddAction(new DestroyArgumentAction(this));
        }
    }
Exemplo n.º 4
0
    public override void NotifyOfEvent(AbstractEvent eventData)
    {
        EventTurnEnd person = (EventTurnEnd)eventData;

        if (person.end == this.OWNER)
        {
            AbstractCharacter opponent = TurnManager.Instance.GetOtherCharacter(this.OWNER);
            NegotiationManager.Instance.AddAction(new DamageAction(null, opponent, stacks, stacks, this));
        }
    }
Exemplo n.º 5
0
    public override void NotifyOfEvent(AbstractEvent eventData)
    {
        EventTurnEnd person = (EventTurnEnd)eventData;

        if (person.end == this.OWNER)
        {
            NegotiationManager.Instance.AddAction(new DamageAction(null, TurnManager.Instance.GetOtherCharacter(this.OWNER), stacks, stacks, this));
            NegotiationManager.Instance.AddAction(new AddStacksToArgumentAction(this, 1));
        }
    }
 public override void NotifyOfEvent(AbstractEvent eventData)
 {
     if (eventData.type == EventType.TURN_START)
     {
         EventTurnStart data = (EventTurnStart)eventData;
     }
     else if (eventData.type == EventType.TURN_END)
     {
         EventTurnEnd endData = (EventTurnEnd)eventData;
     }
 }
Exemplo n.º 7
0
 public override void NotifyOfEvent(AbstractEvent eventData)
 {
     if (eventData.type == EventType.TURN_END)
     {
         EventTurnEnd data = (EventTurnEnd)eventData;
         if (data.end == this.OWNER)
         {
             this.stacks -= 1;
         }
     }
     if (this.stacks == 0)
     {
         NegotiationManager.Instance.AddAction(new DestroyArgumentAction(this));
     }
 }
Exemplo n.º 8
0
    public override void NotifyOfEvent(AbstractEvent eventData)
    {
        switch (eventData.type)
        {
        case EventType.TURN_END:
            EventTurnEnd data = (EventTurnEnd)eventData;
            if (data.end == this.OWNER)
            {
                this.stacks *= 2;
            }
            break;

        case EventType.ARGUMENT_DESTROYED:
            EventArgDestroyed destroyData = (EventArgDestroyed)eventData;
            if (destroyData.argumentDestroyed == this)
            {
                NegotiationManager.Instance.AddAction(new DamageAction(this.OWNER.GetCoreArgument(), this.OWNER, this.stacks, this.stacks, this));
            }
            break;
        }
    }
Exemplo n.º 9
0
 public override void NotifyOfEvent(AbstractEvent eventData)
 {
     if (eventData.type == EventType.ARGUMENT_DESTROYED)
     {
         EventArgDestroyed data = (EventArgDestroyed)eventData;
         if (data.argumentDestroyed.OWNER != this.OWNER)
         {
             this.oldCost   = this.COST;
             this.COST      = 0;
             this.doubleDmg = true;
         }
     }
     if (eventData.type == EventType.TURN_END)
     {
         EventTurnEnd data = (EventTurnEnd)eventData;
         if (data.end == this.OWNER)
         {
             this.COST      = this.oldCost;
             this.doubleDmg = false;
         }
     }
     return;
 }
Exemplo n.º 10
0
 public override void NotifyOfEvent(AbstractEvent eventData)
 {
     if (eventData.type == EventType.CARD_PLAYED)
     {
         EventCardPlayed data = (EventCardPlayed)eventData;
         if (data.cardPlayed.AMBIENCE == CardAmbient.DIALOGUE)
         {
             NegotiationManager.Instance.AddAction(new DeployArgumentAction(this.OWNER, new ArgumentAmbientShiftDialogue(), this.stacks));
         }
         else if (data.cardPlayed.AMBIENCE == CardAmbient.AGGRESSION)
         {
             NegotiationManager.Instance.AddAction(new DeployArgumentAction(this.OWNER, new ArgumentAmbientShiftAggression(), this.stacks));
         }
     }
     else if (eventData.type == EventType.TURN_END)
     {
         EventTurnEnd data = (EventTurnEnd)eventData;
         if (data.end == this.OWNER)
         {
             NegotiationManager.Instance.AddAction(new DestroyArgumentAction(this));
         }
     }
 }
Exemplo n.º 11
0
 public override void NotifyOfEvent(AbstractEvent eventData)
 {
     if (eventData.type == EventType.CARD_PLAYED)
     {
         EventCardPlayed data = (EventCardPlayed)eventData;
         if (data.cardType == CardType.ATTACK)
         {
             NegotiationManager.Instance.AddAction(new ApplyPoiseAction(this.OWNER, this.OWNER.GetCoreArgument(), this.stacks));
             foreach (AbstractArgument arg in this.OWNER.GetSupportArguments())
             {
                 NegotiationManager.Instance.AddAction(new ApplyPoiseAction(this.OWNER, arg, this.stacks));
             }
         }
     }
     else if (eventData.type == EventType.TURN_END)
     {
         EventTurnEnd data = (EventTurnEnd)eventData;
         if (data.end == this.OWNER)
         {
             NegotiationManager.Instance.AddAction(new DestroyArgumentAction(this));
         }
     }
 }
Exemplo n.º 12
0
 public override void NotifyOfEvent(AbstractEvent eventData)
 {
     if (eventData.type == EventType.TURN_END)
     {
         EventTurnEnd data = (EventTurnEnd)eventData;
         if (data.end == this.OWNER)
         {
             this.stacks -= 1;
         }
     }
     else if (eventData.type == EventType.ARGUMENT_DESTROYED)
     {
         EventArgDestroyed data = (EventArgDestroyed)eventData;
         if (data.argumentDestroyed == this)
         {
             this.stacks = 0;
         }
     }
     else
     {
         EventCardPlayed data = (EventCardPlayed)eventData;
         if (data.cardType == CardType.ATTACK && data.cardAmbient == CardAmbient.AGGRESSION && data.cardPlayed.OWNER == this.OWNER)
         {
             NegotiationManager.Instance.AddAction(new DeployArgumentAction(this.OWNER, new ArgumentAmbientShiftAggression(), 1));
         }
     }
     if (this.stacks != currentlyApplying)
     {
         int delta = (this.stacks - currentlyApplying);
         this.OWNER.dmgDealtAggressionAdd += delta;
         currentlyApplying = this.stacks;
     }
     if (this.stacks == 0)
     {
         NegotiationManager.Instance.AddAction(new DestroyArgumentAction(this));
     }
 }