示例#1
0
    public void Knock(PlayerController.PlayerNumber playerNumber)
    {
        if (moduleClosed || !isOn)
        {
            return;
        }
        Vector3 residentPosition = resident.transform.position;

        GlobalController.instance.hud.GoodKnock(playerNumber);
        if (residentPosition.x >= endPointRight.x)
        {
            //RIGHT
            flat.PointFor(PlayerController.PlayerNumber.RIGHT);
            moduleClosed = true;
            turnOff();
            GlobalController.instance.InstantStartNewFlat();
            return;
        }
        else if (residentPosition.x <= endPointLeft.x)
        {
            //LEFT
            flat.PointFor(PlayerController.PlayerNumber.LEFT);
            moduleClosed = true;
            turnOff();
            GlobalController.instance.InstantStartNewFlat();
            return;
        }

        if (playerNumber == PlayerController.PlayerNumber.LEFT)
        {
            residentPosition.x -= stepSize;
        }
        else
        {
            residentPosition.x += stepSize;
        }
        resident.SetTargetPos(residentPosition);
    }