Beispiel #1
0
    void Awake()
    {
        m_PlayerMovementComponentToDisplay = Utils.FindComponentMatchingWithTag <PlayerMovementComponent>(m_Target.ToString());
        m_PlayerAttackComponentToDisplay   = Utils.FindComponentMatchingWithTag <PlayerAttackComponent>(m_Target.ToString());
        m_PlayerInfoComponentToDisplay     = Utils.FindComponentMatchingWithTag <PlayerInfoComponent>(m_Target.ToString());

        m_DebugSettings = ScenesConfig.GetDebugSettings();
        m_GameInputList.SetActive(m_DebugSettings.m_DisplayInputsInfo);

        m_TriggeredInputs = new List <List <GameInput> >(m_GameInputList.transform.childCount);
        m_GameInputsImage = new List <List <Image> >(m_GameInputList.transform.childCount);
        for (int i = 0; i < m_GameInputList.transform.childCount; i++)
        {
            List <Image> gameInputImageList = new List <Image>();
            Transform    gameInputs         = m_GameInputList.transform.GetChild(i);
            for (int j = 0; j < gameInputs.childCount; j++)
            {
                Image gameInputImage = gameInputs.GetChild(j).GetComponent <Image>();
                gameInputImage.sprite  = null;
                gameInputImage.enabled = false;
                gameInputImageList.Add(gameInputImage);
            }

            m_GameInputsImage.Add(gameInputImageList);
        }

#if !UNITY_EDITOR
        m_TextInputs.enabled                = false;
        m_TextToDisplayInputs.enabled       = false;
        m_TextInputsAttack.enabled          = false;
        m_TextToDisplayInputsAttack.enabled = false;
        m_TextAttacks.enabled               = false;
        m_TextToDisplayAttacks.enabled      = false;
#endif
    }
    public static void LoadTrainingOptions()
    {
        m_Player1Settings = ScenesConfig.GetPlayerSettings(0, K_TRAININGMAP);
        m_Player2Settings = ScenesConfig.GetPlayerSettings(1, K_TRAININGMAP);
        m_DebugSettings   = ScenesConfig.GetDebugSettings(K_TRAININGMAP);

#if UNITY_EDITOR
        m_InitialPlayer1Settings = new PlayerSettings(Player.Player1);
        CopyPlayerSettings(m_Player1Settings, m_InitialPlayer1Settings);

        m_InitialPlayer2Settings = new PlayerSettings(Player.Player2);
        CopyPlayerSettings(m_Player2Settings, m_InitialPlayer2Settings);
#endif

        string trainingOptionsStr = PlayerPrefs.GetString(K_TRAININGOPTIONS);
        if (string.IsNullOrEmpty(trainingOptionsStr))
        {
            K_DEFAULT_TRAINING_OPTIONS.CopyTo(m_TrainingOptions, 0);
            return;
        }

        if (trainingOptionsStr.Length != m_TrainingOptions.Length)
        {
            KakutoDebug.LogError("LoadTrainingOptions failed");
            return;
        }

        for (int i = 0; i < trainingOptionsStr.Length; i++)
        {
            int loadedValue = int.Parse(trainingOptionsStr[i].ToString());
            UpdateTrainingOptions((ETrainingOption)i, loadedValue);
        }
    }
Beispiel #3
0
 private void OnPlayerRegistered(GameObject player)
 {
     m_RegisteredPlayer             = player;
     m_PlayerSettings               = ScenesConfig.GetPlayerSettings(m_RegisteredPlayer);
     m_ComboDamageDisplayer.enabled = m_PlayerSettings.m_DisplayComboDamage;
     m_ComboDamageText.enabled      = m_PlayerSettings.m_DisplayComboDamage;
 }
Beispiel #4
0
    private IEnumerator OnRoundBegin_Internal()
    {
        yield return(new WaitForEndOfFrame()); // Wait for end of frame in order to let the animator play the K_ROUND_ENTRY_ANIM

        float startRoundUIDelay = 0f;

        if (ScenesConfig.GetUISettings().m_IsCounterEnabled)
        {
            startRoundUIDelay = m_GameConfig.m_StartRoundUIDelay;
            yield return(new WaitForSeconds(startRoundUIDelay));

            PlayStartRoundNotification();

            yield return(new WaitForSeconds(m_GameConfig.m_RoundEntryTime - startRoundUIDelay));
        }

        while (!ArePlayersReady())
        {
            // Player's not ready yet, wait one more second
            yield return(new WaitForSeconds(1f));
        }

        foreach (GameObject player in GameManager.Instance.GetPlayers())
        {
            EnablePlayer(player, true);
        }

        m_RoundIsBegin      = true;
        m_LastRoundTimeOver = false;
        OnRoundBegin?.Invoke();
    }
Beispiel #5
0
    void InitAllAudio()
    {
        CreateHandler("MusicHandler", ref m_MusicHandler);
        CreateHandler("Player1SFXHandler", ref m_Player1SFXHandler);
        CreateHandler("Player2SFXHandler", ref m_Player2SFXHandler);
        CreateHandler("UISFXHandler", ref m_UISFXHandler);
        CreateHandler("VoiceSFXHandler", ref m_VoiceSFXHandler);

        InitSFXAudioSource(ref m_Player1SFXHandler, ref m_Player1WhiffSFXAudioSource, m_SFXMixerGroup, true);
        InitSFXAudioSource(ref m_Player1SFXHandler, ref m_Player1AttackSFXAudioSource, m_SFXMixerGroup, true);
        InitSFXAudioSource(ref m_Player1SFXHandler, ref m_Player1HeavyHitGruntSFXAudioSource, m_SFXMixerGroup, true);

        InitSFXAudioSource(ref m_Player2SFXHandler, ref m_Player2WhiffSFXAudioSource, m_SFXMixerGroup, true);
        InitSFXAudioSource(ref m_Player2SFXHandler, ref m_Player2AttackSFXAudioSource, m_SFXMixerGroup, true);
        InitSFXAudioSource(ref m_Player2SFXHandler, ref m_Player2HeavyHitGruntSFXAudioSource, m_SFXMixerGroup, true);

        InitSFXAudioSource(ref m_VoiceSFXHandler, ref m_VoiceSFXAudioSource, m_VoiceMixerGroup, true);

        List <SceneSettings> allSceneSettings = ScenesConfig.GetAllSceneSettings();

        for (int i = 0; i < allSceneSettings.Count; i++)
        {
            AudioEntry musicEntry = allSceneSettings[i].m_MusicSettings.m_MusicEntry;
            if (musicEntry.m_Clip != null)
            {
                AudioSource musicAudioSource = CreateAudioSource(ref m_MusicHandler, m_MusicMixerGroup, false, musicEntry.m_Clip);
                musicAudioSource.volume = musicEntry.m_Volume;
                musicAudioSource.loop   = true;
                m_MusicAudioSources.Add(allSceneSettings[i].m_Scene, new MusicInfo(allSceneSettings[i].m_MusicSettings, musicAudioSource));
            }
        }

        foreach (EUISFXType sfxType in Enum.GetValues(typeof(EUISFXType)))
        {
            AudioEntry sfxEntry = m_UISFX.GetSFX(sfxType);
            if (sfxEntry.m_Clip != null)
            {
                AudioSource SFXTypeAudioSource = CreateAudioSource(ref m_UISFXHandler, m_SFXMixerGroup, false, sfxEntry.m_Clip);
                SFXTypeAudioSource.volume = sfxEntry.m_Volume;
                m_UIAudioSources.Add(sfxType, SFXTypeAudioSource);
            }
        }

        foreach (EAnimSFXType sfxType in Enum.GetValues(typeof(EAnimSFXType)))
        {
            AudioEntry sfxEntry = m_AnimSFX[(int)sfxType].m_SFX;
            if (sfxEntry.m_Clip != null)
            {
                AudioSource p1AnimSFXTypeAudioSource = CreateAudioSource(ref m_Player1SFXHandler, m_SFXMixerGroup, true, sfxEntry.m_Clip);
                p1AnimSFXTypeAudioSource.volume = sfxEntry.m_Volume;

                AudioSource p2AnimSFXTypeAudioSource = CreateAudioSource(ref m_Player2SFXHandler, m_SFXMixerGroup, true, sfxEntry.m_Clip);
                p2AnimSFXTypeAudioSource.volume = sfxEntry.m_Volume;

                m_Player1AnimSFXAudioSources.Add(sfxType, p1AnimSFXTypeAudioSource);
                m_Player2AnimSFXAudioSources.Add(sfxType, p2AnimSFXTypeAudioSource);
            }
        }
    }
Beispiel #6
0
    protected override void Awake()
    {
        base.Awake();
        m_RoundSubGameManager = GameManager.Instance.GetSubManager <RoundSubGameManager>(ESubManager.Round);
        m_RoundSubGameManager.RegisterRoundComponent(this);
        RoundSubGameManager.OnRoundVictoryCounterChanged += UpdateVictoryCounters;
        RoundSubGameManager.OnRoundBegin += OnRoundBegin;

        m_UISettings = ScenesConfig.GetUISettings();
    }
 protected virtual void Awake()
 {
     if (m_DrawCollider)
     {
         m_DebugSettings = ScenesConfig.GetDebugSettings();
         m_BoxCollider   = GetComponent <BoxCollider2D>();
         if (m_BoxCollider == null)
         {
             m_DrawCollider = false;
         }
     }
 }
Beispiel #8
0
    public static ScenesConfig Create()
    {
        ScenesConfig asset = ScriptableObject.CreateInstance <ScenesConfig>();

        AssetDatabase.CreateAsset(asset, "Assets/Data/Resources/Game/ScenesConfig.asset");
        AssetDatabase.SaveAssets();

        EditorUtility.FocusProjectWindow();
        Selection.activeObject = asset;

        return(asset);
    }
Beispiel #9
0
    void OnGUI()
    {
        if (ScenesConfig.GetDebugSettings().m_DisplayGamepadInfo)
        {
            int w = Screen.width, h = Screen.height;

            // Display Gamepad Info ///////////////
            {
                DisplaGamepadInfo("Gamepad index : " + GamePadManager.GetJoystickNum(0), TextAnchor.MiddleLeft);
                DisplaGamepadInfo("Gamepad index : " + GamePadManager.GetJoystickNum(1), TextAnchor.MiddleRight);
            }
            //////////////////////////////
        }
    }
    void OnGUI()
    {
        if (ScenesConfig.GetDebugSettings().m_DisplayAnimationInfo)
        {
            int w = Screen.width, h = Screen.height;

            // Display Animation Info ///////////////
            {
                DisplayAnimationInfo(m_Player1AnimationInfo, TextAnchor.MiddleLeft);
                DisplayAnimationInfo(m_Player2AnimationInfo, TextAnchor.MiddleRight);
            }
            //////////////////////////////
        }
    }
Beispiel #11
0
    void UpdateVictoryCounters()
    {
        if (ScenesConfig.GetUISettings().m_IsCounterEnabled)
        {
            uint player1VictoryCounter = m_RoundSubGameManager.GetPlayerRoundVictoryCounter(EPlayer.Player1);
            for (int i = 0; i < m_Player1VictoryRounds.Length; i++)
            {
                m_Player1VictoryRounds[i].enabled = (player1VictoryCounter > i);
            }

            uint player2VictoryCounter = m_RoundSubGameManager.GetPlayerRoundVictoryCounter(EPlayer.Player2);
            for (int i = 0; i < m_Player2VictoryRounds.Length; i++)
            {
                m_Player2VictoryRounds[i].enabled = (player2VictoryCounter > i);
            }
        }
    }
Beispiel #12
0
    void OnGUI()
    {
        if (ScenesConfig.GetDebugSettings().m_DisplayAttackTriggerInfo)
        {
            // Display Trigger : Non Super Projectile Guard Crush for PLAYER 1 ///////////////
            if (PlayerProjectileAttackLogic.IsNextNonSuperProjectileGuardCrush(0))
            {
                DisplayNextNonSuperProjectileGuardCrush(0);
            }

            // Display Trigger : Non Super Projectile Guard Crush for PLAYER 2 ///////////////
            if (PlayerProjectileAttackLogic.IsNextNonSuperProjectileGuardCrush(1))
            {
                DisplayNextNonSuperProjectileGuardCrush(1);
            }
        }
    }
Beispiel #13
0
    void OnGUI()
    {
        int w = Screen.width, h = Screen.height;

        if (ScenesConfig.GetDebugSettings().m_DisplayFPS)
        {
            // Display FPS ///////////////
            {
                GUIStyle style = new GUIStyle
                {
                    alignment = TextAnchor.UpperCenter,
                    fontSize  = h * 2 / 100
                };
                style.normal.textColor = new Color(0.0f, 0.0f, 0.5f, 1.0f);
                float  msec = m_DeltaTime * 1000.0f;
                float  fps  = 1.0f / m_DeltaTime;
                string text = string.Format("{0:0.0} ms ({1:0.} fps)", msec, fps);
                GUI.Label(new Rect(-(w / 2f) + (w / 8f), 0, w, style.fontSize), text, style);
            }
            //////////////////////////////
        }

        if (ScenesConfig.GetDebugSettings().m_DisplayFrameCounter)
        {
            // Display Frame Counter /////
            {
                GUIStyle style = new GUIStyle
                {
                    alignment = TextAnchor.LowerCenter,
                    fontSize  = h * 3 / 100
                };
                style.normal.textColor = new Color(0.0f, 0.0f, 0.5f, 1.0f);
                string text = "Frame Counter: " + Time.frameCount;
                GUI.Label(new Rect(0, h - style.fontSize * 2.0f, w, style.fontSize), text, style);
            }
            //////////////////////////////
        }
    }
Beispiel #14
0
 void InitPlayerSettings()
 {
     m_Settings = ScenesConfig.GetPlayerSettings(gameObject);
 }