/// <summary>
 /// Hide the learning pill. Logic varies slightly if there is further help to display.
 /// </summary>
 public void ClosePill(string source)
 {
     if (gameObject.activeInHierarchy)
     {
         UIManagement.Blocker.onClick.RemoveAllListeners();
     }
     if (_furtherHelp.Count == 0)
     {
         StartCoroutine(Animate());
         UIManagement.Blocker.transform.SetAsLastSibling();
         transform.SetAsLastSibling();
         UIManagement.DisableBlocker();
     }
     if (_furtherHelp.Count > 0)
     {
         StartCoroutine(Animate(false, true));
         Invoke(nameof(SetFurtherHelp), 1.1f);
     }
     else
     {
         UIManagement.EventImpact.Display();
     }
     TrackerEventSender.SendEvent(new TraceEvent("LearningPillClosed", TrackerAsset.Verb.Skipped, new Dictionary <TrackerContextKey, object>
     {
         { TrackerContextKey.LearningPillID, _currentHelp },
         { TrackerContextKey.TriggerUI, source }
     }, AccessibleTracker.Accessible.Accessible));
     UIManagement.Tutorial.ShareEvent(GetType().Name, MethodBase.GetCurrentMethod().Name);
 }
示例#2
0
    // Is called in Warp() of WarpManager
    public void SaveUpgrades()
    {
        UIManagement upgrades = FindObjectOfType <UIManagement>();

        doubleLasers       = upgrades.doubleLasers;
        currentVentingTier = upgrades.currentVentingTier;
    }
示例#3
0
 /// <summary>
 /// Destroy the currently created CrewMember object and adjust any older CrewMember objects where the member has retired/been fired
 /// </summary>
 public void ResetCrew()
 {
     //remove attachment between CrewMemberUI and PositionUI
     foreach (var position in (PositionUI[])FindObjectsOfType(typeof(PositionUI)))
     {
         position.RemoveCrew();
     }
     //destroy recruitment buttons
     foreach (var b in CrewMembers)
     {
         Destroy(b.gameObject);
     }
     foreach (var crewMember in UIManagement.CrewMemberUI)
     {
         crewMember.CurrentUpdate();
     }
     //destroy recruitment buttons
     foreach (var b in _recruitButtons)
     {
         Destroy(b.gameObject);
     }
     CrewMembers.Clear();
     _recruitButtons.Clear();
     //recreate crew and repeat previous line-up
     CreateCrew();
     RepeatLineUp();
     //close any open pop-ups if needed
     UIManagement.PositionDisplay.ClosePositionPopUp(string.Empty);
     UIManagement.MemberMeeting.CloseCrewMemberPopUp(string.Empty);
     UIManagement.DisableSmallBlocker();
     DoBestFit();
     SortCrew();
     CrewContainerPaging();
 }
示例#4
0
 private void Awake()
 {
     this.enabled   = false;
     gameController = GetComponent <GameController>();
     gameUI         = gameController.gameUI;
     menuUI         = gameController.menuUI;
 }
 private void Awake()
 {
     //initialize the object references in UIManagement
     UIManagement.Initialize();
     //load the avatar sprites from Resources
     AvatarDisplay.LoadSprites();
     //set the state list into a dictionary
     _stateDict = _states.ToDictionary(s => s.Name, s => s.GameObject);
     //default to the main menu state
     GoToState(State.MainMenu);
     //instantiate RAGE objects if in RAGE mode
     if (GameManagement.RageMode)
     {
         foreach (var obj in GameManagement.PlatformSettings.RageObjects)
         {
             var newObj = Instantiate(obj);
             newObj.name = obj.name;
         }
     }
     //if this is a reload after a tutorial, attempt to reload straight away
     if (_reload)
     {
         Loading.Start();
         GameManagement.GameManager.LoadGameTask(GameManagement.GameSavePath, GameManagement.TeamName, success =>
         {
             if (success)
             {
                 GoToState(State.TeamManagement);
                 _reload = false;
             }
             Loading.Stop();
         });
     }
 }
示例#6
0
    // Is called in Start of UIManagement
    public void LoadUpgrades()
    {
        UIManagement upgrades = FindObjectOfType <UIManagement>();

        upgrades.doubleLasers       = doubleLasers;
        upgrades.currentVentingTier = currentVentingTier;
    }
示例#7
0
 private void OnDisable()
 {
     UIManagement.DisableBlocker();
     UIManagement.Blocker.transform.SetAsFirstSibling();
     transform.SetAsFirstSibling();
     Localization.LanguageChange -= OnLanguageChange;
     BestFit.ResolutionChange    -= DoBestFit;
 }
示例#8
0
 // Use this for initialization
 void Start()
 {
     CanProceed      = true;
     Player.position = Vector2.zero;
     PlayerAnim      = Player.GetComponent <Animator>();
     UIM             = GameObject.Find("ScoreCanvas").GetComponent <UIManagement>();
     InvokeRepeating("Spawn1", 4, 1.5f);
 }
 /// <summary>
 /// Adjust blocker position in hierarchy according to if another pop-up that uses it is displayed as well
 /// </summary>
 public void ChangeBlockerOrder()
 {
     if (gameObject.activeInHierarchy)
     {
         transform.EnableSmallBlocker(() => ClosePositionPopUp(TrackerTriggerSource.PopUpBlocker.ToString()));
     }
     else if (!transform.parent.GetChild(transform.parent.childCount - 1).gameObject.activeInHierarchy)
     {
         UIManagement.DisableSmallBlocker();
     }
 }
示例#10
0
 public void Awake()
 {
     if (UI == null)
     {
         UI = this;
     }
     else
     {
         Destroy(gameObject);
         return;
     }
 }
示例#11
0
    void Awake()
    {
        if (instance != null)
        {
            Destroy(gameObject);
        }
        else
        {
            instance = this;
            DontDestroyOnLoad(gameObject);
        }

        s  = true;
        ss = true;
    }
示例#12
0
 private void SpawnWhite()
 {
     if (currentState != BehaviourState.INIT || currentState != BehaviourState.DIE)
     {
         if (!isWhiteEquipped && PlayerManagement.GetInstance().GetCurrentState() == GameManagement.GameState.PLAY)
         {
             whiteSpawnElapsedTime += Time.fixedDeltaTime;
             if (whiteSpawnElapsedTime > PLAYER_WHITE_SPAWN_TIME)
             {
                 isWhiteEquipped = true;
                 UIManagement.GetInstance().GetGameSceneBG_white().SetActive(true);
                 whiteSpawnElapsedTime = 0;
             }
         }
     }
 }
示例#13
0
    //Initialize Method of this class
    private void Init()
    {
        prefab_walls      = Resources.Load("Prefabs/Walls") as GameObject;
        prefab_background = Resources.Load("Prefabs/Background") as GameObject;

        currentState     = GameState.INIT;
        previousState    = GameState.NULL;
        stageManagement  = StageManagement.GetInstance();
        playerManagement = PlayerManagement.GetInstance();
        enemyManagement  = EnemyManagement.GetInstance();
        uiManagment      = UIManagement.GetInstance();
        itemManagement   = ItemManagement.GetInstance();
        scoreManagement  = ScoreManagement.GetInstance();
        soundManagement  = SoundManagement.GetInstance();
        StartCoroutine(CheckState());
    }
 /// <summary>
 /// Triggered by button. Close fire warning pop-up.
 /// </summary>
 public void CloseFireCrewWarning(string source)
 {
     TrackerEventSender.SendEvent(new TraceEvent("FirePopUpClosed", TrackerAsset.Verb.Skipped, new Dictionary <TrackerContextKey, object>
     {
         { TrackerContextKey.PositionName, _currentMember.Name },
         { TrackerContextKey.TriggerUI, source }
     }, AccessibleTracker.Accessible.Screen));
     _fireWarningPopUp.Active(false);
     if (gameObject.activeInHierarchy)
     {
         transform.EnableSmallBlocker(() => CloseCrewMemberPopUp(TrackerTriggerSource.PopUpBlocker.ToString()));
     }
     else
     {
         UIManagement.DisableSmallBlocker();
     }
 }
示例#15
0
 /// <summary>
 /// Close the promotion pop-up
 /// </summary>
 public void Close(string source)
 {
     if (gameObject.activeInHierarchy)
     {
         gameObject.Active(false);
         UIManagement.DisableBlocker();
         TrackerEventSender.SendEvent(new TraceEvent("CupResultPopUpClosed", TrackerAsset.Verb.Skipped, new Dictionary <TrackerContextKey, object>
         {
             { TrackerContextKey.CupFinishingPosition, _cupPosition },
             { TrackerContextKey.TriggerUI, source }
         }, AccessibleTracker.Accessible.Screen));
         if (GameManagement.RageMode)
         {
             UIManagement.StateManager.GoToState(State.Questionnaire);
         }
     }
 }
示例#16
0
 /// <summary>
 /// Close the promotion pop-up
 /// </summary>
 public void Close(string source)
 {
     if (gameObject.activeInHierarchy)
     {
         gameObject.Active(false);
         UIManagement.DisableBlocker();
         if (!string.IsNullOrEmpty(source))
         {
             TrackerEventSender.SendEvent(new TraceEvent("PromotionPopUpClosed", TrackerAsset.Verb.Skipped, new Dictionary <TrackerContextKey, object>
             {
                 { TrackerContextKey.BoatLayout, GameManagement.PositionString },
                 { TrackerContextKey.TriggerUI, source }
             }, AccessibleTracker.Accessible.Screen));
         }
     }
     UIManagement.PostRaceEvents.ToList().ForEach(e => e.Display());
 }
示例#17
0
 /// <summary>
 /// Close the pop-up and trigger the notes to be resaved for this entity
 /// </summary>
 public void Close(string source)
 {
     if (gameObject.activeInHierarchy)
     {
         GameManagement.EventController.SaveNote(_notesSubject, _notesField.text);
         gameObject.Active(false);
         UIManagement.DisableBlocker();
         _notesSubject = null;
         UIManagement.Tutorial.ShareEvent(GetType().Name, MethodBase.GetCurrentMethod().Name);
         if (!string.IsNullOrEmpty(source))
         {
             TrackerEventSender.SendEvent(new TraceEvent("NotesPopUpClosed", TrackerAsset.Verb.Skipped, new Dictionary <TrackerContextKey, object>
             {
                 { TrackerContextKey.TriggerUI, source }
             }, AccessibleTracker.Accessible.Screen));
         }
     }
 }
示例#18
0
 /// <summary>
 /// Clear and close the impact pop-up
 /// </summary>
 public void Close(string source)
 {
     if (gameObject.activeInHierarchy)
     {
         _impacts.Clear();
         gameObject.Active(false);
         UIManagement.DisableBlocker();
         if (!string.IsNullOrEmpty(source))
         {
             TrackerEventSender.SendEvent(new TraceEvent("PostRaceEventImpactPopUpClosed", TrackerAsset.Verb.Skipped, new Dictionary <TrackerContextKey, object>
             {
                 { TrackerContextKey.TriggerUI, source }
             }, AccessibleTracker.Accessible.Screen));
             UIManagement.Tutorial.ShareEvent(GetType().Name, MethodBase.GetCurrentMethod().Name);
         }
     }
     UIManagement.PostRaceEvents.ToList().ForEach(e => e.Display());
 }
示例#19
0
 private void OnDisable()
 {
     Localization.LanguageChange -= OnLanguageChange;
     BestFit.ResolutionChange    -= DoBestFit;
     //if the close button is active, hide all dialogue options (helps with best fit sometimes) and disable the blocker if this pop-up is actually using it
     if (_closeButton.activeSelf)
     {
         foreach (var person in _postRacePeople)
         {
             person.EnableQuestions();
             DoBestFit();
         }
         if (transform.parent.GetSiblingIndex() == transform.parent.parent.childCount - 1)
         {
             UIManagement.DisableBlocker();
         }
         UIManagement.Tutorial.ShareEvent(GetType().Name, MethodBase.GetCurrentMethod().Name);
     }
 }
示例#20
0
 /// <summary>
 /// Close the hire warning
 /// </summary>
 public void CloseHireCrewWarning(string source)
 {
     _hireWarningPopUp.Active(false);
     if (gameObject.activeInHierarchy)
     {
         transform.EnableBlocker(() => CloseRecruitmentPopUp(TrackerTriggerSource.PopUpBlocker.ToString()));
     }
     else
     {
         UIManagement.DisableBlocker();
     }
     TrackerEventSender.SendEvent(new TraceEvent("HirePopUpClosed", TrackerAsset.Verb.Skipped, new Dictionary <TrackerContextKey, object>
     {
         { TrackerContextKey.CrewMemberName, _currentSelected },
         { TrackerContextKey.CurrentTalkTime, GameManagement.ActionAllowance },
         { TrackerContextKey.HiringCost, ConfigKey.RecruitmentCost.ValueString(false) },
         { TrackerContextKey.TriggerUI, source }
     }, AccessibleTracker.Accessible.Screen));
     _currentSelected = string.Empty;
 }
 /// <summary>
 /// Hide the pop-up for Position details
 /// </summary>
 public void ClosePositionPopUp(string source)
 {
     if (gameObject.activeInHierarchy)
     {
         TrackerEventSender.SendEvent(new TraceEvent("PositionPopUpClosed", TrackerAsset.Verb.Accessed, new Dictionary <TrackerContextKey, object>
         {
             { TrackerContextKey.PositionName, _currentPosition },
             { TrackerContextKey.TriggerUI, source }
         }, AccessibleTracker.Accessible.Screen));
         gameObject.Active(false);
         if (UIManagement.MemberMeeting.gameObject.activeInHierarchy)
         {
             UIManagement.MemberMeeting.gameObject.transform.EnableSmallBlocker(() => UIManagement.MemberMeeting.CloseCrewMemberPopUp(TrackerTriggerSource.PopUpBlocker.ToString()));
         }
         else
         {
             UIManagement.DisableSmallBlocker();
         }
         UIManagement.Tutorial.ShareEvent(GetType().Name, MethodBase.GetCurrentMethod().Name);
     }
 }
示例#22
0
 // Start is called before the first frame update
 void Start()
 {
     canMove         = true;
     rb              = GetComponent <Rigidbody>();
     anim            = GetComponentInChildren <Animator>();
     boxCollider     = GetComponent <BoxCollider>();
     boxColliderSize = boxCollider.size;
     anim.Play("runStart");
     currentLife   = maxLife;
     speed         = minSpeed;
     blinkingValue = Shader.PropertyToID("_BlinkingValue");
     uiManagement  = FindObjectOfType <UIManagement>();
     GameManager.gm.StartMissions();
     sounds           = GetComponents <AudioSource>();
     jumpAudio        = sounds[0];
     hurtAudio        = sounds[1];
     deadAudio        = sounds[2];
     slideAudio       = sounds[3];
     buttonPressAudio = sounds[4];
     fishBoneAudio    = sounds[5];
     powerUpSound     = sounds[6];
 }
示例#23
0
 /// <summary>
 /// Close the race result pop-up
 /// </summary>
 public void Close(string source)
 {
     if (gameObject.activeInHierarchy)
     {
         gameObject.Active(false);
         UIManagement.DisableBlocker();
         TrackerEventSender.SendEvent(new TraceEvent("ResultPopUpClosed", TrackerAsset.Verb.Skipped, new Dictionary <TrackerContextKey, object>
         {
             { TrackerContextKey.FinishingPosition, _lastRaceFinishPosition },
             { TrackerContextKey.TriggerUI, source }
         }, AccessibleTracker.Accessible.Screen));
         if (!GameManagement.SeasonOngoing)
         {
             UIManagement.CupResult.Display();
         }
         else
         {
             UIManagement.Promotion.Display();
         }
         UIManagement.Tutorial.ShareEvent(GetType().Name, MethodBase.GetCurrentMethod().Name);
     }
 }
 /// <summary>
 /// triggered by Unity event. Player has declined, so close this pop-up and allow them to continue playing before racing
 /// </summary>
 public void CloseConfirmPopUp(string source)
 {
     if (gameObject.activeInHierarchy)
     {
         gameObject.Active(false);
         UIManagement.DisableBlocker();
         if (_isRace)
         {
             if (!string.IsNullOrEmpty(source))
             {
                 if (GameManagement.IsRace)
                 {
                     TrackerEventSender.SendEvent(new TraceEvent("RaceConfirmDeclined", TrackerAsset.Verb.Skipped, new Dictionary <TrackerContextKey, object>
                     {
                         { TrackerContextKey.CurrentTalkTime, GameManagement.ActionAllowance },
                         { TrackerContextKey.TriggerUI, source }
                     }, AccessibleTracker.Accessible.Screen));
                 }
                 else
                 {
                     TrackerEventSender.SendEvent(new TraceEvent("SkipToRaceDeclined", TrackerAsset.Verb.Skipped, new Dictionary <TrackerContextKey, object>
                     {
                         { TrackerContextKey.CurrentTalkTime, GameManagement.ActionAllowance },
                         { TrackerContextKey.RemainingSessions, GameManagement.SessionsRemaining },
                         { TrackerContextKey.TriggerUI, source }
                     }, AccessibleTracker.Accessible.Screen));
                 }
             }
         }
         else
         {
             TrackerEventSender.SendEvent(new TraceEvent("RepeatLineUpDeclined", TrackerAsset.Verb.Skipped, new Dictionary <TrackerContextKey, object>
             {
                 { TrackerContextKey.TriggerUI, source }
             }, AccessibleTracker.Accessible.Screen));
         }
     }
 }
示例#25
0
        /* Methods */
        void Start()         //Initialization method
        {
            m_Animator      = GetComponent <Animator>();
            m_Rigidbody     = GetComponent <Rigidbody>();
            m_Character     = this.gameObject.transform.GetChild(0);
            m_Capsule       = GetComponent <CapsuleCollider>();
            m_CapsuleHeight = m_Capsule.height;
            m_CapsuleCenter = m_Capsule.center;

            m_Rigidbody.constraints   = RigidbodyConstraints.FreezePositionX | RigidbodyConstraints.FreezeRotationX | RigidbodyConstraints.FreezeRotationY | RigidbodyConstraints.FreezeRotationZ;
            m_OrigGroundCheckDistance = m_GroundCheckDistance;
            m_IsGrounded = true;             //Assumes the character originally on ground (Can change when it checks grounded status)

            m_Health           = 100;
            m_Lives            = 3;
            m_GameManager      = GameObject.FindWithTag("GameController");
            m_ManagerMechanics = m_GameManager.GetComponent <Mechanics> ();
            m_UIManager        = m_GameManager.GetComponent <UIManagement> ();
            m_AudioMethods     = GetComponent <MainCharacterAudio> ();

            m_OrigMoveSpdMultiplier = m_MoveSpeedMultiplier;
            m_RespawnTimer          = 0f;
        }
示例#26
0
    /// <summary>
    /// Display pop-up which shows the race result
    /// </summary>
    public void Display(Dictionary <Position, CrewMember> currentPositions, int finishPosition)
    {
        //hide other pop-ups and disable the other blocker
        UIManagement.PositionDisplay.ClosePositionPopUp(string.Empty);
        UIManagement.MemberMeeting.CloseCrewMemberPopUp(string.Empty);
        UIManagement.DisableSmallBlocker();
        //enable object and blocker
        gameObject.Active(true);
        transform.EnableBlocker(() => Close(TrackerTriggerSource.PopUpBlocker.ToString()));
        //store the finishing position in case of redraws
        _lastRaceFinishPosition = finishPosition;
        //wipe previous crew
        foreach (Transform child in _crewContainer)
        {
            Destroy(child.gameObject);
        }
        //draw selected crew with expression matching the result
        var crewCount = 0;

        foreach (var pair in currentPositions)
        {
            var memberObject = Instantiate(_postRaceCrewPrefab, _crewContainer, false).transform;
            memberObject.name = pair.Value.Name;
            var avatar = memberObject.Find("Avatar");
            avatar.GetComponent <AvatarDisplay>().SetAvatar(pair.Value.Avatar, -(finishPosition - 3) * 2);
            avatar.localScale = crewCount % 2 == 0 ? avatar.localScale : new Vector3(-avatar.localScale.x, avatar.localScale.y, avatar.localScale.z);
            memberObject.FindImage("Position").sprite   = UIManagement.TeamSelection.RoleLogos[pair.Key.ToString()];
            memberObject.FindRect("Position").offsetMin = crewCount % 2 == 0 ? new Vector2(10, 0) : new Vector2(-10, 0);
            crewCount++;
            memberObject.SetAsLastSibling();
        }
        OnLanguageChange();
        TrackerEventSender.SendEvent(new TraceEvent("ResultPopUpDisplayed", TrackerAsset.Verb.Accessed, new Dictionary <TrackerContextKey, object>
        {
            { TrackerContextKey.FinishingPosition, finishPosition }
        }, AccessibleTracker.Accessible.Screen));
    }
 private void Start()
 {
     itemRegistrator = GameObject.FindGameObjectWithTag("ItemRegistrator").GetComponent <ItemRegistrator>();
     uiManagement    = GameObject.FindGameObjectWithTag("UIManager").GetComponent <UIManagement>();
 }
示例#28
0
 private void Awake()
 {
     current = this;
 }
示例#29
0
 void Awake()
 {
     UIManager = GameObject.Find("ScoreCanvas").GetComponent <UIManagement>();
 }
示例#30
0
 // Start is called before the first frame update
 void Start()
 {
     instance = this;
 }