coghq: fix some cfo crashes
This commit is contained in:
parent
5b4e7b74bd
commit
fa710cfd80
3 changed files with 7 additions and 3 deletions
|
@ -1,5 +1,6 @@
|
||||||
from direct.gui.DirectGui import *
|
from direct.gui.DirectGui import *
|
||||||
from pandac.PandaModules import *
|
from pandac.PandaModules import *
|
||||||
|
from libotp import *
|
||||||
from direct.interval.IntervalGlobal import *
|
from direct.interval.IntervalGlobal import *
|
||||||
from direct.distributed.ClockDelta import *
|
from direct.distributed.ClockDelta import *
|
||||||
from direct.fsm import FSM
|
from direct.fsm import FSM
|
||||||
|
|
|
@ -19,8 +19,10 @@ from toontown.distributed import DelayDelete
|
||||||
from toontown.chat import ResistanceChat
|
from toontown.chat import ResistanceChat
|
||||||
from toontown.coghq import CogDisguiseGlobals
|
from toontown.coghq import CogDisguiseGlobals
|
||||||
from pandac.PandaModules import *
|
from pandac.PandaModules import *
|
||||||
|
from libotp import *
|
||||||
import random
|
import random
|
||||||
import math
|
import math
|
||||||
|
import functools
|
||||||
OneBossCog = None
|
OneBossCog = None
|
||||||
TTL = TTLocalizer
|
TTL = TTLocalizer
|
||||||
|
|
||||||
|
@ -44,7 +46,7 @@ class DistributedCashbotBoss(DistributedBossCog.DistributedBossCog, FSM.FSM):
|
||||||
def announceGenerate(self):
|
def announceGenerate(self):
|
||||||
DistributedBossCog.DistributedBossCog.announceGenerate(self)
|
DistributedBossCog.DistributedBossCog.announceGenerate(self)
|
||||||
self.setName(TTLocalizer.CashbotBossName)
|
self.setName(TTLocalizer.CashbotBossName)
|
||||||
nameInfo = TTLocalizer.BossCogNameWithDept % {'name': self.name,
|
nameInfo = TTLocalizer.BossCogNameWithDept % {'name': self._name,
|
||||||
'dept': SuitDNA.getDeptFullname(self.style.dept)}
|
'dept': SuitDNA.getDeptFullname(self.style.dept)}
|
||||||
self.setDisplayName(nameInfo)
|
self.setDisplayName(nameInfo)
|
||||||
target = CollisionSphere(2, 0, 0, 3)
|
target = CollisionSphere(2, 0, 0, 3)
|
||||||
|
@ -244,7 +246,7 @@ class DistributedCashbotBoss(DistributedBossCog.DistributedBossCog, FSM.FSM):
|
||||||
|
|
||||||
newCollisionNode.setIntoCollideMask(newCollideMask)
|
newCollisionNode.setIntoCollideMask(newCollideMask)
|
||||||
threshold = 0.1
|
threshold = 0.1
|
||||||
planes.sort(lambda p1, p2: p1.compareTo(p2, threshold))
|
planes.sort(key=functools.cmp_to_key(lambda p1, p2: p1.compareTo(p2, threshold)))
|
||||||
lastPlane = None
|
lastPlane = None
|
||||||
for plane in planes:
|
for plane in planes:
|
||||||
if lastPlane == None or plane.compareTo(lastPlane, threshold) != 0:
|
if lastPlane == None or plane.compareTo(lastPlane, threshold) != 0:
|
||||||
|
|
|
@ -10,6 +10,7 @@ from toontown.chat import ResistanceChat
|
||||||
from direct.fsm import FSM
|
from direct.fsm import FSM
|
||||||
from toontown.suit import DistributedBossCogAI
|
from toontown.suit import DistributedBossCogAI
|
||||||
import random, math
|
import random, math
|
||||||
|
import functools
|
||||||
|
|
||||||
class DistributedCashbotBossAI(DistributedBossCogAI.DistributedBossCogAI, FSM.FSM):
|
class DistributedCashbotBossAI(DistributedBossCogAI.DistributedBossCogAI, FSM.FSM):
|
||||||
notify = DirectNotifyGlobal.directNotify.newCategory('DistributedCashbotBossAI')
|
notify = DirectNotifyGlobal.directNotify.newCategory('DistributedCashbotBossAI')
|
||||||
|
@ -69,7 +70,7 @@ class DistributedCashbotBossAI(DistributedBossCogAI.DistributedBossCogAI, FSM.FS
|
||||||
def compareJoinChance(a, b):
|
def compareJoinChance(a, b):
|
||||||
return cmp(a[1], b[1])
|
return cmp(a[1], b[1])
|
||||||
|
|
||||||
reserveSuits.sort(compareJoinChance)
|
reserveSuits.sort(key=functools.cmp_to_key(compareJoinChance))
|
||||||
return {'activeSuits': activeSuits, 'reserveSuits': reserveSuits}
|
return {'activeSuits': activeSuits, 'reserveSuits': reserveSuits}
|
||||||
|
|
||||||
def removeToon(self, avId):
|
def removeToon(self, avId):
|
||||||
|
|
Loading…
Reference in a new issue