コード例 #1
0
ファイル: NetHandler.cs プロジェクト: addebooi/RealmOfExile
 public void SpawnObjForAllExceptPlayer(IConctract message, long playerToExcept)
 {
     foreach (var c in _newNetUpdates.Where(x => x.Key != playerToExcept))
     {
         AddNetUpdateToPlayer(c.Key, message, SendOptions.ReliableOrdered);
     }
 }
コード例 #2
0
ファイル: NetHandler.cs プロジェクト: addebooi/RealmOfExile
 public void SpawnObjForAllPlayers(IConctract message)
 {
     foreach (var c in _newNetUpdates)
     {
         AddNetUpdateToPlayer(c.Key, message, SendOptions.ReliableOrdered);
     }
 }
コード例 #3
0
 public void AddUpdateEvent(IConctract updateEvent, SendOptions sendOptions, long objectID)
 {
     if (_updateEventsForObjectsMapper.Any(x => x.Item1 == objectID))
     {
         this._updateEvents[_updateEventsForObjectsMapper.FirstOrDefault(x => x.Item1 == objectID).Item2] =
             new Tuple <IConctract, SendOptions>(updateEvent, sendOptions);
     }
     else
     {
         AddUpdateEvent(updateEvent, sendOptions);
         _updateEventsForObjectsMapper.Add(new Tuple <long, int>(objectID, _updateEvents.Count - 1));
     }
 }
コード例 #4
0
        protected void AddMessage(IConctract message, SendOptions sendOption, int messageID)
        {
            //if (currentSyncPositionEveryMS < syncPositionEveryMS) return;
            //currentSyncPositionEveryMS = 0;

            if (_updateEventsForObjectsMapper.ContainsKey(messageID))
            {
                this.UpdateEvents[_updateEventsForObjectsMapper[messageID]].Conctract  = message;
                this.UpdateEvents[_updateEventsForObjectsMapper[messageID]].SendOption = sendOption;
            }
            else
            {
                AddMessage(message, sendOption);
                _updateEventsForObjectsMapper.Add(messageID, UpdateEvents.Count - 1);
            }
        }
コード例 #5
0
 public void AddUpdateEvent(IConctract updateEvent, SendOptions sendOptions)
 {
     this._updateEvents.Add(new Tuple <IConctract, SendOptions>(updateEvent, sendOptions));
     _hasUpdateEvent = true;
 }
コード例 #6
0
        protected void AddMessage(IConctract message, SendOptions sendOption)
        {
            var netUpdate = new NetUpdate(message, sendOption);

            AddMessage(netUpdate);
        }
コード例 #7
0
ファイル: SpawnHandler.cs プロジェクト: addebooi/RealmOfExile
 private void AddNetMessage(IConctract message)
 {
     this._spawnObjectMessageQueue.Add(message);
 }
コード例 #8
0
ファイル: NetHandler.cs プロジェクト: addebooi/RealmOfExile
        public void AddNetUpdateToAllExceptPlayer(long playerID, IConctract message, SendOptions sendOption)
        {
            var netUpdate = new NetUpdate(message, sendOption);

            AddNetUpdateToAllExceptPlayer(playerID, netUpdate);
        }
コード例 #9
0
ファイル: NetHandler.cs プロジェクト: addebooi/RealmOfExile
        //public void PositionUpdate(Object obj, bool interpolate = false)
        //{
        //    var posDat = new UpdatePositionData(obj.ObjectID, obj.Position);
        //    AddNetUpdateToAllplayers(posDat, SendOptions.Unreliable);
        //}

        //public void SpawnPlayer(Player player, long playerOwnerID)
        //{
        //    var spawnData = new SpawnData(ObjectType.Player, true, player.Position, player.Rotation, player.scale);
        //    AddNetUpdateToPlayer(playerOwnerID, spawnData, SendOptions.ReliableUnordered);
        //    foreach (var c in _newNetUpdates.Where(x => x.Key != playerOwnerID))
        //    {
        //        SpawnPlayerForPlayer(player, c.Key);

        //    }
        //}

        public void SpawnObjForPlayer(IConctract message, long playerToSpawnTo)
        {
            AddNetUpdateToPlayer(playerToSpawnTo, message, SendOptions.ReliableOrdered);
        }
コード例 #10
0
ファイル: NetHandler.cs プロジェクト: addebooi/RealmOfExile
 public NetUpdate(IConctract contract, SendOptions SendOption)
 {
     this.Conctract  = contract;
     this.SendOption = SendOption;
 }
コード例 #11
0
ファイル: NetHandler.cs プロジェクト: addebooi/RealmOfExile
        public void AddNetUpdateToAllplayers(IConctract message, SendOptions sendOption)
        {
            var netUpdate = new NetUpdate(message, sendOption);

            AddNetUpdateToAllplayers(netUpdate);
        }
コード例 #12
0
ファイル: NetHandler.cs プロジェクト: addebooi/RealmOfExile
 private void AddNetUpdateToPlayer(NetPeer player, IConctract message, SendOptions sendOption)
 {
     AddNetUpdateToPlayer(player.ConnectId, message, sendOption);
 }