mirror of
https://github.com/Sneed-Group/Poodletooth-iLand
synced 2024-12-23 11:42:39 -06:00
1704 lines
29 KiB
Python
1704 lines
29 KiB
Python
|
import TTLocalizer
|
||
|
from otp.otpbase.OTPGlobals import *
|
||
|
from direct.showbase.PythonUtil import Enum, invertDict
|
||
|
from pandac.PandaModules import BitMask32, Vec4
|
||
|
MapHotkey = 'alt'
|
||
|
CogHQCameraFov = 60.0
|
||
|
BossBattleCameraFov = 72.0
|
||
|
MakeAToonCameraFov = 48.0
|
||
|
CogdoFov = 56.9
|
||
|
VPElevatorFov = 53.0
|
||
|
CFOElevatorFov = 43.0
|
||
|
CJElevatorFov = 59.0
|
||
|
CEOElevatorFov = 59.0
|
||
|
CBElevatorFov = 42.0
|
||
|
CeilingBitmask = BitMask32(256)
|
||
|
FloorEventBitmask = BitMask32(16)
|
||
|
PieBitmask = BitMask32(256)
|
||
|
PetBitmask = BitMask32(8)
|
||
|
CatchGameBitmask = BitMask32(16)
|
||
|
CashbotBossObjectBitmask = BitMask32(16)
|
||
|
FurnitureSideBitmask = BitMask32(32)
|
||
|
FurnitureTopBitmask = BitMask32(64)
|
||
|
FurnitureDragBitmask = BitMask32(128)
|
||
|
PetLookatPetBitmask = BitMask32(256)
|
||
|
PetLookatNonPetBitmask = BitMask32(512)
|
||
|
BanquetTableBitmask = BitMask32(1024)
|
||
|
FullPies = 65535
|
||
|
CogHQCameraFar = 900.0
|
||
|
CogHQCameraNear = 1.0
|
||
|
CashbotHQCameraFar = 2000.0
|
||
|
CashbotHQCameraNear = 1.0
|
||
|
LawbotHQCameraFar = 3000.0
|
||
|
LawbotHQCameraNear = 1.0
|
||
|
BossbotHQCameraFar = 3000.0
|
||
|
BossbotHQCameraNear = 1.0
|
||
|
SpeedwayCameraFar = 8000.0
|
||
|
SpeedwayCameraNear = 1.0
|
||
|
MaxMailboxContents = 60
|
||
|
MaxHouseItems = 250
|
||
|
MaxAccessories = 100
|
||
|
ExtraDeletedItems = 5
|
||
|
DeletedItemLifetime = 7 * 24 * 60
|
||
|
CatalogNumWeeksPerSeries = 13
|
||
|
CatalogNumWeeks = 78
|
||
|
PetFloorCollPriority = 5
|
||
|
PetPanelProximityPriority = 6
|
||
|
P_TooFast = -28
|
||
|
P_AlreadyOwnBiggerCloset = -27
|
||
|
P_ItemAlreadyRented = -26
|
||
|
P_OnAwardOrderListFull = -25
|
||
|
P_AwardMailboxFull = -24
|
||
|
P_ItemInPetTricks = -23
|
||
|
P_ItemInMyPhrases = -22
|
||
|
P_ItemOnAwardOrder = -21
|
||
|
P_ItemInAwardMailbox = -20
|
||
|
P_ItemAlreadyWorn = -19
|
||
|
P_ItemInCloset = -18
|
||
|
P_ItemOnGiftOrder = -17
|
||
|
P_ItemOnOrder = -16
|
||
|
P_ItemInMailbox = -15
|
||
|
P_PartyNotFound = 14
|
||
|
P_WillNotFit = -13
|
||
|
P_NotAGift = -12
|
||
|
P_OnOrderListFull = -11
|
||
|
P_MailboxFull = -10
|
||
|
P_NoPurchaseMethod = -9
|
||
|
P_ReachedPurchaseLimit = -8
|
||
|
P_NoRoomForItem = -7
|
||
|
P_NotShopping = -6
|
||
|
P_NotAtMailbox = -5
|
||
|
P_NotInCatalog = -4
|
||
|
P_NotEnoughMoney = -3
|
||
|
P_InvalidIndex = -2
|
||
|
P_UserCancelled = -1
|
||
|
P_ItemAvailable = 1
|
||
|
P_ItemOnOrder = 2
|
||
|
P_ItemUnneeded = 3
|
||
|
GIFT_user = 0
|
||
|
GIFT_admin = 1
|
||
|
GIFT_RAT = 2
|
||
|
GIFT_mobile = 3
|
||
|
GIFT_cogs = 4
|
||
|
GIFT_partyrefund = 5
|
||
|
FM_InvalidItem = -7
|
||
|
FM_NondeletableItem = -6
|
||
|
FM_InvalidIndex = -5
|
||
|
FM_NotOwner = -4
|
||
|
FM_NotDirector = -3
|
||
|
FM_RoomFull = -2
|
||
|
FM_HouseFull = -1
|
||
|
FM_MovedItem = 1
|
||
|
FM_SwappedItem = 2
|
||
|
FM_DeletedItem = 3
|
||
|
FM_RecoveredItem = 4
|
||
|
SPDonaldsBoat = 3
|
||
|
SPMinniesPiano = 4
|
||
|
CEVirtual = 14
|
||
|
MaxHpLimit = 137
|
||
|
MaxCarryLimit = 80
|
||
|
MaxQuestCarryLimit = 4
|
||
|
GravityValue = 32.174
|
||
|
MaxCogSuitLevel = 50 - 1
|
||
|
CogSuitHPLevels = (15 - 1,
|
||
|
20 - 1,
|
||
|
30 - 1,
|
||
|
40 - 1,
|
||
|
50 - 1)
|
||
|
setInterfaceFont(TTLocalizer.InterfaceFont)
|
||
|
setSignFont(TTLocalizer.SignFont)
|
||
|
from toontown.toontowngui import TTDialog
|
||
|
setDialogClasses(TTDialog.TTDialog, TTDialog.TTGlobalDialog)
|
||
|
ToonFont = None
|
||
|
BuildingNametagFont = None
|
||
|
MinnieFont = None
|
||
|
SuitFont = None
|
||
|
|
||
|
def getToonFont():
|
||
|
global ToonFont
|
||
|
if ToonFont == None:
|
||
|
ToonFont = loader.loadFont(TTLocalizer.ToonFont, lineHeight=1.0)
|
||
|
return ToonFont
|
||
|
|
||
|
|
||
|
def getBuildingNametagFont():
|
||
|
global BuildingNametagFont
|
||
|
if BuildingNametagFont == None:
|
||
|
BuildingNametagFont = loader.loadFont(TTLocalizer.BuildingNametagFont)
|
||
|
return BuildingNametagFont
|
||
|
|
||
|
|
||
|
def getMinnieFont():
|
||
|
global MinnieFont
|
||
|
if MinnieFont == None:
|
||
|
MinnieFont = loader.loadFont(TTLocalizer.MinnieFont)
|
||
|
return MinnieFont
|
||
|
|
||
|
|
||
|
def getSuitFont():
|
||
|
global SuitFont
|
||
|
if SuitFont == None:
|
||
|
SuitFont = loader.loadFont(TTLocalizer.SuitFont, pixelsPerUnit=40, spaceAdvance=0.25, lineHeight=1.0)
|
||
|
return SuitFont
|
||
|
|
||
|
|
||
|
DonaldsDock = 1000
|
||
|
ToontownCentral = 2000
|
||
|
TheBrrrgh = 3000
|
||
|
MinniesMelodyland = 4000
|
||
|
DaisyGardens = 5000
|
||
|
OutdoorZone = 6000
|
||
|
FunnyFarm = 7000
|
||
|
GoofySpeedway = 8000
|
||
|
DonaldsDreamland = 9000
|
||
|
BarnacleBoulevard = 1100
|
||
|
SeaweedStreet = 1200
|
||
|
LighthouseLane = 1300
|
||
|
SillyStreet = 2100
|
||
|
LoopyLane = 2200
|
||
|
PunchlinePlace = 2300
|
||
|
WalrusWay = 3100
|
||
|
SleetStreet = 3200
|
||
|
PolarPlace = 3300
|
||
|
AltoAvenue = 4100
|
||
|
BaritoneBoulevard = 4200
|
||
|
TenorTerrace = 4300
|
||
|
ElmStreet = 5100
|
||
|
MapleStreet = 5200
|
||
|
OakStreet = 5300
|
||
|
LullabyLane = 9100
|
||
|
PajamaPlace = 9200
|
||
|
BedtimeBoulevard = 9300
|
||
|
ToonHall = 2513
|
||
|
HoodHierarchy = {ToontownCentral: (SillyStreet, LoopyLane, PunchlinePlace),
|
||
|
DonaldsDock: (BarnacleBoulevard, SeaweedStreet, LighthouseLane),
|
||
|
TheBrrrgh: (WalrusWay, SleetStreet, PolarPlace),
|
||
|
MinniesMelodyland: (AltoAvenue, BaritoneBoulevard, TenorTerrace),
|
||
|
DaisyGardens: (ElmStreet, MapleStreet, OakStreet),
|
||
|
DonaldsDreamland: (LullabyLane, PajamaPlace, BedtimeBoulevard),
|
||
|
GoofySpeedway: ()}
|
||
|
BossbotHQ = 10000
|
||
|
BossbotLobby = 10100
|
||
|
BossbotCountryClubIntA = 10500
|
||
|
BossbotCountryClubIntB = 10600
|
||
|
BossbotCountryClubIntC = 10700
|
||
|
SellbotHQ = 11000
|
||
|
SellbotLobby = 11100
|
||
|
SellbotFactoryExt = 11200
|
||
|
SellbotFactoryInt = 11500
|
||
|
SellbotMegaCorpInt = 11600
|
||
|
CashbotHQ = 12000
|
||
|
CashbotLobby = 12100
|
||
|
CashbotMintIntA = 12500
|
||
|
CashbotMintIntB = 12600
|
||
|
CashbotMintIntC = 12700
|
||
|
LawbotHQ = 13000
|
||
|
LawbotLobby = 13100
|
||
|
LawbotOfficeExt = 13200
|
||
|
LawbotOfficeInt = 13300
|
||
|
LawbotStageIntA = 13300
|
||
|
LawbotStageIntB = 13400
|
||
|
LawbotStageIntC = 13500
|
||
|
LawbotStageIntD = 13600
|
||
|
Tutorial = 15000
|
||
|
MyEstate = 16000
|
||
|
GolfZone = 17000
|
||
|
PartyHood = 18000
|
||
|
HoodsAlwaysVisited = [17000, 18000]
|
||
|
DynamicZonesBegin = 22000
|
||
|
DynamicZonesEnd = 1 << 20
|
||
|
cogDept2index = {'c': 0,
|
||
|
'l': 1,
|
||
|
'm': 2,
|
||
|
's': 3}
|
||
|
cogIndex2dept = invertDict(cogDept2index)
|
||
|
HQToSafezone = {SellbotHQ: DaisyGardens,
|
||
|
CashbotHQ: DonaldsDreamland,
|
||
|
LawbotHQ: TheBrrrgh,
|
||
|
BossbotHQ: DonaldsDock}
|
||
|
CogDeptNames = [TTLocalizer.Bossbot,
|
||
|
TTLocalizer.Lawbot,
|
||
|
TTLocalizer.Cashbot,
|
||
|
TTLocalizer.Sellbot]
|
||
|
|
||
|
def cogHQZoneId2deptIndex(zone):
|
||
|
if zone >= 13000 and zone <= 13999:
|
||
|
return 1
|
||
|
elif zone >= 12000:
|
||
|
return 2
|
||
|
elif zone >= 11000:
|
||
|
return 3
|
||
|
else:
|
||
|
return 0
|
||
|
|
||
|
|
||
|
def cogHQZoneId2dept(zone):
|
||
|
return cogIndex2dept[cogHQZoneId2deptIndex(zone)]
|
||
|
|
||
|
|
||
|
def dept2cogHQ(dept):
|
||
|
dept2hq = {'c': BossbotHQ,
|
||
|
'l': LawbotHQ,
|
||
|
'm': CashbotHQ,
|
||
|
's': SellbotHQ}
|
||
|
return dept2hq[dept]
|
||
|
|
||
|
MintNumFloors = {CashbotMintIntA: 20,
|
||
|
CashbotMintIntB: 20,
|
||
|
CashbotMintIntC: 20}
|
||
|
CashbotMintCogLevel = 10
|
||
|
CashbotMintSkelecogLevel = 11
|
||
|
CashbotMintBossLevel = 12
|
||
|
MintNumBattles = {CashbotMintIntA: 4,
|
||
|
CashbotMintIntB: 6,
|
||
|
CashbotMintIntC: 8}
|
||
|
MintCogBuckRewards = {CashbotMintIntA: 8,
|
||
|
CashbotMintIntB: 14,
|
||
|
CashbotMintIntC: 20}
|
||
|
MintNumRooms = {CashbotMintIntA: 2 * (6,) + 5 * (7,) + 5 * (8,) + 5 * (9,) + 3 * (10,),
|
||
|
CashbotMintIntB: 3 * (8,) + 6 * (9,) + 6 * (10,) + 5 * (11,),
|
||
|
CashbotMintIntC: 4 * (10,) + 10 * (11,) + 6 * (12,)}
|
||
|
BossbotCountryClubCogLevel = 11
|
||
|
BossbotCountryClubSkelecogLevel = 12
|
||
|
BossbotCountryClubBossLevel = 12
|
||
|
CountryClubNumRooms = {BossbotCountryClubIntA: (4,),
|
||
|
BossbotCountryClubIntB: 3 * (8,) + 6 * (9,) + 6 * (10,) + 5 * (11,),
|
||
|
BossbotCountryClubIntC: 4 * (10,) + 10 * (11,) + 6 * (12,)}
|
||
|
CountryClubNumBattles = {BossbotCountryClubIntA: 3,
|
||
|
BossbotCountryClubIntB: 2,
|
||
|
BossbotCountryClubIntC: 3}
|
||
|
CountryClubCogBuckRewards = {BossbotCountryClubIntA: 8,
|
||
|
BossbotCountryClubIntB: 14,
|
||
|
BossbotCountryClubIntC: 20}
|
||
|
LawbotStageCogLevel = 10
|
||
|
LawbotStageSkelecogLevel = 11
|
||
|
LawbotStageBossLevel = 12
|
||
|
StageNumBattles = {LawbotStageIntA: 0,
|
||
|
LawbotStageIntB: 0,
|
||
|
LawbotStageIntC: 0,
|
||
|
LawbotStageIntD: 0}
|
||
|
StageNoticeRewards = {LawbotStageIntA: 75,
|
||
|
LawbotStageIntB: 150,
|
||
|
LawbotStageIntC: 225,
|
||
|
LawbotStageIntD: 300}
|
||
|
StageNumRooms = {LawbotStageIntA: 2 * (6,) + 5 * (7,) + 5 * (8,) + 5 * (9,) + 3 * (10,),
|
||
|
LawbotStageIntB: 3 * (8,) + 6 * (9,) + 6 * (10,) + 5 * (11,),
|
||
|
LawbotStageIntC: 4 * (10,) + 10 * (11,) + 6 * (12,),
|
||
|
LawbotStageIntD: 4 * (10,) + 10 * (11,) + 6 * (12,)}
|
||
|
FT_FullSuit = 'fullSuit'
|
||
|
FT_Leg = 'leg'
|
||
|
FT_Arm = 'arm'
|
||
|
FT_Torso = 'torso'
|
||
|
factoryId2factoryType = {SellbotFactoryInt: FT_FullSuit,
|
||
|
SellbotMegaCorpInt: FT_FullSuit,
|
||
|
LawbotOfficeInt: FT_FullSuit}
|
||
|
StreetNames = TTLocalizer.GlobalStreetNames
|
||
|
StreetBranchZones = StreetNames.keys()
|
||
|
Hoods = (DonaldsDock,
|
||
|
ToontownCentral,
|
||
|
TheBrrrgh,
|
||
|
MinniesMelodyland,
|
||
|
DaisyGardens,
|
||
|
OutdoorZone,
|
||
|
FunnyFarm,
|
||
|
GoofySpeedway,
|
||
|
DonaldsDreamland,
|
||
|
BossbotHQ,
|
||
|
SellbotHQ,
|
||
|
CashbotHQ,
|
||
|
LawbotHQ,
|
||
|
GolfZone)
|
||
|
HoodsForTeleportAll = (DonaldsDock,
|
||
|
ToontownCentral,
|
||
|
TheBrrrgh,
|
||
|
MinniesMelodyland,
|
||
|
DaisyGardens,
|
||
|
OutdoorZone,
|
||
|
GoofySpeedway,
|
||
|
DonaldsDreamland,
|
||
|
BossbotHQ,
|
||
|
SellbotHQ,
|
||
|
CashbotHQ,
|
||
|
LawbotHQ,
|
||
|
GolfZone)
|
||
|
BingoCardNames = {'normal': 0,
|
||
|
'corners': 1,
|
||
|
'diagonal': 2,
|
||
|
'threeway': 3,
|
||
|
'blockout': 4}
|
||
|
NoPreviousGameId = 0
|
||
|
RaceGameId = 1
|
||
|
CannonGameId = 2
|
||
|
TagGameId = 3
|
||
|
PatternGameId = 4
|
||
|
RingGameId = 5
|
||
|
MazeGameId = 6
|
||
|
TugOfWarGameId = 7
|
||
|
CatchGameId = 8
|
||
|
DivingGameId = 9
|
||
|
TargetGameId = 10
|
||
|
VineGameId = 11
|
||
|
IceGameId = 12
|
||
|
CogThiefGameId = 13
|
||
|
TwoDGameId = 14
|
||
|
MinigameNames = {'race': RaceGameId,
|
||
|
'cannon': CannonGameId,
|
||
|
'tag': TagGameId,
|
||
|
'pattern': PatternGameId,
|
||
|
'jaymo': PatternGameId,
|
||
|
'match': PatternGameId,
|
||
|
'matching': PatternGameId,
|
||
|
'ring': RingGameId,
|
||
|
'maze': MazeGameId,
|
||
|
'tug': TugOfWarGameId,
|
||
|
'catch': CatchGameId,
|
||
|
'diving': DivingGameId,
|
||
|
'target': TargetGameId,
|
||
|
'vine': VineGameId,
|
||
|
'ice': IceGameId,
|
||
|
'thief': CogThiefGameId,
|
||
|
'2d': TwoDGameId}
|
||
|
MinigameTemplateId = -1
|
||
|
MinigameIDs = (RaceGameId,
|
||
|
CannonGameId,
|
||
|
TagGameId,
|
||
|
PatternGameId,
|
||
|
RingGameId,
|
||
|
MazeGameId,
|
||
|
TugOfWarGameId,
|
||
|
CatchGameId,
|
||
|
DivingGameId,
|
||
|
TargetGameId,
|
||
|
VineGameId,
|
||
|
IceGameId,
|
||
|
CogThiefGameId,
|
||
|
TwoDGameId)
|
||
|
MinigamePlayerMatrix = {
|
||
|
1: (CannonGameId, MazeGameId, TugOfWarGameId, RingGameId, VineGameId, CogThiefGameId, TwoDGameId, DivingGameId, CatchGameId, TargetGameId),
|
||
|
2: (CannonGameId, MazeGameId, TugOfWarGameId, PatternGameId, TagGameId, RingGameId, VineGameId, IceGameId, CogThiefGameId, TwoDGameId, DivingGameId, CatchGameId, TargetGameId),
|
||
|
3: (CannonGameId, MazeGameId, TugOfWarGameId, PatternGameId, RaceGameId, TagGameId, VineGameId, RingGameId, IceGameId, CogThiefGameId, TwoDGameId, DivingGameId, CatchGameId, TargetGameId),
|
||
|
4: (CannonGameId, MazeGameId, TugOfWarGameId, PatternGameId, RaceGameId, TagGameId, VineGameId, RingGameId, IceGameId, CogThiefGameId, TwoDGameId, DivingGameId, CatchGameId, TargetGameId),
|
||
|
}
|
||
|
KeyboardTimeout = 300
|
||
|
phaseMap = {Tutorial: 4,
|
||
|
ToontownCentral: 4,
|
||
|
MyEstate: 5.5,
|
||
|
DonaldsDock: 6,
|
||
|
MinniesMelodyland: 6,
|
||
|
GoofySpeedway: 6,
|
||
|
TheBrrrgh: 8,
|
||
|
DaisyGardens: 8,
|
||
|
FunnyFarm: 8,
|
||
|
DonaldsDreamland: 8,
|
||
|
OutdoorZone: 6,
|
||
|
BossbotHQ: 12,
|
||
|
SellbotHQ: 9,
|
||
|
CashbotHQ: 10,
|
||
|
LawbotHQ: 11,
|
||
|
GolfZone: 6,
|
||
|
PartyHood: 13}
|
||
|
streetPhaseMap = {ToontownCentral: 5,
|
||
|
DonaldsDock: 6,
|
||
|
MinniesMelodyland: 6,
|
||
|
GoofySpeedway: 6,
|
||
|
TheBrrrgh: 8,
|
||
|
DaisyGardens: 8,
|
||
|
FunnyFarm: 8,
|
||
|
DonaldsDreamland: 8,
|
||
|
OutdoorZone: 8,
|
||
|
BossbotHQ: 12,
|
||
|
SellbotHQ: 9,
|
||
|
CashbotHQ: 10,
|
||
|
LawbotHQ: 11,
|
||
|
PartyHood: 13}
|
||
|
dnaMap = {Tutorial: 'toontown_central',
|
||
|
ToontownCentral: 'toontown_central',
|
||
|
DonaldsDock: 'donalds_dock',
|
||
|
MinniesMelodyland: 'minnies_melody_land',
|
||
|
GoofySpeedway: 'goofy_speedway',
|
||
|
TheBrrrgh: 'the_burrrgh',
|
||
|
DaisyGardens: 'daisys_garden',
|
||
|
FunnyFarm: 'not done yet',
|
||
|
DonaldsDreamland: 'donalds_dreamland',
|
||
|
OutdoorZone: 'outdoor_zone',
|
||
|
BossbotHQ: 'cog_hq_bossbot',
|
||
|
SellbotHQ: 'cog_hq_sellbot',
|
||
|
CashbotHQ: 'cog_hq_cashbot',
|
||
|
LawbotHQ: 'cog_hq_lawbot',
|
||
|
GolfZone: 'golf_zone'}
|
||
|
hoodNameMap = {DonaldsDock: TTLocalizer.DonaldsDock,
|
||
|
ToontownCentral: TTLocalizer.ToontownCentral,
|
||
|
TheBrrrgh: TTLocalizer.TheBrrrgh,
|
||
|
MinniesMelodyland: TTLocalizer.MinniesMelodyland,
|
||
|
DaisyGardens: TTLocalizer.DaisyGardens,
|
||
|
OutdoorZone: TTLocalizer.OutdoorZone,
|
||
|
FunnyFarm: TTLocalizer.FunnyFarm,
|
||
|
GoofySpeedway: TTLocalizer.GoofySpeedway,
|
||
|
DonaldsDreamland: TTLocalizer.DonaldsDreamland,
|
||
|
BossbotHQ: TTLocalizer.BossbotHQ,
|
||
|
SellbotHQ: TTLocalizer.SellbotHQ,
|
||
|
CashbotHQ: TTLocalizer.CashbotHQ,
|
||
|
LawbotHQ: TTLocalizer.LawbotHQ,
|
||
|
Tutorial: TTLocalizer.Tutorial,
|
||
|
MyEstate: TTLocalizer.MyEstate,
|
||
|
GolfZone: TTLocalizer.GolfZone,
|
||
|
PartyHood: TTLocalizer.PartyHood}
|
||
|
safeZoneCountMap = {MyEstate: 8,
|
||
|
Tutorial: 6,
|
||
|
ToontownCentral: 6,
|
||
|
DonaldsDock: 10,
|
||
|
MinniesMelodyland: 5,
|
||
|
GoofySpeedway: 500,
|
||
|
TheBrrrgh: 8,
|
||
|
DaisyGardens: 9,
|
||
|
FunnyFarm: 500,
|
||
|
DonaldsDreamland: 5,
|
||
|
OutdoorZone: 500,
|
||
|
GolfZone: 500,
|
||
|
PartyHood: 500}
|
||
|
townCountMap = {MyEstate: 8,
|
||
|
Tutorial: 40,
|
||
|
ToontownCentral: 37,
|
||
|
DonaldsDock: 40,
|
||
|
MinniesMelodyland: 40,
|
||
|
GoofySpeedway: 40,
|
||
|
TheBrrrgh: 40,
|
||
|
DaisyGardens: 40,
|
||
|
FunnyFarm: 40,
|
||
|
DonaldsDreamland: 40,
|
||
|
OutdoorZone: 40,
|
||
|
PartyHood: 20}
|
||
|
hoodCountMap = {MyEstate: 2,
|
||
|
Tutorial: 2,
|
||
|
ToontownCentral: 2,
|
||
|
DonaldsDock: 2,
|
||
|
MinniesMelodyland: 2,
|
||
|
GoofySpeedway: 2,
|
||
|
TheBrrrgh: 2,
|
||
|
DaisyGardens: 2,
|
||
|
FunnyFarm: 2,
|
||
|
DonaldsDreamland: 2,
|
||
|
OutdoorZone: 2,
|
||
|
BossbotHQ: 2,
|
||
|
SellbotHQ: 43,
|
||
|
CashbotHQ: 2,
|
||
|
LawbotHQ: 2,
|
||
|
GolfZone: 2,
|
||
|
PartyHood: 2}
|
||
|
TrophyStarLevels = (10,
|
||
|
20,
|
||
|
30,
|
||
|
50,
|
||
|
75,
|
||
|
100)
|
||
|
TrophyStarColors = (Vec4(0.9, 0.6, 0.2, 1),
|
||
|
Vec4(0.9, 0.6, 0.2, 1),
|
||
|
Vec4(0.8, 0.8, 0.8, 1),
|
||
|
Vec4(0.8, 0.8, 0.8, 1),
|
||
|
Vec4(1, 1, 0, 1),
|
||
|
Vec4(1, 1, 0, 1))
|
||
|
SuitWalkSpeed = 4.8
|
||
|
PieThrowArc = 0
|
||
|
PieThrowLinear = 1
|
||
|
PieCodeBossCog = 1
|
||
|
PieCodeNotBossCog = 2
|
||
|
PieCodeToon = 3
|
||
|
PieCodeBossInsides = 4
|
||
|
PieCodeDefensePan = 5
|
||
|
PieCodeProsecutionPan = 6
|
||
|
PieCodeLawyer = 7
|
||
|
PieCodeInvasionSuit = 8
|
||
|
PieCodeColors = {PieCodeBossCog: None,
|
||
|
PieCodeNotBossCog: (0.8,
|
||
|
0.8,
|
||
|
0.8,
|
||
|
1),
|
||
|
PieCodeToon: None}
|
||
|
suitIndex = {
|
||
|
'f' : 0,
|
||
|
'p' : 1,
|
||
|
'ym' : 2,
|
||
|
'mm' : 3,
|
||
|
'ds' : 4,
|
||
|
'hh' : 5,
|
||
|
'cr' : 6,
|
||
|
'tbc' : 7,
|
||
|
'bf' : 8,
|
||
|
'b' : 9,
|
||
|
'dt' : 10,
|
||
|
'ac' : 11,
|
||
|
'bs' : 12,
|
||
|
'sd' : 13,
|
||
|
'le' : 14,
|
||
|
'bw' : 15,
|
||
|
'sc' : 16,
|
||
|
'pp' : 17,
|
||
|
'tw' : 18,
|
||
|
'bc' : 19,
|
||
|
'nc' : 20,
|
||
|
'mb' : 21,
|
||
|
'ls' : 22,
|
||
|
'rb' : 23,
|
||
|
'cc' : 24,
|
||
|
'tm' : 25,
|
||
|
'nd' : 26,
|
||
|
'gh' : 27,
|
||
|
'ms' : 28,
|
||
|
'tf' : 29,
|
||
|
'm' : 30,
|
||
|
'mh' : 31
|
||
|
}
|
||
|
BossCogRollSpeed = 7.5
|
||
|
BossCogTurnSpeed = 20
|
||
|
BossCogTreadSpeed = 3.5
|
||
|
BossCogDizzy = 0
|
||
|
BossCogElectricFence = 1
|
||
|
BossCogSwatLeft = 2
|
||
|
BossCogSwatRight = 3
|
||
|
BossCogAreaAttack = 4
|
||
|
BossCogFrontAttack = 5
|
||
|
BossCogRecoverDizzyAttack = 6
|
||
|
BossCogDirectedAttack = 7
|
||
|
BossCogStrafeAttack = 8
|
||
|
BossCogNoAttack = 9
|
||
|
BossCogGoonZap = 10
|
||
|
BossCogSlowDirectedAttack = 11
|
||
|
BossCogDizzyNow = 12
|
||
|
BossCogGavelStomp = 13
|
||
|
BossCogGavelHandle = 14
|
||
|
BossCogLawyerAttack = 15
|
||
|
BossCogMoveAttack = 16
|
||
|
BossCogGolfAttack = 17
|
||
|
BossCogGolfAreaAttack = 18
|
||
|
BossCogGearDirectedAttack = 19
|
||
|
BossCogOvertimeAttack = 20
|
||
|
BossCogAttackTimes = {BossCogElectricFence: 0,
|
||
|
BossCogSwatLeft: 5.5,
|
||
|
BossCogSwatRight: 5.5,
|
||
|
BossCogAreaAttack: 4.5,
|
||
|
BossCogFrontAttack: 2.65,
|
||
|
BossCogRecoverDizzyAttack: 5.1,
|
||
|
BossCogDirectedAttack: 4.84,
|
||
|
BossCogNoAttack: 6,
|
||
|
BossCogSlowDirectedAttack: 7.84,
|
||
|
BossCogMoveAttack: 3,
|
||
|
BossCogGolfAttack: 6,
|
||
|
BossCogGolfAreaAttack: 7,
|
||
|
BossCogGearDirectedAttack: 4.84,
|
||
|
BossCogOvertimeAttack: 5}
|
||
|
BossCogDamageLevels = {BossCogElectricFence: 1,
|
||
|
BossCogSwatLeft: 5,
|
||
|
BossCogSwatRight: 5,
|
||
|
BossCogAreaAttack: 10,
|
||
|
BossCogFrontAttack: 3,
|
||
|
BossCogRecoverDizzyAttack: 3,
|
||
|
BossCogDirectedAttack: 3,
|
||
|
BossCogStrafeAttack: 2,
|
||
|
BossCogGoonZap: 5,
|
||
|
BossCogSlowDirectedAttack: 10,
|
||
|
BossCogGavelStomp: 20,
|
||
|
BossCogGavelHandle: 2,
|
||
|
BossCogLawyerAttack: 5,
|
||
|
BossCogMoveAttack: 20,
|
||
|
BossCogGolfAttack: 15,
|
||
|
BossCogGolfAreaAttack: 15,
|
||
|
BossCogGearDirectedAttack: 15,
|
||
|
BossCogOvertimeAttack: 10}
|
||
|
BossCogBattleAPosHpr = (0,
|
||
|
-25,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
BossCogBattleBPosHpr = (0,
|
||
|
25,
|
||
|
0,
|
||
|
180,
|
||
|
0,
|
||
|
0)
|
||
|
SellbotBossMaxDamage = 100
|
||
|
SellbotBossMaxDamageNerfed = 100
|
||
|
SellbotBossBattleOnePosHpr = (0,
|
||
|
-35,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0)
|
||
|
SellbotBossBattleTwoPosHpr = (0,
|
||
|
60,
|
||
|
18,
|
||
|
-90,
|
||
|
0,
|
||
|
0)
|
||
|
SellbotBossBattleThreeHpr = (180, 0, 0)
|
||
|
SellbotBossBottomPos = (0, -110, -6.5)
|
||
|
SellbotBossDeathPos = (0, -175, -6.5)
|
||
|
SellbotBossDooberTurnPosA = (-20, -50, 0)
|
||
|
SellbotBossDooberTurnPosB = (20, -50, 0)
|
||
|
SellbotBossDooberTurnPosDown = (0, -50, 0)
|
||
|
SellbotBossDooberFlyPos = (0, -135, -6.5)
|
||
|
SellbotBossTopRampPosA = (-80, -35, 18)
|
||
|
SellbotBossTopRampTurnPosA = (-80, 10, 18)
|
||
|
SellbotBossP3PosA = (-50, 40, 18)
|
||
|
SellbotBossTopRampPosB = (80, -35, 18)
|
||
|
SellbotBossTopRampTurnPosB = (80, 10, 18)
|
||
|
SellbotBossP3PosB = (50, 60, 18)
|
||
|
CashbotBossMaxDamage = 500
|
||
|
CashbotBossOffstagePosHpr = (120,
|
||
|
-195,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
CashbotBossBattleOnePosHpr = (120,
|
||
|
-230,
|
||
|
0,
|
||
|
90,
|
||
|
0,
|
||
|
0)
|
||
|
CashbotRTBattleOneStartPosHpr = (94,
|
||
|
-220,
|
||
|
0,
|
||
|
110,
|
||
|
0,
|
||
|
0)
|
||
|
CashbotBossBattleThreePosHpr = (120,
|
||
|
-315,
|
||
|
0,
|
||
|
180,
|
||
|
0,
|
||
|
0)
|
||
|
CashbotToonsBattleThreeStartPosHpr = [(105,
|
||
|
-285,
|
||
|
0,
|
||
|
208,
|
||
|
0,
|
||
|
0),
|
||
|
(136,
|
||
|
-342,
|
||
|
0,
|
||
|
398,
|
||
|
0,
|
||
|
0),
|
||
|
(105,
|
||
|
-342,
|
||
|
0,
|
||
|
333,
|
||
|
0,
|
||
|
0),
|
||
|
(135,
|
||
|
-292,
|
||
|
0,
|
||
|
146,
|
||
|
0,
|
||
|
0),
|
||
|
(93,
|
||
|
-303,
|
||
|
0,
|
||
|
242,
|
||
|
0,
|
||
|
0),
|
||
|
(144,
|
||
|
-327,
|
||
|
0,
|
||
|
64,
|
||
|
0,
|
||
|
0),
|
||
|
(145,
|
||
|
-302,
|
||
|
0,
|
||
|
117,
|
||
|
0,
|
||
|
0),
|
||
|
(93,
|
||
|
-327,
|
||
|
0,
|
||
|
-65,
|
||
|
0,
|
||
|
0)]
|
||
|
CashbotBossSafePosHprs = [(120,
|
||
|
-315,
|
||
|
30,
|
||
|
0,
|
||
|
0,
|
||
|
0),
|
||
|
(77.2,
|
||
|
-329.3,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(77.1,
|
||
|
-302.7,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(165.7,
|
||
|
-326.4,
|
||
|
0,
|
||
|
90,
|
||
|
0,
|
||
|
0),
|
||
|
(165.5,
|
||
|
-302.4,
|
||
|
0,
|
||
|
90,
|
||
|
0,
|
||
|
0),
|
||
|
(107.8,
|
||
|
-359.1,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0),
|
||
|
(133.9,
|
||
|
-359.1,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0),
|
||
|
(107.0,
|
||
|
-274.7,
|
||
|
0,
|
||
|
180,
|
||
|
0,
|
||
|
0),
|
||
|
(134.2,
|
||
|
-274.7,
|
||
|
0,
|
||
|
180,
|
||
|
0,
|
||
|
0)]
|
||
|
CashbotBossCranePosHprs = [(97.4,
|
||
|
-337.6,
|
||
|
0,
|
||
|
-45,
|
||
|
0,
|
||
|
0),
|
||
|
(97.4,
|
||
|
-292.4,
|
||
|
0,
|
||
|
-135,
|
||
|
0,
|
||
|
0),
|
||
|
(142.6,
|
||
|
-292.4,
|
||
|
0,
|
||
|
135,
|
||
|
0,
|
||
|
0),
|
||
|
(142.6,
|
||
|
-337.6,
|
||
|
0,
|
||
|
45,
|
||
|
0,
|
||
|
0)]
|
||
|
CashbotBossToMagnetTime = 0.2
|
||
|
CashbotBossFromMagnetTime = 1
|
||
|
CashbotBossSafeKnockImpact = 0.5
|
||
|
CashbotBossSafeNewImpact = 0.0
|
||
|
CashbotBossGoonImpact = 0.1
|
||
|
CashbotBossKnockoutDamage = 15
|
||
|
TTWakeWaterHeight = -4.79
|
||
|
DDWakeWaterHeight = 1.669
|
||
|
EstateWakeWaterHeight = -.3
|
||
|
OZWakeWaterHeight = -0.5
|
||
|
WakeRunDelta = 0.1
|
||
|
WakeWalkDelta = 0.2
|
||
|
NoItems = 0
|
||
|
NewItems = 1
|
||
|
OldItems = 2
|
||
|
SuitInvasionBegin = 0
|
||
|
SuitInvasionEnd = 1
|
||
|
SuitInvasionUpdate = 2
|
||
|
SuitInvasionBulletin = 3
|
||
|
SkelecogInvasionBegin = 4
|
||
|
SkelecogInvasionEnd = 5
|
||
|
SkelecogInvasionBulletin = 6
|
||
|
WaiterInvasionBegin = 7
|
||
|
WaiterInvasionEnd = 8
|
||
|
WaiterInvasionBulletin = 9
|
||
|
V2InvasionBegin = 10
|
||
|
V2InvasionEnd = 11
|
||
|
V2InvasionBulletin = 12
|
||
|
EndingInvasions = [SuitInvasionEnd, SkelecogInvasionEnd, WaiterInvasionEnd, V2InvasionEnd]
|
||
|
SuitInvasions = {
|
||
|
SuitInvasionBegin: TTLocalizer.SuitInvasionBegin,
|
||
|
SuitInvasionEnd: TTLocalizer.SuitInvasionEnd,
|
||
|
SuitInvasionUpdate: TTLocalizer.SuitInvasionUpdate,
|
||
|
SuitInvasionBulletin: TTLocalizer.SuitInvasionBulletin,
|
||
|
SkelecogInvasionBegin: TTLocalizer.SkelecogInvasionBegin,
|
||
|
SkelecogInvasionEnd: TTLocalizer.SkelecogInvasionEnd,
|
||
|
SkelecogInvasionBulletin: TTLocalizer.SkelecogInvasionBulletin,
|
||
|
WaiterInvasionBegin: TTLocalizer.WaiterInvasionBegin,
|
||
|
WaiterInvasionEnd: TTLocalizer.WaiterInvasionEnd,
|
||
|
WaiterInvasionBulletin: TTLocalizer.WaiterInvasionBulletin,
|
||
|
V2InvasionBegin: TTLocalizer.V2InvasionBegin,
|
||
|
V2InvasionEnd: TTLocalizer.V2InvasionEnd,
|
||
|
V2InvasionBulletin: TTLocalizer.V2InvasionBulletin
|
||
|
}
|
||
|
SUMMER_FIREWORKS = 1
|
||
|
NEW_YEAR_FIREWORKS = 2
|
||
|
HALLOWEEN = 3
|
||
|
CHRISTMAS = 4
|
||
|
SKELECOG_INVASION = 5
|
||
|
MR_HOLLYWOOD_INVASION = 6
|
||
|
BLACK_CAT_DAY = 9
|
||
|
RESISTANCE_EVENT = 10
|
||
|
KART_RECORD_DAILY_RESET = 11
|
||
|
KART_RECORD_WEEKLY_RESET = 12
|
||
|
CIRCUIT_RACING = 14
|
||
|
POLAR_PLACE_EVENT = 15
|
||
|
GRAND_PRIX = 16
|
||
|
FISH_BINGO = 17
|
||
|
SILLY_SATURDAY = 18
|
||
|
BOSSCOG_INVASION = 23
|
||
|
MARCH_INVASION = 24
|
||
|
MORE_XP_HOLIDAY = 25
|
||
|
DECEMBER_INVASION = 28
|
||
|
APRIL_TOONS_WEEK = 29
|
||
|
OCTOBER31_FIREWORKS = 31
|
||
|
NOVEMBER19_FIREWORKS = 32
|
||
|
SELLBOT_SURPRISE_1 = 33
|
||
|
SELLBOT_SURPRISE_2 = 34
|
||
|
SELLBOT_SURPRISE_3 = 35
|
||
|
SELLBOT_SURPRISE_4 = 36
|
||
|
CASHBOT_CONUNDRUM_1 = 37
|
||
|
CASHBOT_CONUNDRUM_2 = 38
|
||
|
CASHBOT_CONUNDRUM_3 = 39
|
||
|
CASHBOT_CONUNDRUM_4 = 40
|
||
|
LAWBOT_GAMBIT_1 = 41
|
||
|
LAWBOT_GAMBIT_2 = 42
|
||
|
LAWBOT_GAMBIT_3 = 43
|
||
|
LAWBOT_GAMBIT_4 = 44
|
||
|
TROUBLE_BOSSBOTS_1 = 45
|
||
|
TROUBLE_BOSSBOTS_2 = 46
|
||
|
TROUBLE_BOSSBOTS_3 = 47
|
||
|
TROUBLE_BOSSBOTS_4 = 48
|
||
|
JELLYBEAN_DAY = 49
|
||
|
FEBRUARY14_FIREWORKS = 51
|
||
|
JULY14_FIREWORKS = 52
|
||
|
JUNE22_FIREWORKS = 53
|
||
|
BIGWIG_INVASION = 54
|
||
|
COLD_CALLER_INVASION = 53
|
||
|
BEAN_COUNTER_INVASION = 54
|
||
|
DOUBLE_TALKER_INVASION = 55
|
||
|
DOWNSIZER_INVASION = 56
|
||
|
HYDRANT_ZERO_HOLIDAY = 58
|
||
|
VALENTOONS_DAY = 59
|
||
|
SILLYMETER_HOLIDAY = 60
|
||
|
MAILBOX_ZERO_HOLIDAY = 61
|
||
|
TRASHCAN_ZERO_HOLIDAY = 62
|
||
|
SILLY_SURGE_HOLIDAY = 63
|
||
|
SILLY_CHATTER_ONE = 67
|
||
|
SILLY_CHATTER_TWO = 68
|
||
|
SILLY_CHATTER_THREE = 69
|
||
|
SILLY_CHATTER_FOUR = 70
|
||
|
SILLY_TEST = 71
|
||
|
YES_MAN_INVASION = 72
|
||
|
TIGHTWAD_INVASION = 73
|
||
|
TELEMARKETER_INVASION = 74
|
||
|
HEADHUNTER_INVASION = 75
|
||
|
SPINDOCTOR_INVASION = 76
|
||
|
MONEYBAGS_INVASION = 77
|
||
|
TWOFACES_INVASION = 78
|
||
|
MINGLER_INVASION = 79
|
||
|
LOANSHARK_INVASION = 80
|
||
|
CORPORATE_RAIDER_INVASION = 81
|
||
|
ROBBER_BARON_INVASION = 82
|
||
|
LEGAL_EAGLE_INVASION = 83
|
||
|
BIG_WIG_INVASION = 84
|
||
|
BIG_CHEESE_INVASION = 85
|
||
|
DOWN_SIZER_INVASION = 86
|
||
|
MOVER_AND_SHAKER_INVASION = 87
|
||
|
DOUBLETALKER_INVASION = 88
|
||
|
PENNY_PINCHER_INVASION = 89
|
||
|
NAME_DROPPER_INVASION = 90
|
||
|
AMBULANCE_CHASER_INVASION = 91
|
||
|
MICROMANAGER_INVASION = 92
|
||
|
NUMBER_CRUNCHER_INVASION = 93
|
||
|
SILLY_CHATTER_FIVE = 94
|
||
|
VICTORY_PARTY_HOLIDAY = 95
|
||
|
SELLBOT_NERF_HOLIDAY = 96
|
||
|
JELLYBEAN_TROLLEY_HOLIDAY = 97
|
||
|
JELLYBEAN_FISHING_HOLIDAY = 98
|
||
|
JELLYBEAN_PARTIES_HOLIDAY = 99
|
||
|
TOP_TOONS_MARATHON = 101
|
||
|
SELLBOT_INVASION = 102
|
||
|
SELLBOT_FIELD_OFFICE = 103
|
||
|
SELLBOT_INVASION_MOVER_AND_SHAKER = 104
|
||
|
IDES_OF_MARCH = 105
|
||
|
EXPANDED_CLOSETS = 106
|
||
|
TAX_DAY_INVASION = 107
|
||
|
KARTING_TICKETS_HOLIDAY = 109
|
||
|
PRE_JULY_4_DOWNSIZER_INVASION = 110
|
||
|
PRE_JULY_4_BIGWIG_INVASION = 111
|
||
|
COMBO_FIREWORKS = 112
|
||
|
JELLYBEAN_TROLLEY_HOLIDAY_MONTH = 113
|
||
|
JELLYBEAN_FISHING_HOLIDAY_MONTH = 114
|
||
|
JELLYBEAN_PARTIES_HOLIDAY_MONTH = 115
|
||
|
SILLYMETER_EXT_HOLIDAY = 116
|
||
|
TOT_REWARD_JELLYBEAN_AMOUNT = 100
|
||
|
TOT_REWARD_END_OFFSET_AMOUNT = 0
|
||
|
LawbotBossMaxDamage = 2700
|
||
|
LawbotBossWinningTilt = 40
|
||
|
LawbotBossInitialDamage = 1350
|
||
|
LawbotBossBattleOnePosHpr = (-2.798,
|
||
|
-60,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
LawbotBossBattleTwoPosHpr = (-2.798,
|
||
|
89,
|
||
|
19.145,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
LawbotBossBattleThreePosHpr = LawbotBossBattleTwoPosHpr
|
||
|
LawbotBossBottomPos = (50, 39, 0)
|
||
|
LawbotBossDeathPos = (50, 40, 0)
|
||
|
LawbotBossGavelPosHprs = [(35,
|
||
|
78.328,
|
||
|
0,
|
||
|
-135,
|
||
|
0,
|
||
|
0),
|
||
|
(68.5,
|
||
|
78.328,
|
||
|
0,
|
||
|
135,
|
||
|
0,
|
||
|
0),
|
||
|
(47,
|
||
|
-33,
|
||
|
0,
|
||
|
45,
|
||
|
0,
|
||
|
0),
|
||
|
(-50,
|
||
|
-39,
|
||
|
0,
|
||
|
-45,
|
||
|
0,
|
||
|
0),
|
||
|
(-9,
|
||
|
-37,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0),
|
||
|
(-9,
|
||
|
49,
|
||
|
0,
|
||
|
-180,
|
||
|
0,
|
||
|
0),
|
||
|
(32,
|
||
|
0,
|
||
|
0,
|
||
|
45,
|
||
|
0,
|
||
|
0),
|
||
|
(33,
|
||
|
56,
|
||
|
0,
|
||
|
135,
|
||
|
0,
|
||
|
0)]
|
||
|
LawbotBossGavelTimes = [(0.2, 0.9, 0.6),
|
||
|
(0.25, 1, 0.5),
|
||
|
(1.0, 6, 0.5),
|
||
|
(0.3, 3, 1),
|
||
|
(0.26, 0.9, 0.45),
|
||
|
(0.24, 1.1, 0.65),
|
||
|
(0.27, 1.2, 0.45),
|
||
|
(0.25, 0.95, 0.5)]
|
||
|
LawbotBossGavelHeadings = [(0,
|
||
|
-15,
|
||
|
4,
|
||
|
-70 - 45,
|
||
|
5,
|
||
|
45),
|
||
|
(0,
|
||
|
-45,
|
||
|
-4,
|
||
|
-35,
|
||
|
-45,
|
||
|
-16,
|
||
|
32),
|
||
|
(0,
|
||
|
-8,
|
||
|
19,
|
||
|
-7,
|
||
|
5,
|
||
|
23),
|
||
|
(0,
|
||
|
-4,
|
||
|
8,
|
||
|
-16,
|
||
|
32,
|
||
|
-45,
|
||
|
7,
|
||
|
7,
|
||
|
-30,
|
||
|
19,
|
||
|
-13,
|
||
|
25),
|
||
|
(0,
|
||
|
-45,
|
||
|
-90,
|
||
|
45,
|
||
|
90),
|
||
|
(0,
|
||
|
-45,
|
||
|
-90,
|
||
|
45,
|
||
|
90),
|
||
|
(0, -45, 45),
|
||
|
(0, -45, 45)]
|
||
|
LawbotBossCogRelBattleAPosHpr = (-25,
|
||
|
-10,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
LawbotBossCogRelBattleBPosHpr = (-25,
|
||
|
10,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
LawbotBossCogAbsBattleAPosHpr = (-5,
|
||
|
-2,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
LawbotBossCogAbsBattleBPosHpr = (-5,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
LawbotBossWitnessStandPosHpr = (54,
|
||
|
100,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0)
|
||
|
LawbotBossInjusticePosHpr = (-3,
|
||
|
12,
|
||
|
0,
|
||
|
90,
|
||
|
0,
|
||
|
0)
|
||
|
LawbotBossInjusticeScale = (1.75, 1.75, 1.5)
|
||
|
LawbotBossDefensePanDamage = 1
|
||
|
LawbotBossLawyerPosHprs = [(-57,
|
||
|
-24,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-57,
|
||
|
-12,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-57,
|
||
|
0,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-57,
|
||
|
12,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-57,
|
||
|
24,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-57,
|
||
|
36,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-57,
|
||
|
48,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-57,
|
||
|
60,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-3,
|
||
|
-37.3,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0),
|
||
|
(-3,
|
||
|
53,
|
||
|
0,
|
||
|
-180,
|
||
|
0,
|
||
|
0)]
|
||
|
LawbotBossLawyerCycleTime = 6
|
||
|
LawbotBossLawyerToPanTime = 2.5
|
||
|
LawbotBossLawyerChanceToAttack = 50
|
||
|
LawbotBossLawyerHeal = 2
|
||
|
LawbotBossLawyerStunTime = 5
|
||
|
LawbotBossDifficultySettings = [(38,
|
||
|
4,
|
||
|
8,
|
||
|
1,
|
||
|
0,
|
||
|
0),
|
||
|
(36,
|
||
|
5,
|
||
|
8,
|
||
|
1,
|
||
|
0,
|
||
|
0),
|
||
|
(34,
|
||
|
5,
|
||
|
8,
|
||
|
1,
|
||
|
0,
|
||
|
0),
|
||
|
(32,
|
||
|
6,
|
||
|
8,
|
||
|
2,
|
||
|
0,
|
||
|
0),
|
||
|
(30,
|
||
|
6,
|
||
|
8,
|
||
|
2,
|
||
|
0,
|
||
|
0),
|
||
|
(28,
|
||
|
7,
|
||
|
8,
|
||
|
3,
|
||
|
0,
|
||
|
0),
|
||
|
(26,
|
||
|
7,
|
||
|
9,
|
||
|
3,
|
||
|
1,
|
||
|
1),
|
||
|
(24,
|
||
|
8,
|
||
|
9,
|
||
|
4,
|
||
|
1,
|
||
|
1),
|
||
|
(22,
|
||
|
8,
|
||
|
10,
|
||
|
4,
|
||
|
1,
|
||
|
0)]
|
||
|
LawbotBossCannonPosHprs = [(-40,
|
||
|
-12,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-40,
|
||
|
0,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-40,
|
||
|
12,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-40,
|
||
|
24,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-40,
|
||
|
36,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-40,
|
||
|
48,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-40,
|
||
|
60,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(-40,
|
||
|
72,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0)]
|
||
|
LawbotBossCannonPosA = (-80, -51.48, 0)
|
||
|
LawbotBossCannonPosB = (-80, 70.73, 0)
|
||
|
LawbotBossChairPosHprs = [(60,
|
||
|
72,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(60,
|
||
|
62,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(60,
|
||
|
52,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(60,
|
||
|
42,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(60,
|
||
|
32,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(60,
|
||
|
22,
|
||
|
0,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(70,
|
||
|
72,
|
||
|
5,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(70,
|
||
|
62,
|
||
|
5,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(70,
|
||
|
52,
|
||
|
5,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(70,
|
||
|
42,
|
||
|
5,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(70,
|
||
|
32,
|
||
|
5,
|
||
|
-90,
|
||
|
0,
|
||
|
0),
|
||
|
(70,
|
||
|
22,
|
||
|
5,
|
||
|
-90,
|
||
|
0,
|
||
|
0)]
|
||
|
LawbotBossChairRow1PosB = (59.3, 48, 14.05)
|
||
|
LawbotBossChairRow1PosA = (59.3, -18.2, 14.05)
|
||
|
LawbotBossChairRow2PosB = (75.1, 48, 28.2)
|
||
|
LawbotBossChairRow2PosA = (75.1, -18.2, 28.2)
|
||
|
LawbotBossCannonBallMax = 12
|
||
|
LawbotBossJuryBoxStartPos = (94, -8, 5)
|
||
|
LawbotBossJuryBoxRelativeEndPos = (30, 0, 12.645)
|
||
|
LawbotBossJuryBoxMoveTime = 70
|
||
|
LawbotBossJurorsForBalancedScale = 8
|
||
|
LawbotBossDamagePerJuror = 68
|
||
|
LawbotBossCogJurorFlightTime = 10
|
||
|
LawbotBossCogJurorDistance = 75
|
||
|
LawbotBossBaseJurorNpcId = 2001
|
||
|
LawbotBossWitnessEpiloguePosHpr = (-3,
|
||
|
0,
|
||
|
0,
|
||
|
180,
|
||
|
0,
|
||
|
0)
|
||
|
LawbotBossChanceForTaunt = 25
|
||
|
LawbotBossBonusWaitTime = 60
|
||
|
LawbotBossBonusDuration = 20
|
||
|
LawbotBossBonusToonup = 10
|
||
|
LawbotBossBonusWeightMultiplier = 2
|
||
|
LawbotBossChanceToDoAreaAttack = 11
|
||
|
LOW_POP_JP = 0
|
||
|
MID_POP_JP = 100
|
||
|
HIGH_POP_JP = 200
|
||
|
LOW_POP_INTL = 399
|
||
|
MID_POP_INTL = 499
|
||
|
HIGH_POP_INTL = -1
|
||
|
LOW_POP = 100
|
||
|
MID_POP = 200
|
||
|
HIGH_POP = -1
|
||
|
PinballCannonBumper = 0
|
||
|
PinballCloudBumperLow = 1
|
||
|
PinballCloudBumperMed = 2
|
||
|
PinballCloudBumperHigh = 3
|
||
|
PinballTarget = 4
|
||
|
PinballRoof = 5
|
||
|
PinballHouse = 6
|
||
|
PinballFence = 7
|
||
|
PinballBridge = 8
|
||
|
PinballStatuary = 9
|
||
|
PinballScoring = [(100, 1),
|
||
|
(150, 1),
|
||
|
(200, 1),
|
||
|
(250, 1),
|
||
|
(350, 1),
|
||
|
(100, 1),
|
||
|
(50, 1),
|
||
|
(25, 1),
|
||
|
(100, 1),
|
||
|
(10, 1)]
|
||
|
PinballCannonBumperInitialPos = (0, -20, 40)
|
||
|
RentalCop = 0
|
||
|
RentalCannon = 1
|
||
|
RentalGameTable = 2
|
||
|
GlitchKillerZones = [13300,
|
||
|
13400,
|
||
|
13500,
|
||
|
13600]
|
||
|
ColorPlayer = (0.3,
|
||
|
0.7,
|
||
|
0.3,
|
||
|
1)
|
||
|
ColorAvatar = (0.3,
|
||
|
0.3,
|
||
|
0.7,
|
||
|
1)
|
||
|
ColorPet = (0.6,
|
||
|
0.4,
|
||
|
0.2,
|
||
|
1)
|
||
|
ColorFreeChat = (0.3,
|
||
|
0.3,
|
||
|
0.8,
|
||
|
1)
|
||
|
ColorSpeedChat = (0.2,
|
||
|
0.6,
|
||
|
0.4,
|
||
|
1)
|
||
|
ColorNoChat = (0.8,
|
||
|
0.5,
|
||
|
0.1,
|
||
|
1)
|
||
|
PICNIC_COUNTDOWN_TIME = 60
|
||
|
BossbotRTIntroStartPosHpr = (0,
|
||
|
-64,
|
||
|
0,
|
||
|
180,
|
||
|
0,
|
||
|
0)
|
||
|
BossbotRTPreTwoPosHpr = (0,
|
||
|
-20,
|
||
|
0,
|
||
|
180,
|
||
|
0,
|
||
|
0)
|
||
|
BossbotRTEpiloguePosHpr = (0,
|
||
|
90,
|
||
|
0,
|
||
|
180,
|
||
|
0,
|
||
|
0)
|
||
|
BossbotBossBattleOnePosHpr = (0,
|
||
|
355,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
BossbotBossPreTwoPosHpr = (0,
|
||
|
20,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
BossbotElevCamPosHpr = (0,
|
||
|
-100.544,
|
||
|
7.18258,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
BossbotFoodModelScale = 0.75
|
||
|
BossbotNumFoodToExplode = 3
|
||
|
BossbotBossServingDuration = 300
|
||
|
BossbotPrepareBattleThreeDuration = 20
|
||
|
WaiterBattleAPosHpr = (20,
|
||
|
-400,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
WaiterBattleBPosHpr = (-20,
|
||
|
-400,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
BossbotBossBattleThreePosHpr = (0,
|
||
|
355,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
DinerBattleAPosHpr = (20,
|
||
|
-240,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
DinerBattleBPosHpr = (-20,
|
||
|
-240,
|
||
|
0,
|
||
|
0,
|
||
|
0,
|
||
|
0)
|
||
|
BossbotBossMaxDamage = 500
|
||
|
BossbotMaxSpeedDamage = 90
|
||
|
BossbotSpeedRecoverRate = 20
|
||
|
BossbotBossDifficultySettings = [(8,
|
||
|
4,
|
||
|
11,
|
||
|
3,
|
||
|
30,
|
||
|
25),
|
||
|
(9,
|
||
|
5,
|
||
|
12,
|
||
|
6,
|
||
|
28,
|
||
|
26),
|
||
|
(10,
|
||
|
6,
|
||
|
11,
|
||
|
7,
|
||
|
26,
|
||
|
27),
|
||
|
(8,
|
||
|
8,
|
||
|
12,
|
||
|
8,
|
||
|
24,
|
||
|
28),
|
||
|
(13,
|
||
|
5,
|
||
|
12,
|
||
|
9,
|
||
|
22,
|
||
|
29)]
|
||
|
BossbotRollSpeedMax = 22
|
||
|
BossbotRollSpeedMin = 7.5
|
||
|
BossbotTurnSpeedMax = 60
|
||
|
BossbotTurnSpeedMin = 20
|
||
|
BossbotTreadSpeedMax = 10.5
|
||
|
BossbotTreadSpeedMin = 3.5
|
||
|
CalendarFilterShowAll = 0
|
||
|
CalendarFilterShowOnlyHolidays = 1
|
||
|
CalendarFilterShowOnlyParties = 2
|
||
|
TTC = 1
|
||
|
DD = 2
|
||
|
MM = 3
|
||
|
GS = 4
|
||
|
DG = 5
|
||
|
BR = 6
|
||
|
OZ = 7
|
||
|
DL = 8
|
||
|
AnimPropTypes = Enum(('Unknown',
|
||
|
'Hydrant',
|
||
|
'Mailbox',
|
||
|
'Trashcan'), start=-1)
|
||
|
EmblemTypes = Enum(('Silver', 'Gold'))
|
||
|
NumEmblemTypes = 2
|
||
|
MaxBankMoney = 30000
|
||
|
DefaultBankItemId = 1300
|
||
|
ToonAnimStates = set(['off',
|
||
|
'neutral',
|
||
|
'victory',
|
||
|
'Happy',
|
||
|
'Sad',
|
||
|
'Catching',
|
||
|
'CatchEating',
|
||
|
'Sleep',
|
||
|
'walk',
|
||
|
'jumpSquat',
|
||
|
'jump',
|
||
|
'jumpAirborne',
|
||
|
'jumpLand',
|
||
|
'run',
|
||
|
'swim',
|
||
|
'swimhold',
|
||
|
'dive',
|
||
|
'cringe',
|
||
|
'OpenBook',
|
||
|
'ReadBook',
|
||
|
'CloseBook',
|
||
|
'TeleportOut',
|
||
|
'Died',
|
||
|
'TeleportedOut',
|
||
|
'TeleportIn',
|
||
|
'Emote',
|
||
|
'SitStart',
|
||
|
'Sit',
|
||
|
'Push',
|
||
|
'Squish',
|
||
|
'FallDown',
|
||
|
'GolfPuttLoop',
|
||
|
'GolfRotateLeft',
|
||
|
'GolfRotateRight',
|
||
|
'GolfPuttSwing',
|
||
|
'GolfGoodPutt',
|
||
|
'GolfBadPutt',
|
||
|
'Flattened',
|
||
|
'CogThiefRunning',
|
||
|
'ScientistJealous',
|
||
|
'ScientistEmcee',
|
||
|
'ScientistWork',
|
||
|
'ScientistLessWork',
|
||
|
'ScientistPlay'])
|
||
|
AV_FLAG_REASON_TOUCH = 1
|
||
|
AV_FLAG_HISTORY_LEN = 500
|
||
|
AV_TOUCH_CHECK_DELAY_AI = 3.0
|
||
|
AV_TOUCH_CHECK_DELAY_CL = 1.0
|
||
|
AV_TOUCH_CHECK_DIST = 2.0
|
||
|
AV_TOUCH_CHECK_DIST_Z = 5.0
|
||
|
AV_TOUCH_CHECK_TIMELIMIT_CL = 0.002
|
||
|
AV_TOUCH_COUNT_LIMIT = 5
|
||
|
AV_TOUCH_COUNT_TIME = 300
|
||
|
GloveCost = 2000
|
||
|
|
||
|
BMovementSpeed = 0
|
||
|
BMovementSpeedMultiplier = 1.3
|
||
|
|
||
|
BugReportSite = 'https://bugs.launchpad.net/toontown-united/+filebug'
|
||
|
NPCCollisionDelay = 2.5
|
||
|
|
||
|
CostPerLaffRestock = 3
|
||
|
|
||
|
FISHSALE_COMPLETE = 0
|
||
|
FISHSALE_TROPHY = 1
|
||
|
|
||
|
CLERK_GOODBYE = 0
|
||
|
CLERK_GREETING = 1
|
||
|
CLERK_TOOKTOOLONG = 2
|
||
|
|
||
|
KnockKnockHeal = 12
|
||
|
KnockKnockCooldown = 600
|
||
|
|
||
|
CRATE_NOT_OWNER = 0
|
||
|
CRATE_NO_KEYS = 1
|
||
|
CRATE_BEANS = 2
|
||
|
CRATE_BUFFS = 3
|
||
|
CRATE_NAMETAGS = 4
|
||
|
CRATE_EMOTES = 5
|
||
|
CRATE_CLOTHING = 6
|
||
|
CRATE_ACCESSORIES = 7
|
||
|
|
||
|
STAT_COGS = 0
|
||
|
STAT_V2 = 1
|
||
|
STAT_SKELE = 2
|
||
|
STAT_BEANS_SPENT = 3
|
||
|
STAT_BEANS_EARNT = 4
|
||
|
STAT_TASKS = 5
|
||
|
STAT_VP = 6
|
||
|
STAT_CFO = 7
|
||
|
STAT_CJ = 8
|
||
|
STAT_CEO = 9
|
||
|
STAT_SAD = 10
|
||
|
STAT_BLDG = 11
|
||
|
STAT_COGDO = 12
|
||
|
STAT_ITEMS = 13
|
||
|
STAT_FISH = 14
|
||
|
STAT_FLOWERS = 15
|
||
|
STAT_RACING = 16
|
||
|
STAT_GOLF = 17
|
||
|
STAT_SOS = 18
|
||
|
STAT_UNITES = 19
|
||
|
STAT_SLIPS = 20
|
||
|
STAT_GAGS = 21
|
||
|
|
||
|
CHAIR_START = 0
|
||
|
CHAIR_STOP = 1
|
||
|
CHAIR_NONE = 0
|
||
|
CHAIR_EXIT = 1
|
||
|
CHAIR_UNEXPECTED_EXIT = 2
|
||
|
|
||
|
MAX_TF_TRIES = 5
|
||
|
TF_COOLDOWN_SECS = 60 * 60 * 24
|
||
|
TF_EXPIRE_SECS = 3 * 60 * 60 * 24
|
||
|
TF_COOLDOWN = 0
|
||
|
TF_UNKNOWN_SECRET = 1
|
||
|
TF_SELF_SECRET = 2
|
||
|
TF_TOO_FAST = 3
|
||
|
TF_FRIENDS_LIST_FULL_YOU = 4
|
||
|
TF_FRIENDS_LIST_FULL_HIM = 5
|
||
|
TF_ALREADY_FRIENDS = 6
|
||
|
TF_ALREADY_FRIENDS_NAME = 7
|
||
|
TF_SUCCESS = 8
|
||
|
|
||
|
GROUP_ZONES = [11000, 11100, 11200, 12000, 12100, 13000, 13100, 13200, 10000, 10100]
|
||
|
|
||
|
TOONUP_PULSE_ZONES = [ToontownCentral, DonaldsDock, DaisyGardens, MinniesMelodyland, TheBrrrgh, DonaldsDreamland]
|
||
|
TOONUP_FREQUENCY = 30
|
||
|
|
||
|
TV_NOT_OWNER = 0
|
||
|
TV_INVALID_VIDEO = 1
|
||
|
TV_OK = 2
|
||
|
|
||
|
COLOR_SATURATION_MIN = 0.5
|
||
|
COLOR_SATURATION_MAX = 0.8
|
||
|
COLOR_VALUE_MIN = 0.5
|
||
|
COLOR_VALUE_MAX = 0.8
|
||
|
|
||
|
TELEPORT_BUTTON_DEFAULT_COST = 50
|
||
|
TELEPORT_BUTTON_COSTS = {
|
||
|
ToontownCentral: 5,
|
||
|
DonaldsDock: 15,
|
||
|
DaisyGardens: 30,
|
||
|
MinniesMelodyland: 45,
|
||
|
TheBrrrgh: 60,
|
||
|
DonaldsDreamland: 75
|
||
|
}
|
||
|
|
||
|
def getTeleportButtonCost(hoodId):
|
||
|
return TELEPORT_BUTTON_COSTS.get(hoodId, TELEPORT_BUTTON_DEFAULT_COST)
|