void Start() { string[] heroNames = new string[3] { "Hero Info 1", "Hero Info 2", "Hero Info 3" }; for (int i = 0; i < 3; ++i) { HeroUI newUI = new HeroUI(); newUI.uiParent = heroDetailsContainer.transform.FindChild(heroNames[i]).gameObject; newUI.background = newUI.uiParent.transform.FindChild("Background").gameObject; newUI.armour = newUI.uiParent.transform.FindChild("Armour").GetComponent <UILabel>(); newUI.name = newUI.uiParent.transform.FindChild("Name").GetComponent <UILabel>(); newUI.nameInterface = newUI.name.transform.FindChild("Button").GetComponent <UIButton>(); Transform temp = newUI.uiParent.transform.FindChild("Diplomat Buttons"); newUI.embargo = temp.FindChild("Embargo Button").GetComponent <UIButton>(); newUI.enterSystem = temp.FindChild("Enter System Button").GetComponent <UIButton>(); newUI.promote = temp.FindChild("Promote Button").GetComponent <UIButton>(); temp = newUI.uiParent.transform.FindChild("Infiltrator Buttons"); newUI.otherSkill = temp.FindChild("Other Skill Button").GetComponent <UIButton>(); newUI.spy = temp.FindChild("Spy Button").GetComponent <UIButton>(); newUI.strike = temp.FindChild("Strike Button").GetComponent <UIButton>(); temp = newUI.uiParent.transform.FindChild("Soldier Buttons"); newUI.claim = temp.FindChild("Claim Button").GetComponent <UIButton>(); newUI.guard = temp.FindChild("Guard Button").GetComponent <UIButton>(); newUI.invade = temp.FindChild("Invasion Button").GetComponent <UIButton>(); heroUIInterfaces.Add(newUI); ActivateHeroUI(i, false); } }
/// <summary> /// /// Refreshes the item object with the item details /// /// </summary> public void RefreshItemObject(HeroUI heroUI, Item _item = null) { HeroUI = heroUI; Item = _item; notesArea.SetActive(false); //If item is null, displays the empty item object if (Item == null) { IsEmptySlot = true; itemImage.sprite = emptyItemSlotImage; itemNameText.text = "Empty Item Slot"; durabilityText.text = "Durability: 0"; notesInput.text = ""; } else { IsEmptySlot = false; itemImage.sprite = Item.CardArt; itemNameText.text = Item.Name; durabilityText.text = $"Durability: {Item.CurrentDurability}"; notesInput.text = Item.ItemNotes; } }
public void Setup(Hero _hero, e_teams _team, int _index, Vector2Int _position, HeroUI _heroUI) { _transform.position = new Vector3(_transform.position.x, _transform.position.y, -1); hero = _hero; team = _team; index = _index; position = _position; ui = _heroUI; Color color = _team == e_teams.Blue ? GameplayManager.Instance.Data.Colors[2] : GameplayManager.Instance.Data.Colors[3]; ui.Setup(this, color); visual.sprite = hero.Graph; stats.Add(e_stats.Health, new Stat(e_stats.Health, hero.Health)); stats.Add(e_stats.Speed, new Stat(e_stats.Speed, hero.Speed)); stats.Add(e_stats.Damage, new Stat(e_stats.Damage, hero.Damage)); stats.Add(e_stats.Range, new Stat(e_stats.Range, hero.Range)); stats.Add(e_stats.Critic, new Stat(e_stats.Critic, hero.Critic)); hero.Attack.Set(); hero.Active.Set(); hero.Passive.Set(); UpdateUI(); }
protected override void Start() { mAnim = GetComponent <Animator>(); mNavAgent = GetComponent <NavMeshAgent>(); mRigidBody = GetComponent <Rigidbody>(); mRigidBody.useGravity = false; //配置文件 mModel = HeroModelFactory.getHeroModel(gameObject.name); //从配置文件读取移动速度 mNavAgent.speed = mModel.get(Constants.HERO_ATTR_RUNSPEED); //取消动画中的位移 mAnim.applyRootMotion = false; //保存动画初始播放速度,只为run动画根据移动速度调整动画播放速度。 mAnimInitSpeed = mAnim.speed; //动作状态机 mStateManager = gameObject.AddComponent <StateManager>(); mStateManager.addState(new HeroRunState()); mStateManager.addState(new HeroChaseState()); mStateManager.addState(new HeroIdleState()); mStateManager.addState(new HeroJumpState()); mStateManager.addState(new HeroAttackState()); mStateManager.addState(new HeroDeathState()); mStateManager.setDefaultState("HeroIdleState"); //如果死亡,不管在什么状态下都跳转到死亡状态。 mStateManager.setCondForState("HeroDeathState", 1, () => { return(mModel.isDead()); }); mBloodBar = gameObject.AddComponent <HeroUI>(); }
protected void Awake() { if (Instance != null) { Destroy(gameObject); } else { Instance = this; } }
// public Animator buttonMenuAnimator; void Start() { instance = this; heroInventory = HeroInventory.instance; slots = slotHolder.GetComponentsInChildren <HeroSlot>(); heroInventory.onHeroSlotCountChange += slotChange; heroInventory.onChangeHeroData += redrawSlotUI; heroIllust = heroSet.transform.GetChild(1).gameObject.GetComponent <Image>(); heroName = heroSet.transform.GetChild(2).GetChild(0).gameObject.GetComponent <TMPro.TextMeshProUGUI>(); heroSet.SetActive(false); }
void Awake() { m_stage1 = ActiveUI.transform.GetChild(0).gameObject; m_stage2 = ActiveUI.transform.GetChild(1).gameObject; m_statusText = LockButton.GetComponentInChildren <Text>(); m_heroUI = new HeroUI[4]; for (int i = 0; i < 4; i++) { Button heroButton = m_stage1.transform.GetChild(i).GetComponent <Button>(); GameObject card_m = m_stage2.transform.GetChild(0).GetChild(i).gameObject; GameObject card_f = m_stage2.transform.GetChild(1).GetChild(i).gameObject; m_heroUI[i] = new HeroUI(heroButton, card_m, card_f); } }
private void CreateHeroPiece(int _heroIndex, e_teams _team, Vector2Int _position) { Square start = board[_position.x, _position.y]; GameObject instance = Instantiate(heroePiecePrefab, start.transform.position, Quaternion.identity, null); HeroUI ui = gameplayManager.UIManager.CreateHeroUI(); HeroPiece piece = instance.GetComponent <HeroPiece>(); piece.Setup(gameplayManager.Data.Heroes[_heroIndex], _team, pieces.Count, _position, ui); start.ChangeOccupied(instance.GetComponent <HeroPiece>()); if (gameplayManager.Team == _team) { gameplayManager.OnYourTurn += piece.TurnDebute; } else { gameplayManager.OnEnnemyTurn += piece.TurnDebute; } pieces.Add(piece); }
public HeroUI CreateHeroUI() { HeroUI ui = Instantiate(heroeUIPrefab, heroUIParent).GetComponent <HeroUI>(); return(ui); }
protected override void Start() { mAnim = GetComponent<Animator>(); mNavAgent = GetComponent<NavMeshAgent>(); mRigidBody = GetComponent<Rigidbody>(); mRigidBody.useGravity = false; //配置文件 mModel = HeroModelFactory.getHeroModel(gameObject.name); //从配置文件读取移动速度 mNavAgent.speed = mModel.get(Constants.HERO_ATTR_RUNSPEED); //取消动画中的位移 mAnim.applyRootMotion = false; //保存动画初始播放速度,只为run动画根据移动速度调整动画播放速度。 mAnimInitSpeed = mAnim.speed; //动作状态机 mStateManager = gameObject.AddComponent<StateManager>(); mStateManager.addState(new HeroRunState()); mStateManager.addState(new HeroChaseState()); mStateManager.addState(new HeroIdleState()); mStateManager.addState(new HeroJumpState()); mStateManager.addState(new HeroAttackState()); mStateManager.addState(new HeroDeathState()); mStateManager.setDefaultState("HeroIdleState"); //如果死亡,不管在什么状态下都跳转到死亡状态。 mStateManager.setCondForState("HeroDeathState", 1, () => { return mModel.isDead(); }); mBloodBar = gameObject.AddComponent<HeroUI>(); }