Commit graph

51 commits

Author SHA1 Message Date
cdfb17d28a (satdisp, satdisp_sect, satdisp_units): Split satdisp() into
satdisp_sect() and satdisp_units().
(satmap): Call only satdisp_sect().  No functional change.
(aircombat): Call both, and call satdisp_units() even over sea.  This
lets spy planes spot surface ships at sea.  Closes #906035.
2006-06-14 17:38:16 +00:00
0252d4a750 (ac_planedamage): Planes may abort when damaged below 80% efficiency.
Reduce abort chance from 100-eff to 80-eff.  This should make it
easier to punch through air defense, flak in particular, and increase
the risk of getting shot down.
2006-06-11 16:02:13 +00:00
c7f68f2e3e (ac_shipflak, ac_landflak): Reduce flak proportional to efficiency.
Rename some auto variables.  Closes #759402.
2006-06-11 05:12:47 +00:00
3a4e362de5 (FLAK_GUN_MAX): New.
(ac_doflak, ac_shipflak, ac_landflak): Use it.
(ac_shipflak, ac_landflak): Tally flak for all ships / units, then
limit to FLAK_GUN_MAX guns of average tech.  Used to limit to
FLAK_GUN_MAX guns *after* ship / land unit tech factor was applied by
exiting the loop early, then reduce *again* for nation tech of whoever
owns the last ship visited.  Makes no sense.  Exiting the loop early
is no good, because it can skip plane spotting.  This change and the
one below make low-tech ship and land unit flak more powerful;
rebalancing might be needed.

(ac_doflak, ac_landflak, ac_shipflak): Round flak randomly instead of
down.  This simplifies things.  In particular, you no longer have to
calculate how many low-tech ships to bunch together to get any flak.
2006-06-10 18:26:57 +00:00
17759f1071 (ac_fireflak): Remove parameter other, all callers pass 0. Callers
changed.
2006-06-10 17:53:24 +00:00
0c1bd8e98b (add, plane_bomb, pinflak_planedamage, doship, dounit, doplane, laun)
(launch_sat, scra, scut, scuttle_ship, scuttle_land, knockdown)
(ac_planedamage, detonate, attack_val, defense_val, air_damage)
(msl_intercept, msl_launch_mindam, pln_prewrite, shp_prewrite):
Simplify unit destruction: just zero efficiency, leave makelost()
etc. to the prewrite callback.
2006-05-27 19:25:12 +00:00
4c4fdca42b Line breaks and other formatting issues. No functional changes. 2006-05-21 13:05:24 +00:00
2ae6be9af6 (num_teles, redir_fp, pipe_fp, exec_fd, sendeof, prompt, command)
(ac_intercept, all_missiles, ac_planedamage, ac_doflak, ac_landflak)
(ac_shipflak, ac_fireflak, can_fly, do_evade, att_calcodds)
(emp_setbitmap, lnd_hit_mine, conditions, get_wp, daemonize): Internal
linkage.
2006-05-20 13:54:45 +00:00
5b4b3a13cb Break lines more tastefully. 2006-05-14 07:52:20 +00:00
7a99405942 Do not cast to float where usual arithmetic conversions obviously
convert the cast's result to double.  Such casts are ugly and may lose
precision.
2006-05-06 08:26:31 +00:00
7ed308526c Remove redundant casts of argument to (prototyped) double parameter. 2006-05-01 12:34:16 +00:00
fdc790db61 (MAX): Remove redundant definition. 2006-04-30 16:26:51 +00:00
0c8c169f88 (s_char): Remove. Use signed char for small integers, plain char for
characters.
2006-04-29 16:25:17 +00:00
a988b907fc s_char purge directed by compiler warnings. 2006-04-29 06:41:45 +00:00
b0a5d11a3f (show_nuke_capab, show_ship_capab, show_plane_capab, show_land_capab)
(prxy, border, ac_encounter, look, budg): Fix misuse of pr() and PR():
passed formatted string instead of format string and arguments.
Correctness depends on argument values and tables not containing '%',
which is correct, but fragile.
2006-03-26 13:41:46 +00:00
Ron Koenderink
c686c5648b (ac_dog): Do not use 'ap' as a pointer to get the owner
for the call to ac_planedamage() use att_own instead.
'ap' may have been already freed in the previous call
to ac_planedamage().  This can create an invalid
news item and crash the server.
2006-01-29 13:56:35 +00:00
4515b84c59 COPYING duplicates information from README. Remove. Move GPL from
LICENSE to COPYING, because that's where it usually is.  Update all
the references to these files.
2006-01-21 19:48:41 +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
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
3e400c018c Update copyright notice. 2006-01-05 13:36:57 +00:00
Ron Koenderink
9fcb96e010 (ac_flak_dam): Fix FLAK_MAX to be last element of the array.
This fixes >8 case which was accessing one past the last element
of the array and getting an invalid value for flak max.
Broken in rev. 1.18
2005-12-31 22:37:51 +00:00
3aebb68ee7 Include config.h. 2005-12-27 18:04:19 +00:00
e29f288289 Remove silly superflous parenthesis. 2005-12-03 21:14:26 +00:00
130338aece (ac_landflak): Don't let embarked land units fire flak. 2005-10-03 15:46:42 +00:00
82a4008000 (ac_encounter): Non-recon missions no longer make contact to owner of
sectors overflown, because only recon missions identify the owner.
This matches info Hidden.
2005-10-03 15:05:33 +00:00
6788cac8c0 (ac_dog): Make contact both ways. This is more for completeness, as
contact should have been made before planes rise to fight.
2005-10-03 14:34:26 +00:00
144c7cb5cd (ac_encounter): Make contact on spotting planes. Closes #857594. 2005-10-02 18:41:29 +00:00
ad84132688 Remove some redundant parenthesis; no functional change. 2005-10-02 10:16:19 +00:00
1d88b8783a (plist): Member state is used write-only, remove.
(P_OK, P_FIRED, P_DEL): Unused, remove.
2005-09-30 20:44:43 +00:00
dfa56cb0ef (diridx): New. Use instead of chkdir() where direction characters
must be valid.  Oopses on bad direction characters.
(pathtoxy, ac_encounter): Bad direction characters used to lead to bad
array subscript and potential disaster.
(pathrange, path): Stop on DIR_STOP as well as on bad direction
characters.  This is just for consistency with other code; DIR_STOP
should occur only last in a path here.
(sail_nav_fleet, nav_ship): No change except for the oops.
2005-09-25 09:49:36 +00:00
4f59fc9967 Remove a bunch of redundant casts. 2005-06-12 06:31:48 +00:00
345ad3dfe0 Update copyright notice. 2005-03-16 22:03:16 +00:00
5202ef59cc Realign comment with its object; got separated in the previous rev.
No functional changes.
2004-12-21 12:26:30 +00:00
Ron Koenderink
2c4b89e2d1 (ac_calc_flak,ac_fireflak,pinflak_planedamage): New ac_calc_flak().
Move common flak damage code from ac_fireflak() and
pinflak_planedamage() to ac_calc_flak().
2004-12-16 19:40:06 +00:00
Ron Koenderink
042372d4c2 (have_looked,have_found,set_have_looked,set_have_found,print_found):
collapse to shiplist function set (add,free,print,on). Fix bug where ship
uid was a unsigned char instead of short.  Switch to head pointer instead
of head record with a linked list. Add a free().
2004-12-16 11:12:28 +00:00
Marc Olzheim
61cb34b7ef (ac_airtoair): No need to pass def_own, as the owner of the intercepting
planes is used anyway.  Clean up other unaccessed variables in the process.
No functional changes.
2004-12-14 17:21:05 +00:00
Marc Olzheim
c6ef918f3a Cleanup #includes of (mostly a long time) unused header files.
No functional changes.
2004-12-13 16:47:13 +00:00
Marc Olzheim
e9a040adb9 Do not include var.h where no longer needed. Clean up register keywords in these file at the same time. No functional changes. 2004-10-12 20:08:51 +00:00
ea4943d0bd (ac_encounter): Ignore embarked land units when checking for planes
overflying land units.  Reported by Doug Wescott.
2004-10-05 18:49:59 +00:00
786418ae02 (ac_doflak): Don't supply more shells than actually required for flak. 2004-09-17 12:56:48 +00:00
fac342ed49 Update copyright notice. 2004-09-07 15:07:16 +00:00
ed5c1b00ee Remove dead code. 2004-08-17 18:59:52 +00:00
8f007f7095 (ac_doflak, ac_shipflak): Simplify, no functional changes. 2004-04-08 16:42:19 +00:00
99bfa19a92 (getilist, att_get_combat): Simplify. No functional changes. 2004-03-05 08:05:58 +00:00
eccc5cb7d7 Sectors need space for items, deliveries and distribution thresholds.
To save space, the ancients invented `variables': a collection of
key-value pairs, missing means zero value, space for `enough' keys.
This complicates the code, as assigning to a `variable' can fail for
lack of space.  Over time, `enough' increased, and for quite some time
now `variables' have been *wasting* space.  This changeset replaces
them, except in struct mchrstr, struct lchrstr and struct pchrstr,
where they are read-only, and will be replaced later.  It is only a
first step; further cleanup is required.  To simplify and minimize
this necessarily huge changeset, the new item[] arrays have an unused
slot 0, and the old variable types V_CIVIL, ... are still defined, but
must have the same values as the item types I_CIVIL, ...
2004-03-03 16:54:22 +00:00
262e1bafba Remove some unused junk. 2004-03-01 13:48:45 +00:00
22a356b1e1 New server.h for server startup, control and shutdown, i.e. stuff in
src/server.  Use it.
2004-02-19 19:02:30 +00:00
bf6bfcd5f5 Remove some redundant declarations. 2004-02-19 10:53:58 +00:00
4ae9c417b3 (bzero, bcopy): Obsolete BSDisms; remove. Remove some calls without
effect.  Replace calls by struct assignment where possible.  Replace
clear buffer, copy string to buffer by strncpy().  Use assignment to
clear when that's clearer.  Replace overlapping copy through bounce
buffer by memmove().  Replace rest by standard memset() and memcpy().
Also use sizeof() instead of literal array sizes for robustness, and
instead of symbolic array sizes for clarity.
2004-01-08 17:54:28 +00:00
9b7adfbecc Indented with src/scripts/indent-emp. 2003-09-02 20:48:48 +00:00