General: Widescreen fixes
chat, cannon, racing, boarding groups, quests, catalog, and elevator widescreen fixes Some widescreen fixes to battle , battles in building, battles in levels , the catalog screen, and the chat Also add some resolutions to settings Friends: Fix widescreen issues on the friend section PAT and MAT, minigames, gag shop after trolley, shticker book, friends list , laff meter avatar details panel and teleport panel widescreen fixes General: More widescreen fixes Some fixes for OTPTimer, and the furniture gui And another battle thing Catalog: Fix catalog notification dialog for widescreen Some more widescreen fixes Kart: Fix crash when buying kart ToontownBattleGlobals: Sorta fix FaceOffFov
This commit is contained in:
parent
b220702ac2
commit
b91da593f3
Binary file not shown.
|
|
@ -10,8 +10,8 @@ SafetyNetBitmask = BitMask32(512)
|
|||
SafetyGateBitmask = BitMask32(1024)
|
||||
GhostBitmask = BitMask32(2048)
|
||||
PathFindingBitmask = BitMask32.bit(29)
|
||||
OriginalCameraFov = 52.0
|
||||
DefaultCameraFov = 52.0
|
||||
OriginalCameraFov = 70.0
|
||||
DefaultCameraFov = 70.0
|
||||
DefaultCameraFar = 400.0
|
||||
DefaultCameraNear = 1.0
|
||||
AICollisionPriority = 10
|
||||
|
|
|
|||
|
|
@ -35,13 +35,16 @@ class OTPTimer(DirectFrame):
|
|||
return OTPTimer.ClockImage
|
||||
|
||||
def posInTopRightCorner(self):
|
||||
self.setPos(1.16, 0, 0.83)
|
||||
self.reparentTo(base.a2dTopRight)
|
||||
self.setPos(-0.17, 0, -0.17)
|
||||
|
||||
def posBelowTopRightCorner(self):
|
||||
self.setPos(1.16, 0, 0.58)
|
||||
self.reparentTo(base.a2dTopRight)
|
||||
self.setPos(-0.17, 0, -0.4)
|
||||
|
||||
def posAboveShtikerBook(self):
|
||||
self.setPos(1.16, 0, -.63)
|
||||
self.reparentTo(base.a2dBottomRight)
|
||||
self.setPos(-0.173, 0, 0.37)
|
||||
|
||||
def setTime(self, time):
|
||||
time = bound(time, 0, 999)
|
||||
|
|
|
|||
|
|
@ -112,11 +112,11 @@ class DistributedBattle(DistributedBattleBase.DistributedBattleBase):
|
|||
TauntCamHeight = random.choice((MidTauntCamHeight, 1, 11))
|
||||
camTrack = Sequence()
|
||||
camTrack.append(Func(camera.wrtReparentTo, suit))
|
||||
camTrack.append(Func(base.camLens.setFov, self.camFOFov))
|
||||
camTrack.append(Func(base.camLens.setMinFov, self.camFOFov/(4/3)))
|
||||
camTrack.append(Func(camera.setPos, TauntCamX, TauntCamY, TauntCamHeight))
|
||||
camTrack.append(Func(camera.lookAt, suit, suitOffsetPnt))
|
||||
camTrack.append(Wait(delay))
|
||||
camTrack.append(Func(base.camLens.setFov, self.camFov))
|
||||
camTrack.append(Func(base.camLens.setMinFov, self.camFOFov/(4/3)))
|
||||
camTrack.append(Func(camera.wrtReparentTo, self))
|
||||
camTrack.append(Func(camera.setPos, self.camFOPos))
|
||||
camTrack.append(Func(camera.lookAt, suit.getPos(self)))
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@ class DistributedBattleBase(DistributedNode.DistributedNode, BattleBase):
|
|||
self.fsm.requestFinalState()
|
||||
if self.hasLocalToon():
|
||||
self.removeLocalToon()
|
||||
base.camLens.setFov(ToontownGlobals.DefaultCameraFov)
|
||||
base.camLens.setMinFov(ToontownGlobals.DefaultCameraFov/(4/3))
|
||||
self.localToonFsm.request('WaitForServer')
|
||||
self.ignoreAll()
|
||||
for suit in self.suits:
|
||||
|
|
@ -787,7 +787,7 @@ class DistributedBattleBase(DistributedNode.DistributedNode, BattleBase):
|
|||
camTrack = Sequence()
|
||||
|
||||
def setCamFov(fov):
|
||||
base.camLens.setFov(fov)
|
||||
base.camLens.setMinFov(fov/(4/3))
|
||||
|
||||
camTrack.append(Func(setCamFov, self.camFov))
|
||||
camTrack.append(Func(camera.wrtReparentTo, self))
|
||||
|
|
@ -1014,7 +1014,7 @@ class DistributedBattleBase(DistributedNode.DistributedNode, BattleBase):
|
|||
def __enterLocalToonWaitForInput(self):
|
||||
self.notify.debug('enterLocalToonWaitForInput()')
|
||||
camera.setPosHpr(self.camPos, self.camHpr)
|
||||
base.camLens.setFov(self.camMenuFov)
|
||||
base.camLens.setMinFov(self.camMenuFov/(4/3))
|
||||
NametagGlobals.setMasterArrowsOn(0)
|
||||
self.townBattle.setState('Attack')
|
||||
self.accept(self.localToonBattleEvent, self.__handleLocalToonBattleEvent)
|
||||
|
|
@ -1058,7 +1058,7 @@ class DistributedBattleBase(DistributedNode.DistributedNode, BattleBase):
|
|||
self.notify.debug('exitWaitForInput()')
|
||||
if self.localToonActive():
|
||||
self.townBattle.setState('Off')
|
||||
base.camLens.setFov(self.camFov)
|
||||
base.camLens.setMinFov(self.camFov/(4/3))
|
||||
self.ignore(self.localToonBattleEvent)
|
||||
self.__stopTimer()
|
||||
return None
|
||||
|
|
@ -1238,7 +1238,7 @@ class DistributedBattleBase(DistributedNode.DistributedNode, BattleBase):
|
|||
if localAvatar and hasattr(localAvatar, 'inventory') and localAvatar.inventory:
|
||||
localAvatar.inventory.setInteractivePropTrackBonus(self.interactivePropTrackBonus)
|
||||
camera.wrtReparentTo(self)
|
||||
base.camLens.setFov(self.camFov)
|
||||
base.camLens.setMinFov(self.camFov/(4/3))
|
||||
return
|
||||
|
||||
def exitHasLocalToon(self):
|
||||
|
|
@ -1257,7 +1257,7 @@ class DistributedBattleBase(DistributedNode.DistributedNode, BattleBase):
|
|||
else:
|
||||
camera.wrtReparentTo(base.localAvatar)
|
||||
messenger.send('localToonLeftBattle')
|
||||
base.camLens.setFov(ToontownGlobals.DefaultCameraFov)
|
||||
base.camLens.setMinFov(ToontownGlobals.DefaultCameraFov/(4/3))
|
||||
return
|
||||
|
||||
def enterNoLocalToon(self):
|
||||
|
|
|
|||
|
|
@ -111,7 +111,7 @@ class DistributedBattleBldg(DistributedBattleBase.DistributedBattleBase):
|
|||
camTrack = Sequence()
|
||||
|
||||
def setCamFov(fov):
|
||||
base.camLens.setFov(fov)
|
||||
base.camLens.setMinFov(fov/(4/3))
|
||||
|
||||
camTrack.append(Func(camera.wrtReparentTo, suitLeader))
|
||||
camTrack.append(Func(setCamFov, self.camFOFov))
|
||||
|
|
@ -157,7 +157,7 @@ class DistributedBattleBldg(DistributedBattleBase.DistributedBattleBase):
|
|||
self.clearInterval(self.faceOffName)
|
||||
self._removeMembersKeep()
|
||||
camera.wrtReparentTo(self)
|
||||
base.camLens.setFov(self.camFov)
|
||||
base.camLens.setMinFov(self.camFov/(4/3))
|
||||
return None
|
||||
|
||||
def __playReward(self, ts, callback):
|
||||
|
|
|
|||
|
|
@ -192,7 +192,7 @@ class DistributedBuilding(DistributedObject.DistributedObject):
|
|||
self.acceptOnce('insideVictorElevator', self.handleInsideVictorElevatorFromCogdo)
|
||||
camera.reparentTo(render)
|
||||
camera.setPosHpr(self.elevatorNodePath, 0, -32.5, 9.4, 0, 348, 0)
|
||||
base.camLens.setFov(52.0)
|
||||
base.camLens.setMinFov(52.0/(4/3))
|
||||
anyOthers = 0
|
||||
for v in self.victorList:
|
||||
if v != 0 and v != base.localAvatar.doId:
|
||||
|
|
|
|||
|
|
@ -92,15 +92,25 @@ def getCloseInterval(distObj, leftDoor, rightDoor, closeSfx, finalCloseSfx, type
|
|||
|
||||
def getRideElevatorInterval(type = ELEVATOR_NORMAL):
|
||||
if type == ELEVATOR_VP or type == ELEVATOR_CFO or type == ELEVATOR_CJ:
|
||||
cameraValue = 65
|
||||
yValue = 30
|
||||
zMin = 7.8
|
||||
zMid = 8
|
||||
zMax = 8.2
|
||||
elif type == ELEVATOR_BB:
|
||||
cameraValue = 65
|
||||
yValue = 21
|
||||
zMin = 7
|
||||
zMid = 7.2
|
||||
zMax = 7.4
|
||||
elif (type == ELEVATOR_CFO):
|
||||
cameraValue = 59
|
||||
yValue = 30
|
||||
zMin = 7.8
|
||||
zMid = 8
|
||||
zMax = 8.2
|
||||
else:
|
||||
cameraValue = 55
|
||||
if type in (ELEVATOR_VP,
|
||||
ELEVATOR_CFO,
|
||||
ELEVATOR_CJ,
|
||||
|
|
@ -108,4 +118,5 @@ def getRideElevatorInterval(type = ELEVATOR_NORMAL):
|
|||
ival = Sequence(Wait(0.5), LerpPosInterval(camera, 0.5, Point3(0, yValue, zMin), startPos=Point3(0, yValue, zMid), blendType='easeOut'), LerpPosInterval(camera, 0.5, Point3(0, yValue, zMid), startPos=Point3(0, yValue, zMin)), Wait(1.0), LerpPosInterval(camera, 0.5, Point3(0, yValue, zMax), startPos=Point3(0, yValue, zMid), blendType='easeOut'), LerpPosInterval(camera, 1.0, Point3(0, yValue, zMid), startPos=Point3(0, yValue, zMax)))
|
||||
else:
|
||||
ival = Sequence(Wait(0.5), LerpPosInterval(camera, 0.5, Point3(0, 14, 3.8), startPos=Point3(0, 14, 4), blendType='easeOut'), LerpPosInterval(camera, 0.5, Point3(0, 14, 4), startPos=Point3(0, 14, 3.8)), Wait(1.0), LerpPosInterval(camera, 0.5, Point3(0, 14, 4.2), startPos=Point3(0, 14, 4), blendType='easeOut'), LerpPosInterval(camera, 1.0, Point3(0, 14, 4), startPos=Point3(0, 14, 4.2)))
|
||||
base.camLens.setFov(cameraValue)
|
||||
return ival
|
||||
|
|
|
|||
|
|
@ -11,13 +11,20 @@ class CatalogNotifyDialog:
|
|||
def __init__(self, message):
|
||||
self.message = message
|
||||
self.messageIndex = 0
|
||||
framePosX = CatalogNotifyBaseXPos
|
||||
framePosX = -0.93
|
||||
from toontown.toon import LocalToon
|
||||
if LocalToon.WantNewsPage:
|
||||
framePosX += LocalToon.AdjustmentForNewsButton
|
||||
self.frame = DirectFrame(relief=None, sortOrder=DGG.BACKGROUND_SORT_INDEX - 2, image=DGG.getDefaultDialogGeom(), image_color=ToontownGlobals.GlobalDialogColor, image_scale=(1.2, 1.0, 0.4), text=message[0], text_wordwrap=16, text_scale=0.06, text_pos=(-0.1, 0.1), pos=(framePosX, 0, 0.78))
|
||||
self.frame = DirectFrame(relief=None, sortOrder=DGG.BACKGROUND_SORT_INDEX - 2,
|
||||
image=DGG.getDefaultDialogGeom(),
|
||||
image_color=ToontownGlobals.GlobalDialogColor,
|
||||
image_scale=(1.2, 1.0, 0.4), text=message[0], text_wordwrap=16,
|
||||
text_scale=0.06, text_pos=(framePosX, -0.22),
|
||||
parent = base.a2dTopRight, pos = (framePosX, 0, 0))
|
||||
buttons = loader.loadModel('phase_3/models/gui/dialog_box_buttons_gui')
|
||||
cancelImageList = (buttons.find('**/CloseBtn_UP'), buttons.find('**/CloseBtn_DN'), buttons.find('**/CloseBtn_Rllvr'))
|
||||
cancelImageList = (buttons.find('**/CloseBtn_UP'),
|
||||
buttons.find('**/CloseBtn_DN'),
|
||||
buttons.find('**/CloseBtn_Rllvr'))
|
||||
okImageList = (buttons.find('**/ChtBx_OKBtn_UP'), buttons.find('**/ChtBx_OKBtn_DN'), buttons.find('**/ChtBx_OKBtn_Rllvr'))
|
||||
self.nextButton = DirectButton(parent=self.frame, relief=None, image=okImageList, command=self.handleButton, pos=(0, 0, -0.14))
|
||||
self.doneButton = DirectButton(parent=self.frame, relief=None, image=cancelImageList, command=self.handleButton, pos=(0, 0, -0.14))
|
||||
|
|
|
|||
|
|
@ -683,7 +683,9 @@ class CatalogScreen(DirectFrame):
|
|||
self.clarabelleFrame = DirectLabel(self, relief=None, image=guiItems.find('**/clarabelle_frame'))
|
||||
hangupGui = guiItems.find('**/hangup')
|
||||
hangupRolloverGui = guiItems.find('**/hangup_rollover')
|
||||
self.hangup = DirectButton(self, relief=None, pos=(1.78, 0, -1.3), image=[hangupGui,
|
||||
self.hangup = DirectButton(self, relief=None, pos = (1.78, 0, -1.3),
|
||||
scale = (0.7, 0.7, 0.7),
|
||||
image=[hangupGui,
|
||||
hangupRolloverGui,
|
||||
hangupRolloverGui,
|
||||
hangupGui], text=['', TTLocalizer.CatalogHangUp, TTLocalizer.CatalogHangUp], text_fg=Vec4(1), text_scale=0.07, text_pos=(0.0, 0.14), command=self.hangUp)
|
||||
|
|
|
|||
|
|
@ -439,9 +439,9 @@ class TTChatInputSpeedChat(DirectObject.DirectObject):
|
|||
self.terminalSelectedEvent = self.speedChat.getEventName(SpeedChatGlobals.SCTerminalSelectedEvent)
|
||||
if base.config.GetBool('want-sc-auto-hide', 1):
|
||||
self.accept(self.terminalSelectedEvent, selectionMade)
|
||||
self.speedChat.reparentTo(aspect2dp, DGG.FOREGROUND_SORT_INDEX)
|
||||
scZ = 0.96
|
||||
self.speedChat.setPos(-1.05, 0, scZ)
|
||||
self.speedChat.reparentTo(base.a2dpTopLeft, DGG.FOREGROUND_SORT_INDEX)
|
||||
scZ = -0.04
|
||||
self.speedChat.setPos(0.28, 0, scZ)
|
||||
self.speedChat.setWhisperMode(self.whisperAvatarId != None)
|
||||
self.speedChat.enter()
|
||||
return
|
||||
|
|
|
|||
|
|
@ -32,30 +32,95 @@ class ToontownChatManager(ChatManager.ChatManager):
|
|||
|
||||
def __init__(self, cr, localAvatar):
|
||||
gui = loader.loadModel('phase_3.5/models/gui/chat_input_gui')
|
||||
self.normalButton = DirectButton(image=(gui.find('**/ChtBx_ChtBtn_UP'), gui.find('**/ChtBx_ChtBtn_DN'), gui.find('**/ChtBx_ChtBtn_RLVR')), pos=(-1.2647, 0, 0.928), scale=1.179, relief=None, image_color=Vec4(1, 1, 1, 1), text=('', OTPLocalizer.ChatManagerChat, OTPLocalizer.ChatManagerChat), text_align=TextNode.ALeft, text_scale=TTLocalizer.TCMnormalButton, text_fg=Vec4(1, 1, 1, 1), text_shadow=Vec4(0, 0, 0, 1), text_pos=(-0.0525, -0.09), textMayChange=0, sortOrder=DGG.FOREGROUND_SORT_INDEX, command=self.__normalButtonPressed)
|
||||
self.normalButton = DirectButton(image=(gui.find('**/ChtBx_ChtBtn_UP'),
|
||||
gui.find('**/ChtBx_ChtBtn_DN'),
|
||||
gui.find('**/ChtBx_ChtBtn_RLVR')),
|
||||
pos = (0.0683, 0, -0.07),
|
||||
parent= base.a2dTopLeft,
|
||||
scale=1.179, relief=None,
|
||||
image_color=Vec4(1, 1, 1, 1),
|
||||
text=('', OTPLocalizer.ChatManagerChat, OTPLocalizer.ChatManagerChat),
|
||||
text_align=TextNode.ALeft, text_scale=TTLocalizer.TCMnormalButton,
|
||||
text_fg=Vec4(1, 1, 1, 1), text_shadow=Vec4(0, 0, 0, 1),
|
||||
text_pos=(-0.0525, -0.09),
|
||||
textMayChange=0,
|
||||
sortOrder=DGG.FOREGROUND_SORT_INDEX,
|
||||
command=self.__normalButtonPressed)
|
||||
self.normalButton.hide()
|
||||
self.openScSfx = loader.loadSfx('phase_3.5/audio/sfx/GUI_quicktalker.ogg')
|
||||
self.openScSfx.setVolume(0.6)
|
||||
self.scButton = DirectButton(image=(gui.find('**/ChtBx_ChtBtn_UP'), gui.find('**/ChtBx_ChtBtn_DN'), gui.find('**/ChtBx_ChtBtn_RLVR')), pos=TTLocalizer.TCMscButtonPos, scale=1.179, relief=None, image_color=Vec4(0.75, 1, 0.6, 1), text=('', OTPLocalizer.GlobalSpeedChatName, OTPLocalizer.GlobalSpeedChatName), text_scale=TTLocalizer.TCMscButton, text_fg=Vec4(1, 1, 1, 1), text_shadow=Vec4(0, 0, 0, 1), text_pos=(0, -0.09), textMayChange=0, sortOrder=DGG.FOREGROUND_SORT_INDEX, command=self.__scButtonPressed, clickSound=self.openScSfx)
|
||||
self.scButton = DirectButton(image=(gui.find('**/ChtBx_ChtBtn_UP'),
|
||||
gui.find('**/ChtBx_ChtBtn_DN'),
|
||||
gui.find('**/ChtBx_ChtBtn_RLVR')),
|
||||
pos=TTLocalizer.TCMscButtonPos,
|
||||
|
||||
parent = base.a2dTopLeft,
|
||||
scale=1.179, relief=None,
|
||||
image_color=Vec4(0.75, 1, 0.6, 1),
|
||||
text=('', OTPLocalizer.GlobalSpeedChatName,
|
||||
OTPLocalizer.GlobalSpeedChatName),
|
||||
text_scale=TTLocalizer.TCMscButton,
|
||||
text_fg=Vec4(1, 1, 1, 1),
|
||||
text_shadow=Vec4(0, 0, 0, 1), text_pos=(0, -0.09),
|
||||
textMayChange=0, sortOrder=DGG.FOREGROUND_SORT_INDEX,
|
||||
command=self.__scButtonPressed, clickSound=self.openScSfx)
|
||||
self.scButton.hide()
|
||||
self.whisperFrame = DirectFrame(parent=aspect2dp, relief=None, image=DGG.getDefaultDialogGeom(), image_scale=(0.45, 0.45, 0.45), image_color=OTPGlobals.GlobalDialogColor, pos=(-0.4, 0, 0.754), text=OTPLocalizer.ChatManagerWhisperTo, text_wordwrap=7.0, text_scale=TTLocalizer.TCMwhisperFrame, text_fg=Vec4(0, 0, 0, 1), text_pos=(0, 0.14), textMayChange=1, sortOrder=DGG.FOREGROUND_SORT_INDEX)
|
||||
self.whisperFrame = DirectFrame(parent = base.a2dTopLeft, relief=None,
|
||||
image=DGG.getDefaultDialogGeom(),
|
||||
image_scale = (0.45, 0.45, 0.45),
|
||||
image_color=OTPGlobals.GlobalDialogColor,
|
||||
pos = (1.25, 0, -0.269),
|
||||
text=OTPLocalizer.ChatManagerWhisperTo,
|
||||
text_wordwrap=7.0, text_scale=TTLocalizer.TCMwhisperFrame,
|
||||
text_fg=Vec4(0, 0, 0, 1), text_pos = (0.17,0.01),
|
||||
textMayChange=1, sortOrder=DGG.FOREGROUND_SORT_INDEX)
|
||||
self.whisperFrame.hide()
|
||||
self.whisperButton = DirectButton(parent=self.whisperFrame, image=(gui.find('**/ChtBx_ChtBtn_UP'), gui.find('**/ChtBx_ChtBtn_DN'), gui.find('**/ChtBx_ChtBtn_RLVR')), pos=(-0.125, 0, -0.1), scale=1.179, relief=None, image_color=Vec4(1, 1, 1, 1), text=('',
|
||||
OTPLocalizer.ChatManagerChat,
|
||||
OTPLocalizer.ChatManagerChat,
|
||||
''), image3_color=Vec4(0.6, 0.6, 0.6, 0.6), text_scale=TTLocalizer.TCMwhisperButton, text_fg=(0, 0, 0, 1), text_pos=(0, -0.09), textMayChange=0, command=self.__whisperButtonPressed)
|
||||
self.whisperScButton = DirectButton(parent=self.whisperFrame, image=(gui.find('**/ChtBx_ChtBtn_UP'), gui.find('**/ChtBx_ChtBtn_DN'), gui.find('**/ChtBx_ChtBtn_RLVR')), pos=(0.0, 0, -0.1), scale=1.179, relief=None, image_color=Vec4(0.75, 1, 0.6, 1), text=('',
|
||||
OTPLocalizer.GlobalSpeedChatName,
|
||||
OTPLocalizer.GlobalSpeedChatName,
|
||||
''), image3_color=Vec4(0.6, 0.6, 0.6, 0.6), text_scale=TTLocalizer.TCMwhisperScButton, text_fg=(0, 0, 0, 1), text_pos=(0, -0.09), textMayChange=0, command=self.__whisperScButtonPressed)
|
||||
self.whisperCancelButton = DirectButton(parent=self.whisperFrame, image=(gui.find('**/CloseBtn_UP'), gui.find('**/CloseBtn_DN'), gui.find('**/CloseBtn_Rllvr')), pos=(0.125, 0, -0.1), scale=1.179, relief=None, text=('', OTPLocalizer.ChatManagerCancel, OTPLocalizer.ChatManagerCancel), text_scale=0.05, text_fg=(0, 0, 0, 1), text_pos=(0, -0.09), textMayChange=0, command=self.__whisperCancelPressed)
|
||||
self.whisperButton = DirectButton(parent=self.whisperFrame,
|
||||
image=(gui.find('**/ChtBx_ChtBtn_UP'),
|
||||
gui.find('**/ChtBx_ChtBtn_DN'),
|
||||
gui.find('**/ChtBx_ChtBtn_RLVR')),
|
||||
pos = (-0.29, 0, 0.03), scale=1.179,
|
||||
relief=None, image_color=Vec4(1, 1, 1, 1),
|
||||
text=('',
|
||||
OTPLocalizer.ChatManagerChat,
|
||||
OTPLocalizer.ChatManagerChat,
|
||||
''),
|
||||
image3_color=Vec4(0.6, 0.6, 0.6, 0.6),
|
||||
text_scale=TTLocalizer.TCMwhisperButton,
|
||||
text_fg=(0, 0, 0, 1), text_pos=(0, -0.09),
|
||||
textMayChange=0, command=self.__whisperButtonPressed)
|
||||
self.whisperScButton = DirectButton(parent=self.whisperFrame,
|
||||
image=(gui.find('**/ChtBx_ChtBtn_UP'),
|
||||
gui.find('**/ChtBx_ChtBtn_DN'),
|
||||
gui.find('**/ChtBx_ChtBtn_RLVR')),
|
||||
pos = (-0.17, 0, 0.03), scale=1.179, relief=None,
|
||||
image_color=Vec4(0.75, 1, 0.6, 1),
|
||||
text=('',
|
||||
OTPLocalizer.GlobalSpeedChatName,
|
||||
OTPLocalizer.GlobalSpeedChatName,
|
||||
''),
|
||||
image3_color=Vec4(0.6, 0.6, 0.6, 0.6),
|
||||
text_scale=TTLocalizer.TCMwhisperScButton,
|
||||
text_fg=(0, 0, 0, 1), text_pos=(0, -0.09),
|
||||
textMayChange=0, command=self.__whisperScButtonPressed)
|
||||
self.whisperCancelButton = DirectButton(parent=self.whisperFrame,
|
||||
image=(gui.find('**/CloseBtn_UP'),
|
||||
gui.find('**/CloseBtn_DN'),
|
||||
gui.find('**/CloseBtn_Rllvr')),
|
||||
pos = (-0.05, 0, 0.033), scale=1.179,
|
||||
relief=None,
|
||||
text=('', OTPLocalizer.ChatManagerCancel,
|
||||
OTPLocalizer.ChatManagerCancel),
|
||||
text_scale=0.05, text_fg=(0, 0, 0, 1),
|
||||
text_pos=(0, -0.09), textMayChange=0,
|
||||
command=self.__whisperCancelPressed)
|
||||
gui.removeNode()
|
||||
ChatManager.ChatManager.__init__(self, cr, localAvatar)
|
||||
self.defaultToWhiteList = base.config.GetBool('white-list-is-default', 1)
|
||||
self.chatInputSpeedChat = TTChatInputSpeedChat(self)
|
||||
self.normalPos = Vec3(-1.083, 0, 0.804)
|
||||
self.whisperPos = Vec3(0.0, 0, 0.71)
|
||||
self.speedChatPlusPos = Vec3(-0.35, 0, 0.71)
|
||||
self.normalPos = Vec3(0.25, 0, -0.196)
|
||||
self.whisperPos = Vec3(0, 0, -0.296)
|
||||
self.speedChatPlusPos = Vec3(0, 0, 0)
|
||||
self.chatInputWhiteList = TTChatInputWhiteList()
|
||||
if self.defaultToWhiteList:
|
||||
self.chatInputNormal = self.chatInputWhiteList
|
||||
|
|
@ -64,6 +129,7 @@ class ToontownChatManager(ChatManager.ChatManager):
|
|||
else:
|
||||
self.chatInputNormal = TTChatInputNormal(self)
|
||||
self.chatInputWhiteList.setPos(self.speedChatPlusPos)
|
||||
self.chatInputWhiteList.reparentTo(base.a2dTopLeft)
|
||||
self.chatInputWhiteList.desc = 'chatInputWhiteList'
|
||||
return
|
||||
|
||||
|
|
@ -131,6 +197,7 @@ class ToontownChatManager(ChatManager.ChatManager):
|
|||
|
||||
def enterMainMenu(self):
|
||||
self.chatInputNormal.setPos(self.normalPos)
|
||||
self.chatInputNormal.reparentTo(base.a2dTopLeft)
|
||||
if self.chatInputWhiteList.isActive():
|
||||
self.notify.debug('enterMainMenu calling checkObscured')
|
||||
ChatManager.ChatManager.checkObscurred(self)
|
||||
|
|
|
|||
|
|
@ -1307,7 +1307,7 @@ class DistributedGolfGreenGame(BattleBlocker.BattleBlocker):
|
|||
camera.setH(0)
|
||||
camera.setP(-70)
|
||||
camera.reparentTo(self.focusPoint)
|
||||
base.camLens.setFov(60, 46.8265)
|
||||
base.camLens.setMinFov(60/(4/3), 46.8265/(4/3))
|
||||
self.focusPoint.setPos(0, 12, 27)
|
||||
self.focusPoint.setH(180)
|
||||
|
||||
|
|
|
|||
|
|
@ -165,11 +165,11 @@ class DistributedLevelBattle(DistributedBattle.DistributedBattle):
|
|||
TauntCamHeight = random.choice((MidTauntCamHeight, 1, 11))
|
||||
camTrack = Sequence()
|
||||
camTrack.append(Func(camera.reparentTo, suitLeader))
|
||||
camTrack.append(Func(base.camLens.setFov, self.camFOFov))
|
||||
camTrack.append(Func(base.camLens.setMinFov, self.camFOFov/(4/3)))
|
||||
camTrack.append(Func(camera.setPos, TauntCamX, TauntCamY, TauntCamHeight))
|
||||
camTrack.append(Func(camera.lookAt, suitLeader, suitOffsetPnt))
|
||||
camTrack.append(Wait(delay))
|
||||
camTrack.append(Func(base.camLens.setFov, self.camFov))
|
||||
camTrack.append(Func(base.camLens.seMinFov, self.camFov/(4/3)))
|
||||
camTrack.append(Func(camera.wrtReparentTo, self))
|
||||
camTrack.append(Func(camera.setPos, self.camFOPos))
|
||||
camTrack.append(Func(camera.lookAt, suit))
|
||||
|
|
|
|||
|
|
@ -386,7 +386,12 @@ class ObjectManager(NodePath, DirectObject):
|
|||
base.setCellsAvailable(base.leftCells + [base.bottomCells[0]], 0)
|
||||
if self.guiInterval:
|
||||
self.guiInterval.finish()
|
||||
self.guiInterval = self.furnitureGui.posHprScaleInterval(1.0, Point3(-1.16, 1, -0.03), Vec3(0), Vec3(0.06), startPos=Point3(-1.19, 1, 0.33), startHpr=Vec3(0), startScale=Vec3(0.04), blendType='easeInOut', name='lerpFurnitureButton')
|
||||
self.guiInterval = self.furnitureGui.posHprScaleInterval(1.0, Point3(0.16,-0.6,-1.045), Vec3(0), Vec3(0.06),
|
||||
startPos = Point3(0.115, 0.0, -0.66),
|
||||
startHpr=Vec3(0),
|
||||
startScale=Vec3(0.04),
|
||||
blendType='easeInOut',
|
||||
name='lerpFurnitureButton')
|
||||
self.guiInterval.start()
|
||||
taskMgr.add(self.recenterButtonFrameTask, 'recenterButtonFrameTask', 10)
|
||||
messenger.send('wakeup')
|
||||
|
|
|
|||
|
|
@ -46,7 +46,11 @@ class FriendInviter(DirectFrame):
|
|||
|
||||
def __init__(self, avId, avName, avDisableName):
|
||||
self.wantPlayerFriends = base.config.GetBool('want-player-friends', 0)
|
||||
DirectFrame.__init__(self, pos=(0.3, 0.1, 0.65), image_color=GlobalDialogColor, image_scale=(1.0, 1.0, 0.6), text='', text_wordwrap=TTLocalizer.FIdirectFrameWordwrap, text_scale=TTLocalizer.FIdirectFrame, text_pos=TTLocalizer.FIdirectFramePos)
|
||||
DirectFrame.__init__(self, pos = (-1.03, 0.1, -0.35), parent= base.a2dTopRight, image_color=GlobalDialogColor,
|
||||
image_scale=(1.0, 1.0, 0.6), text='',
|
||||
text_wordwrap=TTLocalizer.FIdirectFrameWordwrap,
|
||||
text_scale=TTLocalizer.FIdirectFrame,
|
||||
text_pos=TTLocalizer.FIdirectFramePos)
|
||||
self['image'] = DGG.getDefaultDialogGeom()
|
||||
self.avId = avId
|
||||
self.toonName = avName
|
||||
|
|
|
|||
|
|
@ -146,7 +146,8 @@ class FriendsListPanel(DirectFrame, StateData.StateData):
|
|||
self.title = DirectLabel(parent=self, relief=None, text='', text_scale=TTLocalizer.FLPtitle, text_fg=(0, 0.1, 0.4, 1), pos=(0.007, 0.0, 0.2))
|
||||
background_image = gui.find('**/FriendsBox_Open')
|
||||
self['image'] = background_image
|
||||
self.setPos(1.1, 0, 0.54)
|
||||
self.reparentTo(base.a2dTopRight)
|
||||
self.setPos(-0.23, 0, -0.46)
|
||||
self.scrollList = DirectScrolledList(parent=self, relief=None, incButton_image=(gui.find('**/FndsLst_ScrollUp'),
|
||||
gui.find('**/FndsLst_ScrollDN'),
|
||||
gui.find('**/FndsLst_ScrollUp_Rllvr'),
|
||||
|
|
|
|||
|
|
@ -55,7 +55,8 @@ class AvatarChooser(StateData.StateData):
|
|||
self.quitButton.show()
|
||||
if base.cr.loginInterface.supportsRelogin():
|
||||
self.logoutButton.show()
|
||||
self.pickAToonBG.reparentTo(base.camera)
|
||||
self.pickAToonBG.reparentTo(aspect2d)
|
||||
self.pickAToonBG.setBin('background', 1)
|
||||
choice = base.config.GetInt('auto-avatar-choice', -1)
|
||||
for panel in self.panelList:
|
||||
panel.show()
|
||||
|
|
|
|||
|
|
@ -94,7 +94,7 @@ class MakeAToon(StateData.StateData):
|
|||
if base.config.GetBool('want-qa-regression', 0):
|
||||
self.notify.info('QA-REGRESSION: MAKEATOON: Starting Make A Toon')
|
||||
base.cr.centralLogger.writeClientEvent('MAT - startingMakeAToon')
|
||||
base.camLens.setFov(ToontownGlobals.MakeAToonCameraFov)
|
||||
base.camLens.setMinFov(ToontownGlobals.MakeAToonCameraFov/ (4/3))
|
||||
base.playMusic(self.music, looping=1, volume=self.musicVolume)
|
||||
camera.setPosHpr(-5.7, -12.3501, 2.15, -24.8499, 2.73, 0)
|
||||
if self.warp:
|
||||
|
|
@ -116,7 +116,7 @@ class MakeAToon(StateData.StateData):
|
|||
self.fsm.request('GenderShop')
|
||||
|
||||
def exit(self):
|
||||
base.camLens.setFov(ToontownGlobals.DefaultCameraFov)
|
||||
base.camLens.setMinFov(ToontownGlobals.DefaultCameraFov/(4/3))
|
||||
self.guiTopBar.hide()
|
||||
self.guiBottomBar.hide()
|
||||
self.music.stop()
|
||||
|
|
|
|||
|
|
@ -110,7 +110,11 @@ class DistributedCannonGame(DistributedMinigame):
|
|||
purchaseModels = loader.loadModel('phase_4/models/gui/purchase_gui')
|
||||
self.jarImage = purchaseModels.find('**/Jar')
|
||||
self.jarImage.reparentTo(hidden)
|
||||
self.rewardPanel = DirectLabel(parent=hidden, relief=None, pos=(1.16, 0.0, 0.45), scale=0.65, text='', text_scale=0.2, text_fg=(0.95, 0.95, 0, 1), text_pos=(0, -.13), text_font=ToontownGlobals.getSignFont(), image=self.jarImage)
|
||||
self.rewardPanel = DirectLabel(parent=hidden, relief=None,
|
||||
pos = (-0.17, 0.0, -0.55),
|
||||
scale=0.65, text='', text_scale=0.2,
|
||||
text_fg=(0.95, 0.95, 0, 1), text_pos=(0, -.13),
|
||||
text_font=ToontownGlobals.getSignFont(), image=self.jarImage)
|
||||
self.rewardPanelTitle = DirectLabel(parent=self.rewardPanel, relief=None, pos=(0, 0, 0.06), scale=0.08, text=TTLocalizer.CannonGameReward, text_fg=(0.95, 0.95, 0, 1), text_shadow=(0, 0, 0, 1))
|
||||
self.music = base.loader.loadMusic('phase_4/audio/bgm/MG_cannon_game.ogg')
|
||||
self.sndCannonMove = base.loader.loadSfx('phase_4/audio/sfx/MG_cannon_adjust.ogg')
|
||||
|
|
@ -366,7 +370,7 @@ class DistributedCannonGame(DistributedMinigame):
|
|||
if not base.config.GetBool('endless-cannon-game', 0):
|
||||
self.timer.show()
|
||||
self.timer.countdown(CannonGameGlobals.GameTime, self.__gameTimerExpired)
|
||||
self.rewardPanel.reparentTo(aspect2d)
|
||||
self.rewardPanel.reparentTo(base.a2dTopRight)
|
||||
self.scoreMult = MinigameGlobals.getScoreMult(self.cr.playGame.hood.id)
|
||||
self.__startRewardCountdown()
|
||||
self.airborneToons = 0
|
||||
|
|
|
|||
|
|
@ -484,7 +484,8 @@ class DistributedCatchGame(DistributedMinigame):
|
|||
avName = self.getAvatarName(avId)
|
||||
scorePanel = MinigameAvatarScorePanel.MinigameAvatarScorePanel(avId, avName)
|
||||
scorePanel.setScale(0.9)
|
||||
scorePanel.setPos(0.75 - spacing * (self.numPlayers - 1 - i), 0.0, 0.85)
|
||||
scorePanel.setPos(-0.58 - spacing*((self.numPlayers-1)-i), 0.0, -0.15)
|
||||
scorePanel.reparentTo(base.a2dTopRight)
|
||||
scorePanel.makeTransparent(0.75)
|
||||
self.scorePanels.append(scorePanel)
|
||||
|
||||
|
|
|
|||
|
|
@ -230,7 +230,7 @@ class DistributedDivingGame(DistributedMinigame):
|
|||
camera.setZ(36)
|
||||
camera.setH(0)
|
||||
camera.setX(0)
|
||||
base.camLens.setFov(45)
|
||||
base.camLens.setMinFov(45/(4/3))
|
||||
camera.setY(-54)
|
||||
base.camLens.setFar(1500)
|
||||
self.introMovie = self.getIntroMovie()
|
||||
|
|
@ -271,13 +271,13 @@ class DistributedDivingGame(DistributedMinigame):
|
|||
self.boatTilt = Sequence(LerpFunc(self.boatModel.setR, duration=5, fromData=5, toData=-5, blendType='easeInOut', name='tilt'), LerpFunc(self.boatModel.setR, duration=5, fromData=-5, toData=5, blendType='easeInOut', name='tilt'))
|
||||
self.boatTilt.loop()
|
||||
self.mapScaleRatio = 40
|
||||
self.mapModel.reparentTo(aspect2d)
|
||||
self.mapModel.reparentTo(base.a2dTopRight)
|
||||
self.mapModel.setScale(1.0 / self.mapScaleRatio)
|
||||
self.mapModel.setTransparency(1)
|
||||
self.mapModel.setPos(1.15, -0.5, -0.125)
|
||||
self.mapModel.setPos(-0.22,-0.5,-0.130)
|
||||
self.mapModel.setColorScale(1, 1, 1, 0.7)
|
||||
self.mapModel.hide()
|
||||
if None != self.sndAmbience:
|
||||
if self.sndAmbience is not None:
|
||||
self.sndAmbience.setLoop(True)
|
||||
self.sndAmbience.play()
|
||||
self.sndAmbience.setVolume(0.01)
|
||||
|
|
@ -294,7 +294,7 @@ class DistributedDivingGame(DistributedMinigame):
|
|||
self.toonSDs[avId].exit()
|
||||
|
||||
base.camLens.setFar(ToontownGlobals.DefaultCameraFar)
|
||||
base.camLens.setFov(ToontownGlobals.DefaultCameraFov)
|
||||
base.camLens.setMinFov(ToontownGlobals.DefaultCameraFov/(4/3))
|
||||
base.setBackgroundColor(ToontownGlobals.DefaultBackgroundColor)
|
||||
self.arrowKeys.destroy()
|
||||
del self.arrowKeys
|
||||
|
|
@ -528,7 +528,8 @@ class DistributedDivingGame(DistributedMinigame):
|
|||
DistributedMinigame.setGameStart(self, timestamp)
|
||||
self.notify.debug('setGameStart')
|
||||
self.treasurePanel = TreasureScorePanel.TreasureScorePanel()
|
||||
self.treasurePanel.setPos(-1.19, 0, 0.75)
|
||||
self.treasurePanel.setPos(0.15,0, -0.27)
|
||||
self.treasurePanel.reparentTo(base.a2dTopLeft)
|
||||
self.treasurePanel.makeTransparent(0.7)
|
||||
self.introMovie.finish()
|
||||
self.gameFSM.request('swim')
|
||||
|
|
|
|||
|
|
@ -203,7 +203,7 @@ class DistributedPatternGame(DistributedMinigame):
|
|||
self.lt = base.localAvatar
|
||||
camera.reparentTo(render)
|
||||
camera.setPosHpr(0.0, -14.59, 10.56, 0.0, -16.39, 0.0)
|
||||
base.camLens.setFov(24.66)
|
||||
base.camLens.setMinFov(24.66/(4/3))
|
||||
NametagGlobals.setGlobalNametagScale(0.6)
|
||||
self.arrowKeys = ArrowKeys.ArrowKeys()
|
||||
self.room.reparentTo(render)
|
||||
|
|
@ -276,7 +276,7 @@ class DistributedPatternGame(DistributedMinigame):
|
|||
self.notify.debug('offstage')
|
||||
DistributedMinigame.offstage(self)
|
||||
self.music.stop()
|
||||
base.camLens.setFov(ToontownGlobals.DefaultCameraFov)
|
||||
base.camLens.setMinFov(ToontownGlobals.DefaultCameraFov/(4/3))
|
||||
NametagGlobals.setGlobalNametagScale(1.0)
|
||||
self.arrowKeys.destroy()
|
||||
del self.arrowKeys
|
||||
|
|
|
|||
|
|
@ -131,7 +131,12 @@ class DistributedPhotoGame(DistributedMinigame, PhotoGameBase.PhotoGameBase):
|
|||
self.filmImage = loader.loadModel('phase_4/models/minigames/photogame_filmroll')
|
||||
self.filmImage.reparentTo(hidden)
|
||||
self.tripodModel = loader.loadModel('phase_4/models/minigames/toon_cannon')
|
||||
self.filmPanel = DirectLabel(parent=hidden, relief=None, pos=(1.16, 0.0, 0.45), scale=0.65, text=str(self.filmCount), text_scale=0.2, text_fg=(0.95, 0.95, 0, 1), text_pos=(0.08, -0.15), text_font=ToontownGlobals.getSignFont(), image=self.filmImage, image_scale=Point3(1.0, 0.0, 0.85))
|
||||
self.filmPanel = DirectLabel(parent=hidden, relief=None, pos = (-0.23, -1.2, -0.55),
|
||||
scale=0.65, text=str(self.filmCount), text_scale=0.2,
|
||||
text_fg=(0.95, 0.95, 0, 1), text_pos=(0.08, -0.15),
|
||||
text_font=ToontownGlobals.getSignFont(),
|
||||
image=self.filmImage,
|
||||
image_scale=Point3(1.0, 0.0, 0.85))
|
||||
self.filmPanelTitle = DirectLabel(parent=self.filmPanel, relief=None, pos=(0.08, 0, 0.04), scale=0.08, text=TTLocalizer.PhotoGameFilm, text_fg=(0.95, 0.95, 0, 1), text_shadow=(0, 0, 0, 1))
|
||||
self.music = base.loader.loadMusic('phase_4/audio/bgm/MG_cannon_game.ogg')
|
||||
self.sndPhotoMove = base.loader.loadSfx('phase_4/audio/sfx/MG_cannon_adjust.ogg')
|
||||
|
|
@ -627,7 +632,7 @@ class DistributedPhotoGame(DistributedMinigame, PhotoGameBase.PhotoGameBase):
|
|||
hMove = hMDegree * (1.0 - ZOOMRATIO)
|
||||
vMove = vMDegree * (1.0 - ZOOMRATIO)
|
||||
self.currentFov = self.zoomFov
|
||||
base.camLens.setFov(self.zoomFov)
|
||||
base.camLens.setMinFov(self.zoomFov/ (4/3))
|
||||
self.blackoutNode.show()
|
||||
self.swivel.setHpr(self.swivel, hMove * -self.zoomFlip, vMove * self.zoomFlip, 0)
|
||||
else:
|
||||
|
|
@ -635,7 +640,7 @@ class DistributedPhotoGame(DistributedMinigame, PhotoGameBase.PhotoGameBase):
|
|||
hMove = hMDegree * ((1.0 - ZOOMRATIO) / ZOOMRATIO)
|
||||
vMove = vMDegree * ((1.0 - ZOOMRATIO) / ZOOMRATIO)
|
||||
self.currentFov = self.outFov
|
||||
base.camLens.setFov(self.outFov)
|
||||
base.camLens.setMinFov(self.outFov/(4/3))
|
||||
self.blackoutNode.hide()
|
||||
self.swivel.setHpr(self.swivel, hMove * self.zoomFlip, vMove * -self.zoomFlip, 0)
|
||||
|
||||
|
|
@ -664,7 +669,7 @@ class DistributedPhotoGame(DistributedMinigame, PhotoGameBase.PhotoGameBase):
|
|||
hMove = hMDegree * (1.0 - ZOOMRATIO)
|
||||
vMove = vMDegree * (1.0 - ZOOMRATIO)
|
||||
self.currentFov = self.zoomFov
|
||||
base.camLens.setFov(self.zoomFov)
|
||||
base.camLens.setMinFov(self.zoomFov/(4/3))
|
||||
self.blackoutNode.show()
|
||||
orgQuat = self.swivel.getQuat()
|
||||
self.swivel.setHpr(self.swivel, hMove * -self.zoomFlip, vMove * self.zoomFlip, 0)
|
||||
|
|
@ -890,7 +895,7 @@ class DistributedPhotoGame(DistributedMinigame, PhotoGameBase.PhotoGameBase):
|
|||
if not base.config.GetBool('endless-cannon-game', 0):
|
||||
self.timer.show()
|
||||
self.timer.countdown(self.data['TIME'], self.__gameTimerExpired)
|
||||
self.filmPanel.reparentTo(aspect2d)
|
||||
self.filmPanel.reparentTo(base.a2dTopRight)
|
||||
self.scoreMult = MinigameGlobals.getScoreMult(self.cr.playGame.hood.id)
|
||||
self.clockStopTime = None
|
||||
self.gameFSM.request('aim')
|
||||
|
|
@ -900,8 +905,8 @@ class DistributedPhotoGame(DistributedMinigame, PhotoGameBase.PhotoGameBase):
|
|||
self.generateAssignments(assignmentTemplates)
|
||||
self.generateAssignmentPanels()
|
||||
self.scorePanel = self.makeScoreFrame()
|
||||
self.scorePanel.reparentTo(aspect2d)
|
||||
self.scorePanel.setPos(1.05, 0.0, -0.725)
|
||||
self.scorePanel.reparentTo(base.a2dBottomRight)
|
||||
self.scorePanel.setPos(-0.3, 0, 0.3)
|
||||
self.updateAssignmentPanels()
|
||||
for subject in self.subjects:
|
||||
subject.useLOD(1000)
|
||||
|
|
|
|||
|
|
@ -315,7 +315,9 @@ class DistributedRaceGame(DistributedMinigame):
|
|||
diceButton = DirectButton(image=(button,
|
||||
button_down,
|
||||
button_ro,
|
||||
None), relief=None, pos=(-0.9 + (i - 1) * 0.2, 0.0, -0.85), scale=0.25, command=self.handleInputChoice, extraArgs=[i])
|
||||
None), relief=None, pos = (0.43 + ((i-1)*0.2), 0.0, 0.15),
|
||||
parent = base.a2dBottomLeft, scale=0.25,
|
||||
command=self.handleInputChoice, extraArgs=[i])
|
||||
diceButton.hide()
|
||||
self.diceButtonList.append(diceButton)
|
||||
|
||||
|
|
|
|||
|
|
@ -134,7 +134,7 @@ class DistributedRingGame(DistributedMinigame):
|
|||
camera.reparentTo(render)
|
||||
camera.reparentTo(base.localAvatar)
|
||||
camera.setPosHpr(0, self.CAMERA_Y + self.TOON_Y, 0, 0, 0, 0)
|
||||
base.camLens.setFov(80)
|
||||
base.camLens.setMinFov(80/ (4/3))
|
||||
base.camLens.setFar(self.FAR_PLANE_DIST)
|
||||
base.setBackgroundColor(self.WATER_COLOR)
|
||||
self.__fog = Fog('ringGameFog')
|
||||
|
|
@ -192,7 +192,7 @@ class DistributedRingGame(DistributedMinigame):
|
|||
self.__removeAllToonDropShadows()
|
||||
render.clearFog()
|
||||
base.camLens.setFar(ToontownGlobals.DefaultCameraFar)
|
||||
base.camLens.setFov(ToontownGlobals.DefaultCameraFov)
|
||||
base.camLens.setMinFov(ToontownGlobals.DefaultCameraFov/(4/3))
|
||||
base.setBackgroundColor(ToontownGlobals.DefaultBackgroundColor)
|
||||
self.arrowKeys.destroy()
|
||||
del self.arrowKeys
|
||||
|
|
|
|||
|
|
@ -704,7 +704,7 @@ class DistributedTargetGame(DistributedMinigame):
|
|||
self.__removeAllToonDropShadows()
|
||||
render.clearFog()
|
||||
base.camLens.setFar(ToontownGlobals.DefaultCameraFar)
|
||||
base.camLens.setFov(ToontownGlobals.DefaultCameraFov)
|
||||
base.camLens.setMinFov(ToontownGlobals.DefaultCameraFov/(4/3))
|
||||
camera.setHpr(0, 90, 0)
|
||||
base.setBackgroundColor(ToontownGlobals.DefaultBackgroundColor)
|
||||
self.arrowKeys.destroy()
|
||||
|
|
|
|||
|
|
@ -294,7 +294,7 @@ class DistributedTugOfWarGame(DistributedMinigame):
|
|||
self.setupTrack.finish()
|
||||
del self.setupTrack
|
||||
self.setupTrack = None
|
||||
base.camLens.setFov(ToontownGlobals.DefaultCameraFov)
|
||||
base.camLens.setMinFov(ToontownGlobals.DefaultCameraFov/(4/3))
|
||||
base.camLens.setNearFar(ToontownGlobals.DefaultCameraNear, ToontownGlobals.DefaultCameraFar)
|
||||
NametagGlobals.setGlobalNametagScale(1.0)
|
||||
if self.arrowKeys:
|
||||
|
|
@ -351,7 +351,7 @@ class DistributedTugOfWarGame(DistributedMinigame):
|
|||
lerpDur = 8
|
||||
self.introTrack = LerpPosHprInterval(camera, lerpDur, pos=gameCamPos, hpr=gameCamHpr, blendType='easeInOut', name=self.uniqueName('introLerpCameraPos'))
|
||||
self.introTrack.start()
|
||||
base.camLens.setFov(60 + 2 * self.numPlayers)
|
||||
base.camLens.setMinFov(60 + 2 * self.numPlayers / (4/3))
|
||||
base.camLens.setFar(450.0)
|
||||
return
|
||||
|
||||
|
|
|
|||
|
|
@ -71,7 +71,7 @@ class Purchase(PurchaseBase):
|
|||
purchaseModels.find('**/PurchScrn_BTN_RLVR'),
|
||||
purchaseModels.find('**/PurchScrn_BTN_UP')), text=TTLocalizer.GagShopBackToPlayground, text_fg=(0, 0.1, 0.7, 1), text_scale=0.05, text_pos=(0, 0.015, 0), image3_color=Vec4(0.6, 0.6, 0.6, 1), text3_fg=Vec4(0, 0, 0.4, 1), command=self.__handleBackToPlayground)
|
||||
self.timer = ToontownTimer.ToontownTimer()
|
||||
self.timer.reparentTo(self.frame)
|
||||
self.timer.hide()
|
||||
self.timer.posInTopRightCorner()
|
||||
numAvs = 0
|
||||
count = 0
|
||||
|
|
@ -119,16 +119,22 @@ class Purchase(PurchaseBase):
|
|||
self.foreground = loader.loadModel('phase_3.5/models/modules/TT_A1')
|
||||
self.foreground.setPos(12.5, -20, -5.5)
|
||||
self.foreground.setHpr(180, 0, 0)
|
||||
self.backgroundL = loader.loadModel('phase_3.5/models/modules/TT_A1')
|
||||
self.backgroundL = self.foreground.copyTo(hidden)
|
||||
self.backgroundL.setPos(-12.5, -25, -5)
|
||||
self.backgroundL.setHpr(180, 0, 0)
|
||||
self.backgroundR = self.backgroundL.copyTo(hidden)
|
||||
self.backgroundR.setPos(20, -25, -5)
|
||||
self.backgroundR.setPos(25, -25, -5)
|
||||
streets = loader.loadModel('phase_3.5/models/modules/street_modules')
|
||||
sidewalk = streets.find('**/street_sidewalk_40x40')
|
||||
self.sidewalk = sidewalk.copyTo(hidden)
|
||||
self.sidewalk.setPos(-20, -25, -5.5)
|
||||
self.sidewalk.setColor(0.9, 0.6, 0.4)
|
||||
self.sidewalkR = sidewalk.copyTo(hidden)
|
||||
self.sidewalkL = sidewalk.copyTo(hidden)
|
||||
self.sidewalkL.setPos(-40, -25, -5.5)
|
||||
self.sidewalkL.setColor(0.9, 0.6, 0.4)
|
||||
self.sidewalkR.setPos(0, -25, -5.5)
|
||||
self.sidewalkR.setColor(0.9, 0.6, 0.4)
|
||||
streets.removeNode()
|
||||
doors = loader.loadModel('phase_4/models/modules/doors')
|
||||
door = doors.find('**/door_single_square_ur_door')
|
||||
|
|
@ -164,6 +170,7 @@ class Purchase(PurchaseBase):
|
|||
self.backToPlayground.destroy()
|
||||
del self.backToPlayground
|
||||
self.timer.stop()
|
||||
self.timer.destroy()
|
||||
del self.timer
|
||||
for counter in self.counters:
|
||||
counter.destroy()
|
||||
|
|
@ -203,6 +210,10 @@ class Purchase(PurchaseBase):
|
|||
self.convertingVotesToBeansLabel.removeNode()
|
||||
self.rewardDoubledJellybeanLabel.removeNode()
|
||||
del self.convertingVotesToBeansLabel
|
||||
self.sidewalkL.removeNode()
|
||||
self.sidewalkR.removeNode()
|
||||
del self.sidewalkL
|
||||
del self.sidewalkR
|
||||
del self.rewardDoubledJellybeanLabel
|
||||
|
||||
def showStatusText(self, text):
|
||||
|
|
@ -278,15 +289,17 @@ class Purchase(PurchaseBase):
|
|||
self.counters = []
|
||||
self.totalCounters = []
|
||||
camera.reparentTo(render)
|
||||
base.camLens.setFov(ToontownGlobals.DefaultCameraFov)
|
||||
camera.setPos(0, 16.0, 2.0)
|
||||
camera.lookAt(0, 0, 0.75)
|
||||
base.transitions.irisIn(0.4)
|
||||
base.camLens.setMinFov(60/(4/3))
|
||||
self.title.reparentTo(aspect2d)
|
||||
self.foreground.reparentTo(render)
|
||||
self.backgroundL.reparentTo(render)
|
||||
self.backgroundR.reparentTo(render)
|
||||
self.sidewalk.reparentTo(render)
|
||||
self.sidewalkL.reparentTo(render)
|
||||
self.sidewalkR.reparentTo(render)
|
||||
self.door.reparentTo(render)
|
||||
size = 20
|
||||
z = -2.5
|
||||
|
|
@ -557,6 +570,7 @@ class Purchase(PurchaseBase):
|
|||
totalDelay += COUNT_DOWN_RATE
|
||||
|
||||
def exitReward(self):
|
||||
base.camLens.setMinFov(ToontownGlobals.DefaultCameraFov/(4./3.))
|
||||
self.ignore('clientCleanup')
|
||||
taskMgr.remove('countUpTask')
|
||||
taskMgr.remove('countVotesUpTask')
|
||||
|
|
@ -585,6 +599,8 @@ class Purchase(PurchaseBase):
|
|||
self.backgroundL.reparentTo(hidden)
|
||||
self.backgroundR.reparentTo(hidden)
|
||||
self.sidewalk.reparentTo(hidden)
|
||||
self.sidewalkL.reparentTo(hidden)
|
||||
self.sidewalkR.reparentTo(hidden)
|
||||
self.door.reparentTo(hidden)
|
||||
self.title.reparentTo(self.frame)
|
||||
self.convertingVotesToBeansLabel.hide()
|
||||
|
|
@ -619,6 +635,7 @@ class Purchase(PurchaseBase):
|
|||
return
|
||||
if not self.tutorialMode:
|
||||
if not config.GetBool('disable-purchase-timer', 0):
|
||||
self.timer.show()
|
||||
self.timer.countdown(self.remain, self.__timerExpired)
|
||||
if config.GetBool('metagame-disable-playAgain', 0):
|
||||
if self.metagameRound > -1:
|
||||
|
|
|
|||
|
|
@ -171,7 +171,7 @@ class DistributedPartyTrampolineActivity(DistributedPartyActivity):
|
|||
self.quitEarlyButton.stash()
|
||||
self.flashText = OnscreenText(text='', pos=(0.0, -0.45), scale=0.2, fg=(1.0, 1.0, 0.65, 1.0), align=TextNode.ACenter, font=ToontownGlobals.getSignFont(), mayChange=True)
|
||||
self.timer = PartyUtils.getNewToontownTimer()
|
||||
self.timer.reparentTo(self.screenPlaneElements)
|
||||
self.timer.posInTopRightCorner()
|
||||
return
|
||||
|
||||
def loadSounds(self):
|
||||
|
|
|
|||
|
|
@ -10,7 +10,10 @@ class QuestChoiceGui(DirectFrame):
|
|||
notify = DirectNotifyGlobal.directNotify.newCategory('QuestChoiceGui')
|
||||
|
||||
def __init__(self):
|
||||
DirectFrame.__init__(self, relief=None, geom=DGG.getDefaultDialogGeom(), geom_color=Vec4(0.8, 0.6, 0.4, 1), geom_scale=(1.85, 1, 0.9), geom_hpr=(0, 0, -90), pos=(-0.85, 0, 0))
|
||||
DirectFrame.__init__(self, relief=None, parent = base.a2dLeftCenter,
|
||||
geom=DGG.getDefaultDialogGeom(),
|
||||
geom_color=Vec4(0.8, 0.6, 0.4, 1), geom_scale=(1.85, 1, 0.9),
|
||||
geom_hpr=(0, 0, -90), pos = (0.5,0,0),)
|
||||
self.initialiseoptions(QuestChoiceGui)
|
||||
self.questChoicePosters = []
|
||||
guiButton = loader.loadModel('phase_3/models/gui/quit_button')
|
||||
|
|
|
|||
|
|
@ -59,8 +59,16 @@ class QuestMap(DirectFrame):
|
|||
self.marker['image'] = iconNP
|
||||
self.marker.setScale(0.05)
|
||||
iconNP.removeNode()
|
||||
self.mapOpenButton = DirectButton(image=(gui.find('**/tt_t_gui_qst_mapClose'), gui.find('**/tt_t_gui_qst_mapClose'), gui.find('**/tt_t_gui_qst_mapTryToOpen')), relief=None, pos=(1.25, 0, -0.63), scale=0.205, command=self.show)
|
||||
self.mapCloseButton = DirectButton(image=(gui.find('**/tt_t_gui_qst_mapOpen'), gui.find('**/tt_t_gui_qst_mapOpen'), gui.find('**/tt_t_gui_qst_mapTryToClose')), relief=None, pos=(1.25, 0, -0.63), scale=0.205, command=self.hide)
|
||||
self.mapOpenButton = DirectButton(image=(gui.find('**/tt_t_gui_qst_mapClose'),
|
||||
gui.find('**/tt_t_gui_qst_mapClose'),
|
||||
gui.find('**/tt_t_gui_qst_mapTryToOpen')),
|
||||
relief=None, pos=(-0.1, 0, 0.4),
|
||||
parent=base.a2dBottomRight, scale=0.205,
|
||||
command=self.show)
|
||||
self.mapCloseButton = DirectButton(image=(gui.find('**/tt_t_gui_qst_mapOpen'),
|
||||
gui.find('**/tt_t_gui_qst_mapOpen'),
|
||||
gui.find('**/tt_t_gui_qst_mapTryToClose')),
|
||||
relief=None, pos=(-0.1, 0, 0.4), parent=base.a2dBottomRight, scale=0.205, command=self.hide)
|
||||
self.mapOpenButton.hide()
|
||||
self.mapCloseButton.hide()
|
||||
gui.removeNode()
|
||||
|
|
|
|||
|
|
@ -538,6 +538,7 @@ class DistributedVehicle(DistributedSmoothNode.DistributedSmoothNode, Kart.Kart,
|
|||
self.toon.loop('neutral')
|
||||
self.toon.startSmooth()
|
||||
NametagGlobals.setOnscreenChatForced(0)
|
||||
base.camLens.setMinFov(ToontownGlobals.DefaultCameraFov/(4/3))
|
||||
return
|
||||
|
||||
def doHeadScale(self, model, scale):
|
||||
|
|
@ -606,9 +607,9 @@ class DistributedVehicle(DistributedSmoothNode.DistributedSmoothNode, Kart.Kart,
|
|||
if not self.speedometer:
|
||||
cm = CardMaker('speed')
|
||||
cm.setFrame(-0.5, 0.5, -0.5, 0.5)
|
||||
self.speedometerImages = aspect2d.attachNewNode('SpeedometerImages')
|
||||
self.speedometerImages = base.a2dBottomRight.attachNewNode('SpeedometerImages')
|
||||
self.speedometerImages.setTransparency(True)
|
||||
self.speedometerImages.setPos(1.24, 0.0, -0.98)
|
||||
self.speedometerImages.setPos(-0.1, 0.0, 0.03)
|
||||
self.speedometerImages.setScale(0.75)
|
||||
m = loader.loadModel('phase_6/models/karting/speedometer')
|
||||
if self.getBodyColor() == InvalidEntry:
|
||||
|
|
@ -632,7 +633,10 @@ class DistributedVehicle(DistributedSmoothNode.DistributedSmoothNode, Kart.Kart,
|
|||
c = (bodyColor + Vec4(1, 1, 1, 1)) / 2.0
|
||||
c.setW(1.0)
|
||||
self.speedometerImages.attachNewNode(m.find('**/*ring').node()).setColorScale(c)
|
||||
self.speedometer = DirectLabel(relief=None, pos=(1.24, 0.0, -0.98), text=str(0), text_scale=0.18, text_fg=bodyColor, text_pos=(-0.04, 0.02, 0), text_font=ToontownGlobals.getSignFont())
|
||||
self.speedometer = DirectLabel(relief=None, pos = (-0.1, 0.0, 0.03), text=str(0),
|
||||
text_scale=0.18, text_fg=bodyColor,
|
||||
text_pos=(-0.04, 0.02, 0), text_font=ToontownGlobals.getSignFont())
|
||||
self.speedometer.reparentTo(base.a2dBottomRight)
|
||||
else:
|
||||
self.showSpeedometer()
|
||||
self.arrowVert = 0
|
||||
|
|
@ -680,13 +684,13 @@ class DistributedVehicle(DistributedSmoothNode.DistributedSmoothNode, Kart.Kart,
|
|||
|
||||
def startTurbo(self):
|
||||
newCameraPos = Point3(0, -25, 16)
|
||||
newCameraFov = 90
|
||||
newCameraFov = 70
|
||||
turboDuration = 3
|
||||
startFov = base.camLens.getFov().getX()
|
||||
startFov = ToontownGlobals.DefaultCameraFov/(4/3)
|
||||
if self.cameraTrack:
|
||||
self.cameraTrack.pause()
|
||||
cameraZoomIn = Parallel(LerpPosInterval(camera, 2, newCameraPos), LerpFunc(base.camLens.setFov, fromData=startFov, toData=newCameraFov, duration=2))
|
||||
cameraToNormal = Parallel(LerpPosInterval(camera, 1, Point3(0, -33, 16), newCameraPos), LerpFunc(base.camLens.setFov, fromData=newCameraFov, toData=ToontownGlobals.DefaultCameraFov, duration=1))
|
||||
cameraZoomIn = Parallel(LerpPosInterval(camera, 2, newCameraPos), LerpFunc(base.camLens.setMinFov, fromData=startFov, toData=newCameraFov, duration=2))
|
||||
cameraToNormal = Parallel(LerpPosInterval(camera, 1, Point3(0, -33, 16), newCameraPos), LerpFunc(base.camLens.setMinFov, fromData=newCameraFov, toData=startFov, duration=1))
|
||||
self.cameraTrack = Sequence(Func(self.turboStartSfx.play), cameraZoomIn, Func(lambda : self.setTurbo(True)), Wait(turboDuration), Func(self.__stopTurbo), cameraToNormal)
|
||||
self.cameraTrack.start()
|
||||
|
||||
|
|
@ -1098,7 +1102,7 @@ class DistributedVehicle(DistributedSmoothNode.DistributedSmoothNode, Kart.Kart,
|
|||
self.imHitMult = level
|
||||
if hasattr(self, 'cameraTrack') and self.cameraTrack:
|
||||
self.cameraTrack.pause()
|
||||
cameraToNormal = Parallel(LerpPosInterval(camera, 0.05, Point3(0, -33, 16), startPos=camera.getPos()), LerpFunc(base.camLens.setFov, fromData=base.camLens.getFov()[0], toData=ToontownGlobals.DefaultCameraFov, duration=0.05))
|
||||
cameraToNormal = Parallel(LerpPosInterval(camera, 0.05, Point3(0, -33, 16), startPos=camera.getPos()), LerpFunc(base.camLens.setMinFov, fromData=base.camLens.getFov()[0], toData=ToontownGlobals.DefaultCameraFov/(4/3), duration=0.05))
|
||||
cameraToNormal.start()
|
||||
self.__stopTurbo()
|
||||
self.stopped = True
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
from direct.directnotify import DirectNotifyGlobal
|
||||
from panda3d.core import *
|
||||
from panda3d.physics import *
|
||||
from direct.gui.DirectGui import *
|
||||
from panda3d.core import *
|
||||
from direct.interval.IntervalGlobal import *
|
||||
from otp.avatar import ShadowCaster
|
||||
from toontown.racing.KartDNA import *
|
||||
|
|
|
|||
|
|
@ -111,8 +111,8 @@ class RaceGUI:
|
|||
return
|
||||
|
||||
def initRaceMode(self):
|
||||
self.mapScene = self.raceModeRoot.attachNewNode('MapScene')
|
||||
self.mapScene.setPos(1.1, 0, 0.75)
|
||||
self.mapScene = base.a2dTopRight.attachNewNode('MapScene')
|
||||
self.mapScene.setPos(-0.2, 0, -0.2)
|
||||
self.mapScene.setScale(0.25, 0.001, 0.25)
|
||||
maxT = self.race.curve.getMaxT()
|
||||
pt = Vec3(0, 0, 0)
|
||||
|
|
@ -132,19 +132,25 @@ class RaceGUI:
|
|||
self.faceStartPos = Vec3(-0.8, 0, 0.93)
|
||||
self.faceEndPos = Vec3(0.8, 0, 0.93)
|
||||
self.placeLabelNum = DirectLabel(relief=None, pos=TTLocalizer.RGUIplaceLabelNumPos, text='1', text_scale=0.35, text_fg=(0.95, 0.95, 0, 1), text_font=ToontownGlobals.getSignFont())
|
||||
self.placeLabelNum.reparentTo(self.raceModeRoot)
|
||||
self.directObjList.append(self.placeLabelNum)
|
||||
self.placeLabelNum.reparentTo(base.a2dBottomLeft)
|
||||
self.directObjList.append(base.a2dBottomLeft)
|
||||
self.placeLabelStr = DirectLabel(relief=None, pos=TTLocalizer.RGUIplaceLabelStrPos, text=TTLocalizer.KartRace_FirstSuffix, text_scale=0.1, text_fg=(0.95, 0.95, 0, 1), text_font=ToontownGlobals.getSignFont())
|
||||
self.placeLabelStr.reparentTo(self.raceModeRoot)
|
||||
self.placeLabelStr.reparentTo(base.a2dBottomLeft)
|
||||
self.directObjList.append(self.placeLabelStr)
|
||||
self.lapLabel = DirectLabel(relief=None, pos=(1.1, 0, 0.45), text='1/' + str(self.race.lapCount), text_scale=0.1, text_fg=(0.95, 0.95, 0, 1), text_font=ToontownGlobals.getSignFont())
|
||||
self.lapLabel.reparentTo(self.raceModeRoot)
|
||||
self.lapLabel = DirectLabel(relief=None, pos = (-0.22, 0, -0.5),
|
||||
text='1/' + str(self.race.lapCount),
|
||||
text_scale=0.1, text_fg=(0.95, 0.95, 0, 1),
|
||||
text_font=ToontownGlobals.getSignFont())
|
||||
self.lapLabel.reparentTo(base.a2dTopRight)
|
||||
self.directObjList.append(self.lapLabel)
|
||||
self.photoFinishLabel = DirectLabel(relief=None, pos=(0, 0, -0.1), text=TTLocalizer.KartRace_PhotoFinish, text_scale=TTLocalizer.RGUIphotoFinish, text_fg=(0.95, 0.95, 0, 1), text_font=ToontownGlobals.getSignFont())
|
||||
self.photoFinishLabel.hide()
|
||||
self.directObjList.append(self.photoFinishLabel)
|
||||
self.wrongWayLabel = DirectLabel(relief=None, pos=(1.1, 0, 0.85), text=TTLocalizer.KartRace_WrongWay, text_scale=0.1, text_fg=(0.95, 0, 0, 1), text_font=ToontownGlobals.getSignFont())
|
||||
self.wrongWayLabel.reparentTo(self.raceModeRoot)
|
||||
self.wrongWayLabel = DirectLabel(relief=None, pos = (-0.22,0,-0.2),
|
||||
text=TTLocalizer.KartRace_WrongWay,
|
||||
text_scale=0.1, text_fg=(0.95, 0, 0, 1),
|
||||
text_font=ToontownGlobals.getSignFont())
|
||||
self.wrongWayLabel.reparentTo(base.a2dTopRight)
|
||||
self.directObjList.append(self.wrongWayLabel)
|
||||
self.wrongWayLabel.setColorScale(Vec4(1, 1, 1, 0))
|
||||
self.wrongWaySeq = Sequence(self.wrongWayLabel.colorScaleInterval(0.25, colorScale=Vec4(1, 1, 1, 1), startColorScale=Vec4(1, 1, 1, 0)), self.wrongWayLabel.colorScaleInterval(0.25, colorScale=Vec4(1, 1, 1, 0), startColorScale=Vec4(1, 1, 1, 1)))
|
||||
|
|
@ -166,7 +172,10 @@ class RaceGUI:
|
|||
self.cardMaker.setName('GagIndicator')
|
||||
self.cardMaker.setFrame(-0.5, 0.5, -0.5, 0.5)
|
||||
self.cardMaker.setColor(1, 1, 1, 1)
|
||||
self.gagPanel = DirectFrame(parent=self.raceModeRoot, relief=None, image=loader.loadModel('phase_6/models/karting/gag_panel'), image_scale=0.25, pos=(-1.13, 0, -0.5))
|
||||
self.gagPanel = DirectFrame(parent=base.a2dBottomLeft, relief=None,
|
||||
image=loader.loadModel('phase_6/models/karting/gag_panel'),
|
||||
image_scale=0.25,
|
||||
pos = (0.2,0,0.6))
|
||||
self.directObjList.append(self.gagPanel)
|
||||
self.gag = self.gagPanel.attachNewNode('gag')
|
||||
self.gag.setScale(0.2)
|
||||
|
|
|
|||
|
|
@ -39,9 +39,16 @@ class DisplaySettingsDialog(DirectFrame, StateData.StateData):
|
|||
self.apiChanged = 0
|
||||
screenSizes = [(640, 480),
|
||||
(800, 600),
|
||||
(1280, 720),
|
||||
(1024, 768),
|
||||
(1440, 900),
|
||||
(1280, 1024),
|
||||
(1600, 1200)]
|
||||
(1920, 1080),
|
||||
(1600, 1200),
|
||||
(2560, 1440),
|
||||
(4096, 2160)
|
||||
|
||||
]
|
||||
displayInfo = base.pipe.getDisplayInformation()
|
||||
for i in range(displayInfo.getTotalDisplayModes()):
|
||||
width = displayInfo.getDisplayModeWidth(i)
|
||||
|
|
|
|||
|
|
@ -123,8 +123,18 @@ class ShtikerBook(DirectFrame, StateData.StateData):
|
|||
self['image'] = bookModel.find('**/big_book')
|
||||
self['image_scale'] = (2, 1, 1.5)
|
||||
self.resetFrameSize()
|
||||
self.bookOpenButton = DirectButton(image=(bookModel.find('**/BookIcon_CLSD'), bookModel.find('**/BookIcon_OPEN'), bookModel.find('**/BookIcon_RLVR')), relief=None, pos=(1.175, 0, -0.83), scale=0.305, command=self.__open)
|
||||
self.bookCloseButton = DirectButton(image=(bookModel.find('**/BookIcon_OPEN'), bookModel.find('**/BookIcon_CLSD'), bookModel.find('**/BookIcon_RLVR2')), relief=None, pos=(1.175, 0, -0.83), scale=0.305, command=self.__close)
|
||||
self.bookOpenButton = DirectButton(image=(bookModel.find('**/BookIcon_CLSD'),
|
||||
bookModel.find('**/BookIcon_OPEN'),
|
||||
bookModel.find('**/BookIcon_RLVR')),
|
||||
relief=None, pos=(-0.16, 0, 0.17),
|
||||
parent=base.a2dBottomRight,
|
||||
scale=0.305, command=self.__open)
|
||||
self.bookCloseButton = DirectButton(image=(bookModel.find('**/BookIcon_OPEN'),
|
||||
bookModel.find('**/BookIcon_CLSD'),
|
||||
bookModel.find('**/BookIcon_RLVR2')),
|
||||
relief=None, pos=(-0.16, 0, 0.17),
|
||||
parent = base.a2dBottomRight,
|
||||
scale=0.305, command=self.__close)
|
||||
self.bookOpenButton.hide()
|
||||
self.bookCloseButton.hide()
|
||||
self.nextArrow = DirectButton(parent=self, relief=None, image=(bookModel.find('**/arrow_button'), bookModel.find('**/arrow_down'), bookModel.find('**/arrow_rollover')), scale=(0.1, 0.1, 0.1), pos=(0.838, 0, -0.661), command=self.__pageChange, extraArgs=[1])
|
||||
|
|
|
|||
|
|
@ -68,7 +68,12 @@ class GroupPanel(DirectObject.DirectObject):
|
|||
frameZPos = 0.0278943
|
||||
quitButtonZPos = -0.30366
|
||||
guiButtons = loader.loadModel('phase_9/models/gui/tt_m_gui_brd_status')
|
||||
self.frame = DirectFrame(relief=None, image=bgImage, image_scale=(0.5, 1, 0.5), image_pos=(0, 0, bgImageZPos), textMayChange=1, pos=(-1.044, 0, frameZPos))
|
||||
self.frame = DirectFrame(relief=None,
|
||||
parent = base.a2dLeftCenter,
|
||||
image=bgImage, image_scale=(0.5, 1, 0.5),
|
||||
image_pos=(0, 0, bgImageZPos),
|
||||
textMayChange=1,
|
||||
pos = (0.32, 0, frameZPos))
|
||||
self.frameBounds = self.frame.getBounds()
|
||||
leaveButtonGui = loader.loadModel('phase_3.5/models/gui/tt_m_gui_brd_leaveBtn')
|
||||
leaveImageList = (leaveButtonGui.find('**/tt_t_gui_brd_leaveUp'),
|
||||
|
|
@ -90,8 +95,20 @@ class GroupPanel(DirectObject.DirectObject):
|
|||
arrowGui = loader.loadModel('phase_9/models/gui/tt_m_gui_brd_arrow')
|
||||
hideImageList = (arrowGui.find('**/tt_t_gui_brd_arrow_up'), arrowGui.find('**/tt_t_gui_brd_arrow_down'), arrowGui.find('**/tt_t_gui_brd_arrow_hover'))
|
||||
showImageList = (arrowGui.find('**/tt_t_gui_brd_arrow_up'), arrowGui.find('**/tt_t_gui_brd_arrow_down'), arrowGui.find('**/tt_t_gui_brd_arrow_hover'))
|
||||
self.hideButton = DirectButton(relief=None, text_pos=(0, 0.15), text_scale=0.06, text_align=TextNode.ALeft, text_fg=Vec4(0, 0, 0, 1), text_shadow=Vec4(1, 1, 1, 1), image=hideImageList, image_scale=(-0.35, 1, 0.5), pos=(-1.3081, 0, 0.03), scale=1.05, command=self.hide)
|
||||
self.showButton = DirectButton(relief=None, text=('', TTLocalizer.BoardingGroupShow, TTLocalizer.BoardingGroupShow), text_pos=(0.03, 0), text_scale=0.06, text_align=TextNode.ALeft, text_fg=Vec4(1, 1, 1, 1), text_shadow=Vec4(0, 0, 0, 1), image=showImageList, image_scale=(0.35, 1, 0.5), pos=(-1.3081, 0, 0.03), scale=1.05, command=self.show)
|
||||
self.hideButton = DirectButton(relief=None, parent = base.a2dLeftCenter, text_pos=(0, 0.15),
|
||||
text_scale=0.06,
|
||||
text_align=TextNode.ALeft, text_fg=Vec4(0, 0, 0, 1),
|
||||
text_shadow=Vec4(1, 1, 1, 1), image=hideImageList,
|
||||
image_scale=(-0.35, 1, 0.5),
|
||||
pos=(-1.3081, 0, 0.03), scale=1.05, command=self.hide)
|
||||
self.showButton = DirectButton(relief=None, parent = base.a2dLeftCenter,
|
||||
text=('', TTLocalizer.BoardingGroupShow,
|
||||
TTLocalizer.BoardingGroupShow),
|
||||
text_pos=(0.03, 0), text_scale=0.06,
|
||||
text_align=TextNode.ALeft, text_fg=Vec4(1, 1, 1, 1),
|
||||
text_shadow=Vec4(0, 0, 0, 1), image=showImageList,
|
||||
image_scale=(0.35, 1, 0.5), pos=(-1.3081, 0, 0.03),
|
||||
scale=1.05, command=self.show)
|
||||
self.showButton.hide()
|
||||
self.frame.show()
|
||||
self.__makeAvatarNameScrolledList()
|
||||
|
|
|
|||
|
|
@ -92,7 +92,19 @@ class LocalToon(DistributedToon.DistributedToon, LocalAvatar.LocalAvatar):
|
|||
newScale = oldScale = 0.8
|
||||
if WantNewsPage:
|
||||
newScale = oldScale * ToontownGlobals.NewsPageScaleAdjust
|
||||
self.bFriendsList = DirectButton(image=(friendsButtonNormal, friendsButtonPressed, friendsButtonRollover), relief=None, pos=(1.192, 0, 0.875), scale=newScale, text=('', TTLocalizer.FriendsListLabel, TTLocalizer.FriendsListLabel), text_scale=0.09, text_fg=Vec4(1, 1, 1, 1), text_shadow=Vec4(0, 0, 0, 1), text_pos=(0, -0.18), text_font=ToontownGlobals.getInterfaceFont(), command=self.sendFriendsListEvent)
|
||||
self.bFriendsList = DirectButton(image=(friendsButtonNormal, friendsButtonPressed,
|
||||
friendsButtonRollover),
|
||||
relief=None,
|
||||
pos=(-0.14, 0, -0.13),
|
||||
parent=base.a2dTopRight,
|
||||
scale=newScale,
|
||||
text=('', TTLocalizer.FriendsListLabel,
|
||||
TTLocalizer.FriendsListLabel),
|
||||
text_scale=0.09, text_fg=Vec4(1, 1, 1, 1),
|
||||
text_shadow=Vec4(0, 0, 0, 1),
|
||||
text_pos=(0, -0.18),
|
||||
text_font=ToontownGlobals.getInterfaceFont(),
|
||||
command=self.sendFriendsListEvent)
|
||||
self.bFriendsList.hide()
|
||||
self.friendsListButtonActive = 0
|
||||
self.friendsListButtonObscured = 0
|
||||
|
|
@ -369,11 +381,14 @@ class LocalToon(DistributedToon.DistributedToon, LocalAvatar.LocalAvatar):
|
|||
self.book.setPage(self.mapPage, enterPage=False)
|
||||
self.laffMeter = LaffMeter.LaffMeter(self.style, self.hp, self.maxHp)
|
||||
self.laffMeter.setAvatar(self)
|
||||
self.laffMeter.reparentTo(base.a2dBottomLeft)
|
||||
self.laffMeter.setScale(0.075)
|
||||
if self.style.getAnimal() == 'monkey':
|
||||
self.laffMeter.setPos(-1.18, 0.0, -0.87)
|
||||
# The monkey laff meter is slightly bigger because the
|
||||
# ears hang off to the side, so slide it over to the right
|
||||
self.laffMeter.setPos(0.15, 0., 0.13)
|
||||
else:
|
||||
self.laffMeter.setPos(-1.2, 0.0, -0.87)
|
||||
self.laffMeter.setPos(0.13, 0., 0.13)
|
||||
self.laffMeter.stop()
|
||||
self.questMap = QuestMap.QuestMap(self)
|
||||
self.questMap.stop()
|
||||
|
|
@ -961,7 +976,8 @@ class LocalToon(DistributedToon.DistributedToon, LocalAvatar.LocalAvatar):
|
|||
if self.__furnitureGui:
|
||||
return
|
||||
guiModels = loader.loadModel('phase_5.5/models/gui/house_design_gui')
|
||||
self.__furnitureGui = DirectFrame(relief=None, pos=(-1.19, 0.0, 0.33), scale=0.04, image=guiModels.find('**/attic'))
|
||||
self.__furnitureGui = DirectFrame(relief=None, pos=(0.12, 0.00, -0.66),
|
||||
scale=0.04, image=guiModels.find('**/attic'))
|
||||
DirectLabel(parent=self.__furnitureGui, relief=None, image=guiModels.find('**/rooftile'))
|
||||
bMoveStartUp = guiModels.find('**/bu_attic/bu_attic_up')
|
||||
bMoveStartDown = guiModels.find('**/bu_attic/bu_attic_down')
|
||||
|
|
@ -1009,16 +1025,16 @@ class LocalToon(DistributedToon.DistributedToon, LocalAvatar.LocalAvatar):
|
|||
rgba = VBase4(0.71589, 0.784547, 0.974, 1.0)
|
||||
white = VBase4(1.0, 1.0, 1.0, 1.0)
|
||||
icon.setColor(white)
|
||||
claraXPos = ClaraBaseXPos
|
||||
claraXPos = 0.12
|
||||
newScale = oldScale = 0.5
|
||||
newPos = (claraXPos, 1.0, 0.37)
|
||||
newPos = (claraXPos, 0, -0.63)
|
||||
if WantNewsPage:
|
||||
claraXPos += AdjustmentForNewsButton
|
||||
oldPos = ((claraXPos, 1.0, 0.37),)
|
||||
newScale = oldScale * ToontownGlobals.NewsPageScaleAdjust
|
||||
newPos = (claraXPos - 0.1, 1.0, 0.45)
|
||||
newPos = (claraXPos - 0.1, 0, -0.13)
|
||||
self.__clarabelleButton = DirectButton(relief=None, image=circle, text='', text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1), text_scale=0.1, text_pos=(-1.06, 1.06), text_font=ToontownGlobals.getInterfaceFont(), pos=newPos, scale=newScale, command=self.__handleClarabelleButton)
|
||||
self.__clarabelleButton.reparentTo(aspect2d, DGG.BACKGROUND_SORT_INDEX - 1)
|
||||
self.__clarabelleButton.reparentTo(base.a2dTopRight, DGG.BACKGROUND_SORT_INDEX - 1)
|
||||
button = self.__clarabelleButton.stateNodePath[0]
|
||||
self.__clarabelleFlash = Sequence(LerpColorInterval(button, 2, white, blendType='easeInOut'), LerpColorInterval(button, 2, rgba, blendType='easeInOut'))
|
||||
self.__clarabelleFlash.loop()
|
||||
|
|
@ -1179,14 +1195,18 @@ class LocalToon(DistributedToon.DistributedToon, LocalAvatar.LocalAvatar):
|
|||
if self.moveFurnitureButtonObscured <= 0:
|
||||
if self.furnitureManager != None and self.furnitureDirector == self.doId:
|
||||
self.loadFurnitureGui()
|
||||
self.__furnitureGui.setPos(-1.16, 0, -0.03)
|
||||
self.__furnitureGui.setPos(0.155,-0.6,-1.045)
|
||||
self.__furnitureGui.setScale(0.06)
|
||||
elif self.cr.furnitureManager != None:
|
||||
self.showFurnitureGui()
|
||||
if self.lerpFurnitureButton:
|
||||
self.lerpFurnitureButton.finish()
|
||||
self.lerpFurnitureButton = None
|
||||
self.lerpFurnitureButton = self.__furnitureGui.posHprScaleInterval(pos=Point3(-1.19, 0.0, 0.33), hpr=Vec3(0.0, 0.0, 0.0), scale=Vec3(0.04, 0.04, 0.04), duration=1.0, blendType='easeInOut', name='lerpFurnitureButton')
|
||||
self.lerpFurnitureButton = self.__furnitureGui.posHprScaleInterval(pos = Point3(0.12, 0.00, -0.66),
|
||||
hpr=Vec3(0.0, 0.0, 0.0),
|
||||
scale=Vec3(0.04, 0.04, 0.04),
|
||||
duration=1.0, blendType='easeInOut',
|
||||
name='lerpFurnitureButton')
|
||||
self.lerpFurnitureButton.start()
|
||||
if hasattr(self, 'inEstate') and self.inEstate:
|
||||
self.loadGardeningGui()
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ def unloadAvatarDetail():
|
|||
class ToonAvatarDetailPanel(DirectFrame):
|
||||
notify = DirectNotifyGlobal.directNotify.newCategory('ToonAvatarDetailPanel')
|
||||
|
||||
def __init__(self, avId, avName, playerId = None, parent = aspect2dp, **kw):
|
||||
def __init__(self, avId, avName, playerId = None, parent = base.a2dTopRight, **kw):
|
||||
print('ToonAvatarDetailPanel %s' % playerId)
|
||||
buttons = loader.loadModel('phase_3/models/gui/dialog_box_buttons_gui')
|
||||
gui = loader.loadModel('phase_3.5/models/gui/avatar_panel_gui')
|
||||
|
|
@ -54,7 +54,7 @@ class ToonAvatarDetailPanel(DirectFrame):
|
|||
self.playerInfo = None
|
||||
if self.playerId:
|
||||
self.playerInfo = base.cr.playerFriendsManager.playerId2Info.get(playerId)
|
||||
optiondefs = (('pos', (0.525, 0.0, 0.525), None),
|
||||
optiondefs = (('pos', (-0.8, 0.0, -0.5), None),
|
||||
('scale', 0.5, None),
|
||||
('relief', None, None),
|
||||
('image', detailPanel, None),
|
||||
|
|
|
|||
|
|
@ -54,7 +54,8 @@ class ToonAvatarPanel(AvatarPanelBase.AvatarPanelBase):
|
|||
self.frame = DirectFrame(
|
||||
image=gui.find('**/avatar_panel'),
|
||||
relief=None,
|
||||
pos=(1.1, 100, 0.525))
|
||||
pos=(-0.22, 100, -0.47),
|
||||
parent=base.a2dTopRight)
|
||||
|
||||
self.disabledImageColor = Vec4(1, 1, 1, 0.4)
|
||||
self.text0Color = Vec4(1, 1, 1, 1)
|
||||
|
|
|
|||
|
|
@ -41,7 +41,10 @@ class ToonTeleportPanel(DirectFrame):
|
|||
notify = DirectNotifyGlobal.directNotify.newCategory('ToonTeleportPanel')
|
||||
|
||||
def __init__(self, avId, avName, avDisableName):
|
||||
DirectFrame.__init__(self, pos=(0.3, 0.1, 0.65), image_color=ToontownGlobals.GlobalDialogColor, image_scale=(1.0, 1.0, 0.6), text='', text_wordwrap=13.5, text_scale=0.06, text_pos=(0.0, 0.18))
|
||||
DirectFrame.__init__(self, pos = (-1, 0.1, -0.4), image_color=ToontownGlobals.GlobalDialogColor,
|
||||
parent = base.a2dTopRight,
|
||||
image_scale=(1.0, 1.0, 0.6), text='', text_wordwrap=13.5,
|
||||
text_scale=0.06, text_pos=(0.0, 0.18))
|
||||
messenger.send('releaseDirector')
|
||||
self['image'] = DGG.getDefaultDialogGeom()
|
||||
self.avId = avId
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ NametagReverse = False
|
|||
TTCISCspeedChat = 0.055
|
||||
TTCISCtopLevelOverlap = 0.0
|
||||
TCMnormalButton = 0.06
|
||||
TCMscButtonPos = (-1.129, 0, 0.928)
|
||||
TCMscButtonPos = (0.2, 0, -0.07)
|
||||
TCMscButton = 0.06
|
||||
TCMwhisperFrame = 0.06
|
||||
TCMwhisperButton = 0.05
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
from .ToontownGlobals import *
|
||||
import math
|
||||
from . import TTLocalizer
|
||||
BattleCamFaceOffFov = 30.0
|
||||
BattleCamFaceOffFov = 80.0
|
||||
BattleCamFaceOffPos = Point3(0, -10, 4)
|
||||
BattleCamDefaultPos = Point3(0, -8.6, 16.5)
|
||||
BattleCamDefaultHpr = Vec3(0, -61, 0)
|
||||
|
|
|
|||
|
|
@ -130,7 +130,8 @@ class TownBattle(StateData.StateData):
|
|||
TownBattleToonPanel.TownBattleToonPanel(2),
|
||||
TownBattleToonPanel.TownBattleToonPanel(3))
|
||||
self.timer = ToontownTimer.ToontownTimer()
|
||||
self.timer.setPos(1.182, 0, 0.842)
|
||||
self.timer.reparentTo(base.a2dTopRight)
|
||||
self.timer.setPos(-0.15, 0, -0.16)
|
||||
self.timer.setScale(0.4)
|
||||
self.timer.hide()
|
||||
return
|
||||
|
|
|
|||
Loading…
Reference in New Issue