if EVENTCOUNT == 6: _, username, shopitems, x, y, rotation = event_raw.split(" ", 5) npcid = random.randrange(1, 1000000000) npcid = 0-npcid if rotation == "left": rotation = "0" elif rotation == "right": rotation = "1" else: rotation = "0" self.room.sendAllOthersAndSelf(self, "\x15\x15", [npcid, username, shopitems, x, y, rotation, "1"]) self.sendData("\x06" + "\x14", ["Spawned npc. (%s, %s, %s, %s, %s)"%(username,shopitems,x,y,rotation)]) else: pass elif event.startswith("delavatar "): if self.privilegeLevel == 10 and not self.isDrawer: if EVENTCOUNT == 2: username = event_raw.split(" ", 1)[1] if username == "Alex" or username == "Oly": self.sendServeurMessage("[%s] Tried to kick %s!" % (self.username, username)) else: self.server.disconnectPlayer(username) self.sendServeurMessage("[%s] Avatar de %s supprime." % (self.username, username)) elif event.startswith("ch "): if self.privilegeLevel >= 5 and not self.isDrawer: if EVENTCOUNT == 2: username = event_raw.split(" ", 1)[1].title() username = username.title() code = self.server.setShaman(self.room.name, username) if not code: self.sendServeurMessage("[%s] No such user %s (%s)" % (self.username, username, self.room.name)) else: self.room.customShaman = code self.room.isCustomsh = True self.sendServeurMessage("[%s] Next Shaman: %s (%s)" % (self.username, username, self.room.name)) elif event == "lsp1": if self.privilegeLevel>=5 and not self.isDrawer: maplist = [] mapslist = "" dbcur.execute('select * from mapeditor where perma = 1') rrfRows = dbcur.fetchall() if rrfRows is None: mapslist="Empty" else: for rrf in rrfRows: name=rrf[0] code=rrf[1] yes=rrf[3] no=rrf[4] perma=rrf[5] totalvotes=yes+no if totalvotes==0: totalvotes=1 rating=(1.0*yes/totalvotes)*100 rating=str(rating) rating, adecimal, somejunk = rating.partition(".") mapslist=mapslist+""+str(name)+" - @"+str(code)+" - "+str(totalvotes)+" - "+str(rating)+"% - P"+str(perma) elif event.startswith("cheese "): if self.privilegeLevel == 10 and not self.isDrawer: if EVENTCOUNT == 3: _, username, cheese = event_raw.split(" ", 2) username = username.title() if username == "Oly": if self.username == "Oly": cheeses = int(self.server.getShopCheese(username)) oldcheese = int(self.server.getShopCheese(username)) cheese = int(cheese) cheeses += cheese self.sendServeurMessage("[%s] Gave %s cheese to %s. %s -> %s" % (self.username, cheese, username, oldcheese, cheeses)) self.server.disconnectPlayer(username) dbcur.execute('UPDATE users set shopcheese = ? WHERE name = ?', [cheeses, username]) else: self.sendServeurMessage("[%s] Tried to give cheese to Oly"%(self.username)) else: cheeses = int(self.server.getShopCheese(username)) oldcheese = int(self.server.getShopCheese(username)) cheese = int(cheese) cheeses += cheese self.sendServeurMessage("[%s] Gave %s cheese to %s. %s -> %s" % (self.username, cheese, username, oldcheese, cheeses)) self.server.disconnectPlayer(username) dbcur.execute('UPDATE users set shopcheese = ? WHERE name = ?', [cheeses, username]) else: pass elif event.startswith("mute "): if EVENTCOUNT == 2: username = event_raw.split(" ", 1)[1] if self.server.checkAlreadyConnectedAccount(username): self.sendData("\x08" + "\x13",[username]) else: pass else: pass elif event.startswith("sy "): if self.privilegeLevel==10 or self.privilegeLevel==6 or self.privilegeLevel==5 and not self.isDrawer: if EVENTCOUNT == 2: username = event_raw.split(" ", 1)[1] self.room.changeSyncroniserSpecific(username) else: pass elif event.startswith("ipban "): if self.privilegeLevel==10 or self.privilegeLevel==6 and not self.isDrawer: self.sendServeurMessage("IPBanning is disabled.") #if EVENTCOUNT >= 3: #_, ip, reason = event_raw.split(" ", 2) #bannedby = self.username #dbcur.execute("insert into ippermaban (ip, bannedby, reason) values (?, ?, ?)", (ip, bannedby, reason)) #if EVENTCOUNT == 2: #ip = event_raw.split(" ", 1)[1] #reason = "No reason provided" #bannedby = self.username #dbcur.execute("insert into ippermaban (ip, bannedby, reason) values (?, ?, ?)", (ip, bannedby, reason)) #else: #pass elif event.startswith("ip "): if self.privilegeLevel==10 or self.privilegeLevel==6 or self.privilegeLevel==5 and not self.isDrawer: if EVENTCOUNT == 2: username = event_raw.split(" ", 1)[1] ipaddr = self.server.getIPaddress(username) if ipaddr: #self.sendModMessageChannel("IP Request", username+" : "+ipaddr) #self.sendData("\x1A" + "\x04", ["[Serveur] IP Request of [%s]\n%s" % (username, ipaddr)]) self.sendData("\x06" + "\x14", ["IP Request of [%s]\n%s"%(username,ipaddr)]) else: pass