Пример #1
0
        public void Update(StartUserProjectileServerMessage m)
        {
            var newEntity = new ProjectileEntity(m.Id, m.OwnerId, GetOrPlaceholder(m.OwnerId), m.Start,
                                                 m.Start.GetHeading(m.Finish), m.Finish, (int)m.Speed, m.Time.Ticks);

            Register(newEntity);
        }
        public void Update(ParsedMessage message)
        {
            Entity newEntity = null;

            message.On <SpawnUserServerMessage>(m => newEntity           = new UserEntity(m));
            message.On <LoginServerMessage>(m => newEntity               = new UserEntity(m));
            message.On <SpawnNpcServerMessage>(m => newEntity            = new NpcEntity(m.Id, m.OwnerId, GetOrPlaceholder(m.OwnerId)));
            message.On <SpawnProjectileServerMessage>(m => newEntity     = new ProjectileEntity(m.Id, m.OwnerId, GetOrPlaceholder(m.OwnerId)));
            message.On <StartUserProjectileServerMessage>(m => newEntity = new ProjectileEntity(m.Id, m.OwnerId, GetOrPlaceholder(m.OwnerId)));
            if (newEntity != null)
            {
                _dictionary[newEntity.Id] = newEntity;
                OnEntityUpdated(newEntity);
            }
        }