Inheritance: MonoBehaviour
    private void Update()
    {
        float before = ScoreBar.GetComponent <Image>().fillAmount;

        ScoreBar.GetComponent <Image>().fillAmount += (score * 1f / threeStar - ScoreBar.GetComponent <Image>().fillAmount) * 0.2f;
        SpaceShip.GetComponent <RectTransform>().anchoredPosition = new Vector2(ScoreBar.GetComponent <RectTransform>().rect.width *ScoreBar.GetComponent <Image>().fillAmount, 0);
        if (oneStar * 1f / threeStar < ScoreBar.GetComponent <Image>().fillAmount&& oneStar * 1f / threeStar > before)
        {
            Debug.Log("1 sao");
            Destroy(Instantiate(StarExplo, new Vector3(OneStarPos.transform.position.x, OneStarPos.transform.position.y + 1f, 0f), Quaternion.identity), 1.5f);
            GameObject.FindGameObjectWithTag("UI").GetComponentInChildren <starSlider>().tangsao();
        }
        if (twoStar * 1f / threeStar < ScoreBar.GetComponent <Image>().fillAmount&& twoStar * 1f / threeStar > before)
        {
            Debug.Log("2 sao");
            Destroy(Instantiate(StarExplo, new Vector3(TwoStarPos.transform.position.x, OneStarPos.transform.position.y + 1f, 0f), Quaternion.identity), 1.5f);
            GameObject.FindGameObjectWithTag("UI").GetComponentInChildren <starSlider>().tangsao();
        }
        if (before < 1 && ScoreBar.GetComponent <Image>().fillAmount == 1)
        {
            Debug.Log("3 sao");
            Destroy(Instantiate(StarExplo, new Vector3(ThreeStarPos.transform.position.x, OneStarPos.transform.position.y + 1f, 0f), Quaternion.identity), 1.5f);
            GameObject.FindGameObjectWithTag("UI").GetComponentInChildren <starSlider>().tangsao();
        }
    }
Example #2
0
    public void Initialize(IOrderedEnumerable <KeyValuePair <Players, int> > playerRankScores)
    {
        int maxScore = 0;

        foreach (KeyValuePair <Players, int> kv in playerRankScores)
        {
            maxScore = kv.Value;
            break;
        }

        int i = 0;
        SortedDictionary <Players, ScoreBar> sbs = new SortedDictionary <Players, ScoreBar>();

        foreach (KeyValuePair <Players, int> kv in playerRankScores)
        {
            ScoreBar sb = GameObjectPoolManager.Instance.Pool_PlayerScoreBar.AllocateGameObject <ScoreBar>(ScoreMenuPanel);
            sb.Initialize(kv.Key, kv.Value, maxScore, i);
            sbs.Add(kv.Key, sb);
            ScoreBars.Add(sb);
            i++;
        }

        foreach (KeyValuePair <Players, ScoreBar> kv in sbs)
        {
            kv.Value.transform.SetAsLastSibling();
        }
    }
Example #3
0
        public void ScrollToScoreBar(ScoreBar scoreBar)
        {
            var point       = scoreBar.TranslatePoint(new Point(scoreBar.Width / 2, scoreBar.Height / 2), ScrollViewer);
            var newVertical = (ScoreBars.Count - scoreBar.Bar.Index - 1) * scoreBar.Height + scoreBar.Height * 0.5 - point.Y;

            ScrollViewer.ScrollToVerticalOffset(newVertical);
        }
    // Use this for initialization
    void Start()
    {
        //Debug.Log(ScoreBar.GetComponent<RectTransform>().rect.width);
        if (Fade.instance != null)
        {
            Fade.instance.FadeOutfc();
        }

        if (gameLimit == GameLimit.Time)
        {
            txtGameLimit.GetComponentsInChildren <Text>()[0].text = "Time";
            txtGameLimit.GetComponentsInChildren <Text>()[1].text = ValueLimit.ToString();
            StartCoroutine(TimeCountDown());
        }
        else
        {
            txtGameLimit.GetComponentsInChildren <Text>()[0].text = "Move";
            txtGameLimit.GetComponentsInChildren <Text>()[1].text = ValueLimit.ToString();
        }
        foreach (var obj in targetPlanet)
        {
            itemTargetPrefab.GetComponent <Image>().sprite        = obj.Planet.GetComponent <SpriteRenderer>().sprite;
            itemTargetPrefab.GetComponentInChildren <Text>().text = "0/" + obj.NumOfTarget.ToString();
            obj.ItemTarget = Instantiate(itemTargetPrefab, containerTarget.transform);
        }
        ScoreBar.GetComponent <Image>().fillAmount = 0;
        OneStarPos.GetComponent <RectTransform>().anchoredPosition = new Vector2(ScoreBar.GetComponent <RectTransform>().rect.width *(oneStar * 1f / threeStar), 0);
        TwoStarPos.GetComponent <RectTransform>().anchoredPosition = new Vector2(ScoreBar.GetComponent <RectTransform>().rect.width *(twoStar * 1f / threeStar), 0);
    }
 private void RemoveScoreBar(ScoreBar scoreBar, bool modifiesModel, bool recalcLayout)
 {
     if (!ScoreBars.Contains(scoreBar))
     {
         throw new ArgumentException("Invalid ScoreBar.", nameof(scoreBar));
     }
     scoreBar.MouseUp   -= ScoreBar_MouseUp;
     scoreBar.MouseDown -= ScoreBar_MouseDown;
     if (modifiesModel)
     {
         Score.RemoveBarAt(scoreBar.Bar.Index);
     }
     EditableScoreBars.Remove(scoreBar);
     BarLayer.Children.Remove(scoreBar);
     TrimScoreNotes(scoreBar, modifiesModel);
     if (recalcLayout)
     {
         UpdateBarTexts();
         RecalcEditorLayout();
     }
     if (modifiesModel)
     {
         Project.IsChanged = true;
     }
 }
Example #6
0
        public SpecialNotePointer AddSpecialNote(ScoreBar scoreBar, ScoreBarHitTestInfo info, bool isFromPrevBar, NoteType type)
        {
            if (!info.IsInNextBar)
            {
                var row = info.Row;
                if (isFromPrevBar && row < 0)
                {
                    row = 0;
                }
                return(AddSpecialNote(scoreBar, row, type));
            }
            if (isFromPrevBar)
            {
                return(null);
            }
            var nextBar = ScoreBars.FirstOrDefault(b => b.Bar.Index > scoreBar.Bar.Index);

            if (nextBar == null)
            {
                return(null);
            }
            var point = scoreBar.TranslatePoint(info.HitPoint, nextBar);

            return(AddSpecialNote(nextBar, nextBar.HitTest(point), true, type));
        }
Example #7
0
        private ScoreNote AddScoreNote(ScoreBar scoreBar, ScoreBarHitTestInfo info, bool isFromPrevBar, Note dataTemplate)
        {
            if (info.IsInNextBar)
            {
                if (isFromPrevBar)
                {
                    return(null);
                }
                var nextBar = ScoreBars.FirstOrDefault(b => b.Bar.Index > scoreBar.Bar.Index);
                if (nextBar == null)
                {
                    return(null);
                }
                var point = scoreBar.TranslatePoint(info.HitPoint, nextBar);
                return(AddScoreNote(nextBar, nextBar.HitTest(point), true, dataTemplate));
            }
            var row = info.Row;

            if (isFromPrevBar && row < 0)
            {
                row = 0;
            }
            if (!info.IsValid || row < 0 || info.Column < 0)
            {
                return(null);
            }
            return(AddScoreNote(scoreBar, row, info.Column, dataTemplate));
        }
Example #8
0
    void Start()
    {
        Transform co2Bar = transform.Find("CO2Bar");

        healthBar = co2Bar.Find("Simple Bar").Find("Status Fill 01")
                    .gameObject.GetComponent <SimpleHealthBar>();
        backgroundImage = co2Bar.Find("Background").gameObject;
        scoreText       = co2Bar.Find("PPMCounter").gameObject;

        Transform warningBarT = transform.Find("WarningBar");

        warningBar = warningBarT.gameObject;
        eventImage = warningBarT.Find("EventName").gameObject;

        Transform livesT = transform.Find("Lives");

        livesText = livesT.Find("LivesText").gameObject;

        canvas = GetComponent <Canvas>();

        instance = this;
        healthBar.UpdateColor(Color.red);
        healthBar.UpdateBar(ppm, eventPeriod);
        warningBar.SetActive(false);
    }
Example #9
0
 void Start()
 {
     canvasObjectPooler = FindObjectOfType <CanvasObjectPooler>();
     scoreBar           = FindObjectOfType <ScoreBar>();
     UIText             = FindObjectOfType <UIText>();
     floatingTexts      = new List <GameObject>();
     InitPlayerPrefs();
 }
Example #10
0
    public void Lose()
    {
        int score = (int)ScoreBar.GetInstance().score;

        scoreField.GetComponent <Text>().text = "Score: " + score;
        ScoreBar.GetInstance().SetVisible(false);
        canvas.enabled = true;
    }
 private void Start()
 {
     Time.timeScale = 0;
     LivesBar.SetActive(false);
     Pause.SetActive(false);
     ScoreBar.SetActive(false);
     OutputStar();
 }
Example #12
0
 void Awake()
 {
     // tell the game to run at 60 fps, maybe put this some where better later
     Application.targetFrameRate = 60;
     scoreBar      = GameObject.Find("GUICamera").GetComponentInChildren <ScoreBar> ();
     moves         = GameObject.Find("GUICamera").GetComponentInChildren <MoveProgress>();
     colorSelector = GameObject.Find("GUICamera").GetComponentInChildren <ColorSelector>();
 }
Example #13
0
    private void Update()
    {
        ScoreBar.GetInstance().SetLives(lives);
        Rect cameraRect = CameraMovement.CameraRect();

        if ((transform.position.y < cameraRect.yMin || transform.position.x < cameraRect.xMin) && state == State.ALIVE)
        {
            Die();
        }
    }
 public ScoreBarHitTestInfo(ScoreBar scoreBar, Bar bar, Point hitPoint, int column, int row, bool isInNextBar, bool isValid)
 {
     ScoreBar    = scoreBar;
     Bar         = bar;
     HitPoint    = hitPoint;
     Column      = column;
     Row         = row;
     IsInNextBar = isInNextBar;
     IsValid     = isValid;
 }
Example #15
0
 void Awake()
 {
     if (instance == null)
     {
         instance = this;
     }
     else if (instance != this)
     {
         Destroy(gameObject);
     }
 }
Example #16
0
    private void Awake()
    {
        _depenciesManager = FindObjectOfType <DepenciesManager>();
        _livesBar         = _depenciesManager.livesBar;
        _scoreBar         = _depenciesManager.scoreBar;
        _coinBar          = _depenciesManager.coinBar;
        _ball             = _depenciesManager.ball;

        _coin            = Resources.Load <Coin>("Coin");
        _playerBehaviour = _depenciesManager.playerBehaviour;
        _audioManager    = _depenciesManager.audioManager;
    }
Example #17
0
 //tallying up the score
 public IEnumerator Score()
 {
     while (add > 0)
     {
         if (PauseMenus.gamePaused)
         {
             break;
         }
         if (add > 1600)
         {
             add -= 128;
             ManageScore.score += 128;
         }
         if (add > 800)
         {
             add -= 64;
             ManageScore.score += 64;
         }
         if (add > 400)
         {
             add -= 32;
             ManageScore.score += 32;
         }
         if (add > 200)
         {
             add -= 16;
             ManageScore.score += 16;
         }
         else if (add > 150)
         {
             add -= 8;
             ManageScore.score += 8;
         }
         else if (add > 100)
         {
             add -= 4;
             ManageScore.score += 4;
         }
         else if (add > 50)
         {
             add -= 2;
             ManageScore.score += 2;
         }
         else if (add <= 50)
         {
             add -= 1;
             ManageScore.score += 1;
         }
         myScore.text = "Score: " + ManageScore.score.ToString("n0").Replace(ManageScore.score.ToString("n0"), "<color=#C5FFC3FF>" + ManageScore.score.ToString("n0") + "</color>");
         ScoreBar.UpdateBar();
         yield return(new WaitForSeconds(.016f));
     }
 }
        private ScoreNote AddScoreNote(ScoreBar scoreBar, int row, int column, Note dataTemplate)
        {
            if (row < 0 || column < 0 || column >= 5)
            {
                return(null);
            }
            var gridCount = scoreBar.Bar.TotalGridCount;

            if (row >= gridCount)
            {
                return(null);
            }
            var bar       = scoreBar.Bar;
            var scoreNote = AnyNoteExistOnPosition(bar.Index, column, row);

            if (scoreNote != null)
            {
                return(null);
            }
            var barHeight = ScoreBars[0].Height;
            var baseY     = -MinimumScrollOffset + bar.Index * barHeight;
            var extraY    = barHeight * row / bar.TotalGridCount;

            scoreNote = new ScoreNote();
            Note note;

            if (dataTemplate != null)
            {
                note = dataTemplate;
            }
            else
            {
                note = bar.AddNote();
                note.StartPosition = note.FinishPosition = (NotePosition)(column + 1);
                note.IndexInGrid   = row;
                note.FixSync();
            }
            scoreNote.Note = note;
            EditableScoreNotes.Add(scoreNote);
            NoteLayer.Children.Add(scoreNote);
            scoreNote.X                 = NoteLayer.ActualWidth * (TrackCenterXPositions[column] - TrackCenterXPositions[0]) / (TrackCenterXPositions[4] - TrackCenterXPositions[0]);
            scoreNote.Y                 = baseY + extraY;
            scoreNote.MouseDown        += ScoreNote_MouseDown;
            scoreNote.MouseUp          += ScoreNote_MouseUp;
            scoreNote.MouseDoubleClick += ScoreNote_MouseDoubleClick;
            scoreNote.MouseEnter       += ScoreNote_MouseEnter;
            scoreNote.MouseLeave       += ScoreNote_MouseLeave;
            if (dataTemplate == null)
            {
                Project.IsChanged = true;
            }
            return(scoreNote);
        }
        public ScoreBar[] InsertScoreBars(ScoreBar before, int count)
        {
            var added = new List <ScoreBar>();

            for (var i = 0; i < count; ++i)
            {
                added.Add(AddScoreBar(before, false, null));
            }
            UpdateBarTexts();
            RecalcEditorLayout();
            return(added.ToArray());
        }
Example #20
0
        private void TrimScoreNotes(ScoreBar willBeDeleted, bool modifiesModel)
        {
            // Reposition after calling this function.
            var bar = willBeDeleted.Bar;
            Func <ScoreNote, bool> matchFunc = scoreNote => scoreNote.Note.Bar == bar;
            var processing = ScoreNotes.Where(matchFunc).ToArray();

            foreach (var scoreNote in processing)
            {
                RemoveScoreNote(scoreNote, modifiesModel, false);
            }
        }
 private void SetupMultiPlayer(int highestScore)
 {
     for (int i = 0; i < Scores.Count; i++)
     {
         if (Scores[i] > 0)
         {
             ScoreBar temp = Instantiate(ScoreBarBase, P_Scoring.transform).GetComponent <ScoreBar>();
             temp.SetNewBarColour(PlayerColourContainer.GetPlayerColour(i + 1));
             temp.Begin(Scores[i], (float)Scores[i] / (float)highestScore, BarRiseAnimationTime, Scores[i] > Highscore && Scores[i] == highestScore, Scores[i] == highestScore, 0.1f);
         }
     }
 }
        private SpecialNotePointer AddSpecialNote(ScoreBar scoreBar, int row, NoteType type, Note dataTemplate, bool updateBarText)
        {
            if (!Note.IsTypeSpecial(type))
            {
                throw new ArgumentOutOfRangeException(nameof(type));
            }
            var existingNote = scoreBar.Bar.Notes.SingleOrDefault(n => n.Type == type && n.IndexInGrid == row);

            if (existingNote != null)
            {
                if (dataTemplate == null)
                {
                    // Manual editing, not from a ReloadScore() call.
                    return(SpecialScoreNotes.First(sn => sn.Note.Equals(existingNote)));
                }
            }
            var specialNotePointer = new SpecialNotePointer();

            EditableSpecialScoreNotes.Add(specialNotePointer);
            SpecialNoteLayer.Children.Add(specialNotePointer);
            var  bar = scoreBar.Bar;
            Note note;

            if (dataTemplate == null)
            {
                note             = bar.AddNote();
                note.IndexInGrid = row;
                note.SetSpecialType(type);
                note.ExtraParams = new NoteExtraParams {
                    Note = note
                };
            }
            else
            {
                // We assume that this *is* a special note. After all this method is private.
                note = dataTemplate;
            }
            specialNotePointer.Note = note;
            var barHeight = ScoreBars[0].Height;
            var baseY     = -MinimumScrollOffset + bar.Index * barHeight;
            var extraY    = barHeight * row / bar.TotalGridCount;

            specialNotePointer.Y = baseY + extraY;
            Project.IsChanged    = true;
            if (updateBarText)
            {
                UpdateBarTexts();
            }
            return(specialNotePointer);
        }
Example #23
0
        public void SelectScoreBar(ScoreBar scoreBar)
        {
            var previousSelected = GetSelectedScoreBar();

            if (previousSelected != null)
            {
                previousSelected.IsSelected = false;
            }
            var current = scoreBar;

            if (current != null)
            {
                current.IsSelected = true;
            }
        }
        public SpecialNotePointer AddSpecialNote(ScoreBar scoreBar, ScoreBarHitTestInfo info, NoteType type)
        {
            if (!info.IsInNextBar)
            {
                return(AddSpecialNote(scoreBar, info.Row, type));
            }
            var nextBar = ScoreBars.FirstOrDefault(b => b.Bar.Index > scoreBar.Bar.Index);

            if (nextBar == null)
            {
                return(null);
            }
            var point = scoreBar.TranslatePoint(info.HitPoint, nextBar);

            return(AddSpecialNote(nextBar, nextBar.HitTest(point), type));
        }
        private ScoreBar AddScoreBar(ScoreBar before, bool recalculateLayout, Bar dataTemplate)
        {
            var project = Project;

            Debug.Assert(project != null, "project != null");
            var score = Score;
            var bar   = dataTemplate ?? (before == null ? score.AddBar() : score.InsertBar(before.Bar.Index));

            if (bar == null)
            {
                return(null);
            }
            var scoreBar = new ScoreBar();

            scoreBar.Bar = bar;
            if (ScoreBars.Count == 0)
            {
                scoreBar.Height = ScoreBar.DefaultHeight;
            }
            else
            {
                scoreBar.Height = ScoreBars[0].Height;
            }
            scoreBar.MouseUp   += ScoreBar_MouseUp;
            scoreBar.MouseDown += ScoreBar_MouseDown;
            if (before == null)
            {
                BarLayer.Children.Add(scoreBar);
                EditableScoreBars.Add(scoreBar);
            }
            else
            {
                BarLayer.Children.Add(scoreBar);
                EditableScoreBars.Insert(ScoreBars.IndexOf(before), scoreBar);
            }
            if (recalculateLayout)
            {
                UpdateBarTexts();
                RecalcEditorLayout();
            }
            if (dataTemplate == null)
            {
                Project.IsChanged = true;
            }
            return(scoreBar);
        }
Example #26
0
        public ScoreBar GetScoreBarAtPosition(Point position, UIElement sourceElement)
        {
            var      hitPosition = sourceElement.TranslatePoint(position, BarLayer);
            var      hitResult   = VisualTreeHelper.HitTest(BarLayer, hitPosition);
            var      visual      = hitResult.VisualHit as FrameworkElement;
            ScoreBar hitScoreBar = null;

            while (visual != null)
            {
                if (visual is ScoreBar)
                {
                    hitScoreBar = visual as ScoreBar;
                    break;
                }
                visual = visual.Parent as FrameworkElement;
            }
            return(hitScoreBar);
        }
    private void SetupSinglePlayer(int playerNr)
    {
        int highestScore;

        if (Scores[playerNr] > _Highscore.Highscores[_LevelIndex])
        {
            highestScore = Scores[playerNr];
        }
        else
        {
            highestScore = _Highscore.Highscores[_LevelIndex];
        }
        ScoreBar temp = Instantiate(ScoreBarBase, P_Scoring.transform).GetComponent <ScoreBar>();

        temp.SetNewBarColour(PlayerColourContainer.GetPlayerColour(playerNr + 1));
        temp.Begin(Scores[playerNr], (float)Scores[playerNr] / (float)highestScore, BarRiseAnimationTime, Scores[playerNr] > _Highscore.Highscores[_LevelIndex], Scores[playerNr] > _Highscore.Highscores[_LevelIndex], 0.1f);

        temp = Instantiate(ScoreBarBase, P_Scoring.transform).GetComponent <ScoreBar>();
        temp.SetNewBarColour(PlayerColourContainer.GetPlayerColour(0));
        temp.Begin(_Highscore.Highscores[_LevelIndex], (float)_Highscore.Highscores[_LevelIndex] / (float)highestScore, BarRiseAnimationTime, false, false, 0.1f);
    }
Example #28
0
        public void Run()
        {
            GameTimer.Reset();

            scoreBar = new ScoreBar();

            hero                = new Hero();
            hero.Died          += Hero_Died;
            hero.HealthChanged += Hero_HealthChanged;
            heroHealthBar       = new HealthBar(Config.HeroHealth, Config.HeroHealthBarPosition);

            wave = 1;

            GameTimer.Start();

            window.Closed += Window_Closed;

            while (window.IsOpen)
            {
                window.Clear(new Color(36, 36, 36));

                if (Keyboard.IsKeyPressed(Keyboard.Key.Escape))
                {
                    window.Close();
                }

                window.DispatchEvents();

                if (GameTimer.Elapsed / 4000 > wave)
                {
                    GenerateEntity();
                    wave++;
                }

                ProcessSystems();
                window.Display();
                GameTimer.NextFrame();
            }
        }
    IEnumerator RunClimateEvent(string name, float time)
    {
        SetClimateEvent(name);
        foreach (GameObject go in Director.GetInstance().GetPlatforms())
        {
            if (go != null)
            {
                go.GetComponent <Platform>().UpdateClimateEvents();
            }
        }
        yield return(new WaitForSeconds(time));

        SetClimateEvent("None");
        foreach (GameObject go in Director.GetInstance().GetPlatforms())
        {
            if (go != null)
            {
                go.GetComponent <Platform>().UpdateClimateEvents();
            }
        }
        ScoreBar.GetInstance().Reset();
        current = null;
    }
Example #30
0
    private void Die()
    {
        if (pm.Grounded())
        {
            return;
        }

        lives--;
        ScoreBar.GetInstance().SetLives(lives);
        if (lives == 0)
        {
            //lose
            state        = State.DEAD;
            c2d.enabled  = false;
            cp2d.enabled = false;
            GameOver.GetInstance().Lose();
        }
        else
        {
            //respawn
            StartCoroutine(Respawn());
        }
    }
Example #31
0
 void Awake()
 {
     // tell the game to run at 60 fps, maybe put this some where better later
     Application.targetFrameRate = 60;
     scoreBar = GameObject.Find ("GUICamera").GetComponentInChildren<ScoreBar> ();
     moves = GameObject.Find("GUICamera").GetComponentInChildren<MoveProgress>();
     colorSelector = GameObject.Find("GUICamera").GetComponentInChildren<ColorSelector>();
 }