Commit graph

1045 commits

Author SHA1 Message Date
Ron Koenderink
14d94c2509 (sect_has_dock): New.
(fuel, load, nav_loadship): Use it.
2006-01-17 23:38:51 +00:00
Ron Koenderink
100b39d71f (d_navigation): New.
(dchrstr): Use it.
2006-01-17 21:58:25 +00:00
Ron Koenderink
4f20f3dd9c (EF_SECTOR_NAVIGATION, sector_navigation): New.
(empfile): Add it.
(dchr_ca): Use it.
(NAV_NONE): New.
2006-01-17 21:42:02 +00:00
Ron Koenderink
18902e45d0 (dchrstr): Rename member d_flg to d_nav. Users changed. 2006-01-17 21:17:19 +00:00
Ron Koenderink
1d58f58e1b (check_nav, shp_check_nav, sail_nav_fleet, retreat_ship1):
Make shp_check_nav() public.
Remove check_nav(), replace with shp_check_nav().
No functional change as check_nav() and shp_check_nav() are
identical.
2006-01-17 13:11:24 +00:00
9eba732cc3 (EF_COUNTRY, cou_ca): New.
(empfile): Add it.
(xdvisible): Deal with it.
(ef_open_srv, ef_close_srv): Set it up.
(ef_init_view, ef_fina_view): New.
2006-01-14 16:28:33 +00:00
Ron Koenderink
45adbdb00e Move realms from the nation file into a new realms file:
(boundstr, realmstr): Rename, new members ef_type, r_cnum, r_uid,
r_realm, r_timestamp.
(natstr): Remove member nat_b[].
(EF_REALM, realm_ca): New.
(empfile): Add it.
(ef_open_srv, ef_close_srv, main): Deal with new file.
(getrealm, putrealm): New.
(add, new, real, list_realm, sarg_getrange): Use them.
2006-01-13 13:18:56 +00:00
Ron Koenderink
04a8b84592 (ship_bomb, deli, do_demo, fuel, grin, look_ship)
(ltend, multifire, quite_bigdef, mine, landmine)
(do_loan, prod, printdiff, sell, sona, stre)
(tend, fire_dchrg, vers, work, ac_planedamage)
(ac_shipflak, ask_off, get_mine_dsupport, att_fight)
(ask_move_in_off, detonate, sd, land_gun)
(land_unitgun, lnd_fort_interdiction, lnd_fortify)
(perform_mission, pln_mine, pln_mobcost)
(retreat_ship1, retreat_land1, shp_sweep)
(shp_fort_interdiction, shp_missle_defense)
(new_work, growfood, upd_land, land_repair)
(get_materials, do_mob_ship, do_mob_land)
(load_it, unload_it, prod_plane, produce)
(guerrilla, upd_buildeff, spread_fallout)
(upd_ship, ship_repair, min, dmin, MIN):
Remove min() and dmin() functions and replace
with a MIN macro in misc.h.  Remove local MIN
macros and use the new one in misc.h.  This
change removes the need for the special
case for _WIN32.

(fuel, look_ship, multifire, mission, sona)
(plane_sona, ef_open, player_accept, player_main)
(ac_dog, att_get_combat, calc_mobcost)
(ask_move_in_off, intelligence_report)
(build_mission_list_type, perform_mission)
(show_mission, use_supply, dodistribute)
(allocate_memory, max, dmax, MAX):
Remove max() and dmax() functions and replace
with a MAX macro in misc.h.  Remove local MAX
macros and use the new one in misc.h.  This
change removes the need for the special
case for _WIN32.
2006-01-12 14:23:55 +00:00
Ron Koenderink
b89de57d51 (EF_BAD, EF_SECTOR, EF_SHIP, EF_PLANE, EF_LAND, EF_NUKE)
(EF_NEWS, EF_TREATY, EF_TRADE, EF_POWER, EF_NATION)
(EF_LOAN, EF_MAP, EF_BMAP, EF_COMM, EF_LOST)
(EF_SECTOR_CHR, EF_SHIP_CHR, EF_PLANE_CHR)
(EF_LAND_CHR, EF_NUKE_CHR, EF_NEWS_CHR)
( EF_TREATY_FLAGS, EF_ITEM, EF_INFRASTRUCTURE)
(EF_PRODUCT, EF_TABLE, EF_SHIP_CHR_FLAGS)
(EF_PLANE_CHR_FLAGS, EF_LAND_CHR_FLAGS)
(EF_NUKE_CHR_FLAGS, EF_META)
(EF_META_TYPE, EF_META_FLAGS, EF_MISSIONS)
(EF_PLANE_FLAGS, EF_RETREAT_FLAGS, EF_NATION_FLAGS)
(EF_NATION_RELATIONS, EF_LEVEL, EF_AGREEMENT_STATUS)
(EF_PLAGUE_STAGES, EF_PACKING, EF_RESOURCES)
(EF_NATION_STATUS, EF_MAX): Turn into enumeration constants.
2006-01-10 19:53:34 +00:00
Ron Koenderink
e28c14f023 (L_XLIGHT, lchr[], land_chr_flags[], take_plane_off_land,
put_plane_on_land, load_plane_land, can_fly):
Remove L_XLIGHT flag and replace with checks of lnd_maxlight.
Closes #758459.
2006-01-08 19:12:04 +00:00
402c47b66e (natargp): New, factored out of natarg(). 2006-01-06 20:27:17 +00:00
ffa21cf379 (cnumb): Return the same error values as stmtch(). Callers don't
(yet) care for the difference.
2006-01-06 19:42:27 +00:00
6a5d398c6d (natarg): Don't attempt to hide names of countries not yet contacted
with HIDDEN.

(natarg): Clearer error messages.
2006-01-06 17:00:18 +00:00
8e5d576fff (nxtitemp): Use void * for generic pointer function value. 2006-01-06 16:55:17 +00:00
b94b3b1b7f (mchrstr, lchrstr): Change element types of m_item[] and l_item[] to
short, to match shp_item and lnd_item.
(mchr_ca, lchr_ca): Replace selector item by selectors for the items.
lchr_ca's item selector was incorrect and worked only by accident.
2006-01-05 16:49:52 +00:00
3e400c018c Update copyright notice. 2006-01-05 13:36:57 +00:00
a5c87a2b54 (EF_NATION_STATUS, nation_status): New.
(empfile): Add it.
(nat_ca): Use it.
2006-01-04 23:15:47 +00:00
8b16c31223 Change nation status from bits to a simple enum:
(nat_status, STAT_UNUSED, STAT_VIS, STAT_ACTIVE): New.
(STAT_NEW, STAT_SANCT, STAT_GOD): Change into nat_status members.
(STAT_INUSE, STAT_NORM): Remove.
(natstr): Use new nat_status for nat_stat.
    New value       Old value
    STAT_UNUSED     0
    STAT_NEW        STAT_INUSE | STAT_NEW
    STAT_VIS        STAT_INUSE
    STAT_SANCT      STAT_INUSE | STAT_SANCT
    STAT_ACTIVE     STAT_INUSE | STAT_NORM
    STAT_GOD        STAT_INUSE | STAT_NORM | STAT_GOD
Users changed.
2006-01-04 22:49:42 +00:00
bea83adb93 Some s_char killings. 2006-01-04 21:40:30 +00:00
8329b8884a (comtch): Parameter god permitted execution of any command, even when
com->c_permit disagreed.  Doesn't make sense and is inconsistent with
output of list.  Remove parameter.  The only command affected is
break.
2006-01-04 19:12:44 +00:00
b69173eea4 (orig): Allow moving origin to another country's origin. This is a
superset of the offset command.
(offs): Redundant, underdocumented, remove.

(orig): Allow deities to reset origin to absolute 0,0.
2006-01-04 14:36:21 +00:00
c13a592bf5 (STAT_ABS): Only set by files program for country #0. Prevents offset
and origin commands from working.  Remove.
2006-01-04 14:27:10 +00:00
Ron Koenderink
8f3f239839 (ioq_makebuf, ioq_makeiov) [_WIN32]: Remove the external for
ioq_makeiov() for WIN32 case so it matches source for the
ioq_makeiov().  Reorganize ioq_makebuf() to make it obvious that
ioq_makebuf() is used for WIN32 and everybody uses ioq_makeiov().
2006-01-01 20:02:09 +00:00
Ron Koenderink
5aba44f5f2 (min, max) [_WIN32, __GNUC__]: Add min and max macros for
mingw/gcc compile environment.  min/max are not included
in stdlib.h in mingw/gcc environment.
2006-01-01 16:02:48 +00:00
c3900f8424 (empfile, fileinit, lnd_init, lnd_postread, lnd_prewrite, nuk_init)
(nuk_postread, nuk_prewrite, pln_init, pln_postread, pln_prewrite)
(sct_postread, sct_prewrite, shp_init, shp_postread, shp_prewrite)
(ef_extend): Use void * for generic pointer parameter.
2005-12-31 12:52:18 +00:00
3db4e34ba4 (natstr): Members nat_xstart, nat_ystart are used write-only. Remove.
Users changed.
2005-12-31 10:50:24 +00:00
028a1bf3d8 (EF_RESOURCES, resources): New.
(empfile): Add it.
(pchr_ca): Use it.
2005-12-31 10:29:32 +00:00
498d9fbfaa (M_SPY): Unused, remove. 2005-12-30 17:22:03 +00:00
a5b8249e98 (mkdir): Parenthesize macro parameter in expansion. 2005-12-30 17:21:42 +00:00
1969a3890a (opt_UPDATESCHED): Remove nooption UPDATESCHED. It had no effect on
the actual update, only on the update command.  Believed to be broken
since Empire2.
2005-12-29 13:38:57 +00:00
fb768e844c Fix spelling of The_Scum's name. 2005-12-29 10:26:41 +00:00
fa52e6944d Normalize inclusion guards: use NAME_H for name.h. Some headers
lacked them, others used reserved identifiers.
2005-12-29 10:16:01 +00:00
b316861e9d Autoconfigure whether char is unsigned. 2005-12-28 23:10:26 +00:00
686eadad37 (att_mode, xyas, ownxy, prbuf): Get rid of s_char. Users changed.
(ATTRIBUTE): Don't disable use of gcc __attribute__ when s_char is
signed char.  All format strings are now char *.
2005-12-28 22:30:52 +00:00
6fdbf215d0 Remove superflous includes. 2005-12-28 21:26:30 +00:00
0d267e0b24 There's no reason to include <time.h> in empio.h, except it's missing
in a couple of other files.  Include it where it's needed.
2005-12-28 21:25:39 +00:00
3b90d0cb81 (PP_MAIN, PP_UPDATE, PP_SHUTDOWN, PP_SCHED, PP_TIMESTAMP, PP_PLAYER)
(PP_ACCEPT, PP_KILLIDLE): Move from player.h to empthread.h and turn
into enumeration constants.
2005-12-28 21:21:15 +00:00
0dc0b29a92 Update for 4.3.0. 2005-12-28 19:21:09 +00:00
19d88af312 Support for IPv6:
(tcp_listen, player_addrlen): New.  IPv4-only code factored out of
player_init().
(player_init): Use them.
(player_accept): Address family independence.
(tcp_connect): New.
(main): Use it.
(hostaddr, hostconnect, hostport): Internal linkage.
2005-12-28 18:50:08 +00:00
69150d10fc (EMPTH_LWP, EMPTH_POSIX, EMPTH_W32): Define in config.h instead of
compiler command line.  Don't bother to conditionalize code in .c
files that are only compiled when their thread package is used.

(_EMPTH_LWP, EMPTH_LWP, _EMPTH_POSIX, EMPTH_POSIX, _EMPTH_WIN32)
(EMPTH_W32): Identifiers beginning with an underscore and an uppercase
letter are reserved for any use.  Rename.
2005-12-28 14:27:15 +00:00
b921d3c262 (MAXNOC): Move to config.h. Remove empty options.h. 2005-12-28 13:08:26 +00:00
Ron Koenderink
233181c50d (player_new, player_accept, update_wait, market_update) [_WIN32]:
Move assignment of hostaddr and hostname from player_new() to
player_accept().  This solves the necessary of adding the socket include
file to prototypes.h for player_new().  The socket include file creates
a namespace conflict for WIN32.
2005-12-26 03:53:21 +00:00
Ron Koenderink
9dfbf74785 [_WIN32]: Add #ifndef __GNUC__ around the pragma as pragma is not
supported by gcc.
2005-12-26 02:53:23 +00:00
ae24898e50 (opt_ALL_BLEED, opt_BIG_CITY, opt_BLITZ, opt_BRIDGETOWERS)
(opt_DEFENSE_INFRA, opt_DEMANDUPDATE, opt_DRNUKE, opt_EASY_BRIDGES)
(opt_FALLOUT, opt_FUEL, opt_GODNEWS, opt_GO_RENEW, opt_GUINEA_PIGS)
(opt_HIDDEN, opt_INTERDICT_ATT, opt_LANDSPIES, opt_LOANS)
(opt_LOSE_CONTACT, opt_MARKET, opt_MOB_ACCESS, opt_NOFOOD)
(opt_NOMOBCOST, opt_NO_FORT_FIRE, opt_NO_PLAGUE, opt_PINPOINTMISSILE)
(opt_RES_POP, opt_SAIL, opt_SHOWPLANE, opt_SLOW_WAR, opt_SUPER_BARS)
(opt_TECH_POP, opt_TRADESHIPS, opt_TREATIES, opt_UPDATESCHED):
Remove conditional initialization.  Values unchanged.
(ALL_BLEED, BIG_CITY, BLITZ, BRIDGETOWERS, DEFENSE_INFRA)
(DEMANDUPDATE, DRNUKE, EASY_BRIDGES, FALLOUT, FUEL, GODNEWS, GO_RENEW)
(GUINEA_PIGS, HIDDEN, INTERDICT_ATT, LANDSPIES, LOANS, LOSE_CONTACT)
(MARKET, MOB_ACCESS, NOFOOD, NOMOBCOST, NO_FORT_FIRE, NO_PLAGUE)
(PINPOINTMISSILE, RES_POP, SAIL, SHOWPLANE, SLOW_WAR, SUPER_BARS)
(TECH_POP, TRADESHIPS, TREATIES, UPDATESCHED): Unused, remove.
2005-12-25 14:53:29 +00:00
ade510f787 Turn options into ordinary econfig keys:
(configkeys): Add options.
(KM_OPTION): New.
(vers): Find options in configkeys[] instead of Options[].
(xdump): Remove xdump opt syntax.
(xdopt): Remove.
(emp_config, print_config): Remove option special case.
(option_list, Options, setoption): Remove.
2005-12-25 10:32:50 +00:00
Ron Koenderink
373a08a0e0 (min, max) [_WIN32]: Change WIN32 to use windef.h.
It is present in both MSVC and MinGW environments.

(F_OK, W_OK, R_OK) [_WIN32]: Add #ifndef to allow
to operation in both MSVC and MinGW environments.
2005-12-25 00:59:57 +00:00
3bbc91876f (START_CASH, start_cash): Replace START_CASH by new econfig key
start_cash.
2005-12-23 11:16:23 +00:00
641879abc7 Should have been removed in yesterday's build process commit. 2005-12-22 08:44:27 +00:00
a98626df2d Replace the build process. The new one requires GNU Make, Autoconf
and Autoconf macros that come with Automake.  It supports multiple
separate builds of the same source tree, and updates dependencies
automatically.  Targets info, html, install, install-html, uninstall
and dist are not yet implemented.

System configuration is now automatic.  Previously, you had to choose
one of several canned system configurations, defined in Make.sysdefs.
Currently, system configuration always uses UCONTEXT for LWP, and
chooses LWP only if its requirements are met.

Feature configuration changed: instead of editing build.conf (further
processed by doconfig), you pass arguments to configure.  Note that
build.conf settings that can be overridden in econfig have no
configure equivalent; just edit econfig instead.

Because generated headers complicate makefiles, fold gamesdef.h into
its users: path.c and ipglob.c become path.c.in and ipglob.c.in,
constants.c, vers.c, options.h simply hardcode defaults (most of them
are run-time configurable).

Call the client empire instead of emp_client.  This matches what the
old standalone build did.
2005-12-20 20:25:35 +00:00
Ron Koenderink
9217e75761 (shp_nav_one_sector, mchr[], ship_chr_flags[], Ship-types, Sector-types):
Add M_CANAL flag to indicate which ships can navigate a canal
in a big city.  Remove the hard code values for canal from
shp_nav_one_sector() for which ships can navigate a canal.
Set M_CANAL flag in ship_chr_flags[] to match the hard
coding in shp_nav_one_sector().
Update Ship-types.t with new canal flag.
Update Sector-types.t to indicate that cities have canals.
2005-12-18 15:16:52 +00:00