From: Erik V. <ev...@us...> - 2010-04-18 20:52:41
|
Update of /cvsroot/rails/18xx/rails/game In directory sfp-cvsdas-4.v30.ch3.sourceforge.com:/tmp/cvs-serv30360/rails/game Modified Files: PublicCompanyI.java PublicCompany.java Log Message: Chech Prussian presidency after each formation round Index: PublicCompany.java =================================================================== RCS file: /cvsroot/rails/18xx/rails/game/PublicCompany.java,v retrieving revision 1.93 retrieving revision 1.94 diff -C2 -d -r1.93 -r1.94 *** PublicCompany.java 27 Mar 2010 18:27:08 -0000 1.93 --- PublicCompany.java 18 Apr 2010 20:52:32 -0000 1.94 *************** *** 1502,1505 **** --- 1502,1533 ---- } } + + /** A generic presidency check. Perhaps it can replace the above two methods. */ + public void checkPresidency () { + + Player president = getPresident(); + int presIndex = president.getIndex(); + int presShare = president.getPortfolio().getShare(this); + + GameManagerI gmgr = GameManager.getInstance(); + Player player; + int share; + + for (int i = presIndex + 1; i < presIndex + + gmgr.getNumberOfPlayers(); i++) { + player = gmgr.getPlayerByIndex(i); + share = player.getPortfolio().getShare(this); + if (share > presShare) { + // Hand presidency to the first player with a higher share + president.getPortfolio().swapPresidentCertificate(this, + player.getPortfolio()); + ReportBuffer.add(LocalText.getText("IS_NOW_PRES_OF", + player.getName(), + name )); + return; + } + } + + } /** Index: PublicCompanyI.java =================================================================== RCS file: /cvsroot/rails/18xx/rails/game/PublicCompanyI.java,v retrieving revision 1.51 retrieving revision 1.52 diff -C2 -d -r1.51 -r1.52 *** PublicCompanyI.java 27 Mar 2010 18:27:08 -0000 1.51 --- PublicCompanyI.java 18 Apr 2010 20:52:32 -0000 1.52 *************** *** 264,267 **** --- 264,268 ---- public void checkPresidencyOnBuy(Player buyer); + public void checkPresidency (); public int getCapitalisation(); |