|
我的UINode脚本哪个大佬看看啊,没报错也不能用,甚至好多都是从示例照搬的qwq
from Preset.Model.PartBase import PartBase
from Preset.Model.GameObject import registerGenericClass
@registerGenericClass("UILogicPart")
class UILogicPart(PartBase):
def __init__(self):
PartBase.__init__(self)
# 零件名称
self.name = "空零件"
self.ep = ""
def InitClient(self):
import mod.client.extraClientApi as clientApi
ClientSystem = clientApi.GetSystem("Minecraft", "preset")
"""
@description 客户端的零件对象初始化入口
"""
PartBase.InitClient(self)
self.DefineEvent('openUI1')
self.ListenForEvent(clientApi.GetEngineNamespace(), clientApi.GetEngineSystemName(), "openUI1", self, self.UI1)
def UI1(self, args):
self.SetVisible(self.ep,True)
def InitServer(self):
import mod.server.extraServerApi as serverApi
serverSystem = serverApi.GetSystem("Minecraft", "preset")
serverSystem.ListenForEvent(serverApi.GetEngineNamespace(), serverApi.GetEngineSystemName(), "ServerChatEvent", self, self.OnServerChat)
"""
@description 服务端的零件对象初始化入口
"""
PartBase.InitServer(self)
def OnServerChat(self, args):
import mod.server.extraServerApi as serverApi
playerId = args["playerId"]
comp = serverApi.CreateComponent(playerId, "Minecraft", "item")
if args["message"] == "核弹":
self.NotifyToClient(playerId,"openUI1", args)
def TickClient(self):
"""
@description 客户端的零件对象逻辑驱动入口
"""
PartBase.TickClient(self)
def TickServer(self):
"""
@description 服务端的零件对象逻辑驱动入口
"""
PartBase.TickServer(self)
def DestroyClient(self):
"""
@description 客户端的零件对象销毁逻辑入口
"""
PartBase.DestroyClient(self)
def UnListenEvent(self):
# 取消自定义的事件
self.UnDefineEvent('openUI1')
def DestroyServer(self):
"""
@description 服务端的零件对象销毁逻辑入口
"""
PartBase.DestroyServer(self)
|
|