using KYFramework; namespace VRPlatform { public static class VRResourcesComponentSystem { public static void AddResource(this VRResourcesComponent self,VRResourceEntity resource) { // Add resource to list if (self.Resources.ContainsKey(resource.VRResourceId)) { Log.Error($"Add resource error, resource [{resource.VRResourceId}] already exist!"); return; } self.Resources.Add(resource.VRResourceId,resource); } public static void RemoveResource(this VRResourcesComponent self,string resourceId) { // Remove resource from list if (!self.Resources.ContainsKey(resourceId)) { Log.Error($"Remove resource error, resource [{resourceId}] not exist!"); return; } self.Resources.Remove(resourceId); } // 启动资源 public static void RunResource(this VRResourcesComponent self,string resourceId) { // Run resource if (!self.Resources.ContainsKey(resourceId)) { Log.Error($"Run resource error, resource [{resourceId}] not exist!"); return; } var resource = self.Resources[resourceId]; resource.Run(); //Game.EventSystem.Publish(new RunResourceEvent(){Resource = resource}); } public static void StopResource(this VRResourcesComponent self,string resourceId) { // Stop resource if (!self.Resources.ContainsKey(resourceId)) { Log.Error($"Stop resource error, resource [{resourceId}] not exist!"); return; } var resource = self.Resources[resourceId]; resource.Stop(); //Game.EventSystem.Publish(new StopResourceEvent(){Resource = resource}); } } }