# -*- coding: utf-8 -*-
from Preset.Model.PartBase import PartBase
from Preset.Model.GameObject import registerGenericClass
@registerGenericClass("NotifyTestPart")# 注册类到全局
class NotifyTestPart(PartBase):# 继承自PartBase
def __init__(self):
PartBase.__init__(self)
self.name = "通信测试"# 零件名称
def InitClient(self):# 客户端的零件对象初始化入口
self.ListenSelfEvent("ChatToClient", self, self.OnRecvChat)# 监听自定义事件
def OnRecvChat(self, args):# 自定义事件的回调函数
print "从服务端发来的聊天信息: {}".format(args["msg"])
def ServerChatEvent(self, args):# 服务端的自定义事件
message = args["message"]# 获取参数,这里是聊天信息
playerId = args["playerId"]# 获取参数,这里是玩家ID
self.NotifyToClient(playerId, "ChatToClient", {"msg": message})# 通知客户端,这里是从服务端发来的聊天信息
def InitServer(self):
"""
@description 服务端的零件对象初始化入口
"""
PartBase.InitServer(self)
def TickClient(self):
"""
@description 客户端的零件对象逻辑驱动入口
"""
PartBase.TickClient(self)
def TickServer(self):
"""
@description 服务端的零件对象逻辑驱动入口
"""
PartBase.TickServer(self)
def DestroyClient(self):
"""
@description 客户端的零件对象销毁逻辑入口
"""
PartBase.DestroyClient(self)
def DestroyServer(self):
"""
@description 服务端的零件对象销毁逻辑入口
"""
PartBase.DestroyServer(self)
客户端向服务器通信