Olivier Teulière
83baec368b
Topping: give the score penalty directly with the player move.
...
This commit also adds a setting to disable the elapsed-time penalty.
2013-01-16 17:46:47 +01:00
Olivier Teulière
7e9dab2e9b
Topping: keep track of the player score
2013-01-14 17:13:48 +01:00
Olivier Teulière
4111afc04c
RackWidget: after a drag & drop, notify the game that the rack has changed.
...
This allows synchronizing all the controls displaying the player rack
(visual and textual ones).
2013-01-09 18:56:25 +01:00
Olivier Teulière
7cd6313dac
Topping: integrate hints
2013-01-08 16:04:24 +01:00
Olivier Teulière
b5d175fc5b
Topping: use a different method to play the move.
...
This allows providing additional time information
2013-01-08 16:04:23 +01:00
Olivier Teulière
76fefdf71d
New "master game" feature.
...
When a master game is defined, the racks and moves played from the
current game will be the same as in the master game. This can be
practical to replay a game in a different mode, or to replay at home a
duplicate game played in a club, for example.
2012-12-30 16:38:07 +01:00
Olivier Teulière
ac0abba535
Topping: new widget dedicated to topping mode.
...
It is currently very ugly, and quite buggy...
2012-12-29 19:36:38 +01:00
Olivier Teulière
681a7b28cb
New topping mode (very beginning)
2012-12-29 17:51:16 +01:00
Olivier Teulière
fb8e464d7c
Display the word being played on the board
2012-12-29 17:46:18 +01:00
Olivier Teulière
8d85df630b
PlayModel now uses a Move internally
2012-12-29 17:46:18 +01:00
Olivier Teulière
4200e33c17
Change the copyright years for all the files modified in 2012
2012-10-11 13:45:24 +02:00
Olivier Teulière
a800863c1f
Arbitration: do not handle solos automatically.
...
The arbitrator has to specify them manually. Otherwise, we cannot know
when a turn is complete and thus we cannot determine if solos can/should
be applied.
2012-10-05 12:52:42 +02:00
Olivier Teulière
2b6b85cce3
Arbitration: allow removing penalties
2012-05-20 22:12:42 +02:00
Olivier Teulière
d6a2fc6e4e
PublicGame: more direct access to the game current rack
2012-03-26 07:49:25 +02:00
Olivier Teulière
e017e73cd9
Handle penalties in the core
2012-03-26 07:49:25 +02:00
Olivier Teulière
84e46bef85
Handle warnings and solos in the core
2012-03-26 07:49:25 +02:00
Olivier Teulière
b1e7381b39
Players can now have a table number
2012-03-19 22:49:58 +01:00
Olivier Teulière
f3b2442cc0
Arbitration: improved the refresh of search results
2012-03-17 23:53:40 +01:00
Olivier Teulière
25a36ec9cd
Arbitration mode: allow setting the rack randomly
2012-03-11 00:24:21 +01:00
Olivier Teulière
05a51101db
New arbitration mode, dedicate to arbitration of duplicate games.
...
It is mostly working, but many things are still missing.
In particular:
- ability to enter (or change) moves for a past turn
- ability to change the rack (manually, or randomly)
- ability to add/remove players during the game
- support for solos, warnings, penalties
- support for table number
- more ergonomic interface
- non regression tests
- ... and probably bugs to fix
2012-03-10 18:06:41 +01:00
Olivier Teulière
16a9a9b1a9
Removed Game::setTestTound() and Game::removeTestRound().
...
They are still available via the PublicGame class for interfaces.
2012-02-19 13:07:29 +01:00
Olivier Teulière
482b5d674f
Previewing a Round is now possible in all the game types.
...
It was only possible in Training mode. This change will be useful for
the future arbitration mdoe.
2012-01-17 00:43:19 +01:00
Olivier Teulière
90ce7e1111
Removed some useless code
2012-01-12 15:26:27 +01:00
Olivier Teulière
befe577fe7
Got rid of Game::getModeAsString()
2011-08-28 19:25:26 +02:00
Olivier Teulière
fdc29871e5
New GameParams class to wrap a few game characteristics.
...
These characteristics will not change during the game.
2011-08-27 21:55:49 +02:00
Olivier Teulière
424fd3af32
Display the points of the word entered by the player before validating it.
2011-07-16 23:31:17 +00:00
Olivier Teulière
23771f3f71
Indicate the end of the game
2011-01-30 00:23:45 +00:00
Olivier Teulière
3c7a84d543
Support saving/loading games (any game type) in XML format.
...
Status:
It works well, but there are still a few details to improve/fix
More details about the changes:
- New dependency on Arabica and Libxml2 to parse the XML
- Loading the old format is still supported for this release, but won't be supported anymore in the next one
- Games are now only saved in the new format
- In training mode, the player is now created externally, like in the other modes
- Avoid using GameIO (the one from game/) whenever possible
- Do not use a FILE* argument anymore when loading a game
- Throw and catch exceptions correctly when a game cannot be loaded or saved
- The non-regression tests now use a new method to print the game history
2009-11-29 16:01:31 +00:00
Olivier Teulière
1df3c3ff51
Updated a few copyright dates
2009-01-24 17:44:56 +00:00
Olivier Teulière
4ffaef3e1d
- Throw exceptions in case of problem in Duplicate::setPlayer()
...
- Clean up of the text interface:
- removed all uses of wcstok()
- factorized common code
- made code a bit more robust
2009-01-24 17:11:07 +00:00
Olivier Teulière
7a5056354a
- Setting the rack manually is now done via a command, and can thus be undone
...
- Added non-regression tests for the navigation in the game history (all modes), and removed a less useful test
2009-01-24 10:28:20 +00:00
Olivier Teulière
8b9478542a
- The core is now able to handle "explosive games" ("parties détonantes"). No interface uses this ability yet.
...
- Fixed a bug in Game::helperSetRackRandom()
2009-01-14 21:53:37 +00:00
Olivier Teulière
f6d7804847
- New PublicGame class, intended to be used by the interfaces instead of accessing Game directly
...
- Migrated the text, Qt and ncurses interfaces to the new PublicGame API.
2008-11-30 20:53:44 +00:00