public virtual void Awake() { EventDispatcher.AddEventListener <Package>(NetSceneEvent.GetNetBehaviorEventName(handlerId), OnNetUpdate); if (isClientCreate) { EventDispatcher.AddEventListener(NetSceneEvent.NetSceneReady, RequestObjectJoin); } }
public virtual void Awake() { EventDispatcher.AddEventListener <Package>(NetSceneEvent.GetNetBehaviorEventName(handlerId), OnNetUpdate); //如果是由客户端创建则自动销毁 if (isClientCreate) { EventDispatcher.AddEventListener(NetSceneEvent.NetSceneDisconnect, RequestDestroy); } }
public virtual void OnDestroy() { if (isClientCreate) { EventDispatcher.RemoveEventListener(NetSceneEvent.NetSceneReady, RequestObjectJoin); if (NetSceneManager.Instance.sceneConnected) { RequestDestroy(); } } EventDispatcher.RemoveEventListener <Package>(NetSceneEvent.GetNetBehaviorEventName(handlerId), OnNetUpdate); }
protected override void Handle(Package package, Action act = null) { var id = EnumEx.GetValue <HandlerConst.RequestId>(package.eventId); EventDispatcher.TriggerEvent <Package>(NetSceneEvent.GetNetBehaviorEventName(id), package); }
public virtual void OnDestroy() { EventDispatcher.TriggerEvent <NetBehavior>(NetSceneEvent.NetBehaviorRemoveFromScene, this); EventDispatcher.RemoveEventListener <Package>(NetSceneEvent.GetNetBehaviorEventName(handlerId), OnNetUpdate); RequestDestroy(); }