public void GetPlayerCurrentPowerups_Bought6Speed9JumpUsedAllSpeeds()
        {
            //Arrange
            Player       player  = GetTestPlayer();
            Level        level   = GetTestLevel();
            LevelAttempt attempt = GetTestLevelAttempt(player.Id, level.Id);

            GetTestEnergyPurchase(player.Id, 3);
            GetTestEnergyPurchase(player.Id, 3);
            GetTestEnergyPurchase(player.Id, 5);
            GetTestEnergyPurchase(player.Id, 6);
            GetTestPlayerPowerupUsage(player.Id, 1, attempt.Id);
            GetTestPlayerPowerupUsage(player.Id, 1, attempt.Id);
            GetTestPlayerPowerupUsage(player.Id, 1, attempt.Id);
            GetTestPlayerPowerupUsage(player.Id, 1, attempt.Id);
            GetTestPlayerPowerupUsage(player.Id, 1, attempt.Id);
            GetTestPlayerPowerupUsage(player.Id, 1, attempt.Id);
            GetTestPlayerPowerupUsage(player.Id, 2, attempt.Id);
            GetTestPlayerPowerupUsage(player.Id, 2, attempt.Id);
            GetTestPlayerPowerupUsage(player.Id, 2, attempt.Id);

            PlayerProvider provider = new PlayerProvider(_context);

            //Act
            ICollection <KeyValuePair <string, int> > powerups = provider.GetPlayerCurrentPowerups(player.Id);

            //Assert
            int expectedCount      = 2;
            int expectedSpeedCount = 0;
            int expectedJumpCount  = 6;

            Assert.AreEqual(expectedCount, powerups.Count);
            Assert.AreEqual(expectedSpeedCount, powerups.Where(p => p.Key == "Speed").Sum(p => p.Value));
            Assert.AreEqual(expectedJumpCount, powerups.Where(p => p.Key == "Jump").Sum(p => p.Value));
        }
Пример #2
0
    /// <summary>
    /// 初期化
    /// </summary>
    /// <param name="in_id">プレイヤーID</param>
    /// <param name="in_pos">リスポーン座標</param>
    public void Initialize(PlayerID in_id, Vector3 in_pos, PlayerProvider in_provider)
    {
        _playerid = in_id;

        _onInitializeAsyncSubject.OnNext((int)in_id);
        _onInitializeAsyncSubject.OnCompleted();
    }
Пример #3
0
        public void FirtPlayerOk()
        {
            var     playerProvider = new PlayerProvider();
            IPlayer firstPlayer    = playerProvider.GetAllWorldCupPlayer().First();

            Assert.AreEqual("Jefferson", firstPlayer.Name);
        }
Пример #4
0
    public override void OnUpdate(float deltaTime)
    {
        if (onTankShootRequestedEvent.IsPublished)
        {
            foreach (var networkViewIDStr in onTankShootRequestedEvent.BatchedChanges)
            {
                int            networkViewID  = int.Parse(networkViewIDStr);
                PlayerProvider playerProvider = null;

                foreach (var p in playersFilter)
                {
                    ref PlayerComponent pc = ref p.GetComponent <PlayerComponent>();
                    if (pc.networkPlayer.networkViewID == networkViewID)
                    {
                        playerProvider = pc.networkPlayer.GetPlayerProvider();
                        break;
                    }
                }

                if (playerProvider == null)
                {
                    continue;
                }

                Entity tankEntity = playerProvider.Entity;

                ref TankComponent tank = ref tankEntity.GetComponent <TankComponent>();

                ProjectileProvider            pp               = ObjectSpawner.inst.InstantiateBullet();
                ref ProjectileComponent       projectile       = ref pp.Entity.GetComponent <ProjectileComponent>();
Пример #5
0
    private void SetupPlayer()
    {
        var tank = PhotonNetwork.Instantiate("Tank", Vector3.zero, Quaternion.identity);

        _playerProvider = tank.GetComponent <PlayerProvider>();
        _playerProvider.Entity.AddComponent <LockInputMarker>();
        _playerProvider.Entity.AddComponent <InputData>();
    }
 public TestPlayerProvider()
 {
     _dbContextMock = new Mock <IDbContext>();
     _dbContextMock.Setup(context => context.GetContext())
     .Returns(GetPayload());
     _dbContextMock.Setup(context => context.SaveContext(It.IsAny <Payload>()));
     _provider = new PlayerProvider(_dbContextMock.Object);
 }
Пример #7
0
 public BlockadeController(
     PlayerProvider playerProvider,
     BlockadeGame.Factory blockadeGameFactory,
     MyProfiler myProfiler)
 {
     this._playerProvider      = playerProvider;
     this._blockadeGameFactory = blockadeGameFactory;
     this._myProfiler          = myProfiler;
 }
Пример #8
0
    public PlayerProvider InstantiatePlayer()
    {
        PlayerProvider newPlayer = PhotonNetwork.Instantiate("Prefabs/" + playerProviderPrefab.name, Vector3.zero, Quaternion.identity).GetComponent <PlayerProvider>();

        //PlayerProvider newPlayer = Instantiate(playerProviderPrefab) as PlayerProvider;


        return(newPlayer);
    }
Пример #9
0
        public IHttpActionResult GetPlayer(int id)
        {
            var player = PlayerProvider.GetPlayer(id);

            if (player == null)
            {
                return(NotFound());
            }

            return(Ok(player));
        }
Пример #10
0
        public IHttpActionResult UpdatePlayer([FromBody] Player player)
        {
            var result = PlayerProvider.UpdatePlayer(player);

            if (result == null)
            {
                return(NotFound());
            }

            return(Ok(result));
        }
Пример #11
0
    void Start()
    {
        timeManager    = GetComponent <GameTimeManager>();
        playerProvider = GetComponent <PlayerProvider>();
        enemyProvider  = GetComponent <EnemyProvider>();

        CurrentState.Subscribe(state =>
        {
            //state.Red();
            OnStateChanged(state);
        });
    }
Пример #12
0
 public RavenfallGameSession(
     IBotServer server,
     Guid id,
     string userId,
     string name,
     DateTime created)
 {
     this.playerProvider = new PlayerProvider();
     this.server         = server;
     this.Id             = id;
     this.UserId         = userId;
     this.Name           = name;
     this.Created        = created;
 }
Пример #13
0
        static void TestInsert()
        {
            var player  = new Player();
            var player2 = new Player();

            player2.Lives = 2;
            player.Lives  = 2;

            PlayerProvider.InsertPlayerAsync(player).Wait();
            PlayerProvider.InsertPlayerAsync(player2).Wait();

            Console.Write("Inserted plaeyrs");
            Console.Read();
        }
        public void GetCurrentPlayerLives_NoDeaths()
        {
            //Arrange
            Player player = GetTestPlayer();

            PlayerProvider provider = new PlayerProvider(_context);

            //Act
            int lives = provider.GetCurrentPlayerLives(player.Id);

            //Assert
            int expectedLives = 5;

            Assert.AreEqual(expectedLives, lives);
        }
        public void GetPlayerCurrentPowerups_NoPowerups()
        {
            //Arrange
            Player player = GetTestPlayer();

            PlayerProvider provider = new PlayerProvider(_context);

            //Act
            ICollection <KeyValuePair <string, int> > powerups = provider.GetPlayerCurrentPowerups(player.Id);

            //Assert
            int expectedCount = 0;

            Assert.AreEqual(expectedCount, powerups.Count);
        }
Пример #16
0
    void teleportOnTop()
    {
        player = GameObject.FindWithTag("Player");
        PlayerProvider playerProvider = player.GetComponent <PlayerProvider> ();
        //GameObject.Find("Player").GetComponent<PlayerProvider> ();

        //Debug.Log (player);
        //Debug.Log (playerProvider);
        //Debug.Log ("PosX is about to be called");

        float posX = playerProvider.getPosX();
        float posY = 5.0f;        //playerProvider.getSize ().y * 3;

        boss1.transform.localPosition = new Vector2(posX, posY);
    }
Пример #17
0
    //attack helper functions
    void shootPlayer(float speed)
    {
        playerProvider = player.GetComponent <PlayerProvider> ();

        Vector2 targetPos = playerProvider.getPos();
        Vector2 startPos  = boss1Transform.localPosition;

        Vector2 direction = getDirection(targetPos, startPos);

        GameObject projectileInstance =
            GameObject.Instantiate(bossBullet, boss1Transform.position, boss1Transform.rotation)
            as GameObject;

        Rigidbody2D projectileInstanceRBody = projectileInstance.GetComponent <Rigidbody2D> ();

        projectileInstanceRBody.velocity = direction * speed;
    }
        public void GetCurrentPlayerLives_IrrelevantDeath()
        {
            //Arrange
            Player       player  = GetTestPlayer();
            Level        level   = GetTestLevel();
            LevelAttempt attempt = GetTestLevelAttempt(player.Id, level.Id);
            PlayerDeath  death   = GetTestPlayerDeath(player.Id, attempt.Id, DateTime.Now.AddMinutes(-1));

            PlayerProvider provider = new PlayerProvider(_context);

            //Act
            int lives = provider.GetCurrentPlayerLives(player.Id);

            //Assert
            int expectedLives = 5;

            Assert.AreEqual(expectedLives, lives);
        }
Пример #19
0
    // 创建房间,加入count个玩家
    public void CreateRoom(int count)
    {
        playerCount = count;

        ///TODO: 4位RoomID,由服务器分配
        int roomId = Random.Range(1000, 10000);

        ///TODO: 等待其他玩家加入

        // 从总玩家数max中,随机取count个数
        int max = System.Enum.GetNames(typeof(AvatarModel)).GetLength(0);

        int[] startArray  = new int[max];
        int[] resultArray = new int[playerCount]; //结果存放在里面
        for (int i = 0; i < max; i++)
        {
            startArray[i] = i;
        }
        for (int i = 0; i < playerCount; i++)
        {
            int seed = Random.Range(0, startArray.Length - i);        //从剩下的随机数里生成
            resultArray[i]   = startArray[seed];                      //赋值给结果数组
            startArray[seed] = startArray[startArray.Length - i - 1]; //把随机数产生过的位置替换为未被选中的值。
        }

        // 创建当局玩家列表
        playerList.Clear();
        for (int i = 0; i < playerCount; i++)
        {
            GamePlayer player = new GamePlayer()
            {
                gameid  = i,
                user_id = botDatabase.botList[resultArray[i]].user_id,
                avatar  = (AvatarModel)resultArray[i],
                money   = botDatabase.botList[resultArray[i]].money
            };

            PlayerProvider scirpt = AvatarPool.instance.Spawn(player);
            scirpt.mPlayer = player;                        //赋值
            SpawnPoints.instance.SitDown(scirpt.transform); //入座

            playerList.Add(player);
        }
    }
        /// <summary>
        ///     Set configuration For Initialize Game Service.
        /// </summary>
        /// <param name="configuration">(NOTNULL)configuration For Initialize Game Service</param>
        public static void ConfigurationInstance(GameServiceClientConfiguration configuration)
        {
            if (configuration == null)
            {
                throw new GameServiceException("Configuration Cant Be Null").LogException(typeof(GameService),
                                                                                          DebugLocation.Internal, "ConfigurationInstance");
            }

            if (SynchronizationContext.Current == null)
            {
                SynchronizationContext.SetSynchronizationContext(new SynchronizationContext());
            }

            SynchronizationContext = SynchronizationContext.Current;

            if (IsAuthenticated())
            {
                throw new GameServiceException("Must Logout First To ReConfiguration").LogException(typeof(GameService),
                                                                                                    DebugLocation.Internal, "ConfigurationInstance");
            }

            Configuration   = configuration;
            HandlerType     = EventHandlerType.UnityContext;
            DownloadManager = new DownloadManager(Configuration);

            Achievement   = new AchievementProvider();
            Assets        = new AssetsProvider();
            Data          = new DataProvider();
            Table         = new TableProvider();
            CloudFunction = new CloudFunctionProvider();
            Leaderboard   = new LeaderboardProvider();
            LoginOrSignUp = new LoginOrSignUpProvider();
            Player        = new PlayerProvider();
            Save          = new SaveProvider();

            GSLive = new GsLive();
            Social = new Social.Social();
        }
        public void GetCurrentPlayerLives_MaxDeaths()
        {
            //Arrange
            Player       player  = GetTestPlayer();
            Level        level   = GetTestLevel();
            LevelAttempt attempt = GetTestLevelAttempt(player.Id, level.Id);
            PlayerDeath  death   = GetTestPlayerDeath(player.Id, attempt.Id);

            GetTestPlayerDeath(player.Id, attempt.Id);
            GetTestPlayerDeath(player.Id, attempt.Id);
            GetTestPlayerDeath(player.Id, attempt.Id);
            GetTestPlayerDeath(player.Id, attempt.Id);

            PlayerProvider provider = new PlayerProvider(_context);

            //Act
            int lives = provider.GetCurrentPlayerLives(player.Id);

            //Assert
            int expectedLives = 0;

            Assert.AreEqual(expectedLives, lives);
        }
Пример #22
0
 private void SpawnLocalPlayer()
 {
     PlayerProvider      playerProvider = ObjectSpawner.inst.InstantiatePlayer();
     ref PlayerComponent pc             = ref playerProvider.Entity.GetComponent <PlayerComponent>();
Пример #23
0
        public void LoadExistingData()
        {
            Rounds.Clear();
            PlayerPairings.Clear();

            var files = _storage.GetHatRoundPaths();

            foreach (var file in files)
            {
                try
                {
                    var doc = new XmlDocument();
                    using (var stream = new FileStream(file, FileMode.Open))
                    {
                        doc.Load(stream);
                    }
                    var teams = doc.SelectNodes("/HatRound/Teams/Team");

                    // Basic validation
                    if (teams.Count == 0 || teams.Count % 2 != 0)
                    {
                        throw new Exception();
                    }

                    var teamList = new List <Team>();
                    foreach (XmlNode team in teams)
                    {
                        var  teamName = team.SelectSingleNode("Name").InnerText;
                        Team t        = new Team(teamName);
                        var  players  = team.SelectNodes("Players/Player");

                        // Basic validation
                        if (players.Count == 0)
                        {
                            throw new Exception();
                        }

                        foreach (XmlNode player in players)
                        {
                            var    name = player.SelectSingleNode("Name").InnerText;
                            Player p    = PlayerProvider.GetPlayer(name);

                            // Player list may have changed throughout the day, so accept this difference
                            if (p != null)
                            {
                                t.AddPlayer(p);
                            }
                        }
                        GameResult gameResult = (GameResult)Enum.Parse(typeof(GameResult), team.SelectSingleNode("GameResult").InnerText);
                        if (gameResult != GameResult.NoneYet)
                        {
                            t.GameDone(gameResult);
                        }

                        teamList.Add(t);
                    }
                    var round = new HatRound(teamList, file);
                    AddRound(round);
                }
                catch (Exception)
                {
                    throw new InvalidRoundException(string.Format("Round file {0} is an invalid file", file));
                }
            }
        }
Пример #24
0
 void Awake()
 {
     playerProvider = GetComponent <PlayerProvider>();
     canOperation   = false;
 }
Пример #25
0
        public void PlayerWellRetrieved()
        {
            var playerProvider = new PlayerProvider();

            Assert.IsTrue(playerProvider.GetAllWorldCupPlayer().Any());
        }
Пример #26
0
 public void Construct(Player player, PlayerProvider playerProvider)
 {
     playerProvider.Selected.Value = player;
 }
Пример #27
0
        public IHttpActionResult PutPlayer([FromBody] Player player)
        {
            var result = PlayerProvider.CreatePlayer(player.Name);

            return(Ok(result));
        }