public bool switchChampionsInstances(GameObject From, GameObject To)
    {
        bool            foundFrom  = false;
        bool            foundTo    = false;
        ChampionSpawner FromScript = From.GetComponent <ChampionSpawner>();
        ChampionSpawner ToScript   = To.GetComponent <ChampionSpawner>();

        foundFrom = playerData.GetPlacementData().findBySpawnerName(From.name);
        if (foundFrom)
        {
            // SpawnFrom contient un champion
            if (!playerData.canMoveBasedOnLevel(FromScript.FightingSpawner, ToScript.FightingSpawner, ToScript.spawnPointIsActive()))
            {
                return(false);
            }
            // Le player a placé autant de champions sur le terrain qu'autorisés par son level

            foundTo = playerData.GetPlacementData().findBySpawnerName(To.name);
            if (!foundTo)
            {
                // SpawnFrom contient un champion mais pas SpawnTo
                FromScript.desactivateSpawnPoint();
                ToScript.activateSpawnPoint();
                playerData.GetPlacementData().setSpawner(From.name, To.name, To.transform.position, ToScript.FightingSpawner);
            }
            else
            {
                // SpawnFrom Et SpawnTo contiennent un champion
                // Check if found
                // From and To : Switch the SpawnNames
                // From and !To : Change the SpawnName
                // !From : Error
                if (From.name == To.name)
                {
                    return(false);
                }
                playerData.GetPlacementData().switchSpawners(From, To);
            }
            return(true);
        }
        else
        {
            Debug.Log("SpawnFrom ne contient pas de champion");
        }
        return(false);
    }