Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

combat.c File Reference

#include "conq.h"
#include "kernel.h"
#include "action.def"

Include dependency graph for combat.c:

Include dependency graph

Defines

#define DEF_ACTION(name, code, args, prepfn, netprepfn, DOFN, checkfn, ARGDECL, doc)   extern int DOFN ARGDECL;

Enumerations

enum  DestructionResult { DESTRUCT_ORDINARY = 0, DESTRUCT_VANISH }

Functions

int fire_hit_chance (int u, int u2)
 Chance that u will hit u2 by firing.

int fire_damage (int u, int u2)
 Damage that u does to u2 by firing.

int indep_capture_chance (int u, int u2)
 Chance for u to capture independent u2.

int capture_chance (int u, int u2, Side *side2)
 Chance for u to capture u2 on a give side.

int could_fire_at (int u, int u2)
 Could u fire at u2?

int could_fire_at_any (int u)
 Could u fire at >= 1 utypes?

int fire_range (int u, int u2)
 Maximum fire range of u against u2.

int fire_range_best (int u, int u2)
 Best fire range of u against u2.

int fire_range_max (int u)
 Maximum fire range of u.

int can_fire (Unit *actor, Unit *firer)
 Can a given unit fire?

int can_fire_at (Unit *actor, Unit *firer, int u)
 Can a given unit fire at a given utype?

int can_fire_at_any (Unit *actor, Unit *firer)
 Can a given unit fire at >= 1 enemy utypes?

int could_attack (int u, int u2)
 Could u hit u2 by attacks?

int could_attack_any (int u)
 Could the given utype attack >= 1 utypes?

int attack_range (int u, int u2)
 Attack range of u against u2.

int attack_range_max (int u)
 Maximum attack range of u.

int can_attack (Unit *actor, Unit *attacker, int u3)
 Can a given unit attack a given utype?

int can_attack_any (Unit *actor, Unit *attacker)
 Can a given unit attack >= 1 enemy utypes?

int could_detonate (int u)
 Could u detonate?

int could_damage_by_0dist_detonation (int u, int u2)
 Could u damage u2 by a detonation in same cell?

int could_damage_by_ranged_detonation (int u, int u2)
 Could u damage u2 by a detonation at range?

int could_damage_by_detonation (int u, int u2)
 Could u damage u2 by a detonation?

int detonate_urange (int u, int u2)
 Blast radius of detonation from u against u2.

int detonate_urange_max (int u)
 Max blast radius of detonation from u.

int detonate_urange_max (void)
 Max blast radius of detonation from any utype.

int can_detonate (Unit *actor, Unit *detonator)
 Can given unit detonate?

int could_hit (int u, int u2)
 Could u hit u2 by any method?

int hit_range (int u, int u2)
 Hit range of u against u2.

int hit_range_max (int u)
 Maximum hit range of u.

int hit_range_max (void)
 Maximum hit range of all utypes.

int could_capture_by_fire (int u, int u2, Side *oside)
 Could u capture u2 by fire?

int could_capture_by_attacks (int u, int u2, Side *oside)
 Could u capture u2 by attacks?

int could_capture_by_capture (int u, int u2, Side *oside)
 Could u capture u2 by direct capture?

int could_capture (int u, int u2, Side *oside)
 Could u capture u2 by any means?

int could_capture_any (int u)
 Could the given utype capture any utypes by any means?

int direct_capture_range (int u, int u2, Side *side2)
 Direct capture range of u against u2.

int can_capture (Unit *actor, Unit *captor, int u3, Side *eside)
 Can a given unit capture a given utype on a given side?

int prep_attack_action (Unit *unit, Unit *unit2, Unit *defender, int n)
int do_attack_action (Unit *unit, Unit *unit2, Unit *defender, int n)
int check_attack_action (Unit *unit, Unit *unit2, Unit *defender, int n)
int prep_overrun_action (Unit *unit, Unit *unit2, int x, int y, int z, int n)
int do_overrun_action (Unit *unit, Unit *unit2, int x, int y, int z, int n)
int check_overrun_action (Unit *unit, Unit *unit2, int x, int y, int z, int n)
int prep_fire_at_action (Unit *unit, Unit *unit2, Unit *unit3, int m)
int do_fire_at_action (Unit *unit, Unit *unit2, Unit *unit3, int m)
int check_fire_at_action (Unit *unit, Unit *unit2, Unit *unit3, int m)
int prep_fire_into_action (Unit *unit, Unit *unit2, int x, int y, int z, int m)
int do_fire_into_action (Unit *unit, Unit *unit2, int x, int y, int z, int m)
int check_fire_into_action (Unit *unit, Unit *unit2, int x, int y, int z, int m)
void reckon_damage_around (int x, int y, int r, Unit *detonator)
void damage_unit (Unit *unit, enum damage_reasons dmgreason, Unit *agent)
void rescue_occupants (Unit *unit)
int prep_capture_action (Unit *unit, Unit *unit2, Unit *unit3)
int do_capture_action (Unit *unit, Unit *unit2, Unit *unit3)
int check_capture_action (Unit *unit, Unit *unit2, Unit *unit3)
void capture_unit (Unit *unit, Unit *pris, int captype)
int prep_detonate_action (Unit *unit, Unit *unit2, int x, int y, int z)
int do_detonate_action (Unit *unit, Unit *unit2, int x, int y, int z)
int check_detonate_action (Unit *unit, Unit *unit2, int x, int y, int z)
int detonate_unit (Unit *unit, int x, int y, int z)
int defended_by_occupants (Unit *unit)
int occ_can_defend_transport (int o, int t)
int enough_to_garrison (Unit *unit, int defenders)

Variables

int max_t_detonate_effect_range = -1
 Maximum range detonation can affect terrain.

int max_detonate_on_approach_range = -1
int numsoundplays
 Number of sound plays .

Unittmp_unit_detonator = NULL

Define Documentation

#define DEF_ACTION name,
code,
args,
prepfn,
netprepfn,
DOFN,
checkfn,
ARGDECL,
doc   )     extern int DOFN ARGDECL;
 


Enumeration Type Documentation

enum DestructionResult
 

Enumeration values:
DESTRUCT_ORDINARY 
DESTRUCT_VANISH 


Function Documentation

int attack_range int  u,
int  u2
 

Attack range of u against u2.

int attack_range_max int  u  ) 
 

Maximum attack range of u.

int can_attack Unit actor,
Unit attacker,
int  u3
 

Can a given unit attack a given utype?

Todo:
Get rid of ACP restrictions.

Consider 'consumption-per-attack' and 'hit-by'.

int can_attack_any Unit actor,
Unit attacker
 

Can a given unit attack >= 1 enemy utypes?

int can_capture Unit actor,
Unit captor,
int  u3,
Side eside
 

Can a given unit capture a given utype on a given side?

int can_detonate Unit actor,
Unit detonator
 

Can given unit detonate?

int can_fire Unit actor,
Unit firer
 

Can a given unit fire?

Todo:
Get rid of combat models.

Get rid of ACP restrictions.

Consider 'consumption-per-fire' and 'hit-by'.

int can_fire_at Unit actor,
Unit firer,
int  u
 

Can a given unit fire at a given utype?

int can_fire_at_any Unit actor,
Unit firer
 

Can a given unit fire at >= 1 enemy utypes?

int capture_chance int  u,
int  u2,
Side side2
 

Chance for u to capture u2 on a give side.

void capture_unit Unit unit,
Unit pris,
int  captype
 

int check_attack_action Unit unit,
Unit unit2,
Unit defender,
int  n
 

int check_capture_action Unit unit,
Unit unit2,
Unit unit3
 

int check_detonate_action Unit unit,
Unit unit2,
int  x,
int  y,
int  z
 

int check_fire_at_action Unit unit,
Unit unit2,
Unit unit3,
int  m
 

int check_fire_into_action Unit unit,
Unit unit2,
int  x,
int  y,
int  z,
int  m
 

int check_overrun_action Unit unit,
Unit unit2,
int  x,
int  y,
int  z,
int  n
 

int could_attack int  u,
int  u2
 

Could u hit u2 by attacks?

Todo:
Remove ACP restrictions.

int could_attack_any int  u  ) 
 

Could the given utype attack >= 1 utypes?

int could_capture int  u,
int  u2,
Side oside
 

Could u capture u2 by any means?

int could_capture_any int  u  ) 
 

Could the given utype capture any utypes by any means?

int could_capture_by_attacks int  u,
int  u2,
Side oside
 

Could u capture u2 by attacks?

int could_capture_by_capture int  u,
int  u2,
Side oside
 

Could u capture u2 by direct capture?

int could_capture_by_fire int  u,
int  u2,
Side oside
 

Could u capture u2 by fire?

int could_damage_by_0dist_detonation int  u,
int  u2
 

Could u damage u2 by a detonation in same cell?

int could_damage_by_detonation int  u,
int  u2
 

Could u damage u2 by a detonation?

int could_damage_by_ranged_detonation int  u,
int  u2
 

Could u damage u2 by a detonation at range?

int could_detonate int  u  ) 
 

Could u detonate?

int could_fire_at int  u,
int  u2
 

Could u fire at u2?

Todo:
Remove ACP restrictions.

int could_fire_at_any int  u  ) 
 

Could u fire at >= 1 utypes?

int could_hit int  u,
int  u2
 

Could u hit u2 by any method?

void damage_unit Unit unit,
enum damage_reasons  dmgreason,
Unit agent
 

int defended_by_occupants Unit unit  ) 
 

int detonate_unit Unit unit,
int  x,
int  y,
int  z
 

int detonate_urange int  u,
int  u2
 

Blast radius of detonation from u against u2.

int detonate_urange_max void   ) 
 

Max blast radius of detonation from any utype.

int detonate_urange_max int  u  ) 
 

Max blast radius of detonation from u.

int direct_capture_range int  u,
int  u2,
Side side2
 

Direct capture range of u against u2.

int do_attack_action Unit unit,
Unit unit2,
Unit defender,
int  n
 

int do_capture_action Unit unit,
Unit unit2,
Unit unit3
 

int do_detonate_action Unit unit,
Unit unit2,
int  x,
int  y,
int  z
 

int do_fire_at_action Unit unit,
Unit unit2,
Unit unit3,
int  m
 

int do_fire_into_action Unit unit,
Unit unit2,
int  x,
int  y,
int  z,
int  m
 

int do_overrun_action Unit unit,
Unit unit2,
int  x,
int  y,
int  z,
int  n
 

int enough_to_garrison Unit unit,
int  defenders
 

int fire_damage int  u,
int  u2
 

Damage that u does to u2 by firing.

int fire_hit_chance int  u,
int  u2
 

Chance that u will hit u2 by firing.

int fire_range int  u,
int  u2
 

Maximum fire range of u against u2.

int fire_range_best int  u,
int  u2
 

Best fire range of u against u2.

int fire_range_max int  u  ) 
 

Maximum fire range of u.

int hit_range int  u,
int  u2
 

Hit range of u against u2.

int hit_range_max void   ) 
 

Maximum hit range of all utypes.

int hit_range_max int  u  ) 
 

Maximum hit range of u.

int indep_capture_chance int  u,
int  u2
 

Chance for u to capture independent u2.

int occ_can_defend_transport int  o,
int  t
 

int prep_attack_action Unit unit,
Unit unit2,
Unit defender,
int  n
 

int prep_capture_action Unit unit,
Unit unit2,
Unit unit3
 

int prep_detonate_action Unit unit,
Unit unit2,
int  x,
int  y,
int  z
 

int prep_fire_at_action Unit unit,
Unit unit2,
Unit unit3,
int  m
 

int prep_fire_into_action Unit unit,
Unit unit2,
int  x,
int  y,
int  z,
int  m
 

int prep_overrun_action Unit unit,
Unit unit2,
int  x,
int  y,
int  z,
int  n
 

void reckon_damage_around int  x,
int  y,
int  r,
Unit detonator
 

void rescue_occupants Unit unit  ) 
 


Variable Documentation

int max_detonate_on_approach_range = -1
 

???

int max_t_detonate_effect_range = -1
 

Maximum range detonation can affect terrain.

int numsoundplays
 

Number of sound plays .

Unit* tmp_unit_detonator = NULL
 

Todo:
Evil var for search. Replace with parambox instead.


Generated on Sat Sep 17 10:29:04 2005 for XconqKernel by doxygen 1.3.6