private void Start()
    {
        persistantHandler = GameObject.FindGameObjectsWithTag("PersistentObject")[0];
        persistantHandler.GetComponent <InputHandler>().addObserver(this);
        StartParent    = this.transform.parent;
        shoutHandler   = playerCamera.GetComponentInChildren <ShoutHandlerScript>();
        playerCollider = this.GetComponent <SphereCollider>();
        emotions       = this.GetComponent <EmotionHandlerScript>();
        // We get the player's rigidbody's component
        player = GetComponent <Rigidbody>();
        playerRotationSpeed.SetValue(0f);
        GameObject[] spawners = GameObject.FindGameObjectsWithTag("Spawn");
        if (spawners.Length > 0)
        {
            respawnPosition = spawners[0].transform.position;
        }
        else
        {
            respawnPosition = Vector3.one;
        }

        /*GameObject victory = GameObject.FindGameObjectsWithTag("Finish")[0];
         * transform.LookAt(victory.transform);*/
        bumpSource = this.gameObject.GetComponentInChildren <AudioSource>();
        baseVolume = bumpSource.volume;
        bonusCount = GameObject.FindGameObjectsWithTag("BonusCount")[0].GetComponent <TextMeshProUGUI>();

        GameObject levelLoader = Instantiate(LevelLoader);

        _levelLoader       = levelLoader.GetComponent <LevelLoader>();
        powerGauge.value   = powerTime;
        maxPowerTime.value = powerTime;
    }
    /* ------------------------------------------------------------------------------------------- INITIALIZATION ------------------------------------------------------------------------------*/

    public void UpdatePlayerNbAndParameters(int _playerNb, GameObject _camera, ParticleSystem _fallSparks, ParticleSystem _grindSparks, GameObject _Boom, GameObject _propelBoom)
    {
        if (ActualSave.actualSave == null)
        {
            ActualSave.actualSave = new SaveFileInfo();
        }
        ActualSave.actualSave.UnlockPlayers();
        playerNb = _playerNb;

        playerCamera = _camera;

        shoutHandler = playerCamera.GetComponentInChildren <ShoutHandlerScript>();


        characterNb = ActualSave.actualSave.stats[playerNb].activePlayer;

        shoutHandler.character = characterNb;

        fallSparks  = _fallSparks;
        grindSparks = _grindSparks;
        Boom        = _Boom;
        propelBoom  = _propelBoom;
    }