using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class ChampionSelector : MonoBehaviour
{
    [SerializeField] private bool _defaultSelection = false;
    [SerializeField]
    Toggle _ASHESelector;

    [SerializeField]
    Toggle _BLITZCRANKSelector;

    [SerializeField]
    Toggle _ELISESelector;

    [SerializeField]
    Toggle _JAXSelector;

    [SerializeField]
    Toggle _JAYCESelector;

    [SerializeField]
    Toggle _LILLIASelector;

    [SerializeField]
    Toggle _NOMSYSelector;

    [SerializeField]
    Toggle _POPPYSelector;

    [SerializeField]
    Toggle _SERAPHINESelector;

    [SerializeField]
    Toggle _SORAKASelector;

    [SerializeField]
    Toggle _TWITCHSelector;

    [SerializeField]
    Toggle _WARWICKSelector;

    [SerializeField]
    Toggle _ZIGGSSelector;

    [SerializeField]
    Toggle _ZOESelector;

    [SerializeField]
    Toggle _AHRISelector;

    [SerializeField]
    Toggle _AKALISelector;

    [SerializeField]
    Toggle _CASSIOPEIASelector;

    [SerializeField]
    Toggle _GALIOSelector;

    [SerializeField]
    Toggle _KASSADINSelector;

    [SerializeField]
    Toggle _KOGMAWSelector;

    [SerializeField]
    Toggle _NILAHSelector;

    [SerializeField]
    Toggle _NUNUSelector;

    [SerializeField]
    Toggle _RUMBLESelector;

    [SerializeField]
    Toggle _SHYVANASelector;

    [SerializeField]
    Toggle _SYNDRASelector;

    [SerializeField]
    Toggle _TRISTANASelector;

    [SerializeField]
    Toggle _ZILEANSelector;

    [SerializeField]
    Toggle _BARDSelector;

    [SerializeField]
    Toggle _EZREALSelector;

    [SerializeField]
    Toggle _HECARIMSelector;

    [SerializeField]
    Toggle _HWEISelector;

    [SerializeField]
    Toggle _JINXSelector;

    [SerializeField]
    Toggle _KATARINASelector;

    [SerializeField]
    Toggle _MORDEKAISERSelector;

    [SerializeField]
    Toggle _NEEKOSelector;

    [SerializeField]
    Toggle _SHENSelector;

    [SerializeField]
    Toggle _SWAINSelector;

    [SerializeField]
    Toggle _VEIGARSelector;

    [SerializeField]
    Toggle _VEXSelector;

    [SerializeField]
    Toggle _WUKONGSelector;

    [SerializeField]
    Toggle _FIORASelector;

    [SerializeField]
    Toggle _GWENSelector;

    [SerializeField]
    Toggle _KALISTASelector;

    [SerializeField]
    Toggle _KARMASelector;

    [SerializeField]
    Toggle _NAMISelector;

    [SerializeField]
    Toggle _NASUSSelector;

    [SerializeField]
    Toggle _OLAFSelector;

    [SerializeField]
    Toggle _RAKANSelector;

    [SerializeField]
    Toggle _RYZESelector;

    [SerializeField]
    Toggle _TAHMKENCHSelector;

    [SerializeField]
    Toggle _TARICSelector;

    [SerializeField]
    Toggle _VARUSSelector;

    [SerializeField]
    Toggle _BRIARSelector;

    [SerializeField]
    Toggle _CAMILLESelector;

    [SerializeField]
    Toggle _DIANASelector;

    [SerializeField]
    Toggle _MILLIOSelector;

    [SerializeField]
    Toggle _MORGANASelector;

    [SerializeField]
    Toggle _NORRASelector;

    [SerializeField]
    Toggle _SMOLDERSelector;

    [SerializeField]
    Toggle _XERATHSelector;


    public HashSet<ChampionsEnum> GetSelectedChampions()
    {
        var selectedChampions = new HashSet<ChampionsEnum>();

        if (_ASHESelector.isOn) selectedChampions.Add(ChampionsEnum.ASHE);
        if (_BLITZCRANKSelector.isOn) selectedChampions.Add(ChampionsEnum.BLITZCRANK);
        if (_ELISESelector.isOn) selectedChampions.Add(ChampionsEnum.ELISE);
        if (_JAXSelector.isOn) selectedChampions.Add(ChampionsEnum.JAX);
        if (_JAYCESelector.isOn) selectedChampions.Add(ChampionsEnum.JAYCE);
        if (_LILLIASelector.isOn) selectedChampions.Add(ChampionsEnum.LILLIA);
        if (_NOMSYSelector.isOn) selectedChampions.Add(ChampionsEnum.NOMSY);
        if (_POPPYSelector.isOn) selectedChampions.Add(ChampionsEnum.POPPY);
        if (_SERAPHINESelector.isOn) selectedChampions.Add(ChampionsEnum.SERAPHINE);
        if (_SORAKASelector.isOn) selectedChampions.Add(ChampionsEnum.SORAKA);
        if (_TWITCHSelector.isOn) selectedChampions.Add(ChampionsEnum.TWITCH);
        if (_WARWICKSelector.isOn) selectedChampions.Add(ChampionsEnum.WARWICK);
        if (_ZIGGSSelector.isOn) selectedChampions.Add(ChampionsEnum.ZIGGS);
        if (_ZOESelector.isOn) selectedChampions.Add(ChampionsEnum.ZOE);
        if (_AHRISelector.isOn) selectedChampions.Add(ChampionsEnum.AHRI);
        if (_AKALISelector.isOn) selectedChampions.Add(ChampionsEnum.AKALI);
        if (_CASSIOPEIASelector.isOn) selectedChampions.Add(ChampionsEnum.CASSIOPEIA);
        if (_GALIOSelector.isOn) selectedChampions.Add(ChampionsEnum.GALIO);
        if (_KASSADINSelector.isOn) selectedChampions.Add(ChampionsEnum.KASSADIN);
        if (_KOGMAWSelector.isOn) selectedChampions.Add(ChampionsEnum.KOGMAW);
        if (_NILAHSelector.isOn) selectedChampions.Add(ChampionsEnum.NILAH);
        if (_NUNUSelector.isOn) selectedChampions.Add(ChampionsEnum.NUNU);
        if (_RUMBLESelector.isOn) selectedChampions.Add(ChampionsEnum.RUMBLE);
        if (_SHYVANASelector.isOn) selectedChampions.Add(ChampionsEnum.SHYVANA);
        if (_SYNDRASelector.isOn) selectedChampions.Add(ChampionsEnum.SYNDRA);
        if (_TRISTANASelector.isOn) selectedChampions.Add(ChampionsEnum.TRISTANA);
        if (_ZILEANSelector.isOn) selectedChampions.Add(ChampionsEnum.ZILEAN);
        if (_BARDSelector.isOn) selectedChampions.Add(ChampionsEnum.BARD);
        if (_EZREALSelector.isOn) selectedChampions.Add(ChampionsEnum.EZREAL);
        if (_HECARIMSelector.isOn) selectedChampions.Add(ChampionsEnum.HECARIM);
        if (_HWEISelector.isOn) selectedChampions.Add(ChampionsEnum.HWEI);
        if (_JINXSelector.isOn) selectedChampions.Add(ChampionsEnum.JINX);
        if (_KATARINASelector.isOn) selectedChampions.Add(ChampionsEnum.KATARINA);
        if (_MORDEKAISERSelector.isOn) selectedChampions.Add(ChampionsEnum.MORDEKAISER);
        if (_NEEKOSelector.isOn) selectedChampions.Add(ChampionsEnum.NEEKO);
        if (_SHENSelector.isOn) selectedChampions.Add(ChampionsEnum.SHEN);
        if (_SWAINSelector.isOn) selectedChampions.Add(ChampionsEnum.SWAIN);
        if (_VEIGARSelector.isOn) selectedChampions.Add(ChampionsEnum.VEIGAR);
        if (_VEXSelector.isOn) selectedChampions.Add(ChampionsEnum.VEX);
        if (_WUKONGSelector.isOn) selectedChampions.Add(ChampionsEnum.WUKONG);
        if (_FIORASelector.isOn) selectedChampions.Add(ChampionsEnum.FIORA);
        if (_GWENSelector.isOn) selectedChampions.Add(ChampionsEnum.GWEN);
        if (_KALISTASelector.isOn) selectedChampions.Add(ChampionsEnum.KALISTA);
        if (_KARMASelector.isOn) selectedChampions.Add(ChampionsEnum.KARMA);
        if (_NAMISelector.isOn) selectedChampions.Add(ChampionsEnum.NAMI);
        if (_NASUSSelector.isOn) selectedChampions.Add(ChampionsEnum.NASUS);
        if (_OLAFSelector.isOn) selectedChampions.Add(ChampionsEnum.OLAF);
        if (_RAKANSelector.isOn) selectedChampions.Add(ChampionsEnum.RAKAN);
        if (_RYZESelector.isOn) selectedChampions.Add(ChampionsEnum.RYZE);
        if (_TAHMKENCHSelector.isOn) selectedChampions.Add(ChampionsEnum.TAHMKENCH);
        if (_TARICSelector.isOn) selectedChampions.Add(ChampionsEnum.TARIC);
        if (_VARUSSelector.isOn) selectedChampions.Add(ChampionsEnum.VARUS);
        if (_BRIARSelector.isOn) selectedChampions.Add(ChampionsEnum.BRIAR);
        if (_CAMILLESelector.isOn) selectedChampions.Add(ChampionsEnum.CAMILLE);
        if (_DIANASelector.isOn) selectedChampions.Add(ChampionsEnum.DIANA);
        if (_MILLIOSelector.isOn) selectedChampions.Add(ChampionsEnum.MILLIO);
        if (_MORGANASelector.isOn) selectedChampions.Add(ChampionsEnum.MORGANA);
        if (_NORRASelector.isOn) selectedChampions.Add(ChampionsEnum.NORRA);
        if (_SMOLDERSelector.isOn) selectedChampions.Add(ChampionsEnum.SMOLDER);
        if (_XERATHSelector.isOn) selectedChampions.Add(ChampionsEnum.XERATH);

        return selectedChampions;
    }

    public void Reset()
    {
        _ASHESelector.isOn = _defaultSelection;
        _BLITZCRANKSelector.isOn = _defaultSelection;
        _ELISESelector.isOn = _defaultSelection;
        _JAXSelector.isOn = _defaultSelection;
        _JAYCESelector.isOn = _defaultSelection;
        _LILLIASelector.isOn = _defaultSelection;
        _NOMSYSelector.isOn = _defaultSelection;
        _POPPYSelector.isOn = _defaultSelection;
        _SERAPHINESelector.isOn = _defaultSelection;
        _SORAKASelector.isOn = _defaultSelection;
        _TWITCHSelector.isOn = _defaultSelection;
        _WARWICKSelector.isOn = _defaultSelection;
        _ZIGGSSelector.isOn = _defaultSelection;
        _ZOESelector.isOn = _defaultSelection;
        _AHRISelector.isOn = _defaultSelection;
        _AKALISelector.isOn = _defaultSelection;
        _CASSIOPEIASelector.isOn = _defaultSelection;
        _GALIOSelector.isOn = _defaultSelection;
        _KASSADINSelector.isOn = _defaultSelection;
        _KOGMAWSelector.isOn = _defaultSelection;
        _NILAHSelector.isOn = _defaultSelection;
        _NUNUSelector.isOn = _defaultSelection;
        _RUMBLESelector.isOn = _defaultSelection;
        _SHYVANASelector.isOn = _defaultSelection;
        _SYNDRASelector.isOn = _defaultSelection;
        _TRISTANASelector.isOn = _defaultSelection;
        _ZILEANSelector.isOn = _defaultSelection;
        _BARDSelector.isOn = _defaultSelection;
        _EZREALSelector.isOn = _defaultSelection;
        _HECARIMSelector.isOn = _defaultSelection;
        _HWEISelector.isOn = _defaultSelection;
        _JINXSelector.isOn = _defaultSelection;
        _KATARINASelector.isOn = _defaultSelection;
        _MORDEKAISERSelector.isOn = _defaultSelection;
        _NEEKOSelector.isOn = _defaultSelection;
        _SHENSelector.isOn = _defaultSelection;
        _SWAINSelector.isOn = _defaultSelection;
        _VEIGARSelector.isOn = _defaultSelection;
        _VEXSelector.isOn = _defaultSelection;
        _WUKONGSelector.isOn = _defaultSelection;
        _FIORASelector.isOn = _defaultSelection;
        _GWENSelector.isOn = _defaultSelection;
        _KALISTASelector.isOn = _defaultSelection;
        _KARMASelector.isOn = _defaultSelection;
        _NAMISelector.isOn = _defaultSelection;
        _NASUSSelector.isOn = _defaultSelection;
        _OLAFSelector.isOn = _defaultSelection;
        _RAKANSelector.isOn = _defaultSelection;
        _RYZESelector.isOn = _defaultSelection;
        _TAHMKENCHSelector.isOn = _defaultSelection;
        _TARICSelector.isOn = _defaultSelection;
        _VARUSSelector.isOn = _defaultSelection;
        _BRIARSelector.isOn = _defaultSelection;
        _CAMILLESelector.isOn = _defaultSelection;
        _DIANASelector.isOn = _defaultSelection;
        _MILLIOSelector.isOn = _defaultSelection;
        _MORGANASelector.isOn = _defaultSelection;
        _NORRASelector.isOn = _defaultSelection;
        _SMOLDERSelector.isOn = _defaultSelection;
        _XERATHSelector.isOn = _defaultSelection;
    }
}
