- Level tweaks to avoid places where you could get stuck

- Don't show cloud warning on boss levels
- Limit to one playing card per level
- Can't get hiscores if you are cheating

-This line, and those below, will be ignored--

M    rc.c
M    shared.c
M    defs.h
M    data/world1/level115.dat
M    data/world1/level14.dat
M    globals.h
This commit is contained in:
Rob Pearce 2008-10-30 02:24:24 +00:00
parent fbe003698b
commit ddf05fa1df
6 changed files with 52 additions and 30 deletions

View File

@ -5,6 +5,7 @@ help
endhelp
monsters
0 20 22
23 20 9
12 34 14
12 4 14
60 22 13
@ -40,7 +41,6 @@ monsters
17 4 2
17 5 25
17 34 25
23 20 9
endmonsters
exitdir 1
44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,
@ -54,10 +54,10 @@ exitdir 1
44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,
44,0,0,0,0,0,0,0,25,25,25,0,0,0,0,0,17,0,0,0,0,0,0,0,17,0,0,0,0,25,25,25,0,0,0,0,0,0,0,44,
44,0,0,0,0,0,0,0,0,0,0,0,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,0,0,0,0,0,0,0,0,0,0,0,44,
44,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,44,
44,0,0,0,0,0,0,0,0,0,0,0,24,16,16,16,16,16,16,16,16,16,16,16,16,16,16,24,0,0,0,0,0,0,0,0,0,0,0,44,
44,0,0,0,0,0,0,0,0,0,0,0,24,15,15,15,15,15,15,15,15,15,15,15,15,15,15,24,0,0,0,0,0,0,0,0,0,0,0,44,
44,0,0,0,0,0,0,0,0,0,0,0,24,15,15,15,15,15,15,15,15,15,15,15,15,15,15,24,0,0,0,0,0,0,0,0,0,0,0,44,
44,0,0,0,0,0,0,0,0,0,0,0,24,15,15,15,15,15,15,15,15,15,15,15,15,15,15,24,0,0,0,0,0,0,0,0,0,0,0,44,
44,0,0,0,25,25,25,25,25,25,25,0,24,15,15,15,15,15,15,15,15,15,15,15,15,15,15,24,0,25,25,25,25,25,25,25,0,0,0,44,
44,0,0,0,0,0,0,0,0,0,0,0,24,15,15,15,15,15,15,15,15,15,15,15,15,15,15,24,0,0,0,0,0,0,0,0,0,0,0,44,
44,0,0,0,0,0,0,0,0,0,0,0,24,15,15,15,15,15,15,15,15,15,15,15,15,15,15,24,0,0,0,0,0,0,0,0,0,0,0,44,

View File

@ -55,9 +55,9 @@ exitdir 1
24,0,0,0,0,0,0,0,0,0,0,17,0,0,0,0,0,24,24,26,26,26,24,24,0,0,0,0,0,17,0,0,0,0,0,0,0,0,0,24,
24,25,23,23,23,23,23,23,23,23,25,25,25,23,23,23,23,24,24,26,26,26,24,24,23,23,23,23,25,25,25,23,23,23,23,23,23,23,25,24,
24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,24,24,26,26,26,24,24,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,
24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,24,24,26,26,26,26,26,24,24,11,0,0,0,0,0,0,0,0,0,0,0,0,0,24,
24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,24,26,26,26,26,26,24,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,
24,0,0,0,0,0,0,0,0,0,0,0,0,0,11,24,24,26,26,26,26,26,26,26,24,24,11,0,0,0,0,0,0,0,0,0,0,0,0,24,
24,0,0,0,0,0,0,0,0,0,0,0,0,11,24,24,26,26,26,26,26,26,26,26,26,24,24,11,0,0,0,0,0,0,0,0,0,0,0,24,
24,0,0,0,0,0,0,0,0,0,0,0,0,11,24,26,26,26,26,26,26,26,26,26,26,26,24,11,0,0,0,0,0,0,0,0,0,0,0,24,
24,0,0,0,0,0,0,0,0,0,0,0,0,24,24,26,26,26,26,26,26,26,26,26,26,26,24,24,0,0,0,0,0,0,0,0,0,0,0,24,
24,0,0,0,0,0,0,0,0,0,0,17,0,24,24,26,26,26,26,26,26,26,26,26,26,26,24,24,0,17,0,0,0,0,0,0,0,0,0,24,
24,0,0,0,0,0,0,0,0,0,23,23,23,24,24,26,26,26,26,26,26,26,26,26,26,26,24,24,23,23,23,0,0,0,0,0,0,0,0,24,
@ -70,3 +70,5 @@ exitdir 1
24,0,0,0,0,29,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,0,0,29,0,0,0,24,
24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,24,
layer2
15,20,22
25,20,22

1
defs.h
View File

@ -840,6 +840,7 @@ extern char *deathtext[];
extern char *bifftext[];
extern spriteinfo_t spriteinfo[];
extern int gotcard;
extern int curcard;
extern int deck[];
extern int forcegoodcard;

View File

@ -15,6 +15,7 @@ spriteinfo_t spriteinfo[MAXPTYPES];
char *datadir;
int gotcard; // got a card yet this level?
int curcard;
int deck[DECKSIZE];
int forcegoodcard;

23
rc.c
View File

@ -42,6 +42,7 @@ int numhiscores;
int wanthiscores;
int gothiscore = -1;
int havejoysticks;
int joybuttons;
SDL_Joystick *joy;
@ -584,6 +585,7 @@ int main (int argc, char **argv) {
// warning for cloud
if (!isbosslevel(curlevelnum)) {
if ((gtime >= nexthurryup + 10) && (gtime < nexthurryup+15)) { // 15 secs after hurryup
if (levelcomplete == LV_INPROGRESS) {
if (timer % 4 == 0) {
@ -593,6 +595,7 @@ int main (int argc, char **argv) {
}
}
}
}
// poker effect
// this must come last as it clears the screen and blanks out other sprites
@ -1104,6 +1107,9 @@ void nextlevel(void) {
player->speed = 2;
}
// haven't got a card yet
gotcard = B_FALSE;
// reset timer
timer = 0;
}
@ -1947,7 +1953,9 @@ if (s->id == P_PUFF) printf("PUFF WITH DOOMCOUNT!\n");
sprite_t *newsp;
// if player already has this, and no cards already on screen,
// we get a card instead
// we get a card instead (and also haven't got a card yet htis
// level)
if (!gotcard) {
if ((isfruit(s->timer3) == FT_PERM) && haspowerup(player, s->timer3)) {
sprite_t *search;
int found;
@ -1970,9 +1978,11 @@ if (s->id == P_PUFF) printf("PUFF WITH DOOMCOUNT!\n");
s->timer3 = P_FIRSTCARD;
}
}
}
if (s->timer3 == P_FIRSTCARD) {
s->timer3 = getrandomcard();
gotcard = B_TRUE;
}
newsp = addsprite(s->timer3, s->x,s->y,s->name );
@ -5014,10 +5024,12 @@ void dogravity(sprite_t *s) {
// if player isn't fast, give a speed.
if (player->speed != PLAYERFAST) {
s2->willbecome = P_SPEED;
} else if (gotsomething >= 4) { // card for killing 5 at once
} else if (!gotcard & (gotsomething >= 4)) { // card for killing 5 at once
s2->willbecome = getrandomcard();
} else if (rand() % 5 == 0) { // random chance of a card
gotcard = B_TRUE;
} else if (!gotcard && (rand() % 5 == 0)) { // random chance of a card
s2->willbecome = getrandomcard();
gotcard = B_TRUE;
} else {
// otherwise use normal powerup counter
s2->willbecome = poweruptypes[curpoweruptype];
@ -8366,6 +8378,11 @@ void checkhiscores(void){
int curlet;
// no hiscores if we are cheating!
if (cheat) {
return;
}
// contact server and read list
if (gethiscores()) {
printf("Cannot contact hiscore server!\n");

View File

@ -2707,6 +2707,7 @@ int randompowerup(void) {
case 25:
return P_MASKPOWERUP;
case 26:
gotcard = B_TRUE;
return getrandomcard();
case 27:
return P_CLOVER;