PlayerWalk.getLastInput C# (CSharp) Method

getLastInput() public method

public getLastInput ( ) : string
return string
    public string getLastInput()
    {
        return lastInput;
    }

Usage Example

コード例 #1
0
ファイル: Glisse.cs プロジェクト: lutrampal/ProjetDUT
    /// <summary>
    /// Is called every time an object is colliding.
    /// Help to keep in check the surrounding environment of the block.
    /// </summary>
    /// <param name="collision"></param>
    public void OnCollisionEnter2D(Collision2D collision)
    {
        if (collision.gameObject.tag == "Player" ) { // Check if the colliding object is the player
            player = collision.gameObject.GetComponent("PlayerWalk") as PlayerWalk ; // Get the player Object
            direction = player.getLastInput(); // Allow us to know in which direction the player wanted to go

            // For each direction we check:
            //      -if the player was going in this direction
            //      -if the block has an "solid" object next to him in this direction
            // if the two conditions are true then it call fonctBlocDestruction() because the block is blocked
            // else if neitheir is true it send the block in the direction the player wanted to
            if (direction == "right" && right ){
                fonctBlocDestruction();
            }
            else if (direction == "left" && left){
                fonctBlocDestruction();
            }
            else if (direction == "up" && up){
                fonctBlocDestruction();
            }
            else if (direction == "down" && down){
                fonctBlocDestruction();
            }
            else{
                moving = true;
            }
        }
        else if (collision.gameObject.tag == "Enemy" ){ // Check if the colliding object is an ennemy
            if (moving == true){ // If the block is moving it destroys the ennemy else it doesn't do anything
                fonctCollisionDestruction(collision);
            }
        }
        else	{ // If it isn't the player or an ennemy ist check if our block is moving, if it's moving it check if it's colliding with a "solid" object
                  // If it is, the block stop itself Else it continue sliding
            fonctCollisionEnter(collision);
            if (moving == true)
            {
                if ((collisionposition.x > position.x) && (collisionposition.y == position.y) && (direction == "right"))
                {
                    direction = null;
                    moving = false;
                    target.x = Mathf.Round(transform.position.x);
                }
                if ((collisionposition.x < position.x) && (collisionposition.y == position.y) && (direction == "left"))
                {
                    direction = null;
                    moving = false;
                    target.x = Mathf.Round(transform.position.x);
                }
                if ((collisionposition.y > position.y) && (collisionposition.x == position.x) && (direction == "up"))
                {
                     direction = null;
                     moving = false;
                     target.y = Mathf.Round(transform.position.y);
                }
                if ((collisionposition.y < position.y) && (collisionposition.x == position.x) && (direction == "down"))
                {
                     direction = null;
                     moving = false;
                     target.y = Mathf.Round(transform.position.y);

                }
            }
        }
    }