Add !mp size
This commit is contained in:
parent
9f647d5f9e
commit
310bc1d3b3
|
@ -9,7 +9,7 @@ from common import generalUtils
|
|||
from common.constants import mods
|
||||
from common.log import logUtils as log
|
||||
from common.ripple import userUtils
|
||||
from constants import exceptions
|
||||
from constants import exceptions, slotStatuses
|
||||
from common.constants import gameModes
|
||||
from common.constants import privileges
|
||||
from constants import serverPackets
|
||||
|
@ -777,7 +777,7 @@ def multiplayer(fro, chan, message):
|
|||
|
||||
def mpJoin():
|
||||
if len(message) < 2 or not message[1].isdigit():
|
||||
return exceptions.invalidArgumentsException("Wrong syntax: !mp join <id>")
|
||||
raise exceptions.invalidArgumentsException("Wrong syntax: !mp join <id>")
|
||||
matchID = int(message[1])
|
||||
userToken = glob.tokens.getTokenFromUsername(fro, ignoreIRC=True)
|
||||
userToken.joinMatch(matchID)
|
||||
|
@ -800,13 +800,27 @@ def multiplayer(fro, chan, message):
|
|||
glob.matches.matches[matchID].isLocked = False
|
||||
return "This match has been unlocked"
|
||||
|
||||
def mpSize():
|
||||
if len(message) < 2 or not message[1].isdigit() or int(message[1]) < 1 or int(message[1]) > 16:
|
||||
raise exceptions.invalidArgumentsException("Wrong syntax: !mp size <slots(1-16)>")
|
||||
matchSize = int(message[1])
|
||||
_match = glob.matches.matches[getMatchIDFromChannel(chan)]
|
||||
for i in range(0, matchSize):
|
||||
if _match.slots[i].status == slotStatuses.LOCKED:
|
||||
_match.toggleSlotLocked(i)
|
||||
for i in range(matchSize, 16):
|
||||
if _match.slots[i].status != slotStatuses.LOCKED:
|
||||
_match.toggleSlotLocked(i)
|
||||
return "Match size changed to {}".format(matchSize)
|
||||
|
||||
try:
|
||||
subcommands = {
|
||||
"make": mpMake,
|
||||
"clear": mpClose,
|
||||
"join": mpJoin,
|
||||
"lock": mpLock,
|
||||
"unlock": mpUnlock
|
||||
"unlock": mpUnlock,
|
||||
"size": mpSize,
|
||||
}
|
||||
requestedSubcommand = message[0].lower().strip()
|
||||
if requestedSubcommand not in subcommands:
|
||||
|
|
|
@ -24,4 +24,4 @@ def handle(userToken, packetData):
|
|||
return
|
||||
|
||||
# Lock/Unlock slot
|
||||
match.toggleSlotLock(packetData["slotID"])
|
||||
match.toggleSlotLocked(packetData["slotID"])
|
||||
|
|
|
@ -215,7 +215,7 @@ class match:
|
|||
self.sendUpdates()
|
||||
log.info("MPROOM{}: Slot{} changed ready status to {}".format(self.matchID, slotID, self.slots[slotID].status))
|
||||
|
||||
def toggleSlotLock(self, slotID):
|
||||
def toggleSlotLocked(self, slotID):
|
||||
"""
|
||||
Lock a slot
|
||||
Same as calling setSlot and then sendUpdate
|
||||
|
|
Loading…
Reference in New Issue
Block a user