Ejemplo n.º 1
0
    //IEnumerator DestroyCoroutine()
    //{

    //}
    void StartFall()
    {
        //foreach(var ps in particleSystems )
        //{

        //    var cMin = ps.main.startColor.colorMin;
        //    var cMax = ps.main.startColor.colorMax;
        //    if ( score >= 0 ) {
        //        cMin = new Color(cMin.r, cMin.g, cMin.b, cMin.a * (float)score / (float)( score + 1f ));
        //        cMax = new Color(cMax.r, cMax.g, cMax.b, cMax.a * (float)score / (float)( score + 1f ));
        //    }
        //    ParticleSystem.MinMaxGradient grad = new ParticleSystem.MinMaxGradient(cMin, cMax);

        //    //ps.SetParticles(;
        //}

        if (scoreAppleType == G20_ScoreAppleType.GOLDEN)
        {
            G20_ScoreManager.GetInstance().GoldPoint.AddScore(1);
        }
        // 落ちて消える処理

        GetComponent <Collider>().enabled = false;
        GetComponent <G20_HitObject>().ChangeHitTag(G20_HitTag.NORMAL);
        StartCoroutine(FallCoroutine());
    }
Ejemplo n.º 2
0
    public void SendScore()
    {
        GameController GC = GameObject.Find("GameManager").GetComponent <GameController>();

        string[] idm   = new string[1]; //プレイヤーID
        int[]    score = new int[1];    //スコア
        string[] idate = new string[1]; //プレイ終了時間

        int cnt = 0;

        for (int i = 0; i <= GC.player_isentry.Length; i++)
        {
            if (GC.player_isentry[i] == true)//player_isentryがtrueの人が参加
            {
                idm[cnt] = GC.player_id[i];
                cnt++;
                break;
            }
        }
        //現在時刻を取得
        idate[0] = GC.Now();
        //スコア取得
        score[0] = G20_ScoreManager.GetInstance().GetSumScore();

        // 順番は配列の0番目から順にプレイヤー1, プレイヤー2・・・となる。
        // id: プレイヤーの識別番号
        // score: プレイヤーのスコア
        // idate: スコア送信時刻
        _gameController.ScoreUpdate(idm, score, idate);
    }
Ejemplo n.º 3
0
    IEnumerator PerformanceRoutine()
    {
        //トータルスコア瞬時表示
        currentTotalScore += G20_ScoreManager.GetInstance().GetBaseScore();
        totalScore.text    = currentTotalScore.ToString();
        var baseScoreStr = G20_ScoreManager.GetInstance().GetBaseScore().ToString();

        baseScore.text = baseScoreStr;
        yield return(new WaitForSeconds(1.0f));

        //チェイン数、チェインボーナス、トータルスコア、カウントアップ
        var preScore = currentTotalScore;

        currentTotalScore += G20_ScoreManager.GetInstance().GetMaxChainBonus();
        G20_ScoreCountUpPerformer.GetInstance().StartCountUpScore(chainValue, 0, G20_ChainCounter.GetInstance().MaxChainCount, chainCountUpDuration);
        G20_ScoreCountUpPerformer.GetInstance().StartCountUpScore(chainScore, 0, G20_ScoreManager.GetInstance().GetMaxChainBonus(), chainCountUpDuration);
        G20_ScoreCountUpPerformer.GetInstance().StartCountUpScore(totalScore, preScore, currentTotalScore, chainCountUpDuration);
        yield return(new WaitForSeconds(chainCountUpDuration + 1.0f));

        //命中率、命中率ボーナス、トータルスコア、カウントアップ
        preScore           = currentTotalScore;
        currentTotalScore += G20_ScoreManager.GetInstance().GetHitRateBonus();
        G20_ScoreCountUpPerformer.GetInstance().StartCountUpScore(hitRateValue, 0, (int)(G20_BulletShooter.GetInstance().HitRate * 100), hitRateCountUpDuration);
        G20_ScoreCountUpPerformer.GetInstance().StartCountUpScore(hitRateScore, 0, G20_ScoreManager.GetInstance().GetHitRateBonus(), hitRateCountUpDuration);
        G20_ScoreCountUpPerformer.GetInstance().StartCountUpScore(totalScore, preScore, currentTotalScore, hitRateCountUpDuration);
        yield return(new WaitForSeconds(hitRateCountUpDuration));

        //RANK表示ドーン
        ShowRank();
        showRankAnim.CrossFade("ShowRank", 0f);
    }
 void InputPlusScore()
 {
     if (Input.GetKeyDown(KeyCode.U))
     {
         G20_ScoreManager.GetInstance().Base.AddScore(10);
     }
     if (Input.GetKeyDown(KeyCode.G))
     {
         G20_ScoreManager.GetInstance().GoldPoint.AddScore(1);
     }
 }
Ejemplo n.º 5
0
 public override void Execute(Vector3 hit_point)
 {
     if (canHitValue <= 0)
     {
         return;
     }
     if (!RecvArmor())
     {
         G20_EffectManager.GetInstance().Create(G20_EffectType.PLUS_ONE_SCORE, hit_point);
         G20_ScoreManager.GetInstance().Base.AddScore(scoreValue);
         canHitValue--;
     }
 }
 public void Excute(Action on_end_action)
 {
     fadeAlpha = Mathf.Clamp(fadeAlpha, 0, 1.0f);
     foreach (var i in DeActiveObjs)
     {
         i.SetActive(false);
     }
     foreach (var i in ActiveObjs)
     {
         i.SetActive(true);
     }
     StartCoroutine(FailedTextRoutine(on_end_action));
     StartCoroutine(FailedPanelRoutine());
     ScoreText.text = "SHOT     APPLE : " + G20_ScoreManager.GetInstance().GetSumScore();
 }
    public void CalcAndAddScore(int _damage)
    {
        var score = StealHaveScore(oneDamageStealValue * _damage);

        if (score <= 0)
        {
            return;
        }
        //ボーナス加算
        score += G20_ChainCounter.GetInstance().GetOneTimeBonusScore();
        G20_ScoreManager.GetInstance().Base.AddScore(score);
        var obj = G20_EffectManager.GetInstance().Create(G20_EffectType.PLUS_ONE_SCORE, scoreEffectTransform.position);

        obj.GetComponent <TextMesh>().text = "+" + (score);
    }
Ejemplo n.º 8
0
    void ShowRank()
    {
        var sumScore    = G20_ScoreManager.GetInstance().GetSumScore();
        var resultParam = resultParams[G20_GameManager.GetInstance().gameDifficulty];

        resultParam.resultParams.Sort((a, b) => b.scoreCondition - a.scoreCondition);
        foreach (var i in resultParam.resultParams)
        {
            if (sumScore >= i.scoreCondition)
            {
                rankText.text  = i.text;
                rankText.color = i.color;
                return;
            }
        }
    }
    IEnumerator ScoreSendCoroutine()
    {
        if (!is_network)
        {
            yield break;
        }

        WWWForm form = new WWWForm();

        form.AddField("userinfo", "Guest");
        form.AddField("date", date);
        form.AddField("score", G20_ScoreManager.GetInstance().GetSumScore());
        form.AddField("ID", userIDstr);
        form.AddField("difficulty", (int)G20_GameManager.GetInstance().gameDifficulty);//どっかからとってこれるようにする?

        WWW www = new WWW(scoreSendAdress, form);

        yield return(www);

        //Debug.Log(www.text);

        yield return(null);
    }
Ejemplo n.º 10
0
 private void Start()
 {
     G20_ScoreCountUpPerformer.GetInstance().StartCountUpScore(scoreText, 0, () => G20_ScoreManager.GetInstance().GetBaseScore(), scoreChangeInterval);
 }
Ejemplo n.º 11
0
    IEnumerator FallAppleRoutine(Action on_end_action)
    {
        G20_FadeChanger.GetInstance().StartWhiteFadeOut(2.0f);
        yield return(new WaitForSeconds(2.0f));

        SetClearObjects();
        playerObj.transform.position    = new Vector3(0, 1f, -9.5f);
        playerObj.transform.eulerAngles = Vector3.zero;
        yield return(new WaitForSeconds(1f));

        G20_BGMManager.GetInstance().Play(G20_BGMType.CLEAR);
        G20_FadeChanger.GetInstance().StartWhiteFadeIn(2.0f);
        yield return(new WaitForSeconds(2.0f));

        //ランク演出
        rankPerformer.StartPerformance();

        //スコア算出
        var sumScore = G20_ScoreManager.GetInstance().GetSumScore();

        // リンゴ落下数の計算
        var goldFallCount = G20_ScoreManager.GetInstance().GoldPoint.Value;
        // 全リンゴ
        var totalAppleCount = (sumScore / 100) - goldFallCount * 2;
        // 全リンゴ25、金4のとき
        // 5,11,17,23番目に落とす(6の倍数-1)
        // 全リンゴ25、金5のとき
        // 4,9,14,19,24番目に落とす(5の倍数-1)
        int goldRate = 9999;

        if (goldFallCount != 0)
        {
            goldRate = totalAppleCount / goldFallCount;
        }

        initUI();

        //リンゴ積み上げ
        balanceNum = -fallSize.x;
        var fallAppleDelay = fallTime / totalAppleCount;

        for (int i = 0; i < totalAppleCount; i++)
        {
            GameObject apple;
            bool       isGoldenApple = (i % goldRate == goldRate - 1);
            if (isGoldenApple)
            {
                apple = Instantiate(goldenAppleObj);
            }
            else
            {
                apple = Instantiate(appleObj);
            }

            var fallAppleSound = apple.GetComponent <G20_FallAppleSound>();
            fallAppleSound.firstCollisionHItAction += PlusAppleScore;
            fallAppleSound.eventArgInteger          = isGoldenApple ? 300 : 100;
            apple.transform.SetParent(transform);
            if (IsRandomlyFall)
            {
                apple.transform.position = GetRandomPosition();
            }
            else
            {
                apple.transform.position = GetBalancePosition();
            }
            yield return(new WaitForSeconds(fallAppleDelay));
        }


        yield return(new WaitForSeconds(endWaitTime));

        if (on_end_action != null)
        {
            on_end_action();
        }
    }
Ejemplo n.º 12
0
 private void Awake()
 {
     deathActions += (a, b) => G20_ScoreManager.GetInstance().Base.AddScore(2000);
 }