public void Start() { _btnBack.onClick.AddListener(OnBtnBackClick); _btnSkill1.onClick.AddListener(OnSkill1Click); _btnSkill2.onClick.AddListener(OnSkill2Click); _btnSkillSelected1.onClick.AddListener(OnSelectedSkill1Click); _btnSkillSelected2.onClick.AddListener(OnSelectedSkill2Click); _btnSkillSelected1.image.sprite = _btnSkillEmpty.image.sprite; _lblSkillSelected1.text = string.Empty; _btnSkillSelected2.image.sprite = _btnSkillEmpty.image.sprite; _lblSkillSelected2.text = string.Empty; ListRO <ESkillKey> playerSkills = Global.Instance.Player.HeroSkills.GetHeroSkills(EUnitKey.Hero_Sniper); for (int i = 0; i < playerSkills.Count; i++) { if (playerSkills[i] == ESkillKey.ExplosiveCharges) { OnSkill1Click(); } else if (playerSkills[i] == ESkillKey.StunGrenade) { OnSkill2Click(); } } }
public void Start() { ListRO <ESkillKey> playerHeroSkillKeys = Global.Instance.Player.HeroSkills.GetHeroSkills(Global.Instance.Player.Heroes.Current.Data.Key); List <SkillParameters> playerHeroSkillParams = new List <SkillParameters>(); playerHeroSkillParams.Add(SkillsConfig.Instance.HetHeroSkillParameters(Global.Instance.Player.Heroes.Current.Data.Key)); SkillParameters skillParams = null; for (int i = 0; i < playerHeroSkillKeys.Count; i++) { skillParams = SkillsConfig.Instance.GetSkillParameters(playerHeroSkillKeys[i]); if (skillParams != null) { playerHeroSkillParams.Add(skillParams); } } for (int i = 0; i < _skillButtons.Length; i++) { if (playerHeroSkillParams.Count > i && playerHeroSkillParams[i] != null) { _skillButtons[i].Setup(playerHeroSkillParams[i]); _skillButtons[i].gameObject.SetActive(true); } else { _skillButtons[i].gameObject.SetActive(false); } } }
public PlayerInventory() { _itemsRO = new ListRO<PlayerItem>(_items); EventsAggregator.Units.AddListener<BaseUnit, EUnitEqupmentSlot, EItemKey, EItemKey>(EUnitEvent.EquipmentUpdate, OnItemEquip); }
private IEnumerator InitializeUnitsData(MissionMapData mapData) { _fightPreparationStep = EFightPreparationStep.InitializeUnitsGraphics; float unitInitializationStep = (0.9f - 0.25f) / (_alliesCount + _enemiesCount); float currentLoadPercentage = 0.25f; //get player hero skills Dictionary <ESkillKey, BaseUnitSkill> playerHeroSkills = new Dictionary <ESkillKey, BaseUnitSkill>(); SkillParameters skillParams = SkillsConfig.Instance.HetHeroSkillParameters(Global.Instance.Player.Heroes.Current.Data.Key); if (skillParams != null) { playerHeroSkills.Add(skillParams.Key, SkillsConfig.Instance.GetSkillInstance(skillParams)); } ListRO <ESkillKey> playerHeroSkillKeys = Global.Instance.Player.HeroSkills.GetHeroSkills(Global.Instance.Player.Heroes.Current.Data.Key); for (int i = 0; i < playerHeroSkillKeys.Count; i++) { skillParams = SkillsConfig.Instance.GetSkillParameters(playerHeroSkillKeys[i]); if (skillParams != null) { playerHeroSkills.Add(skillParams.Key, SkillsConfig.Instance.GetSkillInstance(skillParams)); } } _graphics.AllyUnits[_graphics.AllyUnits.Length - 1].Setup(Global.Instance.Player.Heroes.Current, playerHeroSkills, GameConstants.Tags.UNIT_ALLY, _graphics.UnitUIResource, Global.Instance.CurrentMission.SelectedSoldiers.Length); for (int i = 0; i < Global.Instance.CurrentMission.SelectedSoldiers.Length; i++) { if (!Global.Instance.CurrentMission.SelectedSoldiers[i].IsDead) { _graphics.AllyUnits[i].Setup(Global.Instance.CurrentMission.SelectedSoldiers[i], null, GameConstants.Tags.UNIT_ALLY, _graphics.UnitUIResource, i); //TODO: setup units skills currentLoadPercentage += unitInitializationStep; LoadingScreen.Instance.SetProgress(currentLoadPercentage); yield return(null); } } BaseUnitData bud = null; for (int i = 0; i < mapData.Units.Length; i++) { bud = UnitsConfig.Instance.GetUnitData(mapData.Units[i]); if (bud is BaseHeroData) { _graphics.EnemyUnits[i].Setup(new BaseHero(bud as BaseHeroData, 0), null, GameConstants.Tags.UNIT_ENEMY, _graphics.UnitUIResource, i); //TODO: setup enemy hero inventory, hero skills } else { _graphics.EnemyUnits[i].Setup(new BaseSoldier(bud as BaseSoldierData, 1), null, GameConstants.Tags.UNIT_ENEMY, _graphics.UnitUIResource, i); //TODO: setup enemy soldier upgrades, unit skills } currentLoadPercentage += unitInitializationStep; LoadingScreen.Instance.SetProgress(currentLoadPercentage); yield return(null); } _fightPreparationStep = EFightPreparationStep.UnitsGraphicsInitialized; }
public PlayerInventory() { _itemsRO = new ListRO <PlayerItem>(_items); EventsAggregator.Units.AddListener <BaseUnit, EUnitEqupmentSlot, EItemKey, EItemKey>(EUnitEvent.EquipmentUpdate, OnItemEquip); }