using System; using System.Collections; using System.Collections.Generic; using UnityEngine; //VRuse触发同步消息处理组件 public class VRUsableSyncHandler : AbsSyncHandler { VRUsableStepActionBase usableGO; protected override void Awake() { base.Awake(); usableGO = this.GetComponent(); JoinHandList(); } public override void HandleSyncData(object msg, string msgType = null) { if (msgType == "ActionSync") { NetActionType action = (NetActionType)msg; HnadleSyncAction(action); } else { Debug.Log("未知的消息类型,无法同步"); } } private void HnadleSyncAction(NetActionType action) { switch (action) { case NetActionType.getCtrl: case NetActionType.yeildCtrl: case NetActionType.openAnima: case NetActionType.closeAnima: case NetActionType.unGrabbedOnFree: case NetActionType.unGrabbedOnFixed: Debug.Log("未实现的行为类型 无法同步"); break; case NetActionType.OnUseable: usableGO.OnUsed(); break; case NetActionType.UnUseable: usableGO.UnUsed(); break; } } }