本文整理汇总了Python中toontown.coghq.CogDisguiseGlobals.isSuitComplete方法的典型用法代码示例。如果您正苦于以下问题:Python CogDisguiseGlobals.isSuitComplete方法的具体用法?Python CogDisguiseGlobals.isSuitComplete怎么用?Python CogDisguiseGlobals.isSuitComplete使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类toontown.coghq.CogDisguiseGlobals
的用法示例。
在下文中一共展示了CogDisguiseGlobals.isSuitComplete方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: dbCallback
# 需要导入模块: from toontown.coghq import CogDisguiseGlobals [as 别名]
# 或者: from toontown.coghq.CogDisguiseGlobals import isSuitComplete [as 别名]
def dbCallback(dclass, fields, toonId=toonId, suitDeptIndex=suitDeptIndex):
if dclass != self.air.dclassesByName['DistributedToonAI']:
return
parts = fields['setCogParts'][0]
if CogDisguiseGlobals.isSuitComplete(parts, suitDeptIndex):
# Code from DistributedToonAI.loseCogParts:
loseCount = random.randrange(CogDisguiseGlobals.MinPartLoss,
CogDisguiseGlobals.MaxPartLoss+1)
partBitmask = parts[suitDeptIndex]
partList = range(17)
while loseCount > 0 and partList:
losePart = random.choice(partList)
partList.remove(losePart)
losePartBit = 1 << losePart
if partBitmask & losePartBit:
partBitmask &= ~losePartBit
loseCount -= 1
parts[suitDeptIndex] = partBitmask
# Update the cog parts in the db:
self.air.dbInterface.updateObject(
self.air.dbId, toonId,
self.air.dclassesByName['DistributedToonAI'],
{'setCogParts': (parts,)}
)
示例2: confirmJoinGroup
# 需要导入模块: from toontown.coghq import CogDisguiseGlobals [as 别名]
# 或者: from toontown.coghq.CogDisguiseGlobals import isSuitComplete [as 别名]
def confirmJoinGroup(self, groupId, buttonTuple):
doneStatus = self.joinDialog.doneStatus
self.joinDialog.cleanup()
del self.joinDialog
if doneStatus is not 'ok':
return
for gid in base.cr.groupManager.id2type.keys():
if base.cr.groupManager.isInGroup(base.localAvatar.doId, gid):
self.rejectGroup(4)
return
#if len(base.cr.groupManager.getGroupPlayers(groupId)) >= 8:
# self.rejectGroup(3)
# return
suitIdx = -1
gids = {10000:0, 11000:1, 12000:2, 13000:3}
suitIdx = gids.get(groupId)
if suitIdx is not None:
merits = base.localAvatar.cogMerits[suitIdx]
if CogDisguiseGlobals.getTotalMerits(base.localAvatar, suitIdx) > merits:
self.rejectGroup(2, suitIdx)
return
parts = base.localAvatar.getCogParts()
if not CogDisguiseGlobals.isSuitComplete(parts, suitIdx):
self.rejectGroup(1)
return
base.cr.groupManager.d_addPlayerToGroup(groupId, base.localAvatar.doId)
self.currentGroupJoined = groupId
try:
place = base.cr.playGame.getPlace()
except:
try:
place = base.cr.playGame.hood.loader.place
except:
place = base.cr.playGame.hood.place
place.requestTeleport(groupId, groupId, base.localAvatar.defaultShard, -1)
示例3: update
# 需要导入模块: from toontown.coghq import CogDisguiseGlobals [as 别名]
# 或者: from toontown.coghq.CogDisguiseGlobals import isSuitComplete [as 别名]
def update(self):
if not CogDisguiseGlobals.isSuitComplete(base.localAvatar.cogParts, self.deptIndex):
self.progressBar['text'] = '%s %s' % (
CogDisguiseGlobals.getPartCountAsString(base.localAvatar.cogParts, self.deptIndex),
TTLocalizer.DisguiseParts)
self.progressBar['range'] = CogDisguiseGlobals.PartsPerSuit[self.deptIndex]
self.progressBar['value'] = CogDisguiseGlobals.getPartCount(base.localAvatar.cogParts, self.deptIndex)
return
promoStatus = base.localAvatar.promotionStatus[self.deptIndex]
if promoStatus != ToontownGlobals.PendingPromotion:
totalMerits = CogDisguiseGlobals.getTotalMerits(base.localAvatar, self.deptIndex)
merits = base.localAvatar.cogMerits[self.deptIndex]
self.progressBar['range'] = totalMerits
self.progressBar['value'] = merits
self.progressBar['text'] = '%s/%s %s' % (
merits, totalMerits, TTLocalizer.RewardPanelMeritBarLabels[self.deptIndex])
else:
self.progressBar['range'] = 1
self.progressBar['value'] = 1
maxSuitLevel = (SuitDNA.levelsPerSuit - 1) + (SuitDNA.suitsPerDept - 1)
if base.localAvatar.cogLevels[self.deptIndex] == maxSuitLevel:
self.progressBar['text'] = TTLocalizer.RewardPanelMeritsMaxed
else:
self.progressBar['text'] = TTLocalizer.RewardPanelPromotionPending
示例4: updateMeritBars
# 需要导入模块: from toontown.coghq import CogDisguiseGlobals [as 别名]
# 或者: from toontown.coghq.CogDisguiseGlobals import isSuitComplete [as 别名]
def updateMeritBars(self):
if not self.meritBars:
return
for i in xrange(len(self.meritBars)):
meritBar = self.meritBars[i]
if CogDisguiseGlobals.isSuitComplete(base.localAvatar.cogParts, i):
meritBar.show()
totalMerits = CogDisguiseGlobals.getTotalMerits(base.localAvatar, i)
merits = base.localAvatar.cogMerits[i]
if totalMerits:
meritBar['range'] = totalMerits
meritBar['value'] = merits
if merits == totalMerits:
meritBar['text'] = TTLocalizer.RewardPanelMeritAlert
else:
meritBar['text'] = '%s/%s %s' % (merits, totalMerits, TTLocalizer.RewardPanelMeritBarLabels[i])
else:
meritBar['range'] = 1
meritBar['value'] = 1
meritBar['text'] = TTLocalizer.RewardPanelMeritsMaxed
else:
meritBar.hide()
示例5: recoverMerits
# 需要导入模块: from toontown.coghq import CogDisguiseGlobals [as 别名]
# 或者: from toontown.coghq.CogDisguiseGlobals import isSuitComplete [as 别名]
def recoverMerits(self, av, cogList, zoneId, multiplier = 1, extraMerits = None):
avId = av.getDoId()
meritsRecovered = [0, 0, 0, 0]
if extraMerits is None:
extraMerits = [0, 0, 0, 0]
if self.air.suitInvasionManager.getInvading():
multiplier *= getInvasionMultiplier()
for i in xrange(len(extraMerits)):
if CogDisguiseGlobals.isSuitComplete(av.getCogParts(), i):
meritsRecovered[i] += extraMerits[i]
self.notify.debug('recoverMerits: extra merits = %s' % extraMerits[i])
self.notify.debug('recoverMerits: multiplier = %s' % multiplier)
for cogDict in cogList:
dept = SuitDNA.suitDepts.index(cogDict['track'])
if avId in cogDict['activeToons']:
if CogDisguiseGlobals.isSuitComplete(av.getCogParts(), SuitDNA.suitDepts.index(cogDict['track'])):
self.notify.debug('recoverMerits: checking against cogDict: %s' % cogDict)
rand = random.random() * 100
if rand <= self.getPercentChance() and not cogDict['isVirtual']:
merits = cogDict['level'] * MeritMultiplier
merits = int(round(merits))
if cogDict['hasRevives']:
merits *= 2
merits = merits * multiplier
merits = int(round(merits))
meritsRecovered[dept] += merits
self.notify.debug('recoverMerits: merits = %s' % merits)
else:
self.notify.debug('recoverMerits: virtual cog!')
if meritsRecovered != [0, 0, 0, 0]:
actualCounted = [0, 0, 0, 0]
merits = av.getCogMerits()
for i in xrange(len(meritsRecovered)):
max = CogDisguiseGlobals.getTotalMerits(av, i)
if max:
if merits[i] + meritsRecovered[i] <= max:
actualCounted[i] = meritsRecovered[i]
merits[i] += meritsRecovered[i]
else:
actualCounted[i] = max - merits[i]
merits[i] = max
av.b_setCogMerits(merits)
if reduce(lambda x, y: x + y, actualCounted):
self.air.writeServerEvent('merits', avId, '%s|%s|%s|%s' % tuple(actualCounted))
self.notify.debug('recoverMerits: av %s recovered merits %s' % (avId, actualCounted))
return meritsRecovered
示例6: changeMeritBars
# 需要导入模块: from toontown.coghq import CogDisguiseGlobals [as 别名]
# 或者: from toontown.coghq.CogDisguiseGlobals import isSuitComplete [as 别名]
def changeMeritBars(self, hide):
if not self.meritBars:
return
for i in xrange(len(self.meritBars)):
meritBar = self.meritBars[i]
if CogDisguiseGlobals.isSuitComplete(base.localAvatar.cogParts, i):
meritBar.hide() if hide else meritBar.show()
else:
meritBar.hide()
示例7: removeParts
# 需要导入模块: from toontown.coghq import CogDisguiseGlobals [as 别名]
# 或者: from toontown.coghq.CogDisguiseGlobals import isSuitComplete [as 别名]
def removeParts(self, toonId, suitDeptIndex):
toon = self.air.doId2do.get(toonId)
# Check if the toon is in our doId2do:
if toon is not None:
parts = toon.getCogParts()
if CogDisguiseGlobals.isSuitComplete(parts, suitDeptIndex):
toon.loseCogParts(suitDeptIndex)
def dbCallback(dclass, fields, toonId=toonId, suitDeptIndex=suitDeptIndex):
if dclass != self.air.dclassesByName['DistributedToonAI']:
return
parts = fields['setCogParts'][0]
if CogDisguiseGlobals.isSuitComplete(parts, suitDeptIndex):
# Code from DistributedToonAI.loseCogParts:
loseCount = random.randrange(CogDisguiseGlobals.MinPartLoss,
CogDisguiseGlobals.MaxPartLoss+1)
partBitmask = parts[suitDeptIndex]
partList = range(17)
while loseCount > 0 and partList:
losePart = random.choice(partList)
partList.remove(losePart)
losePartBit = 1 << losePart
if partBitmask & losePartBit:
partBitmask &= ~losePartBit
loseCount -= 1
parts[suitDeptIndex] = partBitmask
# Update the cog parts in the db:
self.air.dbInterface.updateObject(
self.air.dbId, toonId,
self.air.dclassesByName['DistributedToonAI'],
{'setCogParts': (parts,)}
)
# It doesn't look like the toon was in our doId2do. Lets query the db:
self.air.dbInterface.queryObject(self.air.dbId, toonId, dbCallback)
示例8: recoverMerits
# 需要导入模块: from toontown.coghq import CogDisguiseGlobals [as 别名]
# 或者: from toontown.coghq.CogDisguiseGlobals import isSuitComplete [as 别名]
def recoverMerits(self, toon, suitsKilled, zoneId, mult = 1, extraMerits = None):
if 1: #extraMerits is None:
extraMerits = [0, 0, 0, 0]
#else:
# extraMerits = [0, extraMerits, 0, 0]
# to do: figure out which track we should add extra merits to (check zoneId?)
amounts = {x: y for x, y in zip(SuitDNA.suitDepts, extraMerits)}
parts = toon.getCogParts()
# calc
for suit in suitsKilled:
if suit['isVirtual']:
continue
track, level = suit['track'], suit['level']
deptIdx = SuitDNA.suitDepts.index(track)
if not CogDisguiseGlobals.isSuitComplete(parts, deptIdx):
continue
mult = (2 if self.air.suitInvasionManager.hasInvading() else 1)
mult *= int(suit['hasRevives']) + 1
amount = int((level + 1) / 2 * mult) * mult
amounts[track] += amount
merits = toon.getCogMerits()
am2 = [0, 0, 0, 0]
for dept, value in amounts.items():
dept = SuitDNA.suitDepts.index(dept)
needed = max(0, CogDisguiseGlobals.getTotalMerits(toon, dept) - merits[dept])
am2[dept] = min(needed, value)
# apply
toon.b_setCogMerits([x + y for x, y in zip(merits, am2)])
return am2
示例9: initGagFrame
# 需要导入模块: from toontown.coghq import CogDisguiseGlobals [as 别名]
# 或者: from toontown.coghq.CogDisguiseGlobals import isSuitComplete [as 别名]
def initGagFrame(self, toon, expList, meritList, noSkip = False):
self.avNameLabel['text'] = toon.getName()
self.endTrackFrame.hide()
self.gagExpFrame.show()
self.newGagFrame.hide()
self.promotionFrame.hide()
self.questFrame.hide()
self.itemFrame.hide()
self.cogPartFrame.hide()
self.missedItemFrame.hide()
trackBarOffset = 0
self.skipButton['state'] = choice(noSkip, DGG.DISABLED, DGG.NORMAL)
for i in xrange(len(SuitDNA.suitDepts)):
meritBar = self.meritBars[i]
meritLabel = self.meritLabels[i]
totalMerits = CogDisguiseGlobals.getTotalMerits(toon, i)
merits = meritList[i]
self.meritIncLabels[i].hide()
if CogDisguiseGlobals.isSuitComplete(toon.cogParts, i):
if not self.trackBarsOffset:
trackBarOffset = 0.47
self.trackBarsOffset = 1
meritBar.show()
meritLabel.show()
meritLabel.show()
if totalMerits:
meritBar['range'] = totalMerits
meritBar['value'] = merits
if merits == totalMerits:
meritBar['text'] = TTLocalizer.RewardPanelMeritAlert
else:
meritBar['text'] = '%s/%s %s' % (merits, totalMerits, TTLocalizer.RewardPanelMeritBarLabels[i])
else:
meritBar['range'] = 1
meritBar['value'] = 1
meritBar['text'] = TTLocalizer.RewardPanelMeritsMaxed
self.resetMeritBarColor(i)
else:
meritBar.hide()
meritLabel.hide()
for i in xrange(len(expList)):
curExp = expList[i]
trackBar = self.trackBars[i]
trackLabel = self.trackLabels[i]
trackIncLabel = self.trackIncLabels[i]
trackBar.setX(trackBar.getX() - trackBarOffset)
trackLabel.setX(trackLabel.getX() - trackBarOffset)
trackIncLabel.setX(trackIncLabel.getX() - trackBarOffset)
trackIncLabel.hide()
if toon.hasTrackAccess(i):
trackBar.show()
if curExp >= ToontownBattleGlobals.UnpaidMaxSkills[i] and toon.getGameAccess() != OTPGlobals.AccessFull:
nextExp = self.getNextExpValue(curExp, i)
trackBar['range'] = nextExp
trackBar['value'] = ToontownBattleGlobals.UnpaidMaxSkills[i]
trackBar['text'] = TTLocalizer.InventoryGuestExp
elif curExp >= ToontownBattleGlobals.regMaxSkill:
nextExp = self.getNextExpValueUber(curExp, i)
trackBar['range'] = nextExp
uberCurrExp = curExp - ToontownBattleGlobals.regMaxSkill
trackBar['value'] = uberCurrExp
trackBar['text'] = TTLocalizer.InventoryUberTrackExp % {'nextExp': ToontownBattleGlobals.MaxSkill - curExp}
else:
nextExp = self.getNextExpValue(curExp, i)
trackBar['range'] = nextExp
trackBar['value'] = curExp
trackBar['text'] = '%s/%s' % (curExp, nextExp)
self.resetBarColor(i)
else:
trackBar.hide()
示例10: removeParts
# 需要导入模块: from toontown.coghq import CogDisguiseGlobals [as 别名]
# 或者: from toontown.coghq.CogDisguiseGlobals import isSuitComplete [as 别名]
def removeParts(self, toon, suitDept):
parts = toon.getCogParts()
if CogDisguiseGlobals.isSuitComplete(parts, suitDept):
toon.loseCogParts(suitDept)