Example #1
0
    public void Awake()
    {
        m_steering   = GetComponent <KeepPosition>();
        m_blackboard = GetComponent <LaserEnemyBlackboard>();

        m_currentState = EState.INITIAL;
        m_nextState    = EState.KEEP_POSITION;

        m_attackTimer      = new Timer(m_blackboard.m_soloAttackCooldown);
        m_steering.enabled = false;
    }
    void Awake()
    {
        m_currentState = EState.INITIAL;

        m_blackboard = GetComponent <LaserEnemyBlackboard>();
        m_laser      = GetComponent <LineRenderer>();
        m_steering   = GetComponent <KeepPosition>();

        m_laser.enabled    = false;
        m_steering.enabled = false;

        m_attackTimer     = new Timer(m_blackboard.m_companionAttackCooldown);
        m_postAttackTimer = new Timer(m_blackboard.m_companionAttackWaitTime);
    }
Example #3
0
    /*
     * private void Awake()
     * {
     *  GameState.OnEndGame += ClearStage;
     * }
     */
    /*
     * void Start ()
     * {
     *  currentTipIndex = startTipIndex - 1;
     *  UpdateStage(preInstantiate);
     * }
     */

    public void Begin()
    {
        // (이어하기가 아닌) 시작 시 씬 전체를 초기화(캐릭터, 스테이지, 장애물, 몬스터, 배경등)
        if (!m_Rerun)
        {
            inGame = true;

            //backGroundGenerator.Begin();
            KeepPosition keepPosition = sideTrigger.GetComponent <KeepPosition>();
            keepPosition.IsGame(true);

            playerController.gameObject.SetActive(true);
            //playerController = Instantiate(playerController);
            //characterSlot = playerController.characterSlot;

            // Spawn the player
            Skin player = Instantiate(SkinDatabase.GetSkin(SkinDatabase.skinNameList[PlayerData.instance.usedSkin]), Vector3.zero, Quaternion.identity);
            player.transform.SetParent(characterSlot, false);
            //Camera.main.transform.SetParent(characterController.transform, true);


            //player.SetupAccesory(PlayerData.instance.usedAccessory);

            if (playerController.character == null)
            {
                playerController.character = player;
            }
            playerController.stageManager = this;
            playerController.Init();
            cameraController.Begin();

            //characterController.Init();
            //characterController.CheatInvincible(invincible);

            //m_CurrentThemeData = ThemeDatabase.GetThemeData(PlayerData.instance.themes[PlayerData.instance.usedTheme]);
            //m_CurrentZone = 0;
            //m_CurrentZoneDistance = 0;

            //skyMeshFilter.sharedMesh = m_CurrentThemeData.skyMesh;
            //RenderSettings.fogColor = m_CurrentThemeData.fogColor;
            //RenderSettings.fog = true;

            gameObject.SetActive(true);

            playerController.gameObject.SetActive(true);

            playerController.Star = 0;
            playerController.Coin = 0;
            //characterController.coins = 0;
            //characterController.premium = 0;

            //m_Score = 0;
            //m_ScoreAccum = 0;

            //m_SafeSegementLeft = k_StartingSafeSegments;

            //Coin.coinPool = new Pooler(currentTheme.collectiblePrefab, k_StartingCoinPoolSize);

            PlayerData.instance.StartRunMissions(this);
            currentTipIndex      = startTipIndex - 1;
            backGCurrentTipIndex = backGStartTipIndex - 1;

#if UNITY_ANALYTICS
            AnalyticsEvent.GameStart(new Dictionary <string, object>
            {
                //{ "theme", m_CurrentThemeData.themeName},
                { "character", player.characterName }
                //{ "accessory",  PlayerData.instance.usedAccessory >= 0 ? player.accessories[PlayerData.instance.usedAccessory].accessoryName : "none"}
            });
#endif
        }

        playerController.Begin();
        //gameObject.SetActive(true);
        UpdateStage(preInstantiate);
        UpdateBackGStage(backGPreInstantiate);
    }