def sendShamanSkills(this, newBoolean): p = ByteArray().writeByte(len(this.client.playerSkills)) for skill in this.client.playerSkills.items(): p.writeUnsignedByte(skill[0]).writeUnsignedByte( 5 if this.client.playerSkills[skill[0]] >= 6 else skill[1]) this.client.sendPacket(Identifiers.send.Shaman_Skills, p.writeBoolean(newBoolean).toByteArray())
def openModoPwet(this): if len(this.server.reports["names"]) <= 0: this.client.sendPacket(Identifiers.send.Modopwet_Open, 0) else: reports, reporters, count, bannedList, deletedList, disconnectList = 0, 0, 0, {}, {}, [] totalReports = len(this.server.reports["names"]) packet = ByteArray() while reports < totalReports: playerName = this.server.reports["names"][reports] totalReporters = len(this.server.reports[playerName]["types"]) reports += 1 if this.client.modoPwetLangue == "ALL" or this.server.reports[ playerName][ "langue"] == this.client.modoPwetLangue.upper(): count += 1 if count >= 255: break packet.writeUnsignedByte(count).writeUTF( this.server.reports[playerName] ["langue"].upper()).writeUTF(playerName).writeUTF( this.getPlayerRoomName(playerName)).writeInt( this.getProfileCheeseCount(playerName)) packet.writeUnsignedByte(totalReporters) while reporters < totalReporters: packet.writeUTF( this.server.reports[playerName]["reporters"] [reporters]).writeShort( this.getProfileCheeseCount( this.server.reports[playerName] ["reporters"][reporters]) ).writeUTF( this.server.reports[playerName]["comments"] [reporters]).writeUnsignedByte( this.server.reports[playerName]["types"] [reporters]).writeShort(reporters) reporters += 1 if this.server.reports[playerName]["status"] == "banned": x = {} x["banhours"] = this.server.reports[playerName][ "banhours"] x["banreason"] = this.server.reports[playerName][ "banreason"] x["bannedby"] = this.server.reports[playerName][ "bannedby"] bannedList[playerName] = x if this.server.reports[playerName]["status"] == "deleted": x = {} x["deletedby"] = this.server.reports[playerName][ "deletedby"] deletedList[playerName] = x if this.server.reports[playerName][ "status"] == "disconnected": disconnectList.append(playerName) this.client.sendPacket( Identifiers.send.Modopwet_Open, ByteArray().writeUnsignedByte(count).writeBytes( packet.toByteArray()).toByteArray()) for user in disconnectList: this.changeReportStatusDisconnect(user) for user in deletedList.keys(): this.changeReportStatusDeleted(user, deletedList[user]["deletedby"]) for user in bannedList.keys(): this.changeReportStatusBanned(user, bannedList[user]["banhours"], bannedList[user]["banreason"], bannedList[user]["bannedby"])