Distinguish between planes "in orbit" and "launched"
Use new pln_is_in_orbit() when we want to test for orbit specifically, and test PLN_LAUNCHED when we want to test whether the plane not sitting in the sector (because it is flying). This distinction is pointless at this time, because the only way PLN_LAUNCHED gets set is when a satellite goes into orbit. It will become useful in a later commit, which will use PLN_LAUNCHED to mark flying planes.
This commit is contained in:
parent
5e930f5fdf
commit
8006543878
12 changed files with 26 additions and 27 deletions
|
@ -1236,6 +1236,13 @@ pln_mobcost(int dist, struct plnstr *pp, int flags)
|
|||
return ldround(cost * dist / pln_range_max(pp) + 5, 1);
|
||||
}
|
||||
|
||||
int
|
||||
pln_is_in_orbit(struct plnstr *pp)
|
||||
{
|
||||
return (plchr[pp->pln_type].pl_flags & (P_M | P_O)) == P_O
|
||||
&& (pp->pln_flags & PLN_LAUNCHED);
|
||||
}
|
||||
|
||||
/*
|
||||
* Set PP's tech to TLEV along with everything else that depends on it.
|
||||
*/
|
||||
|
|
|
@ -145,7 +145,7 @@ radmap2(int owner,
|
|||
x = deltx(&ns.range, (int)plane.pln_x);
|
||||
y = delty(&ns.range, (int)plane.pln_y);
|
||||
|
||||
if ((plane.pln_flags & PLN_LAUNCHED) && plane.pln_own != owner) {
|
||||
if (pln_is_in_orbit(&plane) && plane.pln_own != owner) {
|
||||
vis[y][x] = 100;
|
||||
rad[y][x] = '$';
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue