Fix some level flags, sokoban premapping
This commit is contained in:
+8
-8
@@ -35,7 +35,7 @@
|
|||||||
|
|
||||||
### Bottom (first) level of Sokoban ###
|
### Bottom (first) level of Sokoban ###
|
||||||
MAZE:"soko4-1",' '
|
MAZE:"soko4-1",' '
|
||||||
FLAGS:noteleport,hardfloor
|
FLAGS:noteleport,hardfloor,premapped
|
||||||
GEOMETRY:center,center
|
GEOMETRY:center,center
|
||||||
#12345678901234567890123456789012345678901234567890
|
#12345678901234567890123456789012345678901234567890
|
||||||
MAP
|
MAP
|
||||||
@@ -98,7 +98,7 @@ OBJECT:'/',random
|
|||||||
|
|
||||||
|
|
||||||
MAZE:"soko4-2",' '
|
MAZE:"soko4-2",' '
|
||||||
FLAGS:noteleport,hardfloor
|
FLAGS:noteleport,hardfloor,premapped
|
||||||
GEOMETRY:center,center
|
GEOMETRY:center,center
|
||||||
#12345678901234567890123456789012345678901234567890
|
#12345678901234567890123456789012345678901234567890
|
||||||
MAP
|
MAP
|
||||||
@@ -163,7 +163,7 @@ OBJECT:'/',random
|
|||||||
|
|
||||||
### Second level ###
|
### Second level ###
|
||||||
MAZE:"soko3-1",' '
|
MAZE:"soko3-1",' '
|
||||||
FLAGS:noteleport
|
FLAGS:noteleport,premapped
|
||||||
GEOMETRY:center,center
|
GEOMETRY:center,center
|
||||||
#12345678901234567890123456789012345678901234567890
|
#12345678901234567890123456789012345678901234567890
|
||||||
MAP
|
MAP
|
||||||
@@ -239,7 +239,7 @@ OBJECT:'/',random
|
|||||||
|
|
||||||
|
|
||||||
MAZE:"soko3-2",' '
|
MAZE:"soko3-2",' '
|
||||||
FLAGS:noteleport
|
FLAGS:noteleport,premapped
|
||||||
GEOMETRY:center,center
|
GEOMETRY:center,center
|
||||||
#12345678901234567890123456789012345678901234567890
|
#12345678901234567890123456789012345678901234567890
|
||||||
MAP
|
MAP
|
||||||
@@ -308,7 +308,7 @@ OBJECT:'/',random
|
|||||||
|
|
||||||
### Third level ###
|
### Third level ###
|
||||||
MAZE:"soko2-1",' '
|
MAZE:"soko2-1",' '
|
||||||
FLAGS:noteleport
|
FLAGS:noteleport,premapped
|
||||||
GEOMETRY:center,center
|
GEOMETRY:center,center
|
||||||
#12345678901234567890123456789012345678901234567890
|
#12345678901234567890123456789012345678901234567890
|
||||||
MAP
|
MAP
|
||||||
@@ -373,7 +373,7 @@ OBJECT:'/',random
|
|||||||
|
|
||||||
|
|
||||||
MAZE:"soko2-2",' '
|
MAZE:"soko2-2",' '
|
||||||
FLAGS:noteleport
|
FLAGS:noteleport,premapped
|
||||||
GEOMETRY:center,center
|
GEOMETRY:center,center
|
||||||
#12345678901234567890123456789012345678901234567890
|
#12345678901234567890123456789012345678901234567890
|
||||||
MAP
|
MAP
|
||||||
@@ -440,7 +440,7 @@ OBJECT:'/',random
|
|||||||
|
|
||||||
### Top (last) level of Sokoban ###
|
### Top (last) level of Sokoban ###
|
||||||
MAZE:"soko1-1",' '
|
MAZE:"soko1-1",' '
|
||||||
FLAGS:noteleport
|
FLAGS:noteleport,premapped
|
||||||
GEOMETRY:center,center
|
GEOMETRY:center,center
|
||||||
#12345678901234567890123456789012345678901234567890
|
#12345678901234567890123456789012345678901234567890
|
||||||
MAP
|
MAP
|
||||||
@@ -534,7 +534,7 @@ ENGRAVING:$place[0],burn,"Elbereth"
|
|||||||
|
|
||||||
|
|
||||||
MAZE:"soko1-2",' '
|
MAZE:"soko1-2",' '
|
||||||
FLAGS:noteleport
|
FLAGS:noteleport,premapped
|
||||||
GEOMETRY:center,center
|
GEOMETRY:center,center
|
||||||
#12345678901234567890123456789012345678901234567890
|
#12345678901234567890123456789012345678901234567890
|
||||||
MAP
|
MAP
|
||||||
|
|||||||
+2
-3
@@ -25,10 +25,9 @@
|
|||||||
#define SHORTSIGHTED 0x00000008L
|
#define SHORTSIGHTED 0x00000008L
|
||||||
#define ARBOREAL 0x00000010L
|
#define ARBOREAL 0x00000010L
|
||||||
#define MAZELEVEL 0x00000020L
|
#define MAZELEVEL 0x00000020L
|
||||||
#define PREMAPPED 0x00000040L
|
#define PREMAPPED 0x00000040L /* premapped level & sokoban rules */
|
||||||
#define SHROUD 0x00000080L
|
#define SHROUD 0x00000080L
|
||||||
#define STORMY 0x00000100L
|
#define GRAVEYARD 0x00000100L
|
||||||
#define GRAVEYARD 0x00000200L
|
|
||||||
|
|
||||||
|
|
||||||
/* different level layout initializers */
|
/* different level layout initializers */
|
||||||
|
|||||||
@@ -406,10 +406,6 @@ fixup_special()
|
|||||||
place_lregion(0,0,0,0,0,0,0,0,LR_BRANCH,(d_level *)0);
|
place_lregion(0,0,0,0,0,0,0,0,LR_BRANCH,(d_level *)0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* KMH -- Sokoban levels */
|
|
||||||
if(In_sokoban(&u.uz))
|
|
||||||
sokoban_detect();
|
|
||||||
|
|
||||||
/* Still need to add some stuff to level file */
|
/* Still need to add some stuff to level file */
|
||||||
if (Is_medusa_level(&u.uz)) {
|
if (Is_medusa_level(&u.uz)) {
|
||||||
struct obj *otmp;
|
struct obj *otmp;
|
||||||
|
|||||||
@@ -2792,17 +2792,10 @@ spo_level_flags(coder)
|
|||||||
if (flags & NOMMAP) level.flags.nommap = 1;
|
if (flags & NOMMAP) level.flags.nommap = 1;
|
||||||
if (flags & SHORTSIGHTED) level.flags.shortsighted = 1;
|
if (flags & SHORTSIGHTED) level.flags.shortsighted = 1;
|
||||||
if (flags & ARBOREAL) level.flags.arboreal = 1;
|
if (flags & ARBOREAL) level.flags.arboreal = 1;
|
||||||
/*
|
|
||||||
if (flags & NOFLIPX) coder->allow_flips &= ~1;
|
|
||||||
if (flags & NOFLIPY) coder->allow_flips &= ~2;
|
|
||||||
if (flags & MAZELEVEL) level.flags.is_maze_lev = 1;
|
if (flags & MAZELEVEL) level.flags.is_maze_lev = 1;
|
||||||
if (flags & PREMAPPED) coder->premapped = TRUE;
|
if (flags & PREMAPPED) coder->premapped = TRUE;
|
||||||
if (flags & SHROUD) level.flags.hero_memory = 0;
|
if (flags & SHROUD) level.flags.hero_memory = 0;
|
||||||
if (flags & STORMY) level.flags.stormy = 1;
|
|
||||||
if (flags & GRAVEYARD) level.flags.graveyard = 1;
|
if (flags & GRAVEYARD) level.flags.graveyard = 1;
|
||||||
if (flags & SKYMAP) level.flags.sky = 1;
|
|
||||||
if (flags & FLAG_RNDVAULT) coder->allow_flips = 0;
|
|
||||||
*/
|
|
||||||
|
|
||||||
opvar_free(flagdata);
|
opvar_free(flagdata);
|
||||||
}
|
}
|
||||||
@@ -5048,8 +5041,6 @@ next_opcode:
|
|||||||
remove_boundary_syms();
|
remove_boundary_syms();
|
||||||
wallification(1, 0, COLNO-1, ROWNO-1);
|
wallification(1, 0, COLNO-1, ROWNO-1);
|
||||||
|
|
||||||
/*flip_level_rnd(coder->allow_flips);*/
|
|
||||||
|
|
||||||
count_features();
|
count_features();
|
||||||
|
|
||||||
if (coder->premapped) sokoban_detect();
|
if (coder->premapped) sokoban_detect();
|
||||||
|
|||||||
@@ -292,7 +292,6 @@ shortsighted { savetoken(yytext); yylval.i=SHORTSIGHTED; return FLAG_TYPE; }
|
|||||||
mazelevel { savetoken(yytext); yylval.i=MAZELEVEL; return FLAG_TYPE; }
|
mazelevel { savetoken(yytext); yylval.i=MAZELEVEL; return FLAG_TYPE; }
|
||||||
premapped { savetoken(yytext); yylval.i=PREMAPPED; return FLAG_TYPE; }
|
premapped { savetoken(yytext); yylval.i=PREMAPPED; return FLAG_TYPE; }
|
||||||
shroud { savetoken(yytext); yylval.i=SHROUD; return FLAG_TYPE; }
|
shroud { savetoken(yytext); yylval.i=SHROUD; return FLAG_TYPE; }
|
||||||
stormy { savetoken(yytext); yylval.i=STORMY; return FLAG_TYPE; }
|
|
||||||
graveyard { savetoken(yytext); yylval.i=GRAVEYARD; return FLAG_TYPE; }
|
graveyard { savetoken(yytext); yylval.i=GRAVEYARD; return FLAG_TYPE; }
|
||||||
[0-9]+d[0-9]+ { char *p = strchr(yytext, 'd');
|
[0-9]+d[0-9]+ { char *p = strchr(yytext, 'd');
|
||||||
savetoken(yytext);
|
savetoken(yytext);
|
||||||
|
|||||||
Reference in New Issue
Block a user