ec203e88ad
(get_wp, bp_ref): Replace function returning pointer into a struct bp
...
by function returning to struct bp. Leave member access to callers.
Callers changed.
2007-01-13 12:01:12 +00:00
7db3523f62
Update known contributors comment.
2007-01-13 10:16:43 +00:00
5507e8a1dc
Replace the revolting build pointer data structure by a proper data
...
type. Make it abstract because that's possible. Change data layout
so that the slots belonging to a sector are together in memory, it's
nicer to the cache.
(bp): The new type. Users changed.
(get_wp): Update accordingly.
(alloc_bp): New.
(update_main, calc_all): Use it. Before, calc_all() allocated 1/7
more than necessary.
2007-01-13 09:07:59 +00:00
ac9cdf5bb9
(get_materials): Redesign.
...
(shiprepair, planerepair, landrepair): Use it. Behavioral change:
ship repairs outside harbors and plane repairs by a carrier can use
fewer materials. Before, such repairs consumed each required
commodity as far as available. Now, they consume the same fraction of
the real cost of each commodity, i.e. commodity use is limited by the
most scarce commodity. Neither old nor new behavior make much sense,
but the new code is simpler.
2007-01-10 07:15:45 +00:00
63bdc89835
Update copyright notice.
2007-01-09 19:09:31 +00:00
edd7fb06b4
Bump version to 4.3.10.
2007-01-08 18:26:24 +00:00
ad85b15152
Update for 4.3.9.
2007-01-06 12:46:01 +00:00
Ron Koenderink
6225e47f9f
(marc, navi): Switch the parsing logic to facilitate the merging marc()
...
and navi() in the future. No functional changes.
2007-01-06 12:35:44 +00:00
Ron Koenderink
a5f8742b3f
(landrepair): Allow land unit repairs in allied sectors
2007-01-04 13:22:06 +00:00
Ron Koenderink
ec28000e34
(decl): Prevent the deity from changing relations for a player to
...
self. Closes #1384998 . Allow the deity to set the relations of a
player towards the deity.
2007-01-03 12:54:41 +00:00
Ron Koenderink
67027e22d1
(arm): Prevent a nuke from being on two planes at the same time.
...
Closes #1602998 .
2007-01-02 23:57:40 +00:00
Ron Koenderink
14ad5f1276
(do_land_mob): Combine to two duplicate blocks of code.
2007-01-02 12:52:02 +00:00
Ron Koenderink
90b987058b
(march, navi): Switch to struct empobj * for leader and rename to leader.
...
No functional changes.
2007-01-02 12:50:56 +00:00
aafb4fdf8a
(setstr): Fix type error in variadic argument.
2006-12-31 17:21:11 +00:00
Ron Koenderink
4d7254498a
(planerepair): Fix so only the player's own planes and allied planes
...
are repaired. Closes #757081 .
2006-12-31 17:19:46 +00:00
8e8c6fb891
(shutdown_init): Has no effect, remove.
2006-12-31 17:05:57 +00:00
6b70720318
New option AUTO_POWER; closes #1009993 :
...
(opt_AUTO_POWER, update_power): New.
(update_main): Implement AUTO_POWER.
(powe): Disable power new when AUTO_POWER is on.
(powe): New power update.
(gen_power): Compute power into buffer passed by caller, make write to
power file optional.
2006-12-31 16:56:34 +00:00
2c0416135e
(genpower, powcmp): Sort struct powstr powbuf[] instead of struct
...
powsort order[]. Marginally less efficient, but simpler.
(powsort): Unused, remove.
2006-12-31 13:38:46 +00:00
114a05e969
(update_main): Move logging of the update up to a more logical place.
2006-12-31 13:16:17 +00:00
Ron Koenderink
c6577ef2c5
(get_leader, pr_leader_change): New.
...
(set_leader, set_flagship): Replace with get_leader() and
pr_leader_change().
2006-12-31 12:31:18 +00:00
Ron Koenderink
69d6b01429
(planerepair) Remove the CANT_HAPPEN owner check
...
as allied planes and previously allied planes can
be on the ship.
2006-12-30 21:05:36 +00:00
Ron Koenderink
47e300b21e
(do_mob_land): Fix to use all excess mobility for fortification, not
...
just up to the land unit's current mobility.
2006-12-29 19:56:00 +00:00
Ron Koenderink
6ddbc9f950
(planerepair): Move the carrier sanity to before the carrier variable is
...
used.
2006-12-28 17:44:03 +00:00
Ron Koenderink
94af801449
(do_mob_land): Disable automatic land unit fortification with excess
...
mobility when MOB_ACCESS is on. It leads to excessively deep
recursion and thus miserable performance as the number of land units
grows.
2006-12-26 19:17:22 +00:00
Ron Koenderink
3e2cc8b746
(produce): Randomly flushed level production below 1.0 to zero. Fix.
...
(produce): Assign rounded level production to *ACTUAL instead of
randomly rounded one.
2006-12-26 19:15:41 +00:00
f4667a9457
Include pthread.h in the implementation instead of the header.
2006-12-26 16:52:11 +00:00
Ron Koenderink
ce63991c9f
(ef_open) [_WIN32]: Fix to get a read lock instead of a write lock for
...
EFF_RDONLY and to get a write lock instead of a total file lock for
file opened for writing.
2006-11-29 12:16:43 +00:00
a3b52a748c
Fix rev. 1.24, which failed to charge mobility for sweeping without
...
moving.
2006-11-21 22:26:30 +00:00
6a7ccb999a
Bump version to 4.3.9.
2006-10-21 06:49:04 +00:00
5832dcf005
4.3.8 last minute changes.
2006-10-20 18:33:29 +00:00
6a595c0bb7
(upd_ship): Don't produce stuff when broke, to match sector behavior.
2006-10-20 18:30:26 +00:00
dc6168f782
Update for 4.3.8.
2006-10-13 18:29:22 +00:00
Ron Koenderink
fd49704a74
(switch_leader): Generalize the code, no functional changes.
...
(navi): Change switch_flagship() to call switch_leader() instead.
(switch_flagship): Remove, not needed, replaced with switch_leader().
2006-10-10 20:23:19 +00:00
a4e79680e3
(take_casualties): Code for distributing casualties among units did
...
not make sense, and in its confusion destroyed land land units when it
shouldn't. Minimally invasive fix; code is still ugly and
incomprehensible.
2006-10-08 09:32:49 +00:00
7565435f0c
(guerrilla): Make security units not raid friendly che.
2006-10-08 09:21:26 +00:00
Ron Koenderink
6b54983932
(struct ulist): Add abstract reference to types.h to accomodate
...
the ciruclar reference between struct ulist and union empobj_storage
and struct lndstr.
2006-10-04 01:20:29 +00:00
Ron Koenderink
cd8d742392
Combined struct llist and struct mlist into superset struct ulist.
...
(assa, set_leader, switch_leader, set_flagship, switch_flagship,
take_move_in_mob, get_land, ask_olist, att_get_defense,
get_dlist, get_ototal, get_dtotal, kill_land, att_infect_units,
put_land, att_reacting_units, count_bodies, att_fight,
send_reacting_units_home, take_def, ask_move_in, move_in_land,
lnd_print, lnd_delete, lnd_take_casualty, lnd_takemob,
lnd_sel, lnd_mar, lnd_put, lnd_sweep, contains_engineer,
lnd_check_mines, lnd_list, lnd_mess,
lnd_damage, lnd_easiest_target, lnd_mar_one_sector, shp_sel,
shp_nav, shp_put, shp_sweep, shp_check_one_mines, shp_check_mines,
shp_list, shp_mess, shp_count, shp_damage_one, shp_damage,
shp_contains, most_valuable_ship, shp_easiest_target,
shp_missile_interdiction, notify_coastguard,
shp_view, shp_nav_one_sector, shp_missdef, nav_ship,
fltp_to_list): Switch to struct ulist from either struct mlist
or struct llist.
2006-09-25 03:29:06 +00:00
7d90028f20
(out5): Rev. 1.36. didn't fully fix the format conditional.
...
Fold negative cases into positive ones.
2006-09-23 15:47:40 +00:00
dbfd0c5aa3
(apro) [!_WIN32]: Silently ignore directory entries starting with '.'.
...
Before, apro() logged complaints about . and .. not being regular
files.
2006-09-23 15:00:01 +00:00
7a2aad83cb
Clean up the previous revision.
2006-09-23 13:25:46 +00:00
88bf471319
Document stop order expiry.
2006-09-23 13:24:19 +00:00
25dece0a3d
(produce_sect): Game state changes may be changed only if
...
player->simulation. Fix a missing guard. Existing callers should not
need it.
2006-09-23 10:47:58 +00:00
8da88626d5
(produce_sect, finish_sects): Move stop order expiry to end of update,
...
so that stopped sectors don't repair units. The update sequence
masked this bug until its change in src/lib/update/main.c rev. 1.25,
but use of budget priorities (gone since rev. 1.24) could unmask it.
2006-09-23 10:37:55 +00:00
e121d1bdc0
(sect_has_dock): NAV_CANAL in sect.h rev. 1.36 broke loading in
...
canals, fix. Can't enforce M_CANAL condition here, so leave it to
callers. Callers don't enforce it either, which means landlocked
ships can load in canals. Oh well.
2006-09-23 09:09:43 +00:00
c9f21c0e73
(player_main): Delay journal_login() until after error exits, to
...
ensure it is properly paired with journal_logout().
2006-09-23 08:58:54 +00:00
251f552088
(tend_land): Fix to not let land units be tended that could not be
...
loaded.
2006-09-23 08:40:40 +00:00
59f7aee1f4
Remove bogus paragraphs on RES_POP and NO_PLAGUE. Clarify sentence on
...
max safe population.
2006-09-23 08:37:57 +00:00
19b4e76fef
Update for maximum population change in sect.config rev. 1.3. Remove
...
incorrect claims about mil.
2006-09-23 08:35:36 +00:00
Ron Koenderink
eb54f7b574
(genlist): Switch thing to use struct empobj * instead of void *.
...
Remove type from struct genlist as it can be determined from thing.
Users changed.
2006-09-01 23:22:45 +00:00
Ron Koenderink
14ea670fc5
(struct trdstr): Change trd_type to be short to be consistent with the
...
rest of the definitions of ef_type.
2006-08-22 03:52:44 +00:00