// Use this for initialization
    void Start()
    {
        _labelPos = LabelTransform.position;

        _labelPos.y = 0.0f;

        LabelTransform.position = _labelPos;

        CurrentEffectTime = 0.0f;

        _tilePos = new DJ_Point(0, 0);

        DJ_Util.GetTilePos(this.transform.position, _tilePos);

        LabelTransform.gameObject.GetComponent <Renderer>().material.SetFloat("_Alpha", 0.0f);
        LabelTransform.gameObject.GetComponent <Renderer>().material.SetFloat("_GlowStrength", 0.0f);

        BGTransform.gameObject.GetComponent <Renderer>().material.SetFloat("_Alpha", 0.0f);
        BGTransform.gameObject.GetComponent <Renderer>().material.SetFloat("_GlowStrength", 0.0f);

        _aspectRatio = TextTexture.width / TextTexture.height;

        //Quaternion _r = QuestionMark.rotation;
        //_r.y = LabelTransform.rotation.y;

        //QuestionMark.rotation = _r;

        SetupTextTexture();

        currQuestionAngle = (float)Random.Range(0.0f, Mathf.PI * 2.0f);
    }
 // Use this for initialization
 void Start()
 {
     _startPos    = this.transform.position;
     StarAcquired = false;
     _angle       = 0.0f;
     _tilePos     = DJ_Util.GetTilePos(this.transform.position);
     _startRot    = this.transform.rotation;
 }
Beispiel #3
0
 // Use this for initialization
 void Start()
 {
     state    = AnimationState.Hover;
     startPos = this.transform.localPosition;
     _tilePos = DJ_Util.GetTilePos(this.transform.parent.position);
     Beam.GetComponent <Renderer>().material.SetFloat("_Alpha", 0.0f);
     Beam.GetComponent <Renderer>().material.SetFloat("_GlowStrength", 0.0f);
     _active        = false;
     _startRotation = this.transform.rotation;
     BlastOff       = false;
 }
    // Use this for initialization
    void Start()
    {
        _labelPos = LabelTransform.position;

        _labelPos.y = 0.0f;

        LabelTransform.position = _labelPos;

        CurrentEffectTime = 0.0f;

        _tilePos = new DJ_Point(0, 0);

        DJ_Util.GetTilePos(this.transform.position, _tilePos);

        Vector3 _pos = PlayTransform.position;

        _pos += -PlayTransform.forward * .002f;
        PlayTransform.position = _pos;
        PlayTransform.tag      = "level_select_button";

        Stars = new GameObject[NumberOfStars];

        StarTimers = new float[NumberOfStars];

        PlayTransform.gameObject.GetComponent <Renderer>().material.SetFloat("_Alpha", 0.0f);
        PlayTransform.gameObject.GetComponent <Renderer>().material.SetFloat("_GlowStrength", 0.0f);

        SpotlightTransform.gameObject.GetComponent <Renderer>().material.SetFloat("_Alpha", 0.0f);
        SpotlightTransform.gameObject.GetComponent <Renderer>().material.SetFloat("_GlowStrength", 0.0f);

        LabelTransform.gameObject.GetComponent <Renderer>().material.SetFloat("_Alpha", 0.0f);
        LabelTransform.gameObject.GetComponent <Renderer>().material.SetFloat("_GlowStrength", 0.0f);

        BGTransform.gameObject.GetComponent <Renderer>().material.SetFloat("_Alpha", 0.0f);
        BGTransform.gameObject.GetComponent <Renderer>().material.SetFloat("_GlowStrength", 0.0f);

        for (int i = 0; i < Stars.Length; ++i)
        {
            Stars[i] = GameObject.Instantiate(StarGO) as GameObject;
            Stars[i].transform.parent = StarTransform;

            Stars[i].gameObject.GetComponent <Renderer>().material.SetFloat("_Alpha", 0.0f);
            Stars[i].gameObject.GetComponent <Renderer>().material.SetFloat("_GlowStrength", 0.0f);
        }

        SetupTextTexture();
    }
    /// <summary>
    /// Checks to see if the player has died. Respawns the character to the correct checkpoint.
    /// </summary>
    public void RespawnCharacter()
    {
        if (!player.GetComponent <DJ_Damageable>().isAlive)
        {
            player.GetComponent <DJ_Movement>().canMove = false;
            if (prevAlive)
            {
                Camera.main.GetComponent <DeathEffectScript>().Active            = true;
                Camera.main.GetComponent <DeathEffectScript>().CurrentEffectTime = 0.0f;
            }
            if (!allowRespawn && Camera.main.GetComponent <DeathEffectScript>().CurrentEffectTime > Camera.main.GetComponent <DeathEffectScript>().EffectDuration * .9f)
            {
                allowRespawn = true;
                //DJ_LevelManager.resetScene();
                if (Application.loadedLevelName.Equals("levelSelectStage"))
                {
                    player.transform.position = new Vector3(PlayerPrefs.GetInt("PlayerX"), 0.0f, PlayerPrefs.GetInt("PlayerY"));
                }
                else
                {
                    player.transform.position = new Vector3(spawnPoint.X, 0.0f, spawnPoint.Y);
                }

                player.gameObject.GetComponent <DJ_Movement>().targetTilePos.Set(DJ_Util.GetTilePos(player.transform.position));
                player.gameObject.GetComponent <DJ_Movement>().currentTilePos.Set(player.gameObject.GetComponent <DJ_Movement>().targetTilePos);
                // This was breaking teleporting in the level select
                //player.gameObject.GetComponent<DJ_Movement>().prevPrevTilePos = player.gameObject.GetComponent<DJ_Movement>().targetTilePos;
                player.gameObject.GetComponent <DJ_Movement>().prevTilePos.Set(player.gameObject.GetComponent <DJ_Movement>().targetTilePos);
                player.GetComponent <DJ_Movement>().Reset();
                player.GetComponent <DJ_Movement>().canMove   = false;
                player.GetComponent <DJ_Damageable>().isAlive = true;
                player.GetComponent <DJ_Damageable>().deathBy = DJ_Death.NONE;
                deathCount++;
            }
            if (allowRespawn && Camera.main.GetComponent <DeathEffectScript>().CurrentEffectTime > Camera.main.GetComponent <DeathEffectScript>().EffectDuration * 2.0f * .75f)
            {
                player.GetComponent <DJ_Movement>().canMove = true;
                allowRespawn = false;
            }
        }
        prevAlive = player.GetComponent <DJ_Damageable>().isAlive;
    }
Beispiel #6
0
    public void Update()
    {
        //TODO: Peter's Temp fix
        //animationLength = 0.5f * .75f;
//		animationLength = DJ_BeatManager.metronome.GetInterval() * .75f;

        //update the current animation time
        currAnimationTime += Time.deltaTime;

        //save the current position of the GO so that we  can
        //modify it and  set the transform.position equal to
        //the  modified position
        currentPosition = transform.position;
        // sets the previous move
        prevCanMove = canMove;

        DJ_Util.GetTilePos(currentPosition, currentTilePos);
        //playerHeight = currentPosition.y;

        // Checks to see if the player should be falling
        checkFalling();

        // If true, activate falling to death
        if (isFalling)
        {
            fallingScript();
        }
        if (DJ_PlayerManager.player.GetComponent <DJ_Damageable>().isAlive)
        {
            // If the entity can move then apply a lerp based on the direction.
            if (canMove)
            {
                justLanded = false;
                if (direction != DJ_Dir.NONE)
                {
                    if (direction == DJ_Dir.TP)
                    {
                        isLerping = true;
                        canMove   = false;
                        prevPrevTilePos.Set(prevTilePos);
                        direction = DJ_Dir.NONE;
                    }
                    else
                    {
                        isLerping     = true;
                        prevDirection = direction;
                        canMove       = false;
                        prevPrevTilePos.Set(prevTilePos);
                        prevTilePos.Set(currentTilePos);
                        DJ_Util.GetNeighboringTilePos(prevTilePos, direction, maxMoveDistance, targetTilePos);
                    }
                }
                currAnimationTime = 0.0f;
            }
            if (currAnimationTime > animationLength)
            {
                maxMoveDistance = 1;
                heightOfHop     = 1;
                canMove         = true;
                isLerping       = false;
                //direction = DJ_Dir.NONE;
                justLanded = true;
                //snap the position
                prevTilePos.Set(targetTilePos);

                // Only update the player's position in the playerPref if in the level select
                // Used to respawn in the correction position whenever they die or come back.

                if (Application.loadedLevelName.Equals("levelSelectStage") && DJ_TileManagerScript.tileMap.ContainsKey(targetTilePos))
                {
                    PlayerPrefs.SetInt("PlayerX", targetTilePos.X);
                    PlayerPrefs.SetInt("PlayerY", targetTilePos.Y);
                    //Debug.Log("Flush this to hash table");
                    //Debug.Log("Flush Player hash table = " + targetTilePos);
                    PlayerPrefs.Flush();
                }
            }

            //else
            {
                DJ_Util.LerpTrajectory(ref currentPosition, prevTilePos, targetTilePos,
                                       heightOfHop, currAnimationTime, animationLength, playerHeight);
            }
            switch (DJ_PlayerManager.player.GetComponent <DJ_Damageable>().deathBy)
            {
            case DJ_Death.NONE: transform.position = currentPosition;
                break;

            case DJ_Death.FALLING: transform.position = currentPosition;
                break;

            case DJ_Death.FLATTEN: transform.position = new Vector3(currentPosition.x, 0, currentPosition.z);
                break;

            case DJ_Death.ELECTROCUTED: transform.position = currentPosition;
                break;
            }

            //transform.position = currentPosition;
        }
        switch (DJ_PlayerManager.player.GetComponent <DJ_Damageable>().deathBy)
        {
        case DJ_Death.NONE: transform.position = currentPosition;
            break;

        case DJ_Death.FALLING: transform.position = currentPosition;
            break;

        case DJ_Death.FLATTEN: transform.position = new Vector3(currentPosition.x, 0, currentPosition.z);
            break;

        case DJ_Death.ELECTROCUTED: transform.position = currentPosition;
            break;
        }
    }