查看: 226|回复: 4
打印 上一主题 下一主题

[求助] MOD SDK开发问题求助

[复制链接]

40

主题

74

回帖

69

积分

Lv.3 矿物能手

UID
8416692
小麦
0
金锭
126
下界之星
0
跳转到指定楼层
楼主
发表于 2024-1-24 16:17:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式 IP:广东
3金锭
问题大体:我做了一个UI,按照教程里面注册,创建UI,但是UI并没在游戏中正常显示。于是乎我就加了许多logger.info来调试代码,嘿您猜怎么着,客户端init的输出都给他吞了。代码见下,谁能帮我看看QWQ
# -*- coding: utf-8 -*-
import mod.client.extraClientApi as clientApi
ClientSystem = clientApi.GetClientSystemCls()
from modCommon.modConfig import ModName,ModVersion,ServerSystemName,ServerSystemClsPath,ClientSystemName,ClientSystemClsPath,MarkpointUIName,MarkpointUIPyClsPath,MarkpointUIScreenDef
from mod_log import logger as logger
namespace = clientApi.GetEngineNamespace()
system_name = clientApi.GetEngineSystemName()
class MarkpointClientSystem(ClientSystem):
   
def __init__(self,namespace,system_name):
        
super(MarkpointClientSystem, self).__init__(self,namespace,system_name)
        logger.info(
"=====Init MarkpointClientSystem=====")# 这里这个根本没有输出!
        
self.ListenEvent()

   
def ListenEvent(self):
        
self.ListenForEvent(namespace, system_name, 'UiInitFinished', self, self.OnUiInitFinished)

   
def UnListenEvent(self):
        
self.UnListenForEvent(namespace, system_name, 'UiInitFinished', self, self.OnUiInitFinished)

   
def OnUiInitFinished(self, args):
        logger.info(
"=====UIInitFinished=====")
        clientApi.RegisterUI(ModName, MarkpointUIName, MarkpointUIPyClsPath, MarkpointUIScreenDef)
        logger.info(
"=====UI Registered Successfully=====")
        
self.mMarkpointUINode = clientApi.CreateUI(ModName, MarkpointUIName,{})
        
if self.mMarkpointUINode:
            logger.info(
"=====Markpoint UI Node Created=====")
            
self.mMarkpointUINode.Init()
        
else:
            logger.error(
"=====Markpoint UI Node Failed to Get=====")

   
def Destroy(self):
        logger.info(
"=====Destroy MarkpointClientSystem=====")
        
self.UnListenEvent()球球各位大佬帮我看看,主要是我没看到什么错误,UI方法应该是对的但是疑惑的点在于这个客户端代码都没有被执行……跟其他代码有关系吗(比如modMain?


最佳答案

查看完整内容

ui脚本文件名、类名、ui名好像有要求是要一致的 检查下RegisterUI的参数有没有传对,MarkpointUIScreenDef是什么,这里应该是要指向ui的根节点,例如新建的ui0,好像就是ui0.main

13

主题

501

回帖

145

积分

Lv.4 怪物猎人

UID
7945930
小麦
0
金锭
422
下界之星
0
沙发
发表于 2024-1-24 16:17:22 | 只看该作者 IP:广东
ui脚本文件名、类名、ui名好像有要求是要一致的
检查下RegisterUI的参数有没有传对,MarkpointUIScreenDef是什么,这里应该是要指向ui的根节点,例如新建的ui0,好像就是ui0.main

40

主题

74

回帖

69

积分

Lv.3 矿物能手

UID
8416692
小麦
0
金锭
126
下界之星
0
板凳
 楼主| 发表于 2024-1-24 16:20:54 | 只看该作者 IP:广东
上面的太刺眼了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

40

主题

74

回帖

69

积分

Lv.3 矿物能手

UID
8416692
小麦
0
金锭
126
下界之星
0
地板
 楼主| 发表于 2024-2-2 11:04:44 | 只看该作者 IP:湖南
locgy 发表于 2024-1-30 18:27 广东
ui脚本文件名、类名、ui名好像有要求是要一致的
检查下RegisterUI的参数有没有传对,MarkpointUIScreenDef ...

呃呃这个是对的,问题是客户端init里面调试输出都没有出现,是不是说明整个客户端都没有被运行?我怀疑是什么bug而不是我的代码问题

40

主题

74

回帖

69

积分

Lv.3 矿物能手

UID
8416692
小麦
0
金锭
126
下界之星
0
地下室
 楼主| 发表于 2024-2-4 13:31:40 | 只看该作者 IP:广东
locgy 发表于 2024-1-30 18:27 广东
ui脚本文件名、类名、ui名好像有要求是要一致的
检查下RegisterUI的参数有没有传对,MarkpointUIScreenDef ...

哎我* 才发现modmain没注册系统 服了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

返回顶部