Esempio n. 1
0
 public void Deletion(string text)
 {
     Changes.Enqueue(new LineItem {
         Change = Edit.Remove, Text = text
     });
     Deletions++;
 }
Esempio n. 2
0
 public void Addition(string text)
 {
     Changes.Enqueue(new LineItem {
         Change = Edit.Add, Text = text
     });
     Additions++;
 }
Esempio n. 3
0
        internal void SetEquimentState(int playerId, int itemId, bool equipped)
        {
            var targetPlayer = GetPlayer(playerId);

            if (targetPlayer != null)
            {
                Changes.Enqueue(new PlayerEquipmentStateUpdated(targetPlayer, itemId, equipped));
            }
        }
Esempio n. 4
0
        internal void PlayerStatUpdate(int playerId, string skill, int level, decimal experience)
        {
            var targetPlayer = GetPlayer(playerId);

            if (targetPlayer != null)
            {
                Changes.Enqueue(new PlayerStatUpdated(targetPlayer, skill, level, experience));
            }
        }
Esempio n. 5
0
        internal void UpdateHealth(int npcServerId, int health, int maxHealth, int delta)
        {
            var npc = GetNPC(npcServerId);

            if (npc != null)
            {
                Changes.Enqueue(new NpcHealthUpdated(npc, health, maxHealth, delta));
            }
        }
Esempio n. 6
0
        internal void Death(int npcServerId)
        {
            var npc = GetNPC(npcServerId);

            if (npc != null)
            {
                Changes.Enqueue(new NpcDied(npc));
            }
        }
Esempio n. 7
0
        internal void Respawn(int npcServerId)
        {
            var npc = GetNPC(npcServerId);

            if (npc != null)
            {
                Changes.Enqueue(new NpcRespawned(npc));
            }
        }
Esempio n. 8
0
        internal void PlayerLevelUp(int playerId, string skill, int gainedLevels)
        {
            var targetPlayer = GetPlayer(playerId);

            if (targetPlayer != null)
            {
                Changes.Enqueue(new PlayerLeveledUp(targetPlayer, skill, gainedLevels));
            }
        }
Esempio n. 9
0
        public void SetAnimationState(int playerId, string animationState, bool enabled, bool trigger, int actionNumber)
        {
            var targetPlayer = GetPlayer(playerId);

            if (targetPlayer != null)
            {
                Changes.Enqueue(new PlayerAnimationStateUpdated(targetPlayer, animationState, enabled, trigger, actionNumber));
            }
        }
Esempio n. 10
0
        internal void SetPlayerInventory(int playerId, long coins, int[] itemId, long[] amount)
        {
            var targetPlayer = GetPlayer(playerId);

            if (targetPlayer != null)
            {
                Changes.Enqueue(new PlayerInventoryUpdated(targetPlayer, coins, itemId, amount));
                return;
            }
        }
Esempio n. 11
0
        public void NpcAction(int playerId, int npcId, int actionType, int parameterId, byte status)
        {
            UnityEngine.Debug.Log("PlayerHandler::NpcAction");
            var targetPlayer = GetPlayer(playerId);

            if (targetPlayer != null)
            {
                Changes.Enqueue(new PlayerNpcAction(targetPlayer, npcId, actionType, parameterId, status));
            }
        }
Esempio n. 12
0
        public void OpenTradeWindow(int playerId, int npcServerId, string shopName, int[] itemId, int[] itemPrice, int[] itemStock)
        {
            UnityEngine.Debug.Log("PlayerHandler::ObjectAction");
            var targetPlayer = GetPlayer(playerId);

            if (targetPlayer != null)
            {
                Changes.Enqueue(new OpenNpcTradeWindow(targetPlayer, npcServerId, shopName, itemId, itemPrice, itemStock));
            }
        }
Esempio n. 13
0
        internal void PlayerItemRemove(int playerId, int itemId, int amount)
        {
            var targetPlayer = GetPlayer(playerId);

            if (targetPlayer != null)
            {
                Changes.Enqueue(new PlayerItemRemoved(targetPlayer, itemId, amount));
                return;
            }
        }
Esempio n. 14
0
 internal void UpdateHealth(int targetPlayerId, int health, int maxHealth, int delta)
 {
     lock (SyncRoot)
     {
         var targetPlayer = Entities.FirstOrDefault(x => x.Id == targetPlayerId);
         if (targetPlayer != null)
         {
             Changes.Enqueue(new PlayerHealthUpdated(targetPlayer, health, maxHealth, delta));
         }
     }
 }
Esempio n. 15
0
        /// <summary>
        /// Tries to detect any changes between the current state of the <see cref="DBContext"/> and the Snapshot of the latest synchronization
        /// </summary>
        public bool DetectChanges(DBContext context)
        {
            // Parse the changes and add them to the queue
            foreach (var change in ParseChanges(context))
            {
                Changes.Enqueue(change);
            }

            // Return wether there are changes in the context
            return(Changes.Count > 0);
        }
Esempio n. 16
0
        internal void PlayerStatsUpdate(int playerId, Attributes attributes, Professions professions)
        {
            var targetPlayer = GetPlayer(playerId);

            if (targetPlayer != null)
            {
                targetPlayer.Attributes  = attributes;
                targetPlayer.Professions = professions;
                Changes.Enqueue(new PlayerStatsUpdated(targetPlayer));
                return;
            }
        }
Esempio n. 17
0
 public void Move(int playerId, Vector3 position, Vector3 destination, bool running)
 {
     lock (SyncRoot)
     {
         var targetPlayer = Entities.FirstOrDefault(x => x.Id == playerId);
         if (targetPlayer != null)
         {
             targetPlayer.Destination = destination;
             targetPlayer.Position    = position;
             targetPlayer.Running     = running;
             Changes.Enqueue(new EntityMoved <Player>(targetPlayer));
         }
     }
 }
Esempio n. 18
0
        public void Move()
        {
            var newHead = GetNewHeadCoordinate();

            snake.AddBefore(snake.First, newHead);
            Changes.Enqueue(new SnakeCoordinateChange(newHead, SnakeCoordinateChangeType.Add));

            if (gameField.GetDotType(newHead) == DotType.Fruit)
            {
                return;
            }

            Changes.Enqueue(new SnakeCoordinateChange(snake.Last.Value, SnakeCoordinateChangeType.Remove));
            snake.RemoveLast();
        }
Esempio n. 19
0
 public Snake(int x, int y)
 {
     snake.AddFirst(new LinkedListNode <Coordinate>(new Coordinate(x, y)));
     Changes.Enqueue(new SnakeCoordinateChange(snake.First.Value, SnakeCoordinateChangeType.Add));
 }
Esempio n. 20
0
 public void Unchanged(string text) => Changes.Enqueue(new LineItem {
     Change = Edit.None, Text = text
 });
Esempio n. 21
0
 /// <summary>
 ///     Adds the change.
 /// </summary>
 /// <param name="change">The change.</param>
 public void AddChange(ChangeSet change)
 {
     lock (_changeSetLock) {
         Changes.Enqueue(change);
     }
 }