mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-01 17:35:34 -04:00
removed scenario weights from spec
This commit is contained in:
parent
f96290f66e
commit
1f045f2f17
@ -72,7 +72,7 @@ class DistributedLevelAI(DistributedObjectAI.DistributedObjectAI,
|
||||
|
||||
# choose a scenario
|
||||
# make list of lists: [(weight, scenarioIndex), ...]
|
||||
lol = zip(levelSpec.getScenarioWeights(),
|
||||
lol = zip([1] * levelSpec.getNumScenarios(),
|
||||
range(levelSpec.getNumScenarios()))
|
||||
wc = WeightedChoice.WeightedChoice(lol)
|
||||
scenarioIndex = wc.choose()[1]
|
||||
|
@ -33,7 +33,7 @@ class LevelSpec:
|
||||
newSpec = 1
|
||||
self.specDict = {
|
||||
'globalEntities': {},
|
||||
'scenarios': [[{}, 1]],
|
||||
'scenarios': [{}],
|
||||
}
|
||||
|
||||
assert hasattr(self, 'specDict')
|
||||
@ -76,12 +76,6 @@ class LevelSpec:
|
||||
def getNumScenarios(self):
|
||||
return len(self.specDict['scenarios'])
|
||||
|
||||
def getScenarioWeights(self):
|
||||
weights = []
|
||||
for entry in self.specDict['scenarios']:
|
||||
weights.append(entry[1])
|
||||
return weights
|
||||
|
||||
def setScenario(self, scenario):
|
||||
assert scenario in range(0, self.getNumScenarios())
|
||||
self.scenario = scenario
|
||||
@ -141,7 +135,7 @@ class LevelSpec:
|
||||
return self.specDict['globalEntities']
|
||||
|
||||
def privGetScenarioEntityDict(self, scenario):
|
||||
return self.specDict['scenarios'][scenario][0]
|
||||
return self.specDict['scenarios'][scenario]
|
||||
|
||||
def printZones(self):
|
||||
"""currently prints list of zoneNum->zone name"""
|
||||
@ -319,7 +313,6 @@ class LevelSpec:
|
||||
# structure names
|
||||
globalEntitiesName = 'GlobalEntities'
|
||||
scenarioEntitiesName = 'Scenario%s'
|
||||
scenarioWeightName = 'Scenarios'
|
||||
topLevelName = 'levelSpec'
|
||||
def getPrettyEntityDictStr(name, dict, tabs=0):
|
||||
def t(n):
|
||||
@ -369,21 +362,15 @@ class LevelSpec:
|
||||
|
||||
str += t(1)+'}\n'
|
||||
return str
|
||||
def getPrettyScenarioWeightTableStr(tabs=0, self=self):
|
||||
def t(n):
|
||||
return (tabs+n)*tab
|
||||
str = t(0)+'%s = [\n' % scenarioWeightName
|
||||
for i in range(self.getNumScenarios()):
|
||||
str += t(1)+'[%s, %s],\n' % (scenarioEntitiesName % i,
|
||||
self.getScenarioWeights()[i])
|
||||
str += t(1)+']\n'
|
||||
return str
|
||||
def getPrettyTopLevelDictStr(tabs=0):
|
||||
def t(n):
|
||||
return (tabs+n)*tab
|
||||
str = t(0)+'%s = {\n' % topLevelName
|
||||
str += t(1)+"'globalEntities': %s,\n" % globalEntitiesName
|
||||
str += t(1)+"'scenarios': %s,\n" % scenarioWeightName
|
||||
str += t(1)+"'scenarios': [\n"
|
||||
for i in range(self.getNumScenarios()):
|
||||
str += t(2)+'%s,\n' % (scenarioEntitiesName % i)
|
||||
str += t(2)+'],\n'
|
||||
str += t(1)+'}\n'
|
||||
return str
|
||||
|
||||
@ -402,10 +389,6 @@ class LevelSpec:
|
||||
self.privGetScenarioEntityDict(i))
|
||||
str += '\n'
|
||||
|
||||
# add the scenario weight table
|
||||
str += getPrettyScenarioWeightTableStr()
|
||||
str += '\n'
|
||||
|
||||
# add the top-level table
|
||||
str += getPrettyTopLevelDictStr()
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user