mirror of
https://github.com/Sneed-Group/Poodletooth-iLand
synced 2025-01-09 17:53:50 +00:00
TrackShop gui and air_cache fix
This commit is contained in:
parent
10aba8fda3
commit
56f312a1d7
4 changed files with 39 additions and 61 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -13,7 +13,6 @@
|
||||||
# Game-specific files and directories:
|
# Game-specific files and directories:
|
||||||
preferences.json
|
preferences.json
|
||||||
*.json
|
*.json
|
||||||
*.pets
|
|
||||||
logs/
|
logs/
|
||||||
screenshots/
|
screenshots/
|
||||||
backups/
|
backups/
|
||||||
|
|
1
astron/databases/.gitignore
vendored
Normal file
1
astron/databases/.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
*.db
|
1
astron/databases/air_cache/.gitignore
vendored
Normal file
1
astron/databases/air_cache/.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
*.pets
|
|
@ -1,38 +1,35 @@
|
||||||
from pandac.PandaModules import *
|
from pandac.PandaModules import *
|
||||||
|
from panda3d.core import NodePath, ModelNode
|
||||||
from direct.fsm import StateData
|
from direct.fsm import StateData
|
||||||
from direct.gui.DirectGui import *
|
from direct.gui.DirectGui import *
|
||||||
from toontown.toonbase import TTLocalizer, ToontownGlobals
|
from toontown.toonbase import TTLocalizer, ToontownGlobals
|
||||||
from direct.directnotify import DirectNotifyGlobal
|
from direct.directnotify import DirectNotifyGlobal
|
||||||
from toontown.toonbase.ToontownBattleGlobals import AvPropsNew
|
from toontown.toonbase import ToontownBattleGlobals
|
||||||
|
|
||||||
class TrackShop(StateData.StateData):
|
class TrackShop(StateData.StateData):
|
||||||
notify = DirectNotifyGlobal.directNotify.newCategory('TrackShop')
|
notify = DirectNotifyGlobal.directNotify.newCategory('TrackShop')
|
||||||
|
|
||||||
def __init__(self, doneEvent):
|
def __init__(self, doneEvent):
|
||||||
StateData.StateData.__init__(self, doneEvent)
|
StateData.StateData.__init__(self, doneEvent)
|
||||||
self.quest = None
|
|
||||||
self.label = None
|
|
||||||
self.leftButton = None
|
|
||||||
self.rightButton = None
|
|
||||||
self.track = None
|
|
||||||
self.icon = None
|
|
||||||
self.loaded = False
|
self.loaded = False
|
||||||
self.index = 0
|
self.index = 0
|
||||||
|
self.buttonPath = None
|
||||||
|
self.curTrackLabel = None
|
||||||
return
|
return
|
||||||
|
|
||||||
|
def showButtons(self):
|
||||||
|
self.buttonPath.show()
|
||||||
|
self.curTrackLabel.show()
|
||||||
|
|
||||||
|
def hideButtons(self):
|
||||||
|
self.buttonPath.hide()
|
||||||
|
self.curTrackLabel.hide()
|
||||||
|
|
||||||
def enter(self):
|
def enter(self):
|
||||||
base.disableMouse()
|
base.disableMouse()
|
||||||
self.acceptOnce('last', self.__handleBackward)
|
self.acceptOnce('last', self.__handleBackward)
|
||||||
self.acceptOnce('next', self.__handleForward)
|
self.acceptOnce('next', self.__handleForward)
|
||||||
|
|
||||||
def showButtons(self):
|
|
||||||
for element in [self.quest, self.label, self.leftButton, self.rightButton, self.track, self.icon]:
|
|
||||||
element.show()
|
|
||||||
|
|
||||||
def hideButtons(self):
|
|
||||||
for element in [self.quest, self.label, self.leftButton, self.rightButton, self.track, self.icon]:
|
|
||||||
element.hide()
|
|
||||||
|
|
||||||
def exit(self):
|
def exit(self):
|
||||||
self.ignore('last')
|
self.ignore('last')
|
||||||
self.ignore('next')
|
self.ignore('next')
|
||||||
|
@ -41,60 +38,40 @@ class TrackShop(StateData.StateData):
|
||||||
def load(self):
|
def load(self):
|
||||||
if self.loaded:
|
if self.loaded:
|
||||||
return
|
return
|
||||||
|
|
||||||
self.loaded = True
|
self.loaded = True
|
||||||
self.questGui = loader.loadModel('phase_3.5/models/gui/stickerbook_gui')
|
|
||||||
self.inventoryGui = loader.loadModel('phase_3.5/models/gui/inventory_icons')
|
|
||||||
self.buttonGui = loader.loadModel('phase_3/models/gui/tt_m_gui_mat_mainGui')
|
|
||||||
self.shuffleArrowUp = self.buttonGui.find('**/tt_t_gui_mat_shuffleArrowUp')
|
|
||||||
self.shuffleArrowDown = self.buttonGui.find('**/tt_t_gui_mat_shuffleArrowDown')
|
|
||||||
|
|
||||||
self.quest = DirectFrame(aspect2d, relief=None, image=self.questGui.find('**/questCard'),
|
buttonModel = ModelNode('tracks')
|
||||||
pos=(-0.62, 0, 0), image_scale=1.5)
|
self.buttonPath = NodePath(buttonModel)
|
||||||
|
|
||||||
self.label = DirectLabel(aspect2d, relief=None, text=TTLocalizer.PickTrackNotice,
|
self.curTrackLabel = DirectLabel(aspect2d, relief=None,
|
||||||
text_fg=(0, 1, 0, 1), text_scale=0.12, text_font=ToontownGlobals.getToonFont(),
|
text='toon-up', text_scale=0.12, text_font=ToontownGlobals.getSignFont(), text_fg=(1, 0, 0, 1),
|
||||||
pos=(-0.62, 0, 0.45), text_shadow=(0, 0.392, 0, 1))
|
pos=(0, 0, -0.9))
|
||||||
|
|
||||||
self.leftButton = DirectButton(aspect2d, relief=None, image=(self.shuffleArrowUp, self.shuffleArrowDown),
|
buttonImage = loader.loadModel("phase_3/models/gui/quit_button.bam")
|
||||||
pos=(-1.2, 0, -0.05), command=self.handleSetIndex, extraArgs=[-1])
|
|
||||||
|
|
||||||
self.rightButton = DirectButton(aspect2d, relief=None, image=(self.shuffleArrowUp, self.shuffleArrowDown),
|
availableTracks = [(0, 'toon-up'), (1, 'trap'), (2, 'lure'), (3, 'sound'), (4, 'drop')]
|
||||||
pos=(-0.05, 0, -0.05), scale=-1, command=self.handleSetIndex, extraArgs=[1])
|
for i, track in reversed(availableTracks):
|
||||||
|
track = DirectButton(self.buttonPath, relief=None,
|
||||||
|
text=track, text_scale=0.08, text_font=ToontownGlobals.getSignFont(), text_pos=(0, -0.03), text_fg=(1, 0, 0, 1),
|
||||||
|
pos=(0, 0, (i * 0.15) - 0.5),
|
||||||
|
image=(buttonImage.find('**/QuitBtn_UP'), buttonImage.find('**/QuitBtn_DN'), buttonImage.find('**/QuitBtn_RLVR')),
|
||||||
|
command=self.handleSetIndex, extraArgs=[i, track])
|
||||||
|
|
||||||
self.track = DirectLabel(aspect2d, relief=None, text='',
|
self.buttonPath.reparentTo(aspect2d)
|
||||||
text_scale=0.11, text_font=ToontownGlobals.getSignFont(),
|
|
||||||
pos=(-0.64, 0, -0.08), text_shadow=(1, 1, 1, 1))
|
|
||||||
|
|
||||||
self.icon = DirectFrame(aspect2d, relief=None, pos=(-0.65, 0, -0.3), image_scale=1.5)
|
|
||||||
|
|
||||||
self.updateGuiByIndex()
|
|
||||||
|
|
||||||
def unload(self):
|
def unload(self):
|
||||||
for element in [self.quest, self.label, self.leftButton, self.rightButton, self.track, self.icon]:
|
if self.buttonPath:
|
||||||
if element:
|
self.buttonPath.removeNode()
|
||||||
element.destroy()
|
del self.buttonPath
|
||||||
del element
|
if self.curTrackLabel:
|
||||||
|
self.curTrackLabel.removeNode()
|
||||||
|
del self.curTrackLabel
|
||||||
self.index = 0
|
self.index = 0
|
||||||
self.loaded = False
|
self.loaded = False
|
||||||
|
|
||||||
def handleSetIndex(self, offset):
|
def handleSetIndex(self, i, track):
|
||||||
newIndex = self.index + offset
|
self.index = i
|
||||||
|
self.curTrackLabel['text'] = track
|
||||||
if newIndex == 4:
|
|
||||||
self.index = 6
|
|
||||||
elif newIndex == 5:
|
|
||||||
self.index = 3
|
|
||||||
elif newIndex > -1 and newIndex < len(ToontownGlobals.PropIdToColor):
|
|
||||||
self.index = newIndex
|
|
||||||
|
|
||||||
self.updateGuiByIndex()
|
|
||||||
|
|
||||||
def updateGuiByIndex(self):
|
|
||||||
self.track['text'] = TTLocalizer.PropIdToName[self.index]
|
|
||||||
self.track['text_fg'] = ToontownGlobals.PropIdToColor[self.index]
|
|
||||||
self.icon['image'] = self.inventoryGui.find('**/' + AvPropsNew[self.index][0])
|
|
||||||
|
|
||||||
def __handleForward(self):
|
def __handleForward(self):
|
||||||
self.doneStatus = 'next'
|
self.doneStatus = 'next'
|
||||||
|
|
Loading…
Reference in a new issue