Exemplo n.º 1
0
        private void OnCardRemoved(Model.Card.CardEntity obj)
        {
            lock (this.objectLock)
            {
                AICardEntity cardEntity2DToRemove = this.GetAIEntityFromEntity(obj) as AICardEntity;

                this.CardsHand.Remove(cardEntity2DToRemove);
            }
        }
Exemplo n.º 2
0
        //private void OnCardResurrected(CardEntity obj)
        //{
        //    this.cardsCemetery.Remove(this.GetEntity2DFromEntity(obj) as CardEntity2D);

        //    this.UpdateCardCimeteryPriority();
        //}

        private void OnCardDestroyed(CardEntity obj)
        {
            lock (this.objectLock)
            {
                AICardEntity cardDestroyed = this.objectToObjectAIs[obj] as AICardEntity;

                this.cardsCemetery.Add(cardDestroyed);
            }
        }
Exemplo n.º 3
0
        private void OnCardCreated(Model.Card.CardEntity obj)
        {
            lock (this.objectLock)
            {
                AICardEntity cardEntity = this.GetAIEntityFromEntity(obj) as AICardEntity;

                this.CardsHand.Add(cardEntity);
            }
        }
Exemplo n.º 4
0
        private void OnCardDrawn(CardEntity obj)
        {
            lock (this.objectLock)
            {
                this.cardDrawn = this.objectToObjectAIs[obj] as AICardEntity;

                this.cardsDeck.Remove(this.cardDrawn);
                this.cardsHand.Add(this.cardDrawn);
            }
        }
Exemplo n.º 5
0
        public override void FlushEntities()
        {
            base.FlushEntities();

            this.cardsDeck.Clear();
            this.cardsCemetery.Clear();
            this.cardsHand.Clear();

            this.nbCardsToDraw = 0;

            //this.LevelTurnPhase = TurnPhase.VOID;
            this.cardDrawn = null;
        }
Exemplo n.º 6
0
 private void OnCardPicked(CardEntity obj)
 {
     lock (this.objectLock)
     {
         if (obj != null)
         {
             this.cardEntityPicked = this.objectToObjectAIs[obj] as AICardEntity;
         }
         else
         {
             this.cardEntityPicked = null;
         }
     }
 }
Exemplo n.º 7
0
        public override void InitializeLayer(IAIObjectFactory factory)
        {
            this.StarToLinks.Clear();
            this.StarSystem.Clear();
            this.StarLinkSystem.Clear();
            this.StarDomainSystem.Clear();

            this.sourceCardEntities = null;
            this.sourceStarEntities = null;
            this.targetCardEntities = null;
            this.targetStarEntities = null;

            this.cardEntityPicked = null;

            this.nbCardsToPlace = 0;

            base.InitializeLayer(factory);

            foreach (AIStarLinkEntity starLinkEntity in this.StarLinkSystem)
            {
                starLinkEntity.UpdateReference();

                HashSet <AIStarLinkEntity> linksConnectedTo = null;
                if (this.StarToLinks.TryGetValue(starLinkEntity.StarFrom, out linksConnectedTo) == false)
                {
                    linksConnectedTo = new HashSet <AIStarLinkEntity>();

                    this.StarToLinks.Add(starLinkEntity.StarFrom, linksConnectedTo);
                }
                linksConnectedTo.Add(starLinkEntity);

                linksConnectedTo = null;
                if (this.StarToLinks.TryGetValue(starLinkEntity.StarTo, out linksConnectedTo) == false)
                {
                    linksConnectedTo = new HashSet <AIStarLinkEntity>();

                    this.StarToLinks.Add(starLinkEntity.StarTo, linksConnectedTo);
                }
                linksConnectedTo.Add(starLinkEntity);
            }

            foreach (AICJStarDomain starDomainAI in this.StarDomainSystem)
            {
                starDomainAI.UpdateReference();
            }
        }
Exemplo n.º 8
0
        private void OnCardUnpicked(CardEntity obj, BoardPlayerLayer.PileFocused pilePicked)
        {
            lock (this.objectLock)
            {
                AICardEntity cardUnpicked = this.objectToObjectAIs[obj] as AICardEntity;

                switch (pilePicked)
                {
                case BoardPlayerLayer.PileFocused.HAND:
                    this.cardsHand.Add(cardUnpicked);
                    break;

                case BoardPlayerLayer.PileFocused.CEMETERY:
                    this.cardsCemetery.Add(cardUnpicked);
                    break;
                }
            }
        }
Exemplo n.º 9
0
        private void OnCardFocused(CardEntity obj)
        {
            lock (this.objectLock)
            {
                if (obj != null)
                {
                    AICardEntity cardFocused = this.objectToObjectAIs[obj] as AICardEntity;

                    this.cardFocused = cardFocused;
                    //this.cardToolTip.DisplayToolTip(obj.Card, cardFocused);
                }
                else
                {
                    this.cardFocused = null;
                    //this.cardToolTip.HideToolTip();
                }
            }
        }
Exemplo n.º 10
0
        private void OnCardFocused(Model.Card.CardEntity obj)
        {
            lock (this.objectLock)
            {
                if (obj != null)
                {
                    AICardEntity cardFocused = this.GetAIEntityFromEntity(obj) as AICardEntity;

                    this.CardFocused = cardFocused;
                    //this.cardToolTip.DisplayToolTip(obj.Card, cardFocused);
                }
                else
                {
                    this.CardFocused = null;
                    //this.cardToolTip.HideToolTip();
                }
            }
        }
Exemplo n.º 11
0
        public override void InitializeLayer(IAIObjectFactory factory)
        {
            this.cardsDeck.Clear();
            this.cardsCemetery.Clear();
            this.cardsHand.Clear();

            this.pileFocused = (this.parentLayer as BoardPlayerLayer).CardPileFocused;

            base.InitializeLayer(factory);

            foreach (AAIEntity entity in this.objectToObjectAIs.Values)
            {
                if (entity is AICardEntity)
                {
                    AICardEntity cardEntity2D = entity as AICardEntity;

                    this.cardsDeck.Add(cardEntity2D);
                }
            }
        }