melting ice follow up (trunk only)
(now + 50) < (melting time) < (now + 50 + 2000) with the chance approaching 100% the longer the time passed
This commit is contained in:
13
src/zap.c
13
src/zap.c
@@ -3518,6 +3518,8 @@ const char *msg;
|
||||
spoteffects(TRUE); /* possibly drown, notice objects */
|
||||
}
|
||||
|
||||
#define MIN_ICE_TIME 50
|
||||
#define MAX_ICE_TIME 2000
|
||||
/*
|
||||
* Start a melt_ice timer.
|
||||
*/
|
||||
@@ -3525,13 +3527,16 @@ void
|
||||
start_melt_ice_timeout(x,y)
|
||||
xchar x,y;
|
||||
{
|
||||
long when, where;
|
||||
int when;
|
||||
long where;
|
||||
short action = MELT_ICE_AWAY;
|
||||
for (when = 50L; when < 2000L; when++)
|
||||
if (!rn2(3)) break;
|
||||
for (when = MIN_ICE_TIME; when < (MAX_ICE_TIME + MIN_ICE_TIME); when++)
|
||||
if (!rn2((MAX_ICE_TIME - when) + MIN_ICE_TIME)) break;
|
||||
where = (((long)x << 16) | ((long)y));
|
||||
(void) start_timer(when, TIMER_LEVEL, action, (genericptr_t)where);
|
||||
(void) start_timer((long)when, TIMER_LEVEL, action, (genericptr_t)where);
|
||||
}
|
||||
#undef MIN_ICE_TIME
|
||||
#undef MAX_ICE_TIME
|
||||
|
||||
/*
|
||||
* Called when ice has melted completely away.
|
||||
|
||||
Reference in New Issue
Block a user