ChangeLog for heroes 0.29c
2002-10-24 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.29c.
* tools/alpha.sh: Really make the distribution if it doesn't exist.
* po/de.po: Add Plural-Forms header.
* po/it.po: Add missing plural form for rounds.
* po/fr.po: Update.
* tests/Makefile.am (lvlsave_LDADD): Add INTLLIBS.
2002-10-24 Alexandre Duret-Lutz <duret_g@epita.fr>
* libltdl/ltdl.c, m4/libtool.m4, m4/ltdl.m4: Update
from Libtool 1.4.3.
2002-10-21 Alexandre Duret-Lutz <duret_g@epita.fr>
* Makefile.am, src/Makfile.am: Don't EXTRA_DIST included Makefile
fragments, Automake >= 1.7 does this for us. Remove useless
VAR = @VAR@ definitions for the same reason.
* po/Makevars, po/LINGUAS: New files.
* configure.ac: Require Automake 1.7.1.
Don't define ALL_LINGUAS (replaced by po/LINGUAS).
* HACKING: Adjust to mention po/LINGUAS.
2002-10-20 Alexandre Duret-Lutz <duret_g@epita.fr>
Upgrade to Gettext 0.11.5 and CVS Libtool branch-1-4.
* configure.ac: Call AM_GNU_GETTEXT_VERSION.
* arch/mingw32/cross.sh: Disable shared libraries.
* libltdl/ltdl.c: New upstream version.
* m4/codeset.m4, m4/gettext.m4, m4/glibc21.m4, m4/iconv.m4,
m4/isc-posix.m4, m4/lcmessage.m4, m4/progtest.m4: Delete,
they are installed by autopoint.
* m4/h-path.m4: Do not require AM_WITH_NLS, it doesn't
exist anymore.
* m4/libtool.m4, m4/ltdl.m4: New upstream versions.
* misc/01-intl.patch, misc/05-po.patch, misc/ltdlaux.patch:
Delete.
* Makefile.am (EXTRA_DIST): Remove these three patches.
* tools/autogen.sh, tools/upgettext.sh: Remove.
* tools/Makefile.inc (EXTRA_DIST): Remove these two scripts.
* tools/cvsboot.sh: Adjust to call autoreconf.
2002-08-22 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/menus.c (editor_entries): Add missing trailing { 0, 0 }.
Reported by Nicolas Tisserand. (Segfault on Debian/PPC)
2002-07-26 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac (ALL_LINGUAS): Add es_AR.
* po/es_AR.po: New file.
From Ariel Fermani <the_end@bbs.frc.utn.edu.ar>.
2002-07-15 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.29b.
* NEWS: Update.
2002-07-05 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/misc.c (strcat_alloc): Use stpcpy.
2002-07-05 Alexandre Duret-Lutz <duret_g@epita.fr>
* lib/getline.c, lib/getline.h, lib/getstr.c, lib/getstr.h: New
files, from fileutils-4.1.1.
* tools/fetish-sync.sh (files): Add them.
* lib/Makefile.am (libheroes_a_SOURCES): Add them.
(pkginclude_HEADERS): Add getline.h.
2002-07-05 Alexandre Duret-Lutz <duret_g@epita.fr>
* po/fr.po: Update.
2002-07-05 Ingo van Lil <inguin@gmx.de>
* po/de.po: Update.
2002-06-16 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/Makefile.am (BUILT_SOURCES): Remove debughash.gperf,
prefs.c, and rsc_files_hash.c. They don't need to be BUILT_SOURCES.
* src/const.c: Typo.
2002-06-16 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/const.c (kbjoy, kbjoyold): Redefine as static bool[].
(key_or_joy_reset): New function.
* src/const.h (kbjoy, kbjoyold): Don't export.
(key_or_joy_reset): New function.
* src/menus.c (quit_yes_no): Don't wait for joystick buttons to go up.
(pause_menu, quit_yes_no): Call key_or_joy_reset.
* src/heroes.c (play_demo, play_game): Likewise.
2002-05-25 Alexandre Duret-Lutz <duret_g@epita.fr>
* doc/heroes-api.texi (Explosions): New node.
* src/rules/state.h: Remove fixed fixme.
2002-05-25 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/rules/bonuses.h: New file.
* src/rules/Makefile.inc (rules_libhrules_a_SOURCES): Add it.
* src/plugins/Makefile.inc (PLUGIN_H_INPUTS): Add it.
* src/rules/state.h: Include it.
(a_level_state::bonus_tile): Declare as a_bonus8.
* src/rules/bonuses.c (rem_bonus): Run "bonus-rem" before removing
the bonus.
(rem_bonus_idx): New function, extracted from rem_bonus.
(update_bonuses): Use rem_bonus_idx.
(bonus_density, bonus_proba, random_bonus, add_bonus, add_random_bonus,
mark_unreachable_places, apply_bonuses): Use the new a_bonus enum
from bonuses.h.
* src/rules/update.c (update_player): Likewise.
* src/rules/statepriv.h (apply_bonus): Adjust prototype.
* doc/heroes-api.texi (core hooks): Document bonus-add and bonus-rem.
(Bonuses): New node.
2002-04-29 Alexandre Duret-Lutz <duret_g@epita.fr>
First sketch of the plug-in documentation.
* doc/heroes-api.texi: New file.
* doc/Makefile.am (info_TEXINFOS): Add it.
IA is the French for AI; get rid of that.
* src/plugins/stdai.c (ia_max_depth, ia_cur_depth,
ia_is_invincible, ia_player, ia_target_x, ia_target_y, ia_wrap_x,
ia_wrap_y, ia_wrap_left, ia_wrap_right, ia_eval_dist,
ia_eval_dir_target_inline, ia_eval_dir_bonus_inline,
ia_eval_dir_lemming_inline, ia_eval_dir_cash_inline,
ia_eval_dir_color_inline, ia_eval_neighb_pos, ia_eval_dir_target,
ia_eval_dir_lemming, ia_eval_dir_color, ia_eval_dir_cash,
ia_eval_dir_bonus, ia_goto_target_inline, ia_goto_bonus_inline,
ia_goto_color_inline, ia_goto_lemming_inline, ia_goto_target,
ia_goto_nearest_bonus, ia_goto_nearest_lemming,
ia_goto_nearest_color, ia_goto_nearest_cash): Rename to ...
(ai_max_depth, ai_cur_depth, ai_is_invincible, ai_player,
ai_target_x, ai_target_y, ai_wrap_x, ai_wrap_y, ai_wrap_left,
ai_wrap_right, ai_eval_dist, ai_eval_dir_target_inline,
ai_eval_dir_bonus_inline, ai_eval_dir_lemming_inline,
ai_eval_dir_cash_inline, ai_eval_dir_color_inline,
ai_eval_neighb_pos, ai_eval_dir_target, ai_eval_dir_lemming,
ai_eval_dir_color, ai_eval_dir_cash, ai_eval_dir_bonus,
ai_goto_target_inline, ai_goto_bonus_inline, ai_goto_color_inline,
ai_goto_lemming_inline, ai_goto_target, ai_goto_nearest_bonus,
ai_goto_nearest_lemming, ai_goto_nearest_color,
ai_goto_nearest_cash): ... these.
* src/rules/player.h (a_player) <ia_max_depth>: Rename to
ai_max_depth.
* src/rules/player.c (state_reinit_player): Adjust to use
ai_max_depth.
Misc.
* doc/heroes.texi, src/plugins/Makefile.inc: Adjust copyright dates.
* src/hooks.h, src/opponents.h: Typos.
2002-04-21 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/rules/state.c (state_init): Don't initialize an opponent
if we found no AI driver for it.
* src/plugins/stdai.c (ai_standard_tcash): Declare as an OT_TCASH
opponent.
Reported by Ingo.
2002-04-16 Alexandre Duret-Lutz <duret_g@epita.fr>
* libltdl/Makefile.am (ACLOCAL_AMFLAGS): New.
* libltdl/acinclude.m4: Remove.
* m4/ltdl.m4: New file, from CVS Libtool branch-1-4.
2002-04-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/plugins.c (plugins_initialize): Register the preloaded symbols.
2002-04-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* tools/ltmain.sh, m4/libtool.m4: Downgrade to latest version
from CVS libtool on branch-1-4.
2002-04-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/plugins/Makefile.inc (distclean-local): Remove. Was a
workaround to an Automake bug fixed in 1.6.1.
2002-04-07 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/media/sdl/joystick.c (get_joystick_state): Make sure we
never use SDL's Joystick API if it wasn't initialized.
Reported by William Black.
2002-04-01 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/rules/player.h (a_player) <x, y, x2, y2, pos>: Rename as ...
(a_player) <tx, ty, sx, sy, si>: ... these.
Adjust all user functions.
2002-04-01 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/rules/statepriv.h (a_level_state_bits) <player, iplayer>: New.
* src/rules/state.h (a_level_state) <player>: Make this an array of
pointers to the player entries in a_level_state_bits.
* src/rules/player.h (a_player_internal): New struct.
(a_player) <v, vi, viit, old_old_way>: Move to a_player_internal.
* src/camera.c (position_camera, init_camera): Adjust player lookup.
* src/heroes.c (play_menu, output_screen,
get_input_directions, play_game): Likewise.
* src/menus.c (draw_end_level_info, draw_round_info): Likewise.
* src/render.c (draw_trail_real, draw_vehicle_tail, draw_vehicle_head,
draw_level, draw_score, draw_logo_info): Likewise.
* src/visuals.c (rotozoom_buffer, rotozoom_half_buffer,
(wave_buffer, wave_half_buffer): Likewise.
* src/plugins/stdai.c (ai_throttle, ia_goto_target,
ia_goto_nearest_bonus, ia_goto_nearest_lemming,
ia_goto_nearest_color, ia_goto_nearest_cash): Likewise.
* src/rules/bonuses.c (apply_bonus): Likewise.
* src/rules/lemmings.c (state_init_lemmings): Likewise.
* src/rules/player.c (state_erase_player, state_position_player,
state_reinit_player): Likewise.
* src/rules/state.c (state_init): Likewise.
* src/rules/trail.c (grow_trail): Likewise.
* src/rules/update.c (find_free_way, opponent_action_prepare,
opponent_action_honor, update_player): Likewise.
* src/heroes.c (load_level): Don't configure CPU players
here ...
* src/rules/state.c (state_init): ... but do it here.
2002-04-01 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/rules/update.c (update_player): Typo in speed adjustment.
2002-03-30 Alexandre Duret-Lutz <duret_g@epita.fr>
* NEWS, ANNOUNCE: Update from 0.21.
2002-03-30 Alexandre Duret-Lutz <duret_g@epita.fr>
* doc/heroes.texi (Getting Heroes): Mention heroes-hq-sound-tracks.
2002-03-30 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/musicfiles.c (st_uninit, st_init): New functions.
(st_free, st_cons): Use them.
(add_sound_track_cons): If the alias already exist, override it.
This used to be done by hash_insert.
2002-03-30 Alexandre Duret-Lutz <duret_g@epita.fr>
* doc/heroes.texi (heroesrc): Don't use : in index entry names.
2002-03-30 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/etc/heroesrc: Try to read soundfiles from
$(data-dir)/hqmod/sound.conf too.
2002-03-26 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/lvl/en_head.c (encode_level_header): Clear unused bytes
before saving.
* src/lvl/en_body.c (encode_level_body): Zero initialize the
square_walls_in array.
2002-03-26 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/rules/state.c (state_init): Clear state->square_lemmings_list,
and state->square_dead_lemmings_list.
2002-03-26 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/lvl/de_body.c (decode_level_body): Initialize
lvl->square_direction for all square, even when it doesn't matter.
Otherwise heroeslvl will display some uninitialized directions.
2002-03-26 Alexandre Duret-Lutz <duret_g@epita.fr>
* m4/debug.m4: Never use -ggdb3, simply use -g instead.
* tools/alpha.sh: Use perl to run exnews.pl.
2002-03-26 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/sprunish.c (compile_sprunish): Check for src<eol before
dereferencing *src, not after.
* src/userconf.c (read_userconf): Don't free strings installed
in the environment using putenv.
2002-03-21 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.29a. Use the new
AM_INIT_AUTOMAKE form. Require Automake 1.6 (needed to support
LTLIBRARIES in subdirectories).
* NEWS: Update for 0.29a.
* Makefile.am (AUTOMAKE_OPTIONS): Remove.
(my-distcheck-ggi, my-distcheck-allegro, my-distcheck-nodisplay,
my-distcheck-sdl): Don't run make if GGI_OK, ALLEGRO_OK, NODISPLAY_OK
or SDL_OK are set.
* tools/alpha.sh: Don't run make dist-bzip2 (distcheck will do it).
Don't run make distcheck if the tarballs already exist.
* src/plugins/Makefile.inc (plugins_stdai_la_LDFLAGS): Remove the
useless -release $(VERSION) option.
(plugins_stdai_la_CFLAGS): New variable.
(DISTCLEANFILES): Add pconf and extrconf.sh.
(distclean-local): Delete plugins/.libs and plugins/_libs.
* src/plugins/stdai.c (ia_eval_dir_cash): Typo.
2002-03-18 Alexandre Duret-Lutz <duret_g@epita.fr>
* tools/scandefs.pl: New file.
* tools/Makefile.in (EXTRA_DIST): Add it.
* lib/Makefile.am (pkginclude_HEADERS): Add xalloc.h.
* src/system.h: Add PUBLIC markers.
* src/plugins/Makefile.inc (BUILT_SOURCES): Add pconf.h.
(PLUGIN_H_INPUTS): Add system.h.
(EXTRA_SCRIPTS, PERL, SCANDEFS_PL): New variables.
(plugins/extraconf.sh, plugins/pcong.h): New rules
* src/plugins/stdai.c: Include plugin.h.
* tools/pubhex.awk: Include pconf.h.
2002-03-18 Alexandre Duret-Lutz <duret_g@epita.fr>
Use a local array to mark inspected squares. This way this
plug-in does not have to *write* in the level state any longer.
* src/plugins/stdai.c (square_marks): New array.
(ai_level_initialize, ai_level_finalize): Allocate/free it.
(ia_eval_neighb_pos, ia_eval_dir_target, ia_eval_dir_lemming,
ia_eval_dir_color, ia_eval_dir_cash): Use it.
2002-03-17 Alexandre Duret-Lutz <duret_g@epita.fr>
Extract src/plugins/plugin.h from various source files.
* tools/pubhex.awk: New file.
* tools/Makefile.inc (EXTRA_DIST): Add it.
* src/hooks.h, src/opponents.h, src/lvl/lvl.h, src/rules/player.h,
src/rules/state.h: Add PUBLIC markers.
* src/plugins/Makefile.inc (plugins/plugins.h): New rule.
(pkginclude_HEADER, BUILT_SOURCES, PLUGIN_H_INPUTS,
PUBHEX_AWK): New variables.
2002-03-13 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Show the plug-ins install path.
2002-03-13 Alexandre Duret-Lutz <duret_g@epita.fr>
* tools/ltmain.sh: Add. Missing from a previous commit.
2002-03-13 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Document the AC_PROVIDE_AC_LIBOOL_DL_OPEN definition
better.
* src/Makefile.am (heroes_DEPENDENCIES): Add $(LIBLTDL).
2002-03-11 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/media/ggi/video.c: s/negociate/negotiate/.
(setup_WWWxHHHxB_display): Don't call ggiSetMode unless
ggiCheckMode succeeded.
From Brian S. Julin <bri@tull.umassp.edu>.
2002-03-06 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/rules/state.c: Don't include ai.h.
* src/rules/update.c: Likewise.
2002-03-05 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Define AC_PROVIDE_AC_LIBTOOL_DLOPEN (kludge).
* m4/h-paths.m4: Compute FORWARD_RELATIVE_PLUGINDIR.
* src/plugins.c, src/plugins.c: New files.
* src/Makefile.am: Include plugins/Makefile.inc.
(AM_CPPFLAGS): Add $(LTDLINC).
(heroes_LDFLAGS): Add libltdl, and -dlopen stdai.la.
(heroes_SOURCES): Add plugins.c and plugins.h.
* src/argv.c (print_help): Document -p and --plug-in.
(long_options): Add --plug-in.
(parse_argv): Handle them.
* src/heroes.c (heroes_main): Call plugins_initialize and
plugins_finalize.
* src/relocate.c (check_plugindir_env): New function.
(relocate_data): Call it.
* src/rsc_files.gperf (plug-in-dir): New.
* src/etc/heroesrc: Load the stdai module.
* src/plugins/Makefile.inc: New file.
* src/rules/ai.c: Move ...
* src/plugins/stdai.c: ... here.
* src/rules/ai.h: Delete.
* src/rules/Makefile.inc (rules_libhrules_a_SOURCES): Remove ai.c
and ai.h.
2002-03-04 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/opponents.c: New file.
* src/Makefile.am (heroes_SOURCES): Add it
* src/opponents.h (opponent_register, opponent_unregister,
opponent_get_random): New functions.
* src/heroes.c (heroes_main): Call standard_ai_initialize, and
standard_ai_finalize.
* src/hooks.c: Don't include unneeded generic_list.h.
* src/rules/ai.c (standard_ai_finalize, standard_ai_initialize):
New functions.
* src/rules/ai.h: Likewise.
* src/rules/state.c (state_init): Use opponent_get_random.
2002-03-04 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/opponents.h: New file.
* src/Makefile.am (heroes_SOURCES): Add it.
* src/rules/ai.c, src/rules/ai.h: Reorganize to present the AI in ...
(ai_standard_quest, ai_standard_deathm, ai_standard_killem,
ai_standard_color, ai_standard_tcash): ... these instances of the
an_opponent_sig struct defined in src/opponents.h.
* src/rules/player.c (state_erase_player, state_reinit_player):
Adjust to use the an_opponent_sig interface.
* src/rules/state.c (state_init, state_free): Likewise.
* src/rules/player.h (player.behaviour): Remove.
* src/rules/statepriv.h (a_level_state_bits.opponent,
a_level_state_bits.opponent_data): New attributes.
* src/rules/update.c (opponent_action_prepare, opponent_action_honor):
New functions.
(update_player): Adjust to use the an_opponent_sig interface.
2002-03-02 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/Makefile.am (heroes_SOURCES): Add hookscore.c and hookscore.h.
* src/debugchn.def (hooks): New.
* src/heroes.c (heroes_main): Call hooks_core_initialize, and
hooks_core_uninitialize.
* src/hooks.c: Rewrite using a hand-written singly-linked list to
keep track of functions for each hook.
(hook_define, hook_run, hook_add_fun, hook_rem_fun_if): Adjust.
Call dmsg.
(a_hook_fun_list_item): Remove.
(a_hook_fun_list): New struct.
(hook_define_many, hook_undefine, hook_undefine_many): New functions.
(hook_find): Ahem, iterate over the list.
* src/hooks.h (a_hook_fun_list): New.
(a_hook): Use it.
(HOOK_DEF): Remove stray ;.
(hook_define_many, hook_undefine, hook_undefine_many): Declare.
* src/hookscore.c, src/hookscore.h: New files.
* src/rules/ai.c (ia_targer_y): Rename as ...
(ia_target_y): ... this.
(ai_level_initialize, ai_level_finalize): New functions.
* src/rules/ai.h (ai_level_initialize, ai_level_finalize): Declare.
* src/rules/bonus (bonus_points): Move ...
* src/rules/ai.c (bonus_points): ... here.
* src/rules/bonus (add_bonus, rem_bonus): Run BONUS_ADD_HOOK and
BONUS_REM_HOOK.
* src/rules/bonuses.c (init_bonuses_level,
uninit_bonuses_level): Don't alloc and free the tile_bonus
array.
* src/rules/state.c (state_init, state_free): Call
ai_level_initialize and ai_level_finalize;
* src/rules/statepriv.h (a_level_state_bits.tile_bonus_cpu) Move ..
* src/rules/ai.c (tile_bonus_cpu): ... here.
2002-02-24 Alexandre Duret-Lutz <duret_g@epita.fr>
Add functions to handle hooks (to be used by modules to hook
themselves in some obscure part of the game). Untested.
* src/generic_list.h (MEMCMP_EQUAL): New macro.
* src/hooks.c, src/hooks.h: New files.
* src/Makefile.am (HEROES_SOURCES): Add them.
2002-02-21 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/Makefile.am (INCLUDES): Rename as ...
(AM_CPPFLAGS): ... this.
* lib/Makefile.am: Likewise.
2002-02-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* Makefile.am (EXTRA_DIST): Add misc/ltdlaux.patch.
(SUBDIRS): Prepend libltdl.
* configure.ac: Call libtools/libltdl configury macros.
* libltdl/COPYING.LIB, libltdl/Makefile.am, libltdl/README,
libltdl/acinlude.m4, libltdl/configure.ac, libltdl/ltdc.c,
libltdl/ltdc.h, m4/libtool.m4: New files, from CVS libtool.
* tools/autogen.sh: Recognize AM_CONFIG_HEADER.
* tools/uplibtool.sh: New file.
* tools/cvsboot.sh: Add the tools/uplibtool.sh invokation, but
as a comment (because we keep the result in CVS for now).
2002-02-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/rules/bonuses.c (bonus_time, bonus_list, bonus_total_nbr,
bonus_real_nbr, next_bonus_to_update): Move these variables ....
* src/rules/statepriv.h (bonus_time, bonus_list): ... and these ...
(a_level_state): ... in this struct.
* src/rules/bonuses.c (add_bonus, rem_bonus, init_bonuses_leel,
uninit_bonuses_level, spread_bonus, add_end_level_bonuses,
update_bonuses): Adjust.
2002-02-12 Alexandre Duret-Lutz <duret_g@epita.fr>
Move the main "update" function into rules/, allows to remove
many minor "update" functions from the public state.h interface.
* src/heroes.h (update_htimer): Delete.
* src/heroes.c (update_htimer): Delete.
(update_all): Call state_update().
(play_game, play_demo): Call state_start_game(),
state_start_players().
* src/menus.c (quit_yes_no, pause_menu): Call state_pause().
* src/rules/state.c (state_init, state_free): Handle
a_level_bits.players_started and a_level_bits.update_timer.
* src/rules/state.h (state_start_game, state_update,
state_start_players, state_pause): New functions.
(update_lemmings, update_player, trigger_explosion,
trigger_possible_explosion, update_explosions,
update_bonuses): Move ...
* src/rules/statepriv.h (update_lemmings, update_player,
trigger_explosion, trigger_possible_explosion, update_explosions,
update_bonuses): ... here.
(a_level_bits) <update_timer, players_started>: New attributes.
* src/rules/updates.c (state_update, state_start_game,
state_start_players, state_pause): New functions.
2002-02-12 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/heroes.c (play_game): Make sure exit_code is always
initialized.
2002-02-11 Alexandre Duret-Lutz <duret_g@epita.fr>
Make lvl a field of state. This simplify all functions.
* src/state.h (a_level_state) <level>: New attribute.
(state_erase_player, state_reinit_player, state_init_lemmings,
update_lemmings, update_player, trigger_explosion,
trigger_possible_explosion, update_explosions,
update_bonuses): Remove the lvl argument.
Adjust all callers.
* src/state.c (state_init): Setup state->level.
2002-02-11 Ingo van Lil <inguin@gmx.de>
* src/lvl/en_body.c (en_reverse_walls): Set DM_ALL on T_OUTWAY squares.
(encode_level_body): Make sure tunnel outputs are T_TUNNEL.
* src/lvl/loadpie.c (lvl_load_tileset): Reset walls of T_OUTWAY
squares.
* src/lvl/lvl.h (lvl_assign_tile, lvl_set_start, lvl_setup_tunnel):
Return void.
* src/lvl/lvl_priv.h (rebuild_walls,
sprite_offset_to_tileset_index): Declare.
* src/lvl/mapedit.c (sprite_offset_to_tileset_index): Simplify.
(lvl_assign_tile, lvl_set_start, lvl_setup_tunnel): Add
assertions for bad conditions.
2002-02-08 Ingo van Lil <inguin@gmx.de>
* src/lvl/mapedit.c (mark_outway): New function.
(lvl_set_start, lvl_setup_tunnel): Call it.
(rebuild_walls): Likewise. Simplify using
sprite_offset_to_tileset_index().
2002-02-07 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/rules/state.h: More comments.
(a_lemming) <min, next_dead, couleur>: Rename as ...
(a_lemming) <puddle_offset, next_puddle, color>: ... these.
(lemmings_per_player): Rename as ...
(LEMMINGS_PER_PLAYER): ... this.
* src/rultes/statepriv.h (lemmings_total): Rename as ...
(LEMMINGS_TOTAL): ... this.
* src/render.c, src/rules/lemmings.c, src/rules/update.c,
src/rules/ai.c, src/rules/state.c: Adjust for renamings.
2002-02-07 Alexandre Duret-Lutz <duret_g@epita.fr>
* NEWS, ANNOUNCE, configure.ac: Update with the files from
version 0.20.
2002-02-06 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/heroes.c (play_game): Process input directions right before
updating the game state, not after the next display. This was
reported to improve responsiveness significantly.
Reported by Tomas Pospisek.
2002-02-06 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/levellst.c (cmp_levels): Fix the sorting order of levels,
broken since 0.12d.
Reported by Raphaël Poss.
2002-02-06 Ingo van Lil <inguin@gmx.de>
Add support for loading *.pie files and editing levels in libhlvl.
* src/lvl/loadpie.c, src/lvl/mapedit.c: New files.
* src/lvl/Makefile.inc (lvl_libhlvl_a_SOURCES): Add them.
* src/lvl/de_body.c (dir_mask_to_dir, tunnel_square_io): Move them ...
* src/lvl/privacc.c (dir_mask_to_dir, tunnel_square_io): ... here.
* src/lvl/format.c (PIE_GET_TILE_WALLS, PIE_GET_TILE_TYPE,
PIE_GET_TUNNEL_DIR, PIE_GET_ANIM_FRAME_COUNT,
PIE_GET_ANIM_FRAME_DELAY, PIE_GET_EFFECT_SET,
PIE_GET_SANIM_FRAME_COUNT, PIE_GET_SANIM_FRAME_DELAY,
PIE_GET_SPEED_DIR, PIE_PCX_PIXELS_X, PIE_PCX_PIXELS_Y,
PIE_TILE_PIXELS_X, PIE_TILE_PIXELS_Y): New macros.
* src/lvl/free.c (lvl_free): Free lvl->tileset.
(lvl_free_tileset): New function.
* src/lvl/load.c (lvl_load_file): Initialize lvl->tileset.
* src/lvl/lvl.h (a_tileset_tile, a_tileset_square, a_tileset,
lvl_create, lvl_load_tileset, lvl_assign_tile, lvl_free_tileset,
lvl_set_start, lvl_setup_tunnel, lvl_set_anim_delay): New declarations.
* src/lvl/lvl_priv.h (PIE_RECORD_SIZE, dirmask_to_dir,
tunnel_square_io): New declarations.
2002-02-04 Alexandre Duret-Lutz <duret_g@epita.fr>
Now the src/* code does not access the private parts
of src/rules/* anymore.
* src/rules/state.h: Do not include statepriv.h.
* src/rules/bonuses.c (txt_bonus, txt_bonus_tempo, set_txt_bonus,
update_player_bonus_var): Move ...
* src/bonus.c: ... back here. Reverting part of 2002-01-30.
(renader_init_bonus_level): New function.
* src/rules/statepriv.h (set_txt_bonus,
update_player_bonus_vars): Move ...
* src/bonus.h: ... here.
(render_init_bonus_level): New function.
(tile_bonus, tile_bonus_cpu): Move ...
* src/rules/state.h (a_level_state.tile_bonus): ... here, and ...
* src/riles/statepriv.h (a_level_state_bits.tile_bonus_cpu): ... here.
* src/rules/bonuses.c (add_bonus, mark_unreachable_place,
uninit_bonus_level, update_bonuses): Adjust access to tile_bonus.
(init_bonus_level): Likewise. Call render_init_bonus_level.
* src/heroes.c (load_level): Don't call allocate_explosions(),
init_bonus_level(), and spread_bonuses().
(unload_level): Don't call unit_bonuses_level(), and
relese_explosions().
* src/render.c (draw_trail_tail): Adjust to use
state_trail_expending().
(draw_level): Adjust the access to lemmings structures and trails.
* src/rules/ai.c: Likewise.
* src/rules/update.c: Likewise.
* src/rules/lemmings.c (find_lemming_direction, state_init_lemmings,
update_lemmings): Update access to lemmings structures.
* src/rules/state.c (state_init): Update access to lemmings
structures. Call allocate_explosions(), init_bonuses_level(),
and spread_bonuses().
(state_free): Update access to lemmings structures. Call
uninit_bonus_level() and relese_explosions()
* src/rules/statepriv.h (a_lemming,
a_level_state_bits.square_lemmings_list,
a_level_state_bits.square_dead_lemmings_list,
update_bonuses): Move ...
* src/rules/state.h (a_lemming, a_level_state.square_lemmings_list,
a_level_state.square_dead_lemmings_list, update_bonuses): ... here.
(state_trail_expending): New function.
(allocate_explosions, release_explosions): Move ...
* src/rules/statepriv.h (allocate_explosions,
release_explosions): ... here.
* src/rules/trail.c (state_trail_expending): New function.
2002-02-03 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/hedlite.c (gestclav) <HK_i>: Don't ignore tile #0 when
propagating walls to neighbors.
Reported by Ingo.
2002-02-02 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/rules/update.c (update_player): s/t_ice/T_ICE/,
s/t_tunnel/T_TUNNEL/.
2002-02-01 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/rules/state.c (state_init): Take the two_plauers, and in_menu
arguments. Clear state->private. Clear state->square_objects.
(state_free): Simplify.
* src/rules/state.h (state_init): Adjust prototype.
2002-02-01 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/rules/player.c (state_reinit_player): Determine the possible
players to attch to without using the two_players variable,
i.e., actually counting the number of human player.
2002-02-01 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/const.c (lemmings_anim_offset, lemmings_move_offset): Move ...
* src/render.c (lemmings_anim_offset, lemmings_move_offset): ... here.
(draw_level): Update lemmings_move_offset by calling
state_lemmings_move_offset.
* src/const.h (lemmings_anim_offset, lemmings_move_offset): Delete.
* src/heroes.c (update_all): Simplify the call to update_lemmings,
move all the guarding code ...
* src/rules/lemmings (update_lemmings): ... here.
(state_lemmings_move_offset): New function.
* src/rules/statepriv (a_level_state_bits): Add the
lemmings_move_offset member.
* src/rules/update.c (update_player): Call state_lemmings_move_offset
when lemmings_move_offset is needed.
2002-02-01 Alexandre Duret-Lutz <duret_g@epita.fr>
* m4/h-mikmod.m4 (heroes_CHECK_MIKMOD): Complete LIBMIKMOD_LIBS
with the output of libmikmod-config --ldadd, required to build
Heroes since libmikmod 3.1.10.
2002-02-01 Ingo van Lil <inguin@gmx.de>
* src/lvl/lvl.h (lvl_tile_type): Fix the type of the tile argument.
* src/lvl/privacc.c (lvl_tile_type): Likewise.
* src/lvl/access.h (READ_U16): Typo.
2002-01-31 Alexandre Duret-Lutz <duret_g@epita.fr>
Move the non-rendering parts of src/explosions.c to
src/rules/explosions.c.
* src/explosions.c (square_explo_state, square_explo_type): Move ...
* src/rules/state.h (a_level_state.square_explo_state,
a_level_state.square_explo_type): ... here.
* src/explosions.c (an_explosion_info, explo_list, explo_list_max,
explo_list_first_unused, explo_timer, explo_time): Move ...
* src/rules/statepriv.h (an_explosion_info,
a_level_state_bits.explo_list, a_level_state_bits.explo_list_max,
a_level_state_bits.explo_list_first_unused,
a_level_state_bits.explo_timer,
a_level_state_bits.explo_time): ... here.
* src/explosions.c (allocate_explosions, release_explosions,
trigger_explosion_at_time, compute_explosion_state,
propagate_to_neighbors_maybe, trigger_explosion_at_time,
trigger_explosion, trigger_possible_explosion,
update_explosions): Move ...
* src/rules/explosions.c: ... here.
* src/explosions.h (NBR_EXPLOSION_FRAMES, NBR_EXPLOSION_KINDS,
EXPLOSION_SLICES_PER_FRAMES, EXPLOSION_DELAY, EXPLOSION_IMMEDIATE,
EXPLOSION_TRIGGERED, EXPLOSION_TRIGGER_NEIGHBORS,
EXPLOSION_UNTRIGGERED, an_explosion, EXPLOSION_SQUARE_TRIGGERED_P,
EXPLOSION_SQUARE_TRIGGERABLE_P, square_explo_type,
allocate_explosions, release_explosions, trigger_explosion,
trigger_possible_explosion, update_explosions): Move ...
* src/rules/state.h: ... here.
* src/heroes.c (load_level, unload_level, update_all): Adjust calls
to allocate_explosions, release_explosions, and update_explosions.
* src/render.c (draw_level): Adjust usage of square_explo_type.
* src/rules/ai.c: Adjust usage of square_explo_state
* src/rules/trail.c (erase_trail): Adjust call to trigger_exposion.
* src/rules/update.c (update_player): Likewise.
* src/rules/lemmings.c (find_lemming_direction) <bits>: Initialize.
2002-01-30 Alexandre Duret-Lutz <duret_g@epita.fr>
Move parts of src/bonus.c to src/rules/bonuses.c. The remaining
of the file is related to the level rendering. (A small part of
the things moved are related to rendering too, but they are
difficult to split.)
* src/rules/bonuses.c: New file.
* src/rules/Makefile.inc (rules_libhrules_a_SOURCES): Add it.
* src/bonus.c (bonus_density, bonus_points, bonus_proba,
bonus_proba_sum, bonus_time, bonus_list, bonus_total_nbr,
bonus_real_nbr, next_bonus_to_update, txt_bonus, txt_bonus_tempo,
random_bonus, add_bonus, add_random_bonus, rem_bonus,
reset_bonus_mode, mark_unreachable_places, init_bonuses_level,
uninit_bonuses_level, spread_bonuses, set_txt_bonus,
add_end_level_bonuses,apply_bonus, update_player_bonus_vars,
update_bonuses): Move ...
* src/rules/bonuses.c: ... here.
* src/bonus.h (N_BONUSES, N_BONUS_FRAMES, bonus_rle): Export.
(bonus_points, bonus_time, bonus_list, txt_bonus_tempo,
add_bonus, add_random_bonus, rem_bonus, init_bonuses_level,
uninit_bonuses_level, spread_bonuses, set_txt_bonus,
add_end_level_bonuses, apply_bonus, update_player_bonus_vars,
update_bonuses): Move ...
* src/rules/statepriv.h: ... here.
* src/heroes.c (update_all, load_level): Adjust calls to
init_bonuses_level(), spead_bonuses(), and update_bonuses().
* src/rules/update.c (update_player): Adjust calls to apply_bonus(),
and rem_bonus().
* src/rules/trail.c (grow_trail): Add the lvl argument.
2002-01-30 Alexandre Duret-Lutz <duret_g@epita.fr>
Extract the update_player() and ai functions from heroes.c, and
move them to libhrules.a. Note that the rules/ai.c and rules/ai.h
files are temporary. When programmable vehicles are available,
they should move in the relevant directory.
* src/rules/ai.c, src/rules/ai.h, src/rules/update.c: New files.
* src/rules/Makefile.inc (rules_libhrules_a_SOURCES): Add them.
* src/rules/state.c (state_level_exit_code,
state_level_set_exit_code): New functions.
* src/rules/state.h (state_level_exit_code,
state_level_set_exit_code, update_player): New functions.
* src/bonus.c (apply_bonus): Use state_level_set_exit_code().
* src/menus.c (draw_end_level_info): Use state_level_exit_code().
* src/heroes.c (output_screen, play_menu, play_demo,
play_game): Likewise.
(update_all): Adjust call to update_player.
(level_is_finished): Move ...
* src/rules/statepriv.h (a_level_bits.level_is_finished): ... here.
* src/heroes.h (level_is_finished): Delete.
* src/heroes.c (ia_max_depth, ia_cur_depth, ia_is_invincible,
ia_player, ia_target_x, ia_targer_y, ia_wrap_x, ia_wrap_y,
ia_wrap_left, ia_wrap_right, ai_throttle, ia_eval_dist,
ia_eval_dir_target_inline, ia_eval_dir_bonus_inline,
ia_eval_dir_lemming_inline, ia_eval_dir_cash_inline,
ia_eval_dir_color_inline, ia_eval_neighb_pos, ia_eval_dir_target,
ia_eval_dir_lemming, ia_eval_dir_color, ia_eval_dir_bonus,
ia_goto_target_inline, ia_goto_bonus_inline,
ia_goto_lemming_inline, ia_goto_color_inline, ia_goto_cash_inline,
ia_goto_target, ia_goto_nearest_bonus, ia_goto_nearest_lemming,
ia_goto_nearest_color, ia_goto_nearest_cash): Move ...
* src/ia.c: ... here.
* src/heroes.c (find_free_way, update_player): Move ...
* src/update.c: ... here.
2002-01-29 Alexandre Duret-Lutz <duret_g@epita.fr>
This is the first step towards grouping all the level state
variables in the same struct (named a_level_state). This also
moves many related definitions and handling functions into the
rules directory. Intuitively, this directory should hold all
the functions and data related to updating the state of a game.
The work is not complete yet. Other tasks remaining are the
migration of update_player(), ai functions, and the move of the
code for bonus and explosions.
* src/rules/Makefile.inc, src/rules/lemmings.c,
src/rules/objects.c, src/rules/players.c, src/rules/players.h,
src/rules/state.c, src/rules/state.h, src/rules/statepriv.h,
src/rules/trail.c: New file.
* src/Makefile.am: Include rules/Makefile.inc.
(INCLUDES): Add -I$(srcdir)/rules.
(heroes_LDADD, heroes_DEPENDENCIES): add rules/libhrules.a.
* src/const.h (player, trail_pos, trail_way, trail_offset,
trail_size, square_lemmings_list, square_dead_lemmings_list,
lemmings_support, object_nbr, lemmings_per_players,
lemmings_total, maxq): Move ...
* src/rules/statepriv.h (a_level_state_bits): ... here.
* src/const.h (col2plr, plr2col, square_occupied, square_way,
square_tile, square_coord, square_object, game_mode): Move ...
* src/rules/state.h (a_level_state): ... here.
* src/const.h (state): New variable.
* src/const.c: Reflect changes of const.h.
* src/heroes.c (ia_skip_firsts_moves, erase_player,
reinit_player): Move ...
* src/rules/player.c (ia_skip_firsts_moves, state_erase_player,
state_reinit_player): ... here.
* src/heroes.c (add_color, add_cacsh): Move ...
* src/rules/objects.c: ... here.
* src/heroes.c (find_lemming_direction): Move ...
* src/rules/lemmings.c: ... here.
* src/heroes.c (load_level, unload_level): Move most code ...
* src/rules/state.c (state_init, state_free): ... here.
* src/heroes.c (grow_trail, shrink_trail, erase_trail): Move ...
* src/rules/trails.c (grow_trail, shrink_trail, erase_trail): ... here.
* src/heroes.h (grow_trail, shrink_trail): Remove.
* src/structs.h (hl, ehl, a_player, M_QUEST, M_DEATHM, M_KILLEM,
M_TCASH, M_COLOR): Move ...
* src/player.h: ... here.
* src/structs.h (a_lemming): Move ...
* src/statepriv.h: ... here.
* src/bonus.c, src/camera.c, src/heroes.c, src/menus.c,
src/render.c, src/visual.c: Adjust to use state.
* src/explosions.c: s/state/explo_state/ to avoid conflicts.
2002-01-29 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/const.c, src/heroes.c, src/heroeslvl.c, src/lvl/privacc.c,
src/const.h, src/lvl/lvl.h, src/lvl/lvl_priv.h: Typo
s/a_square_corrd_paur/a_square_coord_pair/.
2002-01-28 Alexandre Duret-Lutz <duret_g@epita.fr>
* arch/mingw32/cross.sh (cross_install): Add ChangeLog.01.
2002-01-28 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.19.
* ANNOUNCE, NEWS, arch/mingw32/dest-readme-lib: Update for 0.19.
2002-01-25 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/lvl/en_head.c: Do not include xstrduplwr.h.
2002-01-24 Alexandre Duret-Lutz <duret_g@epita.fr>
* arch/mingw32/cross.sh (cross_install): Use make install-strip.
(STRIPPROG): Remove.
2002-01-24 Alexandre Duret-Lutz <duret_g@epita.fr>
* misc/copytile.c (copy_tile4): New function.
(main): Call it.
* src/sprshade.c (draw_sprshade): Remove FIXME about memcpy being
possibly faster.
* src/sprrle.c (draw_sprrle): Likewise.
* src/lvl/README: Update.
2002-01-24 Alexandre Duret-Lutz <duret_g@epita.fr>
* TODO: Add some items I posted to heroes-discuss a
couple of week ago.
2002-01-24 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/system.h (getopt.h): Disable MinGW's definition of __argc
and __argv during the inclusion of getopt.h.
2002-01-24 Alexandre Duret-Lutz <duret_g@epita.fr>
* lib/filelock.c (file_unlock): Use _LK_UNLCK instead
of _LK_UNLOCK (it seems this has changed in MinGW32), but
still support _LK_UNLOCK just in case.
2002-01-23 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.18b.
* NEWS: Update.
* tests/Makefile.am (EXTRA_PROGRAMS): Replace by ...
(check_PROGRAMS): ... this.
2002-01-22 Alexandre Duret-Lutz <duret_g@epita.fr>
* misc/copytile.c: New file.
* Makefile.am (EXTRA_DIST): Add it.
* src/render.c (copy_tile): Point people to misc/copytile.c.
2002-01-22 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/lvl/lvl.h (SQR_COORD_X_HOLD, SQR_COORD_Y_HOLD): Rename as ...
(SQR_COORD_X_VALID, SQR_COORD_Y_VALID): ... these.
(SQR_COORD_VALIDE): New macro.
* src/lvl/en_body.c (en_reverse_walls): Adjust.
2002-01-21 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/lvl/lvl.h (SQR_COORD_X_HOLD, SQR_COORD_Y_HOLD): New macros.
* src/lvl/en_body.c (en_reverse_walls): Simplify, don't add
wall to border squares (this is already done on loading),
don't compute dest before it is needed.
2002-01-21 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/lvl/loadmac.h, src/lvl/savemac.h: Delete and merge into ...
* src/lvl/access.h: ... this file.
* src/lvl/de_body.c, src/lvl/en_body.c: Extract format-related
macros into ...
* src/lvl/format.h: ... this new file. Macros from de_body.c are
all prefixed with GET_; macros for en_body are rewritten
using a SET_ prefix, take a new 'val' argument, and use the
endian-safe macros from access.h. Adjust all user functions.
* src/lvl/Makefile.inc (lvl_libhlvl_a_SOURCES): Remove
lvl/savemac.h, and lvl/loadmac.h. Add lvl/format.h and
lvl/access.h.
2002-01-21 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/system.h (S_IRUSR, S_IRGRP, S_IROTH, S_IWUSR, S_IWGRP,
S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH, S_IRWXU, S_IRWXG, S_IRWXO,
S_IXUGO, S_IRWXUGO, S_IRUGO, S_IWUGO, S_IRWUGO): New macros.
* src/lvl/save.c (lvl_save_file): Create the file in S_IRWUGO mode.
* tests/lvlsave.c: Include error.h.
2002-01-21 Ingo van Lil <inguin@gmx.de>
* src/lvl/en_body.c (en_reverse_walls): Fix warnings.
* src/lvl/en_head.c (encode_level_header): Likewise.
* src/lvl/save.c (lvl_save_header_file, lvl_save_file): Likewise.
2002-01-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* doc/heroes.texi (configure options): Document
--enable-optimizations' argument.
* m4/devel.m4 (adl_ENABLE_DEVEL): Set enable_optimizations to -O.
* m4/gccoptim.m4 (ad_GCC_OPTIM): Handle $enable_optimizations.
2002-01-20 Alexandre Duret-Lutz <duret_g@epita.fr>
Test that saved levels are identical to loaded levels.
* tests/Makefile.am (lvlsave_LDADD, lvlsave_SOURCES,
EXTRA_PROGRAMS, INCLUDES, AM_CFLAGS): New variables.
(TESTS): Add lvlsave.test.
* tests/lvlsave.test, tests/lvlsave.c: New files.
* tests/defs: Set HEROESLVL. Handle VERBOSE=x.
2002-01-20 Ingo van Lil <inguin@gmx.de>
Teach liblvl how to save a level.
* src/lvl/en_body.c, src/lvl/en_head.c, src/lvl/save.c,
src/lvl/savemac.h: New files.
* src/lvl/Makefile.inc (lvl_libhlvl_a_SOURCES): Add them.
* src/lvl/lvl.h (lvl_save_file): New function.
* src/lvl/lvl_priv.h (encode_level_header, encode_level_body):
New function.
2002-01-18 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/heroeslvl.c (version): Bump copyright year to 2002.
2002-01-17 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/pendulum.c, src/pendulum.h: New files.
* src/Makefile.am (HEROES_SOURCES): Add them.
* src/heroes (pendulum_create, pandulum_one_step,
pendulum_update): Move these functions ...
* src/pendulum.c (pendulum_create, pendulum_one_step,
pendulum_update): ... here. And adjust them to
work with...
(a_pendulum): This new struct.
* src/heroes.c (play_game, play_demo): Adjust to use
the new interface.
2002-01-17 Ingo van Lil <inguin@gmx.de>
Alt+Enter toggles full screen mode.
* src/media/sdl/video.c (Handle_AltEnter): New function.
(init_SDL): Setup Handle_AltEnter as an event filter.
2002-01-17 Ingo van Lil <inguin@gmx.de>
* src/readmake.c (a_margin_list_item, a_margin_list): New structs.
(init_margins, add_margin, free_margins): New functions.
(compute_width, compile_reader_data): Use the new structs and
functions to allocate memory for margins dynamically, instead of
using and static array.
2002-01-14 Ingo van Lil <inguin@gmx.de>
* src/heroes.c (find_free_way): Ignore explicit turn back.
2002-01-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/menus.c (editor_selector, extra_menu): Fix gcc-3.0 warnings.
2002-01-09 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.18a.
* NEWS: Update.
* src/argv.c (version): Bump copyright year to 2002.
* m4/libalt.m4 (LIBALT_LDFLAGS, LIBALT_LDADD, LIBALT_LOCAL_LDADD):
Rename as ...
(LIBALT_XLDFLAGS, LIBALT_XLDADD, LIBALT_LOCAL_XLDADD): ... these.
* src/Makefile.am: Adjust.
2002-01-07 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/heroes.c (ai_throttle): Use player[c].invincible instead of
ia_is_invincible.
2002-01-07 Ingo van Lil <inguin@gmx.de>
Alexandre Duret-Lutz <duret_g@epita.fr>
* src/heroes.c (ai_throttle): New function.
(update_player): Call it.
(reinit_player): Initialize player[p].pos.
2002-01-01 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/Makefile.am (heroes_SOURCES): Remove font_help.hh
* src/font_help.hh: Delete.
2001-12-30 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/media/ggi/video.c (dont_request_8bit_mode): New flag.
(set_display_params): Set dont_request_8bit_mode if -G not8.
(setup_320x200x8_display): Do nothing if dont_request_8bit_mode.
* doc/heroes.texi (Invoking heroes, Troubleshooting): Document this.
2001-12-29 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/Makefile.am (parafmt_check_LDADD): New.
2001-12-27 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac (ALL_LINGUAS): Add pt_BR.
* po/pt_BR.po: New file.
From Luzemario Dantas Rocha <luza.solucao@uol.com.br>.
2001-12-15 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.18.
* ANNOUNCE, NEWS: Update.
2001-12-15 Alexandre Duret-Lutz <duret_g@epita.fr>
* po/de.po: Update copying/warranty message.
From Ingo van Lil <inguin@gmx.de>.
2001-12-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* po/fr.po: Update (use new latin-1 characters).
2001-12-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/camera.c (compute_corner): Don't take two_player into
account while we are in_menu. (Fix a bug introduced in 0.12c.)
Reported by Ingo van Lil <inguin@gmx.de>.
2001-12-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/fontdata.c (initialize_deck_font): Revert change from
2001-12-12.
Reported by Ingo van Lil <inguin@gmx.de>.
2001-12-14 Alexandre Duret-Lutz <duret_g@epita.fr>
* po/de.po: Update (use new latin-1 characters).
From Ingo van Lil <inguin@gmx.de>.
2001-12-13 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.17a.
* NEWS, HACKING: Update.
2001-12-12 Alexandre Duret-Lutz <duret_g@epita.fr>
* tests/defs: Don't assume heroes has been built in $srcdir.
* Makefile.am (my-distcheck-nodisplay, my-distcheck-ggi):
Run make check.
(my-distcheck-allegro): New target.
(distcheck-hook): Depend upon my-distcheck-allegro.
* doc/heroes.texi (Libraries): Add an entry for Allegro.
(configure options): Document --with-allegro.
(Machines): Pretend that Heroes-Allegro works on Linux/i386.
* m4/h-allegro.m4: "unhide" the check for Allegro.
2001-12-12 Alexandre Duret-Lutz <duret_g@epita.fr>
Support Latin-1 characters in help reader and big fonts.
* src/rsc_files.gperf: Add big-font.
* src/fontdata.c (big_font_img): New variable.
(uninit_fonts): Free big_font_img.
(initialize_menu_font): Use big_font_img.
(initialize_deck_font): Don't convert lowercase letters to
upper case letters in DEBUG mode.
(compute_text_width): Use UCHAR.
* src/sprtext.c (compile_sprtext, compile_sprtext_color):
Test whether width[ch]!=0 to make sure character ch is supported,
not upper_left[ch]!=0.
(compile_sprtext_color): Use UCHAR.
2001-12-12 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/media/allegro/joystick.c (get_joystick_state): Reset
joystick axes when needed.
2001-12-11 Alexandre Duret-Lutz <duret_g@epita.fr>
* po/de.po: Update.
From Ingo van Lil <inguin@gmx.de>.
2001-12-10 Alexandre Duret-Lutz <duret_g@epita.fr>
Joystick support for Allegro. (Untested yet, I have no joystick
on this host...)
* m4/h-joystick.m4: Add LIBALT support for the Allegro joystick
driver (allj).
* m4/h-allegro.m4: Don't handle allj here.
* m4/h-media.m4: Consider allk for selection.
* src/media/allegro/joystick.c: New file.
* src/media/allegro/video.c (heroes_init_allegro): New function.
(init_video_low): Call heroes_init_allegro() instead of init_allegro().
* src/media/Makefile.inc (EXTRA_LIBRARIES): Add media/libhallj.a.
(media_libhallj_a_CFLAGS, media_libhallj_a_SOURCES): New variables.
2001-12-10 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/media/allegro/keyb.c (process_input_events): Call clear_keybuf().
* src/heroes.c (play_game): Call keycode_to_ascii().
2001-12-09 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/media/allegro/video.c (init_allegro): Call install_mouse ().
* src/media/allegro/keyb.c (enable_mouse): Remove.
2001-12-09 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/media/keyb.h (keycode_to_ascii): Declare.
* src/media/dummy/keyb.c (keycode_to_ascii): Define.
* src/media/sdl/keyb.c (keycode_to_ascii): Define.
* src/media/ggi/keyb.c (keycode_to_ascii): Define.
* src/media/allegro/keyb.c (keycode_to_ascii): Define.
* src/menus.c (editor_menu, enter_your_name): Use it.
2001-12-09 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/heroes.c (get_input_directions): Don't assume keyboard_map
contains 0 or 1 (that's not true with Allegro).
* src/media/Makefile.inc (media_libhallvkm_a_CFLAGS): Don't use
$(MORE_WARNINGS_CFLAGS).
* src/sys/Makefile.inc (sys_libhallm_a_CFLAGS): Likewise.
2001-12-07 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/Makefile.am (GGI_CFLAGS, GII_CFLAGS, LIBMIKMOD_CFLAGS,
SDL_CFLAGS, SDL_MIXER_CFLAGS, ALLEGRO_CFLAGS): Define.
* m4/gccwarn.m4 (CF_GCC_MORE_WARNINGS): Add -Werror.
* lib/cast.h, lib/cast.c: New files.
* lib/Makefile.am (libheroes_a_SOURCES): Add them.
* src/vars.c (var_get_value): Call const_cast_string ().
* src/musicfiles.c (get_sound_track_from_alias): Likewise.
* src/media/mikmod/strack.c (init_sound_engine): Likewise.
* src/media/sdl/video.c (uninit_video_low): Likewise.
(init_video_low): Cast SDL_ALLEVENTS to Uint8.
2001-12-02 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Check for declaration of strerror.
* lib/error.c, lib/hash.c, lib/hash.h, lib/xstrdup.c: Update from
textutils-2.0.18.
* lib/unlocked-io.h: New (empty) file. Needed by lib/error.c.
* lib/Makefile.am (libheroes_a_SOURCES): Add it.
* src/musicfiles.c (get_sound_track_from_alias): Use hash_lookup.
* src/vars.c (var_get_value): Likewise.
2001-11-28 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/media/Makefile.inc (media/ggi/keysdef.c, media/sdl/keysdef.c,
media/allegro/keysdef.c): Allow these file to be built even if their
source file do not exists. This is needed by target such as TAGS.
2001-11-28 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/Makefile.am, src/media/Makefile.inc, src/sys/Makefile.inc:
Use $(MUMBLE) instead of @MUMBLE@ for
AC_SUBST'ed variables.
* arch/Makefile.inc, tools/Makefile.inc, src/etc/Makefile.inc: Add
emacs hint for Makefile mode.
* m4/gccwarn.m4 (CF_GCC_MORE_WARNINGS): Don't include $(CFLAGS) in
MORE_WARNINGS_CFLAGS.
2001-11-25 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/media/Makefile.inc (DISTCLEANFILES): Add media/allegro/keydef.c.
(media/ggi/keysdef.c, media/sdl/keysdef.c,
media/allegro/keysdef.c): Depend upon .dirstamp in each directory.
2001-11-19 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.17.
* tests/Makefile.am (EXTRA_DIST): Add $(TESTS).
2001-11-19 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/heroes.c (heroes_main): Set system-conf from the
HEROES_SYSTEM_CONF envvar.
* tests/Makefile.am (EXTRA_DIST): Add defs.
* tests/defs: Set HEROES_SYSTEM_CONF to $srcdir/../src/etc/heroesrc,
otherwise the testsuite would use the (maybe not installed)
system configuration.
2001-11-18 Alexandre Duret-Lutz <duret_g@epita.fr>
* ANNOUNCE, NEWS: Update for 0.17.
2001-11-18 Alexandre Duret-Lutz <duret_g@epita.fr>
* tests/demo.test, tests/intro.test, tests/defs,
tests/Makefile.am: New file.
* Makefile.am (SUBDIRS): Add tests.
* configure.ac: Output tests/Makefile.
2001-11-18 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/argv.h (a_check, check_what): New.
* src/argv.c (check): New function.
(long_options): Add --check.
(parse_argv): Call check().
* src/heroes.c (heroes_main): Handle check_intro.
(main_menu): Handle check_demo.
* src/const.c (key_or_joy_ready): Handle check_demo.
2001-11-18 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/sprglenz.c (compile_sprglenz): Check for src<eol before
dereferencing *src, not after.
* src/sprrle.c (compile_sprrle): Likewise.
* src/sprshade.c (compile_sprshade): Likewise.
* src/sprunish.c (compile_sprunish): Likewise.
Suggested by Daniel.
2001-11-18 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/render.c (draw_vehicle_tail): Thinko, resulting in a SEGV :(
Reported by Daniel.
2001-11-18 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.16.
* NEWS, ANNOUNCE: Update for 0.16.
2001-11-18 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Don't AC_SUBST(LIBOBJS), it's already done.
2001-11-17 Alexandre Duret-Lutz <duret_g@epita.fr>
* doc/heroes.texi (Machines): Add a notice for Suse 7.1 users.
* BUGS: Update.
2001-11-17 Alexandre Duret-Lutz <duret_g@epita.fr>
* doc/doc.scm: New file (define import-head and import-tail).
* doc/Makefile.am (EXTRA_DIST): Add doc.scm.
(heroes_TEXINFOS, CLEANFILES, debugchn.texi, people.texi): Remove.
(heroes.texi): Build from debugchn.tpl, people.tpl, and heroes.texi
itself.
* doc/heroes.texi: Merge vr and cp at the beginning (it has no effect
on dvi output otherwise). Add START and END markers for
debugchn.texi and people.texi output.
* src/debugchn.tpl, src/people.tpl: Call import-head and import-tail
for texi output.
2001-11-16 Alexandre Duret-Lutz <duret_g@epita.fr>
* lib/error.c, lib/getopt.c, lib/hash.c, m4/strerror_r.m4: Update
from fileutils-4.1.1.
2001-11-11 Alexandre Duret-Lutz <duret_g@epita.fr>
* BUGS: Suppress Benjamin Preidecker's report about Heroes 0.5
frozen with KGI error messages.
Christoph Egger <Christoph_Egger@t-online.de> (GGI devel)
says it's obsolete.
2001-11-09 Alexandre Duret-Lutz <duret_g@epita.fr>
* ChangeLog.01: New file.
* Makefile.am (EXTRA_DIST): Add it.
2001-11-08 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/const.c (trail_way, square_way): Define as an array
of a_dir8_pair.
* src/const.h (trail_way, square_way): Likewise.
* src/heroes.c (reinit_player, update_player): Use DIR8_PAIR.
(grow_trail): Beautify.
* src/lvl/lvl.h (DIR8_TAIL, DIR8_HEAD, DIR8_PAIR): New macros.
* src/render.c (draw_trail_real, draw_vehicle_tail,
draw_vehicle_head, draw_trail_tail): Use a_dir8_pair, REVERSE_DIR,
and DIR8_PAIR.
* src/heroes.c (shrink_trail): Don't redraw the trail tail
if the trail has been erased. This completes the fix from
2001-10-28.
2001-10-28 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/heroes.c (update_player): Call erase_trail() before
shrink_trail() when a player is destroyed.
Reported by Daniel Burrows.
2001-10-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: AC_CHECK_DECLS for strnlen.
2001-10-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump version to 0.15.
* NEWS, ANNOUNCE: Update for 0.15.
Modernize lib/Makefile.am.
* lib/Makefile.am (CFLAGS): Remove (useless).
(EXTRA_DIST, libheroes_a_DEPENDENCIES): Remove (automatically
filled by Automake).
(noinst_HEADERS): Merge with libheroes_a_SOURCES.
* configure.ac: AC_REPLACE_FUNC strndup.
Avoid duplication of CFLAGS on targets using per-target CFLAGS.
* src/Makefile.am (CFLAGS): Don't define this variable, but ...
(AM_CFLAGS): ... define this one instead.
(parafmt_check_CFLAGS): Remove @CFLAGS@.
* src/media/Makefile.am (media_libhggivkm_a_CFLAGS,
media_libhgiij_a_CFLAGS, media_libhmiks_a_CFLAGS,
media_libhsdlvkm_a_CFLAGS, media_libhsdlj_a_CFLAGS,
media_libhsdls_a_CFLAGS, media_libhallvkm_a_CFLAGS): Likewise.
* src/sys/Makefile.inc (sys_libhsdlm_a_CFLAGS,
sys_libhallm_a_CFLAGS): Likewise.
2001-10-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* BUGS: Update with input from Eero Tamminen <oak@welho.fi>.
2001-10-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* tools/autogen.sh (moreverb): Use automake --force-missing.
Don't run autoheader if AC_CONFIG_HEADER is not called.
Call autoconf before autoheader, so the latter can use
the traces cached during the run of the former.
2001-10-14 Alexandre Duret-Lutz <duret_g@epita.fr>
Rewrite the explosion code (again). This fix some issues present
in the old explosion handling: 1- the explosions could propagate
to the neighboring square already activated (leading to an
exponential growth of the number of explosions, hindering
game-play as reported by Daniel); 2- the propagation did not occur
at a precise time after activation (see comment in the code); 3-
vanished explosions were not immediately removed from explo_list.
* src/explosions.c (an_explosion_info): Remove frame_start.
(allocate_explosions): Reset explo_time.
(compute_explosion_state, propagate_to_neighbors_maybe,
trigger_eplosion_at_time): New functions.
(trigger_explosion, trigger_possible_explosion,
update_explosions): Rewrite functions.
* src/explosions.h (square_explo_type, trigger_explosion): Fix type.
(EXPLOSION_SQUARE_TRIGGERED_P,
EXPLOSION_SQUARE_TRIGGERABLE_P): New macros.
2001-10-05 Alexandre Duret-Lutz <duret_g@epita.fr>
* m4/checkpkg.m4 (AC_caolan_CHECK_PACKAGE): Quote strings.
* m4/pkgeneric.m4 (AC_adl_PKG_GENERIC): Likewise.
* m4/w_dirent.m4 (adl_FUNC_READIR): Add missing comma. I wonder
how this macro could ever work.
* m4/h-sdlmixer.m4 (heroes_CHECK_SDL_MIXER): Use $SDL_LIBS.
2001-09-24 Alexandre Duret-Lutz <duret_g@epita.fr>
* lib/alloca.c, lib/basename.c, lib/dirname.c, lib/dirname.h,
lib/error.c, lib/error.h, lib/getopt.c, lib/getopt1.c,
lib/gnugetopt.h, lib/hash.c, lib/stripslash.c, m4/dos.m4,
m4/ftruncate.m4, m4/gnu-source.m4, m4/lcmessage.m4, m4/malloc.m4,
m4/progtest.m4, m4/realloc.m4, m4/strerror_r.m4: Update from
textutils-2.0.15.
* HACKING, tools/fetish-sync.sh: Add lib/dirname.c and
lib/dirname.h.
* lib/stripslash.h: Delete.
* lib/Makefile.am (noinst_HEADERS): Remove lib/stripslash.h.
* src/hedlite.c, src/relocate.c, src/userdir.c: Include
"dirname.h" instead of "stripslash.h".
2001-09-22 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Bump to version 0.14.
* po/fr.po: Update.
2001-09-21 Alexandre Duret-Lutz <duret_g@epita.fr>
* ANNOUNCE: Update for 0.14
* NEWS: Likewise.
2001-09-21 Alexandre Duret-Lutz <duret_g@epita.fr>
* HACKING: Update help2man URL.
2001-09-21 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/people.def (Romuald Genevois): Update www.
2001-09-21 Alexandre Duret-Lutz <duret_g@epita.fr>
* tools/readme.sed: Update License.
* doc/heroes.texi (Getting Heroes): Update Metalab link, now Ibiblio.
(Libraries): Update the LibMikMod home page.
2001-09-21 Alexandre Duret-Lutz <duret_g@epita.fr>
Change the license from 'GPL version 2 or any later version'
to 'GPL version 2'.
* Makefile.am, configure.ac, arch/Makefile.inc, doc/Makefile.am,
lib/Makefile.am, man/Makefile.am, src/Makefile.am, src/argv.c,
src/argv.h, src/bonus.c, src/bonus.h, src/bytesex.h, src/camera.c,
src/camera.h, src/const.c, src/const.h, src/debughash.h,
src/debugmsg.c, src/debugmsg.h, src/endscroll.c, src/endscroll.h,
src/errors.c, src/errors.h, src/explosions.c, src/explosions.h,
src/extras.c, src/extras.h, src/fader.c, src/fader.h,
src/fastmem.h, src/font.h, src/font_help.h, src/fontdata.c,
src/fontdata.h, src/gameid.c, src/gameid.h, src/generic_list.h,
src/hedlite.c, src/hedlite.h, src/helptext.c, src/helptext.h,
src/hendian.c, src/hendian.h, src/heroes.c, src/heroes.h,
src/heroeslvl.c, src/intro.c, src/intro.h, src/items.c,
src/items.h, src/levellst.c, src/levellst.h, src/locales.c,
src/locales.h, src/menus.c, src/menus.h, src/misc.c, src/misc.h,
src/musicfiles.c, src/musicfiles.h, src/parafmt.c, src/parafmt.h,
src/pcx.c, src/pcx.h, src/people.h, src/persona.c, src/persona.h,
src/pixelize.c, src/pixelize.h, src/readmake.c, src/readmake.h,
src/relocate.c, src/relocate.h, src/render.c, src/render.h,
src/renderdata.c, src/renderdata.h, src/rsc_files.c,
src/rsc_files.h, src/rsc_files_hash.h, src/savegame.c,
src/savegame.h, src/scores.c, src/scores.h, src/scrtools.c,
src/scrtools.h, src/sprglauto.c, src/sprglauto.h, src/sprglenz.c,
src/sprglenz.h, src/sprite.c, src/sprite.h, src/spropaque.c,
src/spropaque.h, src/sprprog.c, src/sprprog.h, src/sprprogwav.c,
src/sprprogwav.h, src/sprrle.c, src/sprrle.h, src/sprshade.c,
src/sprshade.h, src/sprtext.c, src/sprtext.h, src/sprunish.c,
src/sprunish.h, src/sprzcol.c, src/sprzcol.h, src/structs.h,
src/system.h, src/timer.c, src/timer.h, src/userconf.c,
src/userconf.h, src/userdir.c, src/userdir.h, src/vars.c,
src/vars.h, src/visuals.c, src/visuals.h, src/etc/Makefile.inc,
src/lvl/Makefile.inc, src/lvl/de_body.c, src/lvl/de_head.c,
src/lvl/free.c, src/lvl/in_body.c, src/lvl/load.c,
src/lvl/loadmac.h, src/lvl/lvl.h, src/lvl/lvl_priv.h,
src/lvl/privacc.c, src/media/Makefile.inc, src/media/joystick.h,
src/media/keyb.c, src/media/keyb.h, src/media/keyb_low.h,
src/media/keysdef.h, src/media/keyvalues.h, src/media/sfx.c,
src/media/sfx.h, src/media/strack.c, src/media/strack.h,
src/media/video.c, src/media/video.h, src/media/video_low.h,
src/media/allegro/keyb.c, src/media/allegro/keyvalues.c
src/media/allegro/video.c, src/media/dummy/joystick.c,
src/media/dummy/keyb.c, src/media/dummy/keysdef.c,
src/media/dummy/keyvalues.c, src/media/dummy/sfx.c,
src/media/dummy/strack.c, src/media/dummy/video.c,
src/media/ggi/keyvalues.c, src/media/ggi/video.c,
src/media/gii/joystick.c, src/media/mikmod/sfx.c,
src/media/mikmod/strack.c, src/media/sdl/joystick.c,
src/media/sdl/keyb.c, src/media/sdl/keyvalues.c,
src/media/sdl/video.c, src/media/sdl_mixer/sfx.c,
src/media/sdl_mixer/strack.c, src/sys/Makefile.inc,
src/sys/main.h, src/sys/allegro/main.c, src/sys/std/main.c,
tools/Makefile.inc: Change license.
* README: Update the license section.
2001-09-21 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/levellst.c (print_level_list): New function.
* src/levellst.h (print_level_list): New function.
* src/heroes.c (heroes_main): Call print_level_list().
* src/argv.h (showlevels): New variable.
* src/argv.c (showlevels): New variable.
(list): Handle --list=levels.
* doc/heroes.texi (Invoking heroes): Document --list=levels.
2001-09-21 Alexandre Duret-Lutz <duret_g@epita.fr>
* src/argv.c (print_help): Take a 'status' argument and use it as
exit value.
(parse_argv): Return -1 instead of 1 when the game must quit but not
with a non-null exit status.
(heroes_main): Handle return values of parse_argv().
2001-09-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* configure.ac: Rewrite the configuration report.
2001-09-20 Alexandre Duret-Lutz <duret_g@epita.fr>
* m4/h-display.m4 (heroes_CHECK_DISPLAY_LIB): Typo preventing
SDL_mixer to be checked for when Allegro is not used.
Reported by Daniel Burrows <dburrows@brown.edu>.
* m4/h-sdl.m4 (heroes_CHECK_SDL): Don't force-append sdlj and sdls
in the user selections (so that for instance --with-sdl does still
allow giij or miks to be used without user hints)
* m4/h-sdlmixer.m4 (heroes_CHECK_SDL_MIXER): Don't append sdlvkm
and sdlj for similar reason.
* m4/h-joystick.m4 (heroes_CHECK_JOYSTICK_LIB) <with_sdl>: Add
sdlj to the user selection.
2001-XX-XX
Older entries belong to ChangeLog.01.