private static void CreateNotifyEffect(TeamSignalType signalType, Position pos) { string signalPerform = TeamSignalManager.GetSignalPerform(signalType); if (signalType == TeamSignalType.Fire || signalType == TeamSignalType.Defense) { return; } if (string.IsNullOrEmpty(signalPerform)) { return; } SysSkillPerformVo dataById = BaseDataMgr.instance.GetDataById <SysSkillPerformVo>(signalPerform); if (dataById == null) { ClientLogger.Error("cannot found SysSkillPerformVo #" + signalPerform); } else { ResourceHandle resourceHandle = MapManager.Instance.SpawnResourceHandle(dataById.effect_id, new Vector3(pos.x, pos.y, pos.z), Quaternion.identity, 0); if (resourceHandle != null) { resourceHandle.DelayRelease(1.8f); } else { ClientLogger.Error("SpawnEffect failed #" + dataById.effect_id); } } }
public static void Process(NotifyTeamPos info) { int senderId = info.senderId; TeamSignalType signalType = (TeamSignalType)info.signalType; Position pos = info.pos; if (pos == null) { return; } if (!Singleton <PvpManager> .Instance.IsOurPlayer(senderId)) { return; } TeamSignalManager.TryUpdateCd(senderId, signalType); TeamSignalManager.CreateNotifyEffect(signalType, pos); switch (signalType) { case TeamSignalType.Danger: AudioMgr.Play("Play_SignalRisk", null, false, false); AudioMgr.Play("Play_CN_Risk", null, false, false); break; case TeamSignalType.Miss: AudioMgr.Play("Play_SignalMiss", null, false, false); break; case TeamSignalType.Converge: AudioMgr.Play("Play_SignalHelp", null, false, false); AudioMgr.Play("Play_CN_Help", null, false, false); break; case TeamSignalType.Fire: AudioMgr.Play("Play_SignalAttack", null, false, false); AudioMgr.Play("Play_CN_Gather", null, false, false); break; case TeamSignalType.Defense: AudioMgr.Play("Play_SignalDefense", null, false, false); break; case TeamSignalType.Goto: AudioMgr.Play("Play_SignalOntheWay", null, false, false); break; } Singleton <MiniMapView> .Instance.ShowTeamSignal(senderId, signalType, new Vector3(pos.x, pos.y, pos.z)); string playerHero = Singleton <PvpManager> .Instance.GetPlayerHero(senderId); HUDModuleMsgTools.CallBattleMsg_SiderTipsModule_Signal(playerHero, signalType); }