public void StartPK(PKPosInfo posInfo) { admit.gameObject.SetActive(true); curCountDownTime = 5; centerPos = new Vector3(posInfo.pos[0], posInfo.pos[1], posInfo.pos[2]); StartTimer((int)EMT_PKinfo_Timer.COUNTDOWN); UEffectParamBase param = new UEffectPrefabParam(_eType: UEffectPrefabType.UEPT_PKInfo_PKStart, _tfAttachParent: this.gameObject.transform, _bAutoDestroy: true); UEffectManager.Instance.CreateEffect(UEffectType.UET_EffectPrefab, ref param); m_EffectParam = param; Data.UISoundConfig.SSchemeUSoundData soundData = new Data.UISoundConfig.SSchemeUSoundData(); if (Data.UISoundConfig.UISoundConfig.Instance.GetData(SoundFilter, SoundKey_CountDown, ref soundData)) { SoundManager.CreateUISound(soundData.USoundID); } }
/// <summary> /// 开始PK /// </summary> /// <param name="uidTarget">PK目标</param> /// <param name="pkLoc">PK点坐标</param> public void StartPK(int uidTarget, float[] pkLoc) { SkillCtrl sc = EntityFactory.MainHeroView.SkillCtrl; if (sc != null) { sc.doingPKSelection = false; sc.enablePKSelection = false; } PKPosInfo posInfo = new PKPosInfo(); posInfo.pos = pkLoc; UISystem.Instance.SendWndMessage(WndMsgID.WND_MSG_PKINFO_STARTPK, posInfo); UISystem.Instance.ShowWnd(WndID.WND_ID_WAR_FLOATFONTFRAME, true); UTopNameManager.Instance.SetPKMode(EntityFactory.MainHeroID, true); UTopNameManager.Instance.SetPKMode(uidTarget, true); UTopNameManager.PkTargetID = uidTarget; U3D_Render.EntityView targetEV = EntityFactory.getEntityViewByID(uidTarget); if (targetEV == null || targetEV.Property == null) { Trace.LogError("pk target ev or pk target ev property null!"); return; } UBloodManager.Instance.PkTargetID = uidTarget; UBloodManager.Instance.CreatBlood(EntityFactory.MainHeroView, (int)GFxCampTpye.CT_Self); UBloodManager.Instance.CreatBlood(targetEV, (int)GFxCampTpye.CT_Enemy); pkTargetSkinID = 0; pkTargetSkinID = targetEV.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_SKIN); pkSrcSkinID = 0; pkSrcSkinID = EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_SKIN); EffectHelper.LoadPreLight(LightType.ActorSkin, pkTargetSkinID, CachePriority.PRIORITY_MEDIUM); LoadPKRelateSkin(pkTargetSkinID); LoadPKRelateSkin(pkSrcSkinID); m_bIsPK = true; }