X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=src%2Fevents.c;h=37a02d1bc92c93d81fc432fdd8a181e85fc26b32;hb=a4c88eb2f6ea4d8e82505e84e77544b86745fd8f;hp=f47d420241aef19fba60326d557d8056d068ceec;hpb=05845f1a048926f08b0df44ed8c729a8797a2d85;p=super-star-trek.git diff --git a/src/events.c b/src/events.c index f47d420..37a02d1 100644 --- a/src/events.c +++ b/src/events.c @@ -22,7 +22,7 @@ int is_scheduled(int evtype) return game.future[evtype].date != FOREVER; } -extern double scheduled(int evtype) +double scheduled(int evtype) /* when will this event happen? */ { return game.future[evtype].date; @@ -36,7 +36,7 @@ event *schedule(int evtype, double offset) } void postpone(int evtype, double offset) -/* poistpone a scheduled event */ +/* postpone a scheduled event */ { game.future[evtype].date += offset; } @@ -80,7 +80,7 @@ void events(void) case FSCDBAS: proutn("=== SC Base Destroy "); break; case FDSPROB: proutn("=== Probe Move "); break; case FDISTR: proutn("=== Distress Call "); break; - case FENSLV: proutn("=== Enlavement "); break; + case FENSLV: proutn("=== Enslavement "); break; case FREPRO: proutn("=== Klingon Build "); break; } if (is_scheduled(i)) @@ -111,7 +111,8 @@ void events(void) game.state.date = datemin; /* Decrement Federation resources and recompute remaining time */ game.state.remres -= (game.state.remkl+4*game.state.remcom)*xtime; - game.state.remtime = game.state.remres/(game.state.remkl+4*game.state.remcom); + game.state.remtime = game.state.remkl + game.state.remcom > 0 ? + game.state.remres/(game.state.remkl + 4*game.state.remcom) : 99; if (game.state.remtime <=0) { finish(FDEPLETE); return; @@ -165,7 +166,8 @@ void events(void) case FSPY: /* Check with spy to see if S.C. should tractor beam */ if (game.state.nscrem == 0 || ictbeam || istract || - game.condition==docked || game.isatb==1 || game.iscate) return; + game.condition==docked || game.isatb==1 || game.iscate) + return; if (game.ientesc || (game.energy < 2000 && game.torps < 4 && game.shield < 1250) || (damaged(DPHASER) && (damaged(DPHOTON) || game.torps < 4)) || @@ -528,7 +530,8 @@ void events(void) newkling(++game.klhere); /* recompute time left */ - game.state.remtime = game.state.remres/(game.state.remkl+4*game.state.remcom); + game.state.remtime = game.state.remkl + game.state.remcom > 0 ? + game.state.remres/(game.state.remkl + 4*game.state.remcom) : 99; /* report the disaster if we can */ if (!damaged(DRADIO) || game.condition == docked) {