📄 changelog
字号:
* protocol.h, controller.c, game.c: Handle the Flowers option. * gui.c: Display now handles walls smaller than the maximum.2001-05-02 Julian Bradfield <jcb@dcs.ed.ac.uk> * controller.c, gui.c: Use wall.size field of game struct instead of 144. * gui.c, gui-dial.c, game.c, game.h, controller.c, scoring.c, greedy.c: Unpack the internal info struct in the game struct; just have fields directly in the main struct. * game.h, game.c, controller.c: Remove the superfluous discard_serial field from the game struct. * gui.c: Remove a fixed FIXME comment. * game.c, game.h: Add wall.size field to game struct. * tiles.c: replace 144 by MAX_WALL_SIZE where appropriate. And add includespecials arg to random_tiles. * controller.c, tiles.h: Add includespecials arg to random_tiles. * game.h: replace 144 by MAX_WALL_SIZE where appropriate. * protocol.h: Add a MAX_WALL_SIZE define.2001-05-01 Julian Bradfield <jcb@dcs.ed.ac.uk> * gui.c: Query all options on getting game message, instead of just querying timeout on connect. * controller.c: GameOption and PlayerOptionSet messages should not go into the history. Clients must always query/set. * game.c: And make handle_cmsg clear the option table on GameMsg, not copy from default. * game.c, game.h: add game_clear_option_table * gui-dial.c: more slight improvs to prefs panel. * gui.h, gui-dial.c, gui.c: Handle rcfile reading better: changed spec and name of read_or_update_rcfile. * gui-dial.c: Improvement to prefs panel. * scoring.c: rationalize the own flower/season scoring a bit. * gui.c: make showwall global; remove the tilesleft label, which is now done in the dialogs. * gui.h: Make showwall global. * gui-dial.c: When not showing the wall, put the tiles left in the dialog labels. * gui.c: Add a tilesleft indication when not showing the wall.2001-04-30 Julian Bradfield <jcb@dcs.ed.ac.uk> * controller.c: Add some protection against flooding: call the timeout handler if the timeleft goes negative. * gui.c: Handle querying of mj after kong properly (was getting into loop). * gui-dial.c: Don't put disabled options in the game options panel. * protocol.h, game.c: Add Flower scoring options. * scoring.c: Implement Flower scoring options. (And add parens round score arg in doscore.) * scoring.c: Use GOSevenPairsVal for scoring. * gui-dial.c: In option panels, make reset sensitive only on change.2001-04-29 Julian Bradfield <jcb@dcs.ed.ac.uk> * proto-encode-msg.pl: If a (char *) arg starts with a space, escape it with backslash. * gui.c: Call expand_protocol_text on scoring and settlement messages. * scoring.c: Rationalize the scoring code; it's now set up to take GOTScore values. * player.c: get rid of qsort, and use bubblesort instead. Doesn't actually make a huge difference, around 8%. * protocol.c: increase buffer sizes.2001-04-28 Julian Bradfield <jcb@dcs.ed.ac.uk> * controller.c, scoring.c, greedy.c, game.c, game.h: Change the names of the option entry returning functions to make it clear what they return; add game_get_option_value to get a value from a game without fuss. * gui-dial.c: Change Score type in option dialog to allow half limits. * protocol.h: Changed defn of Score type to have centi-limits. * protocol.h, game.c: Add SevenPairsVal option. * gui-dial.c: Simplify game option panels: don't show current value separately. * player.h: Change player_can_mah_jong to take flags indicating certain special hands are allowed; flags given (as bits) by MJSpecialHandFlags enum. * gui.c: Handle change to player_can_mah_jong spec. * greedy.c: Handle SevenPairs. (Don't try to get it, but don't pass it up if it just happens.) * client.h, client.c: Handle special sets in mah-jong; change to spec of client_find_sets. * player.c: Handle seven pairs. Required change to spec of player_can_mah_jong. * protocol.h: Add SevenPairs game option. * controller.c: Handle SevenPairs. * game.c: Add SevenPairs game option and handle it. * scoring.c: Handle scoring for seven pairs. * game.c: Correct types of option function args. And optimize option lookup. * game.h: Correct types of option function args. * gui.c: Ask server about ability to mah-jong, when robbing kongs. * gui-dial.c: change style of prefs panel a bit * gui.c: clear game option dialog on new game. * scoring.c: Implement the ScoreLimit and NoLimit options. * game.c: Add game_copy_option_table. * gui.h: Implement game preferences panel. * game.h: Add game_copy_option_table. * gui.c, gui-dial.c: Implement game preferences panel.2001-04-18 Julian Bradfield <jcb@dcs.ed.ac.uk> * protocol.c, gui-dial.c, controller.c: Add the GOTNat option type. * game.c: Add the GOTNat option type; add ScoreLimit and NoLimit options. Change Timeout to Nat. * protocol.h: Add the GOTNat option type; add ScoreLimit and NoLimit options.2001-04-09 Julian Bradfield <jcb@dcs.ed.ac.uk> * gui.h, gui.c, gui-dial.c: More work on option dialog: reset button for each entry, and global update button. Make it update over creation and killing of game. This is awful mess. Make it properly OO sometime.2001-04-05 Julian Bradfield <jcb@dcs.ed.ac.uk> * gui.c, gui.h, gui-dial.c: Game option panel basically in place. Now add some options and test it. * gui.c: Have --size default to 17, not 18, for 800x600. (for 1.0.4, included now in devel version so I don't forget.) * CHANGES: 1.0.4 changes * gui.c: Have --size default to 17, not 18, for 800x600. * gui.h, gui-dial.c: checkpoint * scoring.c: Bug fix: was always giving 2 for fishing the eyes, instead of 4 for a major pair.2001-04-03 Julian Bradfield <jcb@dcs.ed.ac.uk> * game.c: give unknown option null name in default table, and infinite protocol, so always disabled.2001-04-02 Julian Bradfield <jcb@dcs.ed.ac.uk> * gui.h, gui-dial.c: checkpoint while implementing game option dialog * game.c: fix warnings resulting from last change * game.c, protocol.c, protocol.h: add a userdata field to GameOptionEntry * MANIFEST, FILES-src: add icon files * Makefile.in: add stuff for Windows icon resource. * iconres.rs: New file.2001-04-01 Julian Bradfield <jcb@dcs.ed.ac.uk> * gui-dial.c: checkpoint; adding game option setting...2001-03-31 Julian Bradfield <jcb@dcs.ed.ac.uk> * game.c, controller.c, game.h: Introduced struct for option table, and changed game accordingly. Added functions to get/set options in tables.2001-03-30 Julian Bradfield <jcb@dcs.ed.ac.uk> * gui.h, gui-dial.c, gui.c: Saving of display options done.2001-03-29 Julian Bradfield <jcb@dcs.ed.ac.uk> * gui.c: Basic rcfile reading for display options in place.2001-03-23 Julian Bradfield <jcb@dcs.ed.ac.uk> * greedy.c: added a little defensiveness: slight reluctance to discard to the right player. Makes a small (not sig) improv.2001-03-06 Julian Bradfield <jcb@dcs.ed.ac.uk> * gui.c: pop down turn dialog at handcomplete (for washouts).2001-03-04 Julian Bradfield <jcb@dcs.ed.ac.uk> * gui-dial.c: Add animation to the display options panel. (And fix bug.)2001-03-03 Julian Bradfield <jcb@dcs.ed.ac.uk> * gui.h, gui.c, gui-dial.c: Added the Options menu, and the display options panel, which allows switching dialog posns. There are bugs when the program starts with -below and then one switches to -central, but I don't think these are mine; I can't be bothered to track down the gtk bugs.2001-03-01 Julian Bradfield <jcb@dcs.ed.ac.uk> * gui.c: hide discard dialog at start * gui.h, gui-dial.c, gui.c: move dialog (dependent on --dialog-XXX) creation into single function2001-02-26 Julian Bradfield <jcb@dcs.ed.ac.uk> * ChangeLog: 1.0.3 * CHANGES: 1.0.3 changes * gui.c: add read_rcfile stub * gui-dial.c: Oops. Positioning in dialogs-below has been broken for some time. Now fixed.2001-02-20 Julian Bradfield <jcb@dcs.ed.ac.uk> * controller.c: added --wallfile option to load wall from file.2001-02-11 Julian Bradfield <jcb@dcs.ed.ac.uk> * Makefile.in: remove warnings and optimizations from production code makefile * xmj.man: Add server --seed option. * CHANGES: --seed server option. * ChangeLog: 1.0.2 * CHANGES: 1.0.2 changes * greedy.c: If check_discard called while declaring specials, it's to try robbing a kong. In fact, the players would cope correctly with this situation anyway, but that was by accident!2001-02-10 Julian Bradfield <jcb@dcs.ed.ac.uk> * version.h: release 1.0.2 * gui.c: Fix bugs in handling of kongs declared while declaring specials. * controller.c: Fix bugs in handling of kongs declared while declaring specials. Was not drawing a loose tile for the declarer! Also, must allow claims, since theoretically possible to rob such kongs. * game.c: Fix bugs in handling of kongs declared while declaring specials. (Must allow claims, since theoretically possible to rob them.) * scoring.c: Correct the detection of Heaven's/Earth's Blessing. Was relying on discard_serial, which would be incremented by kongs declared in the initial phase. Now use the player NoDiscard flags.2001-02-09 Julian Bradfield <jcb@dcs.ed.ac.uk> * gui-dial.c: correct GPL name; extend copyright date. * LICENCE: Correct name of GPL.2001-02-07 Julian Bradfield <jcb@dcs.ed.ac.uk> * runtest: Add various useful options. * greedy.c: further extensive simplification; several really stupid bugs fixed; extensive tuning. It is now definitely better: 1-2 sd better than 10.21, and 4sd better than release 1.0. Details of intervening changes are in StuffToKeep.2001-01-30 Julian Bradfield <jcb@dcs.ed.ac.uk> * controller.c: Make sure that the caller slot is correctly filled even in the case of Heaven's Blessing (to avoid warning from scoring module). * controller.c: provide a --seed option to seed the random number generator. * runtest: Use a fixed series of games, given by initial seed 101, and then incrementing for each game. * greedy.c: This is an almost complete restructing of the strategy code. The same basic ideas are used, but now they are controlled at user level by a smaller number of orthogonal (more or less) parameters, which then generate the old-style parameters. This is (will be) now documented, as it works well enough to let people use it. This rewrite was done on another system; the history of the changes is in the separate file greedy.c-10.20-10.21,v in the StuffToKeep directory.2001-01-29 Julian Bradfield <jcb@dcs.ed.ac.uk> * sysdep.h, sysdep.c: add rand_seed * version.h: 1.0.12001-01-28 Julian Bradfield <jcb@dcs.ed.ac.uk> * CHANGES: 1.0.1 * ChangeLog: for 1.0.1 * xmj.man: correct when scoring info window appears * greedy.c: more fiddles. This file has been transferred to the big pc for experimentation.2001-01-27 Julian Bradfield <jcb@dcs.ed.ac.uk> * greedy.c: This does OK compared to the 1.0 release. (The same.) It's overly keen on no score hands (more than 25%), and not quite keen enough on concealed hands. Now strip out the old stuff.2001-01-26 Julian Bradfield <jcb@dcs.ed.ac.uk> * logstats: helps to count Limit hands as wins... * protocol.c: add variable for use by switch code. * proto-encode-msg.pl: allow bad entries in bool fields of incoming structures; treat as TRUE, to match normal C practice. * greedy.c: This did reasonably, but is still very chow-biased. * game.h: game_flag should return a boolean. * greedy.c: checkpoint on the way to revising. This currently does very badly (-5s.d.). It no-scores more often, but gets no-chows less often, never gets concealed (why not?), and wins less often, and has a lower score when not winning. See last results of 2001-01-25.2001-01-25 Julian Bradfield <jcb@dcs.ed.ac.uk> * controller.c: wasn't setting discard field of DangerousDiscard message. * logstats: Add one suit counting.2001-01-22 Julian Bradfield <jcb@dcs.ed.ac.uk> * make-release: Include -lXi in static build arguments. Exit if static build fails. * gui.h: <errno.h>, not "errno.h" * gui-dial.c: The scoring info window needs to be a bit bigger on Windows, as the font one gets by default is bigger. * controller.c: Must allow querying game options while game is suspended (so that clients can get the timeout on startup).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -