> > BR#3577185 exposes a weakness in options processing. In current games > the difficulty levels contain the full option group hierarchy: > > <freecol-specification difficultyLevel="model.difficulty.medium" id="freecol"> > ... > <optionGroup editable="false" id="difficultyLevels"> > <optionGroup editable="false" id="model.difficulty.veryEasy"> > <optionGroup editable="false" id="model.difficulty.immigration"> > ...flat options... > </optionGroup> > ...more difficulty levels... > > however in older games the difficulty level does not contain optionGroups > (and also seem to be editable, not sure if this is relevant): > > <freecol-specification difficultyLevel="model.difficulty.veryHard" > id="freecol"> > ... > <optionGroup editable="true" id="difficultyLevels"> > <optionGroup editable="true" id="model.difficulty.veryEasy"> > ...flattened options... > </optionGroup> > ...more dificulty levels... > > This is not a problem until we define another option group. Which is > what I just did with the AI-Cheating options. Whenever we add a new > option we add fixup hacks in FreeColServer.fixGameOptions, which has > been done including adding an option group. This appears to work > in-game, except for the "Show Difficulty Level" report (shift-F9). > The hierarchical groups case works as expected but the flattened case > only displays the new option group. I believe this to be a quirk of > the OptionGroupUI code, which (not unreasonably) assumes that the > option group tree only contains Options/leaves at the bottom level of > the tree, not at the same level as other OptionGroups. > > How best to fix this is unclear to me. Any thoughts folks? > > Cheers, > Mike Pope >
Tricky. I see that I did not read your email thoroughly enough the first time. For the meantime, I have reverted my recent patches. Regards Michael ------------------------------------------------------------------------------ Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev _______________________________________________ Freecol-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freecol-developers
