Skip to content

Commit 206f03e

Browse files
committed
add export to bam option
1 parent 8d9db1a commit 206f03e

File tree

3 files changed

+29
-4
lines changed

3 files changed

+29
-4
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@ notice.txt
128128
screenshots/
129129
maps/
130130
phase_*/
131+
leveleditor/*.bam
131132

132133
# VS Code
133134
.history

toontown/leveleditor/LevelEditorPanel.py

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
import sys
22
import Pmw
3+
import os
34

45
from tkinter import *
56
from tkinter import ttk
7+
from tkinter.filedialog import asksaveasfilename
68

79
from direct.showbase.TkGlobal import *
810
from direct.tkwidgets import Floater
@@ -66,6 +68,11 @@ def __init__(self, levelEditor, parent = None, **kw):
6668
'Save DNA File',
6769
label = 'Save DNA',
6870
command = DNASerializer.outputDNADefaultFile)
71+
menuBar.addmenuitem('Level Editor', 'command',
72+
'Export level as .BAM',
73+
label = 'Export as .BAM',
74+
command = self.exportToBam)
75+
6976
menuBar.addmenuitem('Level Editor', 'separator')
7077
menuBar.addmenuitem('Level Editor', 'command',
7178
'Edit Visibility Groups',
@@ -84,6 +91,7 @@ def __init__(self, levelEditor, parent = None, **kw):
8491
'Make Street Along Curve',
8592
label = 'Make Street Along Curve',
8693
command = self.levelEditor.makeStreetAlongCurve)
94+
8795
menuBar.addmenuitem('Level Editor', 'separator')
8896
menuBar.addmenuitem('Level Editor', 'command',
8997
'Exit Level Editor Panel',
@@ -206,7 +214,7 @@ def __init__(self, levelEditor, parent = None, **kw):
206214
'min': 1, 'max': 60
207215
})
208216

209-
#self.autoSaverDialogMax = Pmw.Counter(self.autoSaverDialog.interior(),
217+
# self.autoSaverDialogMax = Pmw.Counter(self.autoSaverDialog.interior(),
210218
# labelpos = 'w',
211219
# label_text = 'Max auto save files:',
212220
# entry_width = 10,
@@ -215,7 +223,7 @@ def __init__(self, levelEditor, parent = None, **kw):
215223
# 'min': 0, 'max': 99
216224
# })
217225

218-
counters = (self.autoSaverEnable, self.autoSaverDialogInterval)#, self.autoSaverDialogMax)
226+
counters = (self.autoSaverEnable, self.autoSaverDialogInterval) # , self.autoSaverDialogMax)
219227
Pmw.alignlabels(counters)
220228
for counter in counters:
221229
counter.pack(fill = 'both', expand = 1)
@@ -1515,7 +1523,7 @@ def setAutoSaverInterval(self, i):
15151523
try:
15161524
settings['autosave-enabled'] = bool(self.autoSaverEnabled.get())
15171525
settings['autosave-interval'] = int(self.autoSaverDialogInterval.get())
1518-
#settings['autosave-max-files'] = float(self.autoSaverDialogMax.get())
1526+
# settings['autosave-max-files'] = float(self.autoSaverDialogMax.get())
15191527
# Reset the autosaver
15201528
AutoSaver.initializeAutoSaver()
15211529
except ValueError as e:
@@ -1589,3 +1597,19 @@ def toggleDrive(self):
15891597
self.levelEditor.useDriveMode()
15901598
else:
15911599
self.levelEditor.useDirectFly()
1600+
1601+
def exportToBam(self):
1602+
"""
1603+
Export level geometry as .bam
1604+
:return:
1605+
"""
1606+
path = Filename.expandFrom(userfiles).toOsSpecific()
1607+
if not os.path.isdir(path):
1608+
path = '.'
1609+
fileName = asksaveasfilename(defaultextension = '.dna',
1610+
filetypes = (('Panda3D Model Files', '*.bam'), ('All files', '*')),
1611+
initialdir = path,
1612+
title = 'Export as .BAM',
1613+
parent = self.component('hull'))
1614+
if fileName:
1615+
self.levelEditor.getNPToplevel().writeBamFile(Filename.expandFrom(fileName))

ver

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.1.11
1+
1.1.12

0 commit comments

Comments
 (0)