NpcSpeakSentenseItem CreatOneSentense(NpcSpeakSentenseItem _prefab, Transform _parent) { NpcSpeakSentenseItem item = Instantiate(_prefab) as NpcSpeakSentenseItem; item.gameObject.SetActive(true); item.transform.parent = _parent; item.transform.localPosition = Vector3.zero; item.transform.localRotation = Quaternion.identity; item.transform.localScale = Vector3.one; return(item); }
public void SayOneWord(string _content, float _interval) { if (mSpeakSentenseList.Count > 0)//提前结束上一句话 { mSpeakSentenseList[0].AheadDisappear(); } NpcSpeakSentenseItem item = CreatOneSentense(mSpeakSentensePrefab, SpeakTrans); mSpeakSentenseList.Add(item); item.OnDestroySelfEvent += OnDestroySentenseSelf; item.SayOneWord(_content, _interval); UpdateSentensePos(); }
void OnDestroySentenseSelf(NpcSpeakSentenseItem _item) { mSpeakSentenseList.Remove(_item); }
void InitOverHead() { Transform trans = transform.FindChild("MissionMark"); if (null == trans) { Debug.LogWarning("no text mesh to show mission mark"); return; } missionMark = trans.GetComponent <MeshRenderer>(); //*********************************************** trans = transform.FindChild("Revival"); if (null == trans) { Debug.LogWarning("no Revival found"); return; } revivalMark = trans.GetComponent <MeshRenderer>(); SetRevivalMark(false, 0f); trans = transform.FindChild("Namlb"); if (null == trans) { Debug.LogWarning("no text show Namlb"); return; } NameLb = trans; trans = trans.transform.FindChild("Label"); if (null == trans) { Debug.LogWarning("no text show Namlb"); return; } mLable = trans.GetComponent <UILabel>() as UILabel; trans = NameLb.transform.FindChild("Icon"); if (null == trans) { Debug.LogWarning("no text show Icon"); return; } mIcon = trans.GetComponent <UISprite>() as UISprite; trans = transform.FindChild("Player"); PlayerTrans = trans; if (PlayerTrans != null) { trans = PlayerTrans.FindChild("BloodItemPlayer"); } if (trans != null) { mBloodPlayer = trans.GetComponent <UISlider>() as UISlider; mPlayerBloodcmpt = trans.GetComponent <Bloodcmpt>(); } trans = transform.FindChild("NPc"); NpcTrans = trans; if (NpcTrans != null) { trans = NpcTrans.FindChild("BloodItemNpc"); } if (trans != null) { mBloodNpc = trans.GetComponent <UISlider>() as UISlider; mNpcBloodcmpt = trans.GetComponent <Bloodcmpt>(); } trans = transform.FindChild("Monster"); MonsterTrans = trans; if (MonsterTrans != null) { trans = MonsterTrans.FindChild("BloodItemMon"); } if (trans != null) { mBloodMonster = trans.GetComponent <UISlider>() as UISlider; mMonsterBloodcmpt = trans.GetComponent <Bloodcmpt>(); } trans = transform.FindChild("Speak"); SpeakTrans = trans; if (SpeakTrans != null) { mSpeakSentensePrefab = SpeakTrans.FindChild("SentencePrefab").GetComponent <NpcSpeakSentenseItem>(); } return; }