From: Stefan F. <ste...@we...> - 2011-11-08 23:10:21
|
Erik, I do not think it is a perfect solution and I do not feel happy about the current implementation. However I do not think that the code not only works correct accidentally, but there was a little consideration and some testing involved. Automatically choosing pass if pass is the only option is not a bad solution and the request in 18EU as well as the renewed request for 1835 by John David Galt showed that a silent pass in those cases is actually favored by most players. And given my e-mail at the time of implementation in 2010 shows that I have not sneaked that feature into our code base. However if you have a better solution I am more than happy to implement that and I could also add an additional check that it only silently passes in StartRounds and exclude all other RoundTypes. I have to admit that to me this seems more like an additional dependency, but this is based on my opinion that automatic (silent) passes is not a bad thing even outside of StartRounds. Another idea would be to make this a Configuration option to allow Novice Players to be not surprised by automatic passes. Stefan On Tuesday, November 08, 2011 11:57:01 pm Erik Vos wrote: > > > 2. I understood this code was intended to autopass in start rounds > > > only, but nothing in that code restricts its working to start rounds. > > > I would expect a condition like ' if (getCurrentRound() instanceof > > > > StartRound) '. > > > > I was undecided if it should cover also other cases. However in all other > > Rounds it is never the case that the sole action is a pass: In > > StockRounds there is always the AutoPass action available, in > > OperatingRounds Pass is never the sole action too (here Skip or Done is > > used). So pragmatically > > there > > > was no need for an additional restriction and no one ever commented if it > > would be nice to extend it to the other cases, so I never followed up. > > So correct working is dependent on unrelated circumstances accidentally > being the case in other round types. > > > > 3. The code claims to check that there is only a Pass in the possible > > > actions, but in fact it only checks that the first action is a Pass. > > > In practice that might be equivalent, at least in the current code, > > > but it creates a dependency that I would rather avoid. What you really > > > > mean is: > > > there is a pass and there isn't a bid or buy, i.e. no StartItemAction. > > > Why not implement it that way? > > > > Please refer to the implementation inside > > PossibleAction.containsOnlyPass(): > > The code checks two conditions: > > a) There is only one action and b) this action is a pass. > > If both conditions are true the pass action is selected automatically. > > And it works as long as this check is done before adding correction and > undo/redo actions. > > Well, if you feel happy with such dependencies, what can I say? I'm not. > > Erik. > > > --------------------------------------------------------------------------- > --- RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel |