public object OnInitSceneUI(params object[] objs) { //--------- menu begin-------------------------- ButtonBarView.GetInstance().viewType = ViewType.Menu; //ShortcutView.GetInstance(); //old view CMDView.GetInstance().viewType = ViewType.Menu; HitPanelView.GetInstance().viewType = ViewType.Menu; HeroMenuView.GetInstance().viewType = ViewType.Menu; //HeadView.GetInstance();//old view MinMapView.GetInstance().viewType = ViewType.Menu; if (PlayerManager.GetInstance().MajorPlayer.level >= 14) { MissionFollowListView.GetInstance().viewType = ViewType.Menu; } else { MissionFollowView.GetInstance().viewType = ViewType.Menu; } TopRightMenuView.GetInstance().viewType = ViewType.Menu; PveProcessView.GetInstance().viewType = ViewType.Menu; //-----------menu end-------------------- //-----------window begin----------------- PveView.GetInstance(); PveQuitView.GetInstance(); PveAutoFight.GetInstance(); //-----------window end------------------- //----------Tip begin----------- PveFailView.GetInstance(); ReliveView.GetInstance(); //----------Tip end------------- return(null); }
public void OnHeroDeathOp(KProtoBuf buf, bool fristTime) { S2C_HERO_DEATH respond = buf as S2C_HERO_DEATH; SceneEntity targetHero = GetSceneObject(respond.heroID) as SceneEntity; SceneEntity killerHero = GetSceneObject(respond.KillerID) as SceneEntity; if (null == targetHero) { return; } if (targetHero == mainHero) { ReliveView.GetInstance().ShowView(); } targetHero.property.isDeaded = true; uint lastSkillId = targetHero.property.lastHitSkillId; KSkillDisplay skillDisplay = KConfigFileManager.GetInstance().GetSkillDisplay(lastSkillId, targetHero.property.tabID); if (fristTime && null != killerHero) { KActiveSkill activeSkill = KConfigFileManager.GetInstance().GetActiveSkill(lastSkillId, 1); if (null != activeSkill && activeSkill.ClientCache) { if (null != killerHero.ActiveAction) { killerHero.ActiveAction.AddDeadMessage(respond); return; } } else if (null != killerHero && skillDisplay.HitDelayTimeScale > 0.00001f) { float distance = Vector3.Distance(killerHero.Position, targetHero.Position); float _time = distance * skillDisplay.HitDelayTimeScale; DelayCallManager.instance.CallFunction(OnHeroDeathParam, _time, buf, false); return; } } if (null != targetHero) { if (targetHero.property.activeAction.isFlying) { if (skillDisplay.DeadType != KSkillDisplay.DEAD_TYPE.PHYSICS) { targetHero.property.isDeadTemp = true; return; } } targetHero.DispatchEvent(ControllerCommand.FinishImmediate); targetHero.DispatchEvent(ControllerCommand.CLEAR_BUFF); targetHero.Action.ToDead(killerHero); targetHero.property.isDeadTemp = true; if (null != killerHero) { if (killerHero.gameObject.GetComponent <AttackSlow>() == null) { if (null == skillDisplay || skillDisplay.DieAttackSlowTime <= 0) { return; } killerHero.DispatchEvent( ControllerCommand.SLOW, killerHero.AnimCmp.GetLastLogicAnimName(), skillDisplay.DieAttackSlowTime, skillDisplay.DieAttackSpeed); } } } }