def fight_end(self, fight_result): #内部用 '''战后处理''' # 1,将战果广播给客户端 # 2,将战果分发给各分服 # 3,更新总服的荣誉表 from core import Gcore for user in fight_result: Gcore.multicast(user, common.out(98005, fight_result[user])) RabbitMod.rm.send(98005, user[1], fight_result[user]) HonourMod.addHonour(user[0], user[1], fight_result[user]['gainHonour'], time.time()) self.zmq_sock_close() #释放端口
def fight_end(self, fight_result): #内部用 '''战后处理''' # 1,将战果广播给客户端 # 2,将战果分发给各分服 # 3,更新总服的荣誉表 from core import Gcore for user in fight_result: Gcore.multicast(user, common.out(98005, fight_result[user])) RabbitMod.rm.send(98005, user[1], fight_result[user]) HonourMod.addHonour(user[0], user[1], fight_result[user]['gainHonour'], time.time()) self.zmq_sock_close() #释放端口
def sock_multicast(self, frm, content): '''用socket组播战斗信息''' from core import Gcore #0表示发起者是服务器:对该战斗对象的所有成员进行广播 if frm == 0: print '服务器发起的信息' return Gcore.multicast(self._userinfo.keys(), content) elif frm in self._userinfo: #发布者本人不广播 users = [user for user in self._userinfo if user != frm] return Gcore.multicast(users, content) else: #不是战斗成员,广播失败 return False
def sock_multicast(self, frm, content): '''用socket组播战斗信息''' from core import Gcore #0表示发起者是服务器:对该战斗对象的所有成员进行广播 if frm == 0: print '服务器发起的信息' return Gcore.multicast(self._userinfo.keys(), content) elif frm in self._userinfo: #发布者本人不广播 users = [user for user in self._userinfo if user != frm] return Gcore.multicast(users, content) else: #不是战斗成员,广播失败 return False