コード例 #1
0
ファイル: GameCenterHub.cs プロジェクト: Nivlipetz1/WSEP
        public List <ClientGame> getActiveGames(string criterion, object param)
        {
            if (!AuthManager.Instance.containsConnection(Context.ConnectionId))
            {
                return(null);
            }
            string            userName = AuthManager.Instance.GetNameByConnectionId(Context.ConnectionId);
            GameCenterService gc       = new GameCenterService();

            return(gc.getActiveGames(criterion, param, userName));
        }
コード例 #2
0
ファイル: GameCenterHub.cs プロジェクト: Nivlipetz1/WSEP
        public bool unknownUserEditLeague(int minimumLeagueRank)
        {
            if (!AuthManager.Instance.containsConnection(Context.ConnectionId))
            {
                return(false);
            }
            string            userName = AuthManager.Instance.GetNameByConnectionId(Context.ConnectionId);
            GameCenterService gc       = new GameCenterService();

            return(gc.unknownUserEditLeague(userName, minimumLeagueRank));
        }
コード例 #3
0
ファイル: GameCenterHub.cs プロジェクト: Nivlipetz1/WSEP
        public ClientGame createGame(GamePreferences preferecnces)
        {
            if (!AuthManager.Instance.containsConnection(Context.ConnectionId))
            {
                return(null);
            }
            string            userName = AuthManager.Instance.GetNameByConnectionId(Context.ConnectionId);
            GameCenterService gc       = new GameCenterService();
            ClientGame        game     = gc.createGame(preferecnces, userName);

            return(game);
        }
コード例 #4
0
ファイル: GamePlayAT.cs プロジェクト: Nivlipetz1/WSEP
        public void Before()
        {
            if (GameService.testable)
            {
                gs = new GameService();
            }
            else
            {
                gs = new GameServiceStub();
            }
            us = new SystemService();
            gc = new GameCenterService();

            userName = "******";
            Password = "******";
            us.register(userName, Password);
            us.login(userName, Password);
            GamePreferences pref = new GamePreferences(8, 2, 5, 10, 1, 2, 3, true);

            gameID = gc.createGame(pref, userName).getID();
        }
コード例 #5
0
    public void StartShowLeaderboardUI()
    {
#if UNITY_ANDROID
        GameObject playServiceObj = GameObject.Find("Google Play Service");
        if (playServiceObj != null)
        {
            GooglePlayService service = playServiceObj.GetComponent <GooglePlayService>();
            if (service != null)
            {
                service.StartShowLeaderboardUI();
            }
            else
            {
                Debug.Log("GooglePlayService component can't be found");
            }
        }
        else
        {
            Debug.Log("Google Play Service game object can't be found");
        }
#elif UNITY_IOS
        GameObject centerServiceObj = GameObject.Find("Game Center Service");
        if (centerServiceObj != null)
        {
            GameCenterService service = centerServiceObj.GetComponent <GameCenterService>();
            if (service != null)
            {
                service.StartShowLeaderboardUI();
            }
            else
            {
                Debug.Log("GameCenterService component can't be found");
            }
        }
        else
        {
            Debug.Log("Game Center Service game object can't be found");
        }
#endif
    }
コード例 #6
0
ファイル: GameCenterHub.cs プロジェクト: Nivlipetz1/WSEP
        public ClientGame spectateGame(int gameId)
        {
            if (!AuthManager.Instance.containsConnection(Context.ConnectionId))
            {
                return(null);
            }
            string            userName    = AuthManager.Instance.GetNameByConnectionId(Context.ConnectionId);
            GameCenterService gc          = new GameCenterService();
            List <string>     usersToSend = new List <string>();

            if ((usersToSend = gc.spectateGame(gameId, userName)) != null)
            {
                GameCenterManager.Instance.spectateGame(userName, gameId);
                //await Groups.Add(Context.ConnectionId, "game " + gameId);
                SystemService     userService = new SystemService();
                ClientUserProfile userProfile = userService.getUser(userName);
                Clients.Clients(usersToSend.Select(user => AuthManager.Instance.GetConnectionIdByName(user)).ToList()).spectateGame(gameId, userProfile);
                return(gc.getGameById(gameId));
            }

            return(null);
        }
コード例 #7
0
ファイル: GameCenterHub.cs プロジェクト: Nivlipetz1/WSEP
        public List <ClientGame> getAllSpectatingGames()
        {
            GameCenterService gc = new GameCenterService();

            return(gc.getAllSpectatingGames());
        }
コード例 #8
0
ファイル: GameCenterHub.cs プロジェクト: Nivlipetz1/WSEP
        public List <int> getAllAvailableReplayes()
        {
            GameCenterService gc = new GameCenterService();

            return(gc.getAllAvailableReplayes());
        }
コード例 #9
0
ファイル: GameCenterHub.cs プロジェクト: Nivlipetz1/WSEP
        public string getReplayByGameId(int gameId)
        {
            GameCenterService gc = new GameCenterService();

            return(JsonConvert.SerializeObject(gc.getReplayByGameId(gameId)));
        }
コード例 #10
0
ファイル: GameCenterHub.cs プロジェクト: Nivlipetz1/WSEP
        public string getAllReplayesOfInActiveGames()
        {
            GameCenterService gc = new GameCenterService();

            return(JsonConvert.SerializeObject(gc.getAllReplayesOfInActiveGames()));
        }
コード例 #11
0
ファイル: GameCenterHub.cs プロジェクト: Nivlipetz1/WSEP
        public ClientGame getGame(int gameId)
        {
            GameCenterService gc = new GameCenterService();

            return(gc.getGameById(gameId));
        }
コード例 #12
0
    // Use this for initialization
    void Start()
    {
        // Getting stats
        m_PlayerStats = GameObject.FindGameObjectWithTag("Player Statistics").GetComponent <PlayerStatistics>();
        m_Score.GetComponent <Text> ().text = m_CountUp_Score.ToString();
        m_CountUp_Progress = -1;
        m_fPreCountUp      = 0.0f;

        m_CountUp_Gems = new int[4];

        int gemDestroyed = 0;

        for (int i = 0; i < m_PlayerStats.m_aDestroyCount.Length; ++i)
        {
            m_CountUp_Gems[i] = 0;
            gemDestroyed     += m_PlayerStats.m_aDestroyCount[i];
        }

        // Find the score without boosters, to use for gold calc
        int realScore = (int)Mathf.Round(m_PlayerStats.m_nScore / BoosterManager.Instance.GetBoostValue(BOOSTERTYPE.ScoreMult) / BoosterManager.Instance.GetScoreMultOnce());

        m_GoldEarned = (int)Mathf.Round(realScore / 100 * BoosterManager.Instance.GetBoostValue(BOOSTERTYPE.GoldMult) * BoosterManager.Instance.GetGoldMultOnce());
        if (GameData.Instance.m_Boost_GoldMultOnce)
        {
            GameData.Instance.m_Boost_GoldMultOnce = false;
        }
        if (GameData.Instance.m_Boost_MoreHealthOnce)
        {
            GameData.Instance.m_Boost_MoreHealthOnce = false;
        }
        if (GameData.Instance.m_Boost_ScoreMultOnce)
        {
            GameData.Instance.m_Boost_ScoreMultOnce = false;
        }

        m_CoinsThisRound.GetComponent <Text>().text = m_CountUp_Gold.ToString();
        m_LeakedCounter.GetComponent <Text>().text  = m_CountUp_GemGrey.ToString();
        m_ComboCounter.GetComponent <Text> ().text  = m_CountUp_Combo.ToString();

        m_HighScoreText.SetActive(false);
        if (GameData.Instance.m_HighScore < m_PlayerStats.m_nScore)
        {
            GameData.Instance.m_HighScore = m_PlayerStats.m_nScore;
            m_HighScoreText.SetActive(true);
        }

        if (GameData.Instance.m_HighestCombo < m_PlayerStats.m_nMaxCombo)
        {
            GameData.Instance.m_HighestCombo = m_PlayerStats.m_nMaxCombo;
        }

        m_BestScore.GetComponent <Text>().text = "Best " + GameData.Instance.m_HighScore.ToString();

        // Initialising animation timer
        m_nFrameNum = m_PlayerStats.m_aGems[0].GetComponent <GemSpriteContainer>().m_Sprites.Length;
        for (int i = 1; i < m_PlayerStats.m_aGems.Length; ++i)
        {
            int num = m_PlayerStats.m_aGems[i].GetComponent <GemSpriteContainer>().m_Sprites.Length;
            m_nFrameNum = m_nFrameNum > num ? num : m_nFrameNum;
        }
        m_fAnimationIntervalTimer = 0.0f;
        m_fAnimationTimer         = 0.0f;
        m_bAnimating      = false;
        m_nAnimatingFrame = -1;

        if (m_PlayerStats.m_nScore > 0)
        {
            AchievementManager.Instance.AddGamesPlayed();
            AchievementManager.Instance.AddCoinsEarned(m_GoldEarned);
            AchievementManager.Instance.AddScoreEarned(m_PlayerStats.m_nScore);
            AchievementManager.Instance.AddLinkedGems(1, m_PlayerStats.m_aDestroyCount[0]);
            AchievementManager.Instance.AddLinkedGems(2, m_PlayerStats.m_aDestroyCount[1]);
            AchievementManager.Instance.AddLinkedGems(3, m_PlayerStats.m_aDestroyCount[2]);
            AchievementManager.Instance.AddLinkedGems(4, m_PlayerStats.m_aDestroyCount[3]);

            AchievementManager.Instance.AddCombo(m_PlayerStats.m_nMaxCombo);
            AchievementManager.Instance.AddCoinsEarned_PerGame(m_GoldEarned);
            AchievementManager.Instance.AddScoreEarned_PerGame(m_PlayerStats.m_nScore);
        }

        Analytics.CustomEvent("Scorecard", new Dictionary <string, object>
        {
            { "Score", m_PlayerStats.m_nScore },
            { "RedGem", m_PlayerStats.m_aDestroyCount[0] },
            { "BlueGem", m_PlayerStats.m_aDestroyCount[1] },
            { "GreenGem", m_PlayerStats.m_aDestroyCount[2] },
            { "YellowGem", m_PlayerStats.m_aDestroyCount[3] },
            { "GreyGem", m_PlayerStats.m_nLeakCount.ToString() },
            { "Combo", m_PlayerStats.m_nMaxCombo },
            { "GoldEarned", m_GoldEarned }
        });

#if LINKIT_COOP
        if (NetworkManager.IsConnected())
        {
            NetworkManager.Disconnect();
        }
#endif   // LINKIT_COOP

        GameData.Instance.m_Coin += m_PlayerStats.m_nCoinsGain;
        m_CurrentCoins            = GameData.Instance.m_Coin;
        m_nShowingCoins           = GameData.Instance.m_Coin;
        m_nPrevCoins              = GameData.Instance.m_Coin;
        m_fCoinsTimer             = 0.0f;
        GameData.Instance.m_Coin += m_GoldEarned;

        Text coinsText = m_Coins.GetComponent <Text>();
        coinsText.text = m_nShowingCoins.ToString();        // + " (+" + m_PlayerStats.m_nCoinsGain + ")";

#if UNITY_ANDROID
        GooglePlayService.PostHighScore(m_PlayerStats.m_nScore);
#elif UNITY_IOS
        GameCenterService.PostHighScore(m_PlayerStats.m_nScore);
#endif

        AchievementManager.Instance.BoosterGamesPlayed();
        AchievementManager.Instance.BoosterPointsEarned(m_PlayerStats.m_nScore);

        // Save
        //SaveLoad.Save();
        SaveDataLoader.SaveGame();

        if (GameObject.FindGameObjectWithTag("Gem Details") != null)
        {
            m_GemDetails = GameObject.FindGameObjectWithTag("Gem Details").GetComponent <GemDetails>();
        }

        m_bIsCurrentScreenScore = true;
        m_bScreenAnimate        = false;
        m_fScreenAnimateTimer   = 0.0f;
        m_fScreenWidth          = m_ScoreCanvas.GetComponent <RectTransform>().sizeDelta.x;
        GoToScore();
    }