mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-04 02:42:49 -04:00
phase 3.5
This commit is contained in:
parent
2a17447405
commit
0469272b39
@ -1160,8 +1160,7 @@ class Actor(PandaObject, NodePath):
|
|||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
||||||
def loadModel(self, modelPath, partName="modelRoot", lodName="lodRoot",
|
def loadModel(self, modelPath, partName="modelRoot", lodName="lodRoot", copy = 1):
|
||||||
copy = 1):
|
|
||||||
"""loadModel(self, string, string="modelRoot", string="lodRoot",
|
"""loadModel(self, string, string="modelRoot", string="lodRoot",
|
||||||
bool = 0)
|
bool = 0)
|
||||||
Actor model loader. Takes a model name (ie file path), a part
|
Actor model loader. Takes a model name (ie file path), a part
|
||||||
@ -1179,7 +1178,9 @@ class Actor(PandaObject, NodePath):
|
|||||||
|
|
||||||
if (model == None):
|
if (model == None):
|
||||||
print "model = None!!!"
|
print "model = None!!!"
|
||||||
|
return self.prepareModel(model, partName, lodName)
|
||||||
|
|
||||||
|
def prepareModel(self, model, partName="modelRoot", lodName="lodRoot"):
|
||||||
bundle = model.find("**/+PartBundleNode")
|
bundle = model.find("**/+PartBundleNode")
|
||||||
if (bundle.isEmpty()):
|
if (bundle.isEmpty()):
|
||||||
Actor.notify.warning("%s is not a character!" % (modelPath))
|
Actor.notify.warning("%s is not a character!" % (modelPath))
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
# Initialize class variable for source file and node for node path textures
|
# Initialize class variable for source file and node for node path textures
|
||||||
# Will use instance copy of this in functions below
|
# Will use instance copy of this in functions below
|
||||||
# For now hardcode in a toontown model
|
# For now hardcode in a toontown model
|
||||||
sourceFileName = 'phase_5/models/props/suit-particles'
|
sourceFileName = 'phase_3.5/models/props/suit-particles'
|
||||||
sourceNodeName = '**/fire'
|
sourceNodeName = '**/fire'
|
||||||
|
|
||||||
def getSourceFileName(self):
|
def getSourceFileName(self):
|
||||||
|
@ -35,7 +35,7 @@ COLOR_TYPES = ['wall_color', 'window_color',
|
|||||||
'door_awning_color', 'cornice_color',
|
'door_awning_color', 'cornice_color',
|
||||||
'prop_color']
|
'prop_color']
|
||||||
# The list of dna components maintained in the style attribute dictionary
|
# The list of dna components maintained in the style attribute dictionary
|
||||||
DNA_TYPES = ['wall', 'window', 'sign', 'door', 'cornice', 'toon_landmark',
|
DNA_TYPES = ['wall', 'window', 'sign', 'door_double', 'door_single', 'cornice', 'toon_landmark',
|
||||||
'prop', 'street']
|
'prop', 'street']
|
||||||
BUILDING_TYPES = ['10_10', '20', '10_20', '20_10', '10_10_10',
|
BUILDING_TYPES = ['10_10', '20', '10_20', '20_10', '10_10_10',
|
||||||
'4_21', '3_22', '4_13_8', '3_13_9', '10',
|
'4_21', '3_22', '4_13_8', '3_13_9', '10',
|
||||||
@ -468,7 +468,8 @@ class LevelEditor(NodePath, PandaObject):
|
|||||||
('select_baseline_style', self.panel.setSignBaselineStyle),
|
('select_baseline_style', self.panel.setSignBaselineStyle),
|
||||||
('select_door_color', self.setDNATargetColor),
|
('select_door_color', self.setDNATargetColor),
|
||||||
('select_door_orientation', self.setDNATargetOrientation),
|
('select_door_orientation', self.setDNATargetOrientation),
|
||||||
('select_door_texture', self.setDNATargetCode, ['door']),
|
('select_door_single_texture', self.setDNATargetCode, ['door']),
|
||||||
|
('select_door_double_texture', self.setDNATargetCode, ['door']),
|
||||||
('select_door_awning_texture', self.setDNATargetCode,
|
('select_door_awning_texture', self.setDNATargetCode,
|
||||||
['door_awning']),
|
['door_awning']),
|
||||||
('select_door_awning_color', self.setDNATargetColor),
|
('select_door_awning_color', self.setDNATargetColor),
|
||||||
@ -1506,15 +1507,21 @@ class LevelEditor(NodePath, PandaObject):
|
|||||||
return newDNACornice
|
return newDNACornice
|
||||||
|
|
||||||
def createDoor(self, type):
|
def createDoor(self, type):
|
||||||
if not (self.getCurrent('door_texture')):
|
|
||||||
doorStyles = self.styleManager.attributeDictionary['door_texture'].getList()[:-1]
|
|
||||||
defaultDoorStyle = doorStyles[randint(0, len(doorStyles) - 1)]
|
|
||||||
self.setCurrent('door_texture', defaultDoorStyle)
|
|
||||||
if (type == 'landmark_door'):
|
if (type == 'landmark_door'):
|
||||||
newDNADoor = DNADoor('door')
|
newDNADoor = DNADoor('door')
|
||||||
|
if not (self.getCurrent('door_double_texture')):
|
||||||
|
doorStyles = self.styleManager.attributeDictionary['door_double_texture'].getList()[1:]
|
||||||
|
defaultDoorStyle = whrandom.choice(doorStyles)
|
||||||
|
self.setCurrent('door_double_texture', defaultDoorStyle)
|
||||||
|
newDNADoor.setCode(self.getCurrent('door_double_texture'))
|
||||||
|
newDNADoor.setColor(self.getCurrent('door_color'))
|
||||||
elif (type == 'door'):
|
elif (type == 'door'):
|
||||||
newDNADoor = DNAFlatDoor('door')
|
newDNADoor = DNAFlatDoor('door')
|
||||||
newDNADoor.setCode(self.getCurrent('door_texture'))
|
if not (self.getCurrent('door_single_texture')):
|
||||||
|
doorStyles = self.styleManager.attributeDictionary['door_single_texture'].getList()[1:]
|
||||||
|
defaultDoorStyle = whrandom.choice(doorStyles)
|
||||||
|
self.setCurrent('door_single_texture', defaultDoorStyle)
|
||||||
|
newDNADoor.setCode(self.getCurrent('door_single_texture'))
|
||||||
newDNADoor.setColor(self.getCurrent('door_color'))
|
newDNADoor.setColor(self.getCurrent('door_color'))
|
||||||
return newDNADoor
|
return newDNADoor
|
||||||
|
|
||||||
@ -1697,7 +1704,7 @@ class LevelEditor(NodePath, PandaObject):
|
|||||||
elif direct.gotAlt(modifiers):
|
elif direct.gotAlt(modifiers):
|
||||||
menuMode = 'door_orientation'
|
menuMode = 'door_orientation'
|
||||||
else:
|
else:
|
||||||
menuMode = 'door_texture'
|
menuMode = 'door_double_texture'
|
||||||
else:
|
else:
|
||||||
# Do sign operations
|
# Do sign operations
|
||||||
if direct.gotControl(modifiers):
|
if direct.gotControl(modifiers):
|
||||||
@ -1757,7 +1764,7 @@ class LevelEditor(NodePath, PandaObject):
|
|||||||
elif direct.gotAlt(modifiers):
|
elif direct.gotAlt(modifiers):
|
||||||
menuMode = 'door_orientation'
|
menuMode = 'door_orientation'
|
||||||
else:
|
else:
|
||||||
menuMode = 'door_texture'
|
menuMode = 'door_single_texture'
|
||||||
else:
|
else:
|
||||||
# Do window operations
|
# Do window operations
|
||||||
if direct.gotControl(modifiers):
|
if direct.gotControl(modifiers):
|
||||||
@ -3921,7 +3928,10 @@ class LevelStyleManager:
|
|||||||
elif (dnaType == 'sign'):
|
elif (dnaType == 'sign'):
|
||||||
attribute.setMenu(self.createDNAPieMenu(dnaType, dnaList,
|
attribute.setMenu(self.createDNAPieMenu(dnaType, dnaList,
|
||||||
sf = 0.05))
|
sf = 0.05))
|
||||||
elif (dnaType == 'door'):
|
elif (dnaType == 'door_double'):
|
||||||
|
attribute.setMenu(self.createDNAPieMenu(dnaType, dnaList,
|
||||||
|
sf = 0.035))
|
||||||
|
elif (dnaType == 'door_single'):
|
||||||
attribute.setMenu(self.createDNAPieMenu(dnaType, dnaList,
|
attribute.setMenu(self.createDNAPieMenu(dnaType, dnaList,
|
||||||
sf = 0.035))
|
sf = 0.035))
|
||||||
elif (dnaType == 'cornice'):
|
elif (dnaType == 'cornice'):
|
||||||
@ -4425,7 +4435,7 @@ class DNAWallStyle:
|
|||||||
file.write('window_count: %s\n' % self['window_count'])
|
file.write('window_count: %s\n' % self['window_count'])
|
||||||
if self['window_awning_texture']:
|
if self['window_awning_texture']:
|
||||||
writeAttributes(file, 'window_awning')
|
writeAttributes(file, 'window_awning')
|
||||||
if self['door_texture']:
|
if self['door_single_texture']:
|
||||||
writeAttributes(file, 'door')
|
writeAttributes(file, 'door')
|
||||||
if self['door_awning_texture']:
|
if self['door_awning_texture']:
|
||||||
writeAttributes(file, 'door_awning')
|
writeAttributes(file, 'door_awning')
|
||||||
|
Loading…
x
Reference in New Issue
Block a user