static int random_placement_value = 10;
static int random_placement_method = RANDOM_USE_QUANTITY;
-static int random_placement_background_element = EL_ERDREICH;
+static int random_placement_background_element = EL_SAND;
static boolean random_placement_background_restricted = FALSE;
static boolean stick_element_properties_window = FALSE;
#define IN_ED_FIELD(x,y) ((x)>=0 && (x)<ed_fieldx && (y)>=0 &&(y)<ed_fieldy)
/* drawing elements on the three mouse buttons */
-static int new_element1 = EL_MAUERWERK;
-static int new_element2 = EL_LEERRAUM;
-static int new_element3 = EL_ERDREICH;
+static int new_element1 = EL_WALL;
+static int new_element2 = EL_EMPTY;
+static int new_element3 = EL_SAND;
#define BUTTON_ELEMENT(button) ((button) == 1 ? new_element1 : \
(button) == 2 ? new_element2 : \
- (button) == 3 ? new_element3 : EL_LEERRAUM)
+ (button) == 3 ? new_element3 : EL_EMPTY)
#define BUTTON_STEPSIZE(button) ((button) == 1 ? 1 : (button) == 2 ? 5 : 10)
/* forward declaration for internal use */
EL_CHAR('S'),
EL_CHAR('H'),
- EL_SPIELFIGUR,
- EL_LEERRAUM,
- EL_ERDREICH,
- EL_BETON,
+ EL_PLAYER,
+ EL_EMPTY,
+ EL_SAND,
+ EL_STEELWALL,
EL_BD_WALL,
EL_MAGIC_WALL_BD_OFF,
- EL_AUSGANG_ZU,
- EL_AUSGANG_AUF,
+ EL_EXIT_CLOSED,
+ EL_EXIT_OPEN,
EL_EDELSTEIN_BD,
EL_BUTTERFLY_UP,
EL_BUTTERFLY_RIGHT,
EL_FIREFLY_RIGHT,
- EL_AMOEBE_BD,
+ EL_BD_AMOEBA,
EL_BUTTERFLY_DOWN,
EL_FIREFLY_DOWN,
- EL_LEERRAUM,
+ EL_EMPTY,
EL_CHAR('E'),
EL_CHAR('M'),
EL_SPIELER3,
EL_SPIELER4,
- EL_SPIELFIGUR,
- EL_LEERRAUM,
- EL_ERDREICH,
- EL_FELSBROCKEN,
+ EL_PLAYER,
+ EL_EMPTY,
+ EL_SAND,
+ EL_ROCK,
- EL_BETON,
- EL_MAUERWERK,
- EL_FELSBODEN,
- EL_MAGIC_WALL_OFF,
+ EL_STEELWALL,
+ EL_WALL,
+ EL_WALL_CRUMBLED,
+ EL_MAGIC_WALL,
- EL_EDELSTEIN,
- EL_DIAMANT,
- EL_KOKOSNUSS,
- EL_BOMBE,
+ EL_EMERALD,
+ EL_DIAMOND,
+ EL_NUT,
+ EL_BOMB,
- EL_ERZ_EDEL,
- EL_ERZ_DIAM,
- EL_MORAST_LEER,
- EL_MORAST_VOLL,
+ EL_WALL_EMERALD,
+ EL_WALL_DIAMOND,
+ EL_QUICKSAND_EMPTY,
+ EL_QUICKSAND_FULL,
- EL_DYNAMITE_INACTIVE,
+ EL_DYNAMITE,
EL_DYNAMITE_ACTIVE,
- EL_AUSGANG_ZU,
- EL_AUSGANG_AUF,
+ EL_EXIT_CLOSED,
+ EL_EXIT_OPEN,
- EL_MAMPFER,
- EL_KAEFER_UP,
- EL_FLIEGER_UP,
+ EL_YAMYAM,
+ EL_BUG_UP,
+ EL_SPACESHIP_UP,
EL_ROBOT,
- EL_KAEFER_LEFT,
- EL_FLIEGER_LEFT,
- EL_KAEFER_RIGHT,
- EL_FLIEGER_RIGHT,
+ EL_BUG_LEFT,
+ EL_SPACESHIP_LEFT,
+ EL_BUG_RIGHT,
+ EL_SPACESHIP_RIGHT,
- EL_ABLENK_AUS,
- EL_KAEFER_DOWN,
- EL_FLIEGER_DOWN,
- EL_UNSICHTBAR,
+ EL_ROBOT_WHEEL,
+ EL_BUG_DOWN,
+ EL_SPACESHIP_DOWN,
+ EL_INVISIBLE_WALL,
- EL_BADEWANNE1,
- EL_SALZSAEURE,
- EL_BADEWANNE2,
- EL_LEERRAUM,
+ EL_ACIDPOOL_TOPLEFT,
+ EL_ACID,
+ EL_ACIDPOOL_TOPRIGHT,
+ EL_EMPTY,
- EL_BADEWANNE3,
- EL_BADEWANNE4,
- EL_BADEWANNE5,
- EL_LEERRAUM,
+ EL_ACIDPOOL_BOTTOMLEFT,
+ EL_ACIDPOOL_BOTTOM,
+ EL_ACIDPOOL_BOTTOMRIGHT,
+ EL_EMPTY,
- EL_TROPFEN,
- EL_AMOEBE_TOT,
- EL_AMOEBE_NASS,
- EL_AMOEBE_NORM,
+ EL_AMOEBA_DROP,
+ EL_AMOEBA_DEAD,
+ EL_AMOEBA_WET,
+ EL_AMOEBA_DRY,
EL_EM_KEY_1_FILE,
EL_EM_KEY_2_FILE,
EL_EM_GATE_3,
EL_EM_GATE_4,
- EL_EM_GATE_1X,
- EL_EM_GATE_2X,
- EL_EM_GATE_3X,
- EL_EM_GATE_4X,
+ EL_EM_GATE1_GRAY,
+ EL_EM_GATE2_GRAY,
+ EL_EM_GATE3_GRAY,
+ EL_EM_GATE4_GRAY,
EL_CHAR('M'),
EL_CHAR('O'),
EL_CHAR('R'),
EL_CHAR('E'),
- EL_SCHLUESSEL1,
- EL_SCHLUESSEL2,
- EL_SCHLUESSEL3,
- EL_SCHLUESSEL4,
+ EL_KEY1,
+ EL_KEY2,
+ EL_KEY3,
+ EL_KEY4,
- EL_PFORTE1,
- EL_PFORTE2,
- EL_PFORTE3,
- EL_PFORTE4,
+ EL_GATE1,
+ EL_GATE2,
+ EL_GATE3,
+ EL_GATE4,
- EL_PFORTE1X,
- EL_PFORTE2X,
- EL_PFORTE3X,
- EL_PFORTE4X,
+ EL_GATE1_GRAY,
+ EL_GATE2_GRAY,
+ EL_GATE3_GRAY,
+ EL_GATE4_GRAY,
EL_PFEIL_LEFT,
EL_PFEIL_RIGHT,
EL_PFEIL_UP,
EL_PFEIL_DOWN,
- EL_AMOEBE_VOLL,
- EL_EDELSTEIN_GELB,
- EL_EDELSTEIN_ROT,
- EL_EDELSTEIN_LILA,
+ EL_AMOEBA_FULL,
+ EL_EDELSTEIN_YELLOW,
+ EL_EDELSTEIN_RED,
+ EL_EDELSTEIN_PURPLE,
- EL_ERZ_EDEL_BD,
- EL_ERZ_EDEL_GELB,
- EL_ERZ_EDEL_ROT,
- EL_ERZ_EDEL_LILA,
+ EL_WALL_BD_DIAMOND,
+ EL_WALL_EMERALD_YELLOW,
+ EL_WALL_EMERALD_RED,
+ EL_WALL_EMERALD_PURPLE,
- EL_LIFE,
+ EL_GAMEOFLIFE,
EL_PACMAN_UP,
- EL_ZEIT_VOLL,
- EL_ZEIT_LEER,
+ EL_TIME_ORB_FULL,
+ EL_TIME_ORB_EMPTY,
EL_PACMAN_LEFT,
- EL_MAMPFER2,
+ EL_DARK_YAMYAM,
EL_PACMAN_RIGHT,
EL_MAUER_LEBT,
- EL_LIFE_ASYNC,
+ EL_BIOMAZE,
EL_PACMAN_DOWN,
- EL_BIRNE_AUS,
- EL_BIRNE_EIN,
+ EL_LAMP,
+ EL_LAMP_ACTIVE,
EL_DYNABOMB_NR,
EL_DYNABOMB_SZ,
EL_SCHWEIN,
EL_DRACHE,
- EL_LEERRAUM,
+ EL_EMPTY,
EL_MOLE_UP,
- EL_LEERRAUM,
- EL_LEERRAUM,
+ EL_EMPTY,
+ EL_EMPTY,
EL_MOLE_LEFT,
- EL_LEERRAUM,
+ EL_EMPTY,
EL_MOLE_RIGHT,
- EL_LEERRAUM,
+ EL_EMPTY,
- EL_LEERRAUM,
+ EL_EMPTY,
EL_MOLE_DOWN,
EL_BALLOON,
EL_BALLOON_SEND_ANY,
EL_MAUER_XY,
EL_INVISIBLE_STEEL,
- EL_UNSICHTBAR,
+ EL_INVISIBLE_WALL,
EL_SPEED_PILL,
EL_BLACK_ORB,
EL_SOKOBAN_OBJEKT,
EL_SOKOBAN_FELD_LEER,
EL_SOKOBAN_FELD_VOLL,
- EL_BETON,
+ EL_STEELWALL,
EL_CHAR('S'),
EL_CHAR('U'),
EL_TIMEGATE_CLOSED,
EL_TIMEGATE_OPEN,
EL_TIMEGATE_SWITCH_OFF,
- EL_LEERRAUM,
+ EL_EMPTY,
EL_LANDMINE,
EL_SAND_INVISIBLE,
EL_STEEL_SLANTED,
- EL_LEERRAUM,
+ EL_EMPTY,
EL_SIGN_EXCLAMATION,
EL_SIGN_STOP,
EL_SHIELD_PASSIVE,
EL_SHIELD_ACTIVE,
EL_EXTRA_TIME,
- EL_LEERRAUM,
+ EL_EMPTY,
EL_CHAR('D'),
EL_CHAR('X'),
EL_TRAP_INACTIVE,
EL_DX_SUPABOMB,
- EL_LEERRAUM,
- EL_LEERRAUM,
+ EL_EMPTY,
+ EL_EMPTY,
/*
EL_CHAR('D'),
EL_CHAR('R'),
*/
- EL_LEERRAUM,
- EL_LEERRAUM,
- EL_LEERRAUM,
- EL_LEERRAUM,
+ EL_EMPTY,
+ EL_EMPTY,
+ EL_EMPTY,
+ EL_EMPTY,
EL_CHAR(' '),
EL_CHAR('!'),
for(y=0; y<lev_fieldy; y++)
for(x=0; x<lev_fieldx; x++)
- if (Feld[x][y] == EL_SPIELFIGUR ||
+ if (Feld[x][y] == EL_PLAYER ||
Feld[x][y] == EL_SPIELER1 ||
Feld[x][y] == EL_SP_MURPHY)
player_found = TRUE;
/* draw decorative border for the object */
for (y=0; y<2; y++)
for (x=0; x<2; x++)
- DrawMiniElement(area_x + x, area_y + y, EL_ERDREICH);
+ DrawMiniElement(area_x + x, area_y + y, EL_SAND);
ClearRectangle(drawto,
area_sx + MINI_TILEX/2 - 1, area_sy + MINI_TILEY/2 - 1,
/* draw decorative border for the object */
for (y=0; y<2; y++)
for (x=0; x<2; x++)
- DrawMiniElement(area_x + x, area_y + y, EL_ERDREICH);
+ DrawMiniElement(area_x + x, area_y + y, EL_SAND);
ClearRectangle(drawto,
area_sx + MINI_TILEX/2 - 1, area_sy + MINI_TILEY/2 - 1,
for (y=0; y<4; y++)
for (x=0; x<4; x++)
DrawMiniElement(area_x + 5 * (i % 4) + x, area_y + 6 * (i / 4) + y,
- EL_ERDREICH);
+ EL_SAND);
ClearRectangle(drawto,
area_sx + 5 * (i % 4) * MINI_TILEX + MINI_TILEX/2 - 1,
char *text;
} elements_with_counter[] =
{
- { EL_EDELSTEIN, &level.score[SC_EDELSTEIN], TEXT_COLLECTING },
+ { EL_EMERALD, &level.score[SC_EDELSTEIN], TEXT_COLLECTING },
{ EL_EDELSTEIN_BD, &level.score[SC_EDELSTEIN], TEXT_COLLECTING },
- { EL_EDELSTEIN_GELB,&level.score[SC_EDELSTEIN], TEXT_COLLECTING },
- { EL_EDELSTEIN_ROT, &level.score[SC_EDELSTEIN], TEXT_COLLECTING },
- { EL_EDELSTEIN_LILA,&level.score[SC_EDELSTEIN], TEXT_COLLECTING },
- { EL_DIAMANT, &level.score[SC_DIAMANT], TEXT_COLLECTING },
- { EL_KAEFER_RIGHT, &level.score[SC_KAEFER], TEXT_SMASHING },
- { EL_KAEFER_UP, &level.score[SC_KAEFER], TEXT_SMASHING },
- { EL_KAEFER_LEFT, &level.score[SC_KAEFER], TEXT_SMASHING },
- { EL_KAEFER_DOWN, &level.score[SC_KAEFER], TEXT_SMASHING },
+ { EL_EDELSTEIN_YELLOW,&level.score[SC_EDELSTEIN], TEXT_COLLECTING },
+ { EL_EDELSTEIN_RED, &level.score[SC_EDELSTEIN], TEXT_COLLECTING },
+ { EL_EDELSTEIN_PURPLE,&level.score[SC_EDELSTEIN], TEXT_COLLECTING },
+ { EL_DIAMOND, &level.score[SC_DIAMANT], TEXT_COLLECTING },
+ { EL_BUG_RIGHT, &level.score[SC_KAEFER], TEXT_SMASHING },
+ { EL_BUG_UP, &level.score[SC_KAEFER], TEXT_SMASHING },
+ { EL_BUG_LEFT, &level.score[SC_KAEFER], TEXT_SMASHING },
+ { EL_BUG_DOWN, &level.score[SC_KAEFER], TEXT_SMASHING },
{ EL_BUTTERFLY_RIGHT,&level.score[SC_KAEFER], TEXT_SMASHING },
{ EL_BUTTERFLY_UP, &level.score[SC_KAEFER], TEXT_SMASHING },
{ EL_BUTTERFLY_LEFT,&level.score[SC_KAEFER], TEXT_SMASHING },
{ EL_BUTTERFLY_DOWN,&level.score[SC_KAEFER], TEXT_SMASHING },
- { EL_FLIEGER_RIGHT, &level.score[SC_FLIEGER], TEXT_SMASHING },
- { EL_FLIEGER_UP, &level.score[SC_FLIEGER], TEXT_SMASHING },
- { EL_FLIEGER_LEFT, &level.score[SC_FLIEGER], TEXT_SMASHING },
- { EL_FLIEGER_DOWN, &level.score[SC_FLIEGER], TEXT_SMASHING },
+ { EL_SPACESHIP_RIGHT,&level.score[SC_FLIEGER], TEXT_SMASHING },
+ { EL_SPACESHIP_UP, &level.score[SC_FLIEGER], TEXT_SMASHING },
+ { EL_SPACESHIP_LEFT,&level.score[SC_FLIEGER], TEXT_SMASHING },
+ { EL_SPACESHIP_DOWN,&level.score[SC_FLIEGER], TEXT_SMASHING },
{ EL_FIREFLY_RIGHT, &level.score[SC_FLIEGER], TEXT_SMASHING },
{ EL_FIREFLY_UP, &level.score[SC_FLIEGER], TEXT_SMASHING },
{ EL_FIREFLY_LEFT, &level.score[SC_FLIEGER], TEXT_SMASHING },
{ EL_FIREFLY_DOWN, &level.score[SC_FLIEGER], TEXT_SMASHING },
- { EL_MAMPFER, &level.score[SC_MAMPFER], TEXT_SMASHING },
- { EL_MAMPFER2, &level.score[SC_MAMPFER], TEXT_SMASHING },
+ { EL_YAMYAM, &level.score[SC_MAMPFER], TEXT_SMASHING },
+ { EL_DARK_YAMYAM, &level.score[SC_MAMPFER], TEXT_SMASHING },
{ EL_ROBOT, &level.score[SC_ROBOT], TEXT_SMASHING },
{ EL_PACMAN_RIGHT, &level.score[SC_PACMAN], TEXT_SMASHING },
{ EL_PACMAN_UP, &level.score[SC_PACMAN], TEXT_SMASHING },
{ EL_PACMAN_LEFT, &level.score[SC_PACMAN], TEXT_SMASHING },
{ EL_PACMAN_DOWN, &level.score[SC_PACMAN], TEXT_SMASHING },
- { EL_KOKOSNUSS, &level.score[SC_KOKOSNUSS], TEXT_CRACKING },
- { EL_DYNAMITE_INACTIVE,&level.score[SC_DYNAMIT], TEXT_COLLECTING },
- { EL_SCHLUESSEL1, &level.score[SC_SCHLUESSEL], TEXT_COLLECTING },
- { EL_SCHLUESSEL2, &level.score[SC_SCHLUESSEL], TEXT_COLLECTING },
- { EL_SCHLUESSEL3, &level.score[SC_SCHLUESSEL], TEXT_COLLECTING },
- { EL_SCHLUESSEL4, &level.score[SC_SCHLUESSEL], TEXT_COLLECTING },
+ { EL_NUT, &level.score[SC_KOKOSNUSS], TEXT_CRACKING },
+ { EL_DYNAMITE ,&level.score[SC_DYNAMIT], TEXT_COLLECTING },
+ { EL_KEY1, &level.score[SC_SCHLUESSEL], TEXT_COLLECTING },
+ { EL_KEY2, &level.score[SC_SCHLUESSEL], TEXT_COLLECTING },
+ { EL_KEY3, &level.score[SC_SCHLUESSEL], TEXT_COLLECTING },
+ { EL_KEY4, &level.score[SC_SCHLUESSEL], TEXT_COLLECTING },
{ EL_EM_KEY_1_FILE, &level.score[SC_SCHLUESSEL], TEXT_COLLECTING },
{ EL_EM_KEY_2_FILE, &level.score[SC_SCHLUESSEL], TEXT_COLLECTING },
{ EL_EM_KEY_3_FILE, &level.score[SC_SCHLUESSEL], TEXT_COLLECTING },
{ EL_EM_KEY_4_FILE, &level.score[SC_SCHLUESSEL], TEXT_COLLECTING },
- { EL_AMOEBE_NASS, &level.amoeba_speed, TEXT_SPEED },
- { EL_AMOEBE_NORM, &level.amoeba_speed, TEXT_SPEED },
- { EL_AMOEBE_VOLL, &level.amoeba_speed, TEXT_SPEED },
- { EL_AMOEBE_BD, &level.amoeba_speed, TEXT_SPEED },
- { EL_MAGIC_WALL_OFF,&level.time_magic_wall, TEXT_DURATION },
- { EL_ABLENK_AUS, &level.time_wheel, TEXT_DURATION },
+ { EL_AMOEBA_WET, &level.amoeba_speed, TEXT_SPEED },
+ { EL_AMOEBA_DRY, &level.amoeba_speed, TEXT_SPEED },
+ { EL_AMOEBA_FULL, &level.amoeba_speed, TEXT_SPEED },
+ { EL_BD_AMOEBA, &level.amoeba_speed, TEXT_SPEED },
+ { EL_MAGIC_WALL, &level.time_magic_wall, TEXT_DURATION },
+ { EL_ROBOT_WHEEL, &level.time_wheel, TEXT_DURATION },
{ -1, NULL, NULL }
};
/* draw some decorative border for the object */
for (y=0; y<3; y++)
for (x=0; x<3; x++)
- DrawMiniElement(xstart + x , ystart + y, EL_ERDREICH);
+ DrawMiniElement(xstart + x , ystart + y, EL_SAND);
ClearRectangle(drawto,
SX + xstart * MINI_TILEX + MINI_TILEX/2 - 1,
}
else if (new_element != Feld[lx][ly])
{
- if (new_element == EL_SPIELFIGUR)
+ if (new_element == EL_PLAYER)
{
/* remove player at old position */
for(y=0; y<lev_fieldy; y++)
{
for(x=0; x<lev_fieldx; x++)
{
- if (Feld[x][y] == EL_SPIELFIGUR || Feld[x][y] == EL_SPIELER1)
+ if (Feld[x][y] == EL_PLAYER || Feld[x][y] == EL_SPIELER1)
{
- Feld[x][y] = EL_LEERRAUM;
+ Feld[x][y] = EL_EMPTY;
if (x - level_xpos >= 0 && x - level_xpos < ed_fieldx &&
y - level_ypos >= 0 && y - level_ypos < ed_fieldy)
DrawMiniElement(x - level_xpos, y - level_ypos,
- EL_LEERRAUM);
+ EL_EMPTY);
}
}
}
case GADGET_ID_CLEAR:
for(x=0; x<MAX_LEV_FIELDX; x++)
for(y=0; y<MAX_LEV_FIELDY; y++)
- Feld[x][y] = (button == 1 ? EL_LEERRAUM : new_element);
+ Feld[x][y] = (button == 1 ? EL_EMPTY : new_element);
CopyLevelToUndoBuffer(GADGET_ID_CLEAR);
DrawMiniLevel(ed_fieldx, ed_fieldy, level_xpos, level_ypos);
for(x=0; x<3; x++)
for(y=0; y<3; y++)
level.yam_content[i][x][y] =
- (i < STD_ELEMENT_CONTENTS ? EL_FELSBROCKEN : EL_LEERRAUM);
+ (i < STD_ELEMENT_CONTENTS ? EL_ROCK : EL_EMPTY);
- Feld[0][0] = Ur[0][0] = EL_SPIELFIGUR;
+ Feld[0][0] = Ur[0][0] = EL_PLAYER;
Feld[STD_LEV_FIELDX-1][STD_LEV_FIELDY-1] =
- Ur[STD_LEV_FIELDX-1][STD_LEV_FIELDY-1] = EL_AUSGANG_ZU;
+ Ur[STD_LEV_FIELDX-1][STD_LEV_FIELDY-1] = EL_EXIT_CLOSED;
BorderElement = EL_BETON;
if (num_contents < 1 || num_contents > MAX_ELEMENT_CONTENTS)
num_contents = STD_ELEMENT_CONTENTS;
- if (element == EL_MAMPFER)
+ if (element == EL_YAMYAM)
{
level->num_yam_contents = num_contents;
for(i=0; i<STD_ELEMENT_CONTENTS; i++)
for(y=0; y<3; y++)
for(x=0; x<3; x++)
- fputc((level->encoding_16bit_yamyam ? EL_LEERRAUM :
+ fputc((level->encoding_16bit_yamyam ? EL_EMPTY :
level->yam_content[i][x][y]),
file);
fputc(level->amoeba_speed, file);
fputc(level->time_magic_wall, file);
fputc(level->time_wheel, file);
- fputc((level->encoding_16bit_amoeba ? EL_LEERRAUM : level->amoeba_content),
+ fputc((level->encoding_16bit_amoeba ? EL_EMPTY : level->amoeba_content),
file);
fputc((level->double_speed ? 1 : 0), file);
fputc((level->gravity ? 1 : 0), file);
{
int i, x, y;
- fputc(EL_MAMPFER, file);
+ fputc(EL_YAMYAM, file);
fputc(level->num_yam_contents, file);
fputc(0, file);
fputc(0, file);
int num_contents, content_xsize, content_ysize;
int content_array[MAX_ELEMENT_CONTENTS][3][3];
- if (element == EL_MAMPFER)
+ if (element == EL_YAMYAM)
{
num_contents = level->num_yam_contents;
content_xsize = 3;
for(i=0; i<MAX_ELEMENT_CONTENTS; i++)
for(y=0; y<3; y++)
for(x=0; x<3; x++)
- content_array[i][x][y] = EL_LEERRAUM;
+ content_array[i][x][y] = EL_EMPTY;
content_array[0][0][0] = level->amoeba_content;
}
else
level.num_yam_contents != STD_ELEMENT_CONTENTS)
{
putFileChunkBE(file, "CNT2", LEVEL_CHUNK_CNT2_SIZE);
- SaveLevel_CNT2(file, &level, EL_MAMPFER);
+ SaveLevel_CNT2(file, &level, EL_YAMYAM);
}
if (level.encoding_16bit_amoeba)
#define SND_ACTION_IMPACT 6
#define SND_ACTION_PUSHING 7
#define SND_ACTION_ACTIVATING 8
-#define SND_ACTION_BURNING 9
+#define SND_ACTION_ACTIVE 9
#define NUM_SND_ACTIONS 10
/* insert _all_ loop sound actions here */
{ ".waiting", SND_ACTION_WAITING, TRUE },
{ ".moving", SND_ACTION_MOVING, TRUE }, /* continuos moving */
- { ".burning", SND_ACTION_BURNING, TRUE },
+ { ".active", SND_ACTION_ACTIVE, TRUE },
{ ".growing", SND_ACTION_UNKNOWN, TRUE },
{ ".attacking", SND_ACTION_UNKNOWN, TRUE },
- { ".active", SND_ACTION_UNKNOWN, TRUE },
/* other (non-loop) sound actions are optional */
{ ".stepping", SND_ACTION_MOVING, FALSE }, /* discrete moving */
}
}
/* no break! */
- case EL_SPIELFIGUR:
+ case EL_PLAYER:
if (init_game)
Feld[x][y] = EL_SPIELER1;
/* no break! */
}
}
- Feld[x][y] = EL_LEERRAUM;
+ Feld[x][y] = EL_EMPTY;
player->jx = player->last_jx = x;
player->jy = player->last_jy = y;
}
break;
- case EL_BADEWANNE:
- if (x < lev_fieldx-1 && Feld[x+1][y] == EL_SALZSAEURE)
- Feld[x][y] = EL_BADEWANNE1;
- else if (x > 0 && Feld[x-1][y] == EL_SALZSAEURE)
- Feld[x][y] = EL_BADEWANNE2;
- else if (y > 0 && Feld[x][y-1] == EL_BADEWANNE1)
- Feld[x][y] = EL_BADEWANNE3;
- else if (y > 0 && Feld[x][y-1] == EL_SALZSAEURE)
- Feld[x][y] = EL_BADEWANNE4;
- else if (y > 0 && Feld[x][y-1] == EL_BADEWANNE2)
- Feld[x][y] = EL_BADEWANNE5;
+ case EL_STONEBLOCK:
+ if (x < lev_fieldx-1 && Feld[x+1][y] == EL_ACID)
+ Feld[x][y] = EL_ACIDPOOL_TOPLEFT;
+ else if (x > 0 && Feld[x-1][y] == EL_ACID)
+ Feld[x][y] = EL_ACIDPOOL_TOPRIGHT;
+ else if (y > 0 && Feld[x][y-1] == EL_ACIDPOOL_TOPLEFT)
+ Feld[x][y] = EL_ACIDPOOL_BOTTOMLEFT;
+ else if (y > 0 && Feld[x][y-1] == EL_ACID)
+ Feld[x][y] = EL_ACIDPOOL_BOTTOM;
+ else if (y > 0 && Feld[x][y-1] == EL_ACIDPOOL_TOPRIGHT)
+ Feld[x][y] = EL_ACIDPOOL_BOTTOMRIGHT;
break;
- case EL_KAEFER_RIGHT:
- case EL_KAEFER_UP:
- case EL_KAEFER_LEFT:
- case EL_KAEFER_DOWN:
- case EL_KAEFER:
- case EL_FLIEGER_RIGHT:
- case EL_FLIEGER_UP:
- case EL_FLIEGER_LEFT:
- case EL_FLIEGER_DOWN:
- case EL_FLIEGER:
+ case EL_BUG_RIGHT:
+ case EL_BUG_UP:
+ case EL_BUG_LEFT:
+ case EL_BUG_DOWN:
+ case EL_BUG:
+ case EL_SPACESHIP_RIGHT:
+ case EL_SPACESHIP_UP:
+ case EL_SPACESHIP_LEFT:
+ case EL_SPACESHIP_DOWN:
+ case EL_SPACESHIP:
case EL_BUTTERFLY_RIGHT:
case EL_BUTTERFLY_UP:
case EL_BUTTERFLY_LEFT:
case EL_PACMAN_UP:
case EL_PACMAN_LEFT:
case EL_PACMAN_DOWN:
- case EL_MAMPFER:
- case EL_MAMPFER2:
+ case EL_YAMYAM:
+ case EL_DARK_YAMYAM:
case EL_ROBOT:
case EL_PACMAN:
case EL_SP_SNIKSNAK:
InitMovDir(x, y);
break;
- case EL_AMOEBE_VOLL:
- case EL_AMOEBE_BD:
+ case EL_AMOEBA_FULL:
+ case EL_BD_AMOEBA:
InitAmoebaNr(x, y);
break;
- case EL_TROPFEN:
+ case EL_AMOEBA_DROP:
if (y == lev_fieldy - 1)
{
Feld[x][y] = EL_AMOEBING;
- Store[x][y] = EL_AMOEBE_NASS;
+ Store[x][y] = EL_AMOEBA_WET;
}
break;
MovDelay[x][y] = 96;
break;
- case EL_BIRNE_AUS:
+ case EL_LAMP:
local_player->lights_still_needed++;
break;
break;
case EL_SP_EMPTY:
- Feld[x][y] = EL_LEERRAUM;
+ Feld[x][y] = EL_EMPTY;
break;
case EL_EM_KEY_1_FILE:
#if 0
/* TEST ONLY */
{
- int element = EL_ERDREICH;
+ int element = EL_SAND;
int sound_action = SND_ACTION_DIGGING;
int j = 0;
{
static int ep_em_slippery_wall[] =
{
- EL_BETON,
- EL_MAUERWERK,
+ EL_STEELWALL,
+ EL_WALL,
EL_MAUER_LEBT,
EL_MAUER_X,
EL_MAUER_Y,
player->active = FALSE;
StorePlayer[jx][jy] = 0;
- Feld[jx][jy] = EL_LEERRAUM;
+ Feld[jx][jy] = EL_EMPTY;
}
}
}
player->active = FALSE;
StorePlayer[jx][jy] = 0;
- Feld[jx][jy] = EL_LEERRAUM;
+ Feld[jx][jy] = EL_EMPTY;
}
}
}
}
}
- if (BorderElement == EL_LEERRAUM)
+ if (BorderElement == EL_EMPTY)
{
SBX_Left = 0;
SBX_Right = lev_fieldx - SCR_FIELDX;
switch(element)
{
- case EL_KAEFER_RIGHT:
- case EL_KAEFER_UP:
- case EL_KAEFER_LEFT:
- case EL_KAEFER_DOWN:
- Feld[x][y] = EL_KAEFER;
- MovDir[x][y] = direction[0][element - EL_KAEFER_RIGHT];
+ case EL_BUG_RIGHT:
+ case EL_BUG_UP:
+ case EL_BUG_LEFT:
+ case EL_BUG_DOWN:
+ Feld[x][y] = EL_BUG;
+ MovDir[x][y] = direction[0][element - EL_BUG_RIGHT];
break;
- case EL_FLIEGER_RIGHT:
- case EL_FLIEGER_UP:
- case EL_FLIEGER_LEFT:
- case EL_FLIEGER_DOWN:
- Feld[x][y] = EL_FLIEGER;
- MovDir[x][y] = direction[0][element - EL_FLIEGER_RIGHT];
+ case EL_SPACESHIP_RIGHT:
+ case EL_SPACESHIP_UP:
+ case EL_SPACESHIP_LEFT:
+ case EL_SPACESHIP_DOWN:
+ Feld[x][y] = EL_SPACESHIP;
+ MovDir[x][y] = direction[0][element - EL_SPACESHIP_RIGHT];
break;
case EL_BUTTERFLY_RIGHT:
default:
MovDir[x][y] = 1 << RND(4);
- if (element != EL_KAEFER &&
- element != EL_FLIEGER &&
+ if (element != EL_BUG &&
+ element != EL_SPACESHIP &&
element != EL_BUTTERFLY &&
element != EL_FIREFLY)
break;
if (!IN_LEV_FIELD(x1, y1) || !IS_FREE(x1, y1))
{
- if (element == EL_KAEFER || element == EL_BUTTERFLY)
+ if (element == EL_BUG || element == EL_BUTTERFLY)
{
MovDir[x][y] = direction[0][i];
break;
}
- else if (element == EL_FLIEGER || element == EL_FIREFLY ||
+ else if (element == EL_SPACESHIP || element == EL_FIREFLY ||
element == EL_SP_SNIKSNAK || element == EL_SP_ELECTRON)
{
MovDir[x][y] = direction[1][i];
MovDir[x][y] = direction;
MovDir[newx][newy] = direction;
- if (Feld[newx][newy] == EL_LEERRAUM)
+ if (Feld[newx][newy] == EL_EMPTY)
Feld[newx][newy] = EL_BLOCKED;
}
static void RemoveField(int x, int y)
{
- Feld[x][y] = EL_LEERRAUM;
+ Feld[x][y] = EL_EMPTY;
MovPos[x][y] = 0;
MovDir[x][y] = 0;
MovDelay[x][y] = 0;
Feld[oldx][oldy] == EL_AMOEBA_DRIPPING))
Feld[oldx][oldy] = get_next_element(Feld[oldx][oldy]);
else
- Feld[oldx][oldy] = EL_LEERRAUM;
+ Feld[oldx][oldy] = EL_EMPTY;
Store[oldx][oldy] = Store2[oldx][oldy] = 0;
- Feld[newx][newy] = EL_LEERRAUM;
+ Feld[newx][newy] = EL_EMPTY;
MovPos[oldx][oldy] = MovDir[oldx][oldy] = MovDelay[oldx][oldy] = 0;
MovPos[newx][newy] = MovDir[newx][newy] = MovDelay[newx][newy] = 0;
if (IS_ACTIVE_BOMB(element))
{
/* re-activate things under the bomb like gate or penguin */
- Feld[x][y] = (Store[x][y] ? Store[x][y] : EL_LEERRAUM);
+ Feld[x][y] = (Store[x][y] ? Store[x][y] : EL_EMPTY);
Store[x][y] = 0;
}
switch(StorePlayer[ex][ey])
{
case EL_SPIELER2:
- Store[x][y] = EL_EDELSTEIN_ROT;
+ Store[x][y] = EL_EDELSTEIN_RED;
break;
case EL_SPIELER3:
- Store[x][y] = EL_EDELSTEIN;
+ Store[x][y] = EL_EMERALD;
break;
case EL_SPIELER4:
- Store[x][y] = EL_EDELSTEIN_LILA;
+ Store[x][y] = EL_EDELSTEIN_PURPLE;
break;
case EL_SPIELER1:
default:
- Store[x][y] = EL_EDELSTEIN_GELB;
+ Store[x][y] = EL_EDELSTEIN_YELLOW;
break;
}
if (game.emulation == EMU_SUPAPLEX)
- Store[x][y] = EL_LEERRAUM;
+ Store[x][y] = EL_EMPTY;
}
else if (center_element == EL_MOLE)
- Store[x][y] = EL_EDELSTEIN_ROT;
+ Store[x][y] = EL_EDELSTEIN_RED;
else if (center_element == EL_PINGUIN)
- Store[x][y] = EL_EDELSTEIN_LILA;
- else if (center_element == EL_KAEFER)
- Store[x][y] = ((x == ex && y == ey) ? EL_DIAMANT : EL_EDELSTEIN);
+ Store[x][y] = EL_EDELSTEIN_PURPLE;
+ else if (center_element == EL_BUG)
+ Store[x][y] = ((x == ex && y == ey) ? EL_DIAMOND : EL_EMERALD);
else if (center_element == EL_BUTTERFLY)
Store[x][y] = EL_EDELSTEIN_BD;
else if (center_element == EL_SP_ELECTRON)
Store[x][y] = EL_SP_INFOTRON;
- else if (center_element == EL_MAMPFER)
+ else if (center_element == EL_YAMYAM)
Store[x][y] = level.yam_content[game.yam_content_nr][x-ex+1][y-ey+1];
else if (center_element == EL_AMOEBA2DIAM)
Store[x][y] = level.amoeba_content;
- else if (element == EL_ERZ_EDEL)
- Store[x][y] = EL_EDELSTEIN;
- else if (element == EL_ERZ_DIAM)
- Store[x][y] = EL_DIAMANT;
- else if (element == EL_ERZ_EDEL_BD)
+ else if (element == EL_WALL_EMERALD)
+ Store[x][y] = EL_EMERALD;
+ else if (element == EL_WALL_DIAMOND)
+ Store[x][y] = EL_DIAMOND;
+ else if (element == EL_WALL_BD_DIAMOND)
Store[x][y] = EL_EDELSTEIN_BD;
- else if (element == EL_ERZ_EDEL_GELB)
- Store[x][y] = EL_EDELSTEIN_GELB;
- else if (element == EL_ERZ_EDEL_ROT)
- Store[x][y] = EL_EDELSTEIN_ROT;
- else if (element == EL_ERZ_EDEL_LILA)
- Store[x][y] = EL_EDELSTEIN_LILA;
+ else if (element == EL_WALL_EMERALD_YELLOW)
+ Store[x][y] = EL_EDELSTEIN_YELLOW;
+ else if (element == EL_WALL_EMERALD_RED)
+ Store[x][y] = EL_EDELSTEIN_RED;
+ else if (element == EL_WALL_EMERALD_PURPLE)
+ Store[x][y] = EL_EDELSTEIN_PURPLE;
else if (element == EL_WALL_PEARL)
Store[x][y] = EL_PEARL;
else if (element == EL_WALL_CRYSTAL)
Store[x][y] = EL_CRYSTAL;
else if (!IS_PFORTE(Store[x][y]))
- Store[x][y] = EL_LEERRAUM;
+ Store[x][y] = EL_EMPTY;
if (x != ex || y != ey ||
center_element == EL_AMOEBA2DIAM || mode == EX_BORDER)
Store2[x][y] = element;
if (AmoebaNr[x][y] &&
- (element == EL_AMOEBE_VOLL ||
- element == EL_AMOEBE_BD ||
+ (element == EL_AMOEBA_FULL ||
+ element == EL_BD_AMOEBA ||
element == EL_AMOEBING))
{
AmoebaCnt[AmoebaNr[x][y]]--;
Stop[x][y] = TRUE;
}
- if (center_element == EL_MAMPFER)
+ if (center_element == EL_YAMYAM)
game.yam_content_nr = (game.yam_content_nr + 1) % level.num_yam_contents;
return;
Explode(x, y, EX_PHASE_START, EX_BORDER);
- if (element != EL_LEERRAUM &&
- element != EL_ERDREICH &&
+ if (element != EL_EMPTY &&
+ element != EL_SAND &&
element != EL_EXPLODING &&
!dynabomb_xl)
break;
#if 0
if (IS_PLAYER(x, y)) /* remove objects that might cause smaller explosion */
- element = EL_LEERRAUM;
+ element = EL_EMPTY;
#endif
switch(element)
{
- case EL_KAEFER:
- case EL_FLIEGER:
+ case EL_BUG:
+ case EL_SPACESHIP:
case EL_BUTTERFLY:
case EL_FIREFLY:
- case EL_MAMPFER:
- case EL_MAMPFER2:
+ case EL_YAMYAM:
+ case EL_DARK_YAMYAM:
case EL_ROBOT:
case EL_PACMAN:
case EL_MOLE:
DynaExplode(x, y);
break;
case EL_PINGUIN:
- case EL_BIRNE_AUS:
- case EL_BIRNE_EIN:
+ case EL_LAMP:
+ case EL_LAMP_ACTIVE:
if (IS_PLAYER(x, y))
Explode(x, y, EX_PHASE_START, EX_NORMAL);
else
if (!MovDelay[x][y])
{
- Feld[x][y] = EL_LEERRAUM;
+ Feld[x][y] = EL_EMPTY;
DrawLevelField(x, y);
}
}
}
if (element == EL_INVISIBLE_STEEL ||
- element == EL_UNSICHTBAR ||
+ element == EL_INVISIBLE_WALL ||
element == EL_SAND_INVISIBLE)
DrawLevelField(x, y);
}
smashed = MovingOrBlocked2Element(x, y+1);
}
- if (!lastline && smashed == EL_SALZSAEURE) /* element falls into acid */
+ if (!lastline && smashed == EL_ACID) /* element falls into acid */
{
Blurb(x, y);
return;
}
- if ((element == EL_BOMBE ||
+ if ((element == EL_BOMB ||
element == EL_SP_DISK_ORANGE ||
element == EL_DX_SUPABOMB) &&
(lastline || object_hit)) /* element is bomb */
return;
}
- if (element == EL_TROPFEN && (lastline || object_hit)) /* acid drop */
+ if (element == EL_AMOEBA_DROP && (lastline || object_hit))
{
if (object_hit && IS_PLAYER(x, y+1))
KillHeroUnlessProtected(x, y+1);
else
{
Feld[x][y] = EL_AMOEBING;
- Store[x][y] = EL_AMOEBE_NASS;
+ Store[x][y] = EL_AMOEBA_WET;
}
return;
}
if (!lastline && object_hit) /* check which object was hit */
{
if (CAN_CHANGE(element) &&
- (smashed == EL_MAGIC_WALL_OFF || smashed == EL_MAGIC_WALL_BD_OFF))
+ (smashed == EL_MAGIC_WALL || smashed == EL_MAGIC_WALL_BD_OFF))
{
int xx, yy;
int activated_magic_wall =
- (smashed == EL_MAGIC_WALL_OFF ? EL_MAGIC_WALL_EMPTY :
+ (smashed == EL_MAGIC_WALL ? EL_MAGIC_WALL_EMPTY :
EL_MAGIC_WALL_BD_EMPTY);
/* activate magic wall / mill */
game.magic_wall_time_left = level.time_magic_wall * FRAMES_PER_SECOND;
game.magic_wall_active = TRUE;
- PlaySoundLevel(x, y, (smashed == EL_MAGIC_WALL_OFF ?
+ PlaySoundLevel(x, y, (smashed == EL_MAGIC_WALL ?
SND_MAGIC_WALL_ACTIVATING :
SND_BD_MAGIC_WALL_ACTIVATING));
}
Bang(x, y+1);
return;
}
- else if (element == EL_FELSBROCKEN ||
+ else if (element == EL_ROCK ||
element == EL_SP_ZONK ||
element == EL_BD_ROCK)
{
if (IS_ENEMY(smashed) ||
- smashed == EL_BOMBE || smashed == EL_SP_DISK_ORANGE ||
+ smashed == EL_BOMB || smashed == EL_SP_DISK_ORANGE ||
smashed == EL_DX_SUPABOMB ||
smashed == EL_SONDE || smashed == EL_SCHWEIN ||
smashed == EL_DRACHE || smashed == EL_MOLE)
}
else if (!IS_MOVING(x, y+1))
{
- if (smashed == EL_BIRNE_AUS || smashed == EL_BIRNE_EIN)
+ if (smashed == EL_LAMP || smashed == EL_LAMP_ACTIVE)
{
Bang(x, y+1);
return;
}
- else if (smashed == EL_KOKOSNUSS)
+ else if (smashed == EL_NUT)
{
Feld[x][y+1] = EL_CRACKINGNUT;
PlaySoundLevel(x, y, SND_NUT_CRACKING);
- RaiseScoreElement(EL_KOKOSNUSS);
+ RaiseScoreElement(EL_NUT);
return;
}
else if (smashed == EL_PEARL)
PlaySoundLevel(x, y, SND_PEARL_BREAKING);
return;
}
- else if (smashed == EL_DIAMANT)
+ else if (smashed == EL_DIAMOND)
{
- Feld[x][y+1] = EL_LEERRAUM;
+ Feld[x][y+1] = EL_EMPTY;
PlaySoundLevel(x, y, SND_DIAMOND_BREAKING);
return;
}
int right_x = x+right_dx, right_y = y+right_dy;
int move_x = x+move_dx, move_y = y+move_dy;
- if (element == EL_KAEFER || element == EL_BUTTERFLY)
+ if (element == EL_BUG || element == EL_BUTTERFLY)
{
TestIfBadThingTouchesOtherBadThing(x, y);
!IS_FREE(move_x, move_y))
MovDir[x][y] = left_dir;
- if (element == EL_KAEFER && MovDir[x][y] != old_move_dir)
+ if (element == EL_BUG && MovDir[x][y] != old_move_dir)
MovDelay[x][y] = 9;
else if (element == EL_BUTTERFLY) /* && MovDir[x][y] == left_dir) */
MovDelay[x][y] = 1;
}
- else if (element == EL_FLIEGER || element == EL_FIREFLY ||
+ else if (element == EL_SPACESHIP || element == EL_FIREFLY ||
element == EL_SP_SNIKSNAK || element == EL_SP_ELECTRON)
{
TestIfBadThingTouchesOtherBadThing(x, y);
!IS_FREE(move_x, move_y))
MovDir[x][y] = right_dir;
- if ((element == EL_FLIEGER ||
+ if ((element == EL_SPACESHIP ||
element == EL_SP_SNIKSNAK || element == EL_SP_ELECTRON)
&& MovDir[x][y] != old_move_dir)
MovDelay[x][y] = 9;
else if (element == EL_FIREFLY) /* && MovDir[x][y] == right_dir) */
MovDelay[x][y] = 1;
}
- else if (element == EL_MAMPFER)
+ else if (element == EL_YAMYAM)
{
boolean can_turn_left = FALSE, can_turn_right = FALSE;
if (IN_LEV_FIELD(left_x, left_y) &&
(IS_FREE_OR_PLAYER(left_x, left_y) ||
- Feld[left_x][left_y] == EL_DIAMANT))
+ Feld[left_x][left_y] == EL_DIAMOND))
can_turn_left = TRUE;
if (IN_LEV_FIELD(right_x, right_y) &&
(IS_FREE_OR_PLAYER(right_x, right_y) ||
- Feld[right_x][right_y] == EL_DIAMANT))
+ Feld[right_x][right_y] == EL_DIAMOND))
can_turn_right = TRUE;
if (can_turn_left && can_turn_right)
MovDelay[x][y] = 16+16*RND(3);
}
- else if (element == EL_MAMPFER2)
+ else if (element == EL_DARK_YAMYAM)
{
boolean can_turn_left = FALSE, can_turn_right = FALSE;
int ex = x + xy[i%4][0];
int ey = y + xy[i%4][1];
- if (IN_LEV_FIELD(ex, ey) && Feld[ex][ey] == EL_AUSGANG_AUF)
+ if (IN_LEV_FIELD(ex, ey) && Feld[ex][ey] == EL_EXIT_OPEN)
{
attr_x = ex;
attr_y = ey;
if (IN_LEV_FIELD(newx, newy) &&
(IS_FREE(newx, newy) ||
- Feld[newx][newy] == EL_SALZSAEURE ||
+ Feld[newx][newy] == EL_ACID ||
(element == EL_PINGUIN &&
- (Feld[newx][newy] == EL_AUSGANG_AUF ||
+ (Feld[newx][newy] == EL_EXIT_OPEN ||
IS_MAMPF3(Feld[newx][newy])))))
return;
if (IN_LEV_FIELD(newx, newy) &&
(IS_FREE(newx, newy) ||
- Feld[newx][newy] == EL_SALZSAEURE ||
+ Feld[newx][newy] == EL_ACID ||
(element == EL_PINGUIN &&
- (Feld[newx][newy] == EL_AUSGANG_AUF ||
+ (Feld[newx][newy] == EL_EXIT_OPEN ||
IS_MAMPF3(Feld[newx][newy])))))
return;
if (JustBeingPushed(x, y))
return;
- if (element == EL_MORAST_VOLL)
+ if (element == EL_QUICKSAND_FULL)
{
if (IS_FREE(x, y+1))
{
InitMovingField(x, y, MV_DOWN);
Feld[x][y] = EL_QUICKSAND_EMPTYING;
- Store[x][y] = EL_FELSBROCKEN;
+ Store[x][y] = EL_ROCK;
PlaySoundLevel(x, y, SND_QUICKSAND_EMPTYING);
}
- else if (Feld[x][y+1] == EL_MORAST_LEER)
+ else if (Feld[x][y+1] == EL_QUICKSAND_EMPTY)
{
if (!MovDelay[x][y])
MovDelay[x][y] = TILEY + 1;
return;
}
- Feld[x][y] = EL_MORAST_LEER;
- Feld[x][y+1] = EL_MORAST_VOLL;
+ Feld[x][y] = EL_QUICKSAND_EMPTY;
+ Feld[x][y+1] = EL_QUICKSAND_FULL;
Store[x][y+1] = Store[x][y];
Store[x][y] = 0;
PlaySoundLevel(x, y, SND_QUICKSAND_SLIPPING);
}
}
- else if ((element == EL_FELSBROCKEN || element == EL_BD_ROCK) &&
- Feld[x][y+1] == EL_MORAST_LEER)
+ else if ((element == EL_ROCK || element == EL_BD_ROCK) &&
+ Feld[x][y+1] == EL_QUICKSAND_EMPTY)
{
InitMovingField(x, y, MV_DOWN);
Feld[x][y] = EL_QUICKSAND_FILLING;
EL_MAGIC_WALL_BD_FILLING);
Store[x][y] = element;
}
- else if (CAN_SMASH(element) && Feld[x][y+1] == EL_SALZSAEURE)
+ else if (CAN_SMASH(element) && Feld[x][y+1] == EL_ACID)
{
Blurb(x, y);
InitMovingField(x, y, MV_DOWN);
- Store[x][y] = EL_SALZSAEURE;
+ Store[x][y] = EL_ACID;
}
else if (CAN_SMASH(element) && Feld[x][y+1] == EL_BLOCKED &&
JustStopped[x][y])
{
InitMovingField(x, y, MV_DOWN);
}
- else if (element == EL_TROPFEN)
+ else if (element == EL_AMOEBA_DROP)
{
Feld[x][y] = EL_AMOEBING;
- Store[x][y] = EL_AMOEBE_NASS;
+ Store[x][y] = EL_AMOEBA_WET;
}
/* Store[x][y+1] must be zero, because:
- (EL_MORAST_VOLL -> EL_FELSBROCKEN): Store[x][y+1] == EL_MORAST_LEER
+ (EL_QUICKSAND_FULL -> EL_ROCK): Store[x][y+1] == EL_QUICKSAND_EMPTY
*/
#if 0
#if OLD_GAME_BEHAVIOUR
#endif
{
boolean left = (x>0 && IS_FREE(x-1, y) &&
- (IS_FREE(x-1, y+1) || Feld[x-1][y+1] == EL_SALZSAEURE));
+ (IS_FREE(x-1, y+1) || Feld[x-1][y+1] == EL_ACID));
boolean right = (x<lev_fieldx-1 && IS_FREE(x+1, y) &&
- (IS_FREE(x+1, y+1) || Feld[x+1][y+1] == EL_SALZSAEURE));
+ (IS_FREE(x+1, y+1) || Feld[x+1][y+1] == EL_ACID));
if (left || right)
{
/* all objects that can change their move direction after each step */
/* (MAMPFER, MAMPFER2 and PACMAN go straight until they hit a wall */
- if (element!=EL_MAMPFER && element!=EL_MAMPFER2 && element!=EL_PACMAN)
+ if (element!=EL_YAMYAM && element!=EL_DARK_YAMYAM && element!=EL_PACMAN)
{
TurnRound(x, y);
- if (MovDelay[x][y] && (element == EL_KAEFER ||
- element == EL_FLIEGER ||
+ if (MovDelay[x][y] && (element == EL_BUG ||
+ element == EL_SPACESHIP ||
element == EL_SP_SNIKSNAK ||
element == EL_SP_ELECTRON))
DrawNewLevelField(x, y);
- else if (MovDelay[x][y] && (element == EL_KAEFER ||
- element == EL_FLIEGER ||
+ else if (MovDelay[x][y] && (element == EL_BUG ||
+ element == EL_SPACESHIP ||
element == EL_SP_SNIKSNAK ||
element == EL_SP_ELECTRON ||
element == EL_MOLE))
MovDelay[x][y]--;
if (element == EL_ROBOT ||
- element == EL_MAMPFER || element == EL_MAMPFER2)
+ element == EL_YAMYAM || element == EL_DARK_YAMYAM)
{
int phase = MovDelay[x][y] % 8;
if (MovDelay[x][y] % 4 == 3)
{
- if (element == EL_MAMPFER)
+ if (element == EL_YAMYAM)
PlaySoundLevel(x, y, SND_YAMYAM_WAITING);
- else if (element == EL_MAMPFER2)
+ else if (element == EL_DARK_YAMYAM)
PlaySoundLevel(x, y, SND_DARK_YAMYAM_WAITING);
}
}
else
{
if (Feld[xx][yy] == EL_BURNING)
- Feld[xx][yy] = EL_LEERRAUM;
+ Feld[xx][yy] = EL_EMPTY;
DrawLevelField(xx, yy);
}
}
else if ((element == EL_PINGUIN || element == EL_ROBOT ||
element == EL_SONDE || element == EL_BALLOON) &&
IN_LEV_FIELD(newx, newy) &&
- MovDir[x][y] == MV_DOWN && Feld[newx][newy] == EL_SALZSAEURE)
+ MovDir[x][y] == MV_DOWN && Feld[newx][newy] == EL_ACID)
{
Blurb(x, y);
- Store[x][y] = EL_SALZSAEURE;
+ Store[x][y] = EL_ACID;
}
else if (element == EL_PINGUIN && IN_LEV_FIELD(newx, newy))
{
- if (Feld[newx][newy] == EL_AUSGANG_AUF)
+ if (Feld[newx][newy] == EL_EXIT_OPEN)
{
- Feld[x][y] = EL_LEERRAUM;
+ Feld[x][y] = EL_EMPTY;
DrawLevelField(x, y);
PlaySoundLevel(newx, newy, SND_PENGUIN_PASSING_EXIT);
RemoveMovingField(newx, newy);
else
{
- Feld[newx][newy] = EL_LEERRAUM;
+ Feld[newx][newy] = EL_EMPTY;
DrawLevelField(newx, newy);
}
int newx1 = newx+1*dx, newy1 = newy+1*dy;
int newx2 = newx+2*dx, newy2 = newy+2*dy;
int element1 = (IN_LEV_FIELD(newx1, newy1) ?
- MovingOrBlocked2Element(newx1, newy1) : EL_BETON);
+ MovingOrBlocked2Element(newx1, newy1) : EL_STEELWALL);
int element2 = (IN_LEV_FIELD(newx2, newy2) ?
- MovingOrBlocked2Element(newx2, newy2) : EL_BETON);
+ MovingOrBlocked2Element(newx2, newy2) : EL_STEELWALL);
if ((wanna_flame || IS_ENEMY(element1) || IS_ENEMY(element2)) &&
element1 != EL_DRACHE && element2 != EL_DRACHE &&
MovDelay[x][y] = 50;
Feld[newx][newy] = EL_BURNING;
- if (IN_LEV_FIELD(newx1, newy1) && Feld[newx1][newy1] == EL_LEERRAUM)
+ if (IN_LEV_FIELD(newx1, newy1) && Feld[newx1][newy1] == EL_EMPTY)
Feld[newx1][newy1] = EL_BURNING;
- if (IN_LEV_FIELD(newx2, newy2) && Feld[newx2][newy2] == EL_LEERRAUM)
+ if (IN_LEV_FIELD(newx2, newy2) && Feld[newx2][newy2] == EL_EMPTY)
Feld[newx2][newy2] = EL_BURNING;
return;
}
}
}
- else if (element == EL_MAMPFER && IN_LEV_FIELD(newx, newy) &&
- Feld[newx][newy] == EL_DIAMANT)
+ else if (element == EL_YAMYAM && IN_LEV_FIELD(newx, newy) &&
+ Feld[newx][newy] == EL_DIAMOND)
{
if (IS_MOVING(newx, newy))
RemoveMovingField(newx, newy);
else
{
- Feld[newx][newy] = EL_LEERRAUM;
+ Feld[newx][newy] = EL_EMPTY;
DrawLevelField(newx, newy);
}
PlaySoundLevel(x, y, SND_YAMYAM_EATING);
}
- else if (element == EL_MAMPFER2 && IN_LEV_FIELD(newx, newy) &&
+ else if (element == EL_DARK_YAMYAM && IN_LEV_FIELD(newx, newy) &&
IS_MAMPF2(Feld[newx][newy]))
{
if (AmoebaNr[newx][newy])
{
AmoebaCnt2[AmoebaNr[newx][newy]]--;
- if (Feld[newx][newy] == EL_AMOEBE_VOLL ||
- Feld[newx][newy] == EL_AMOEBE_BD)
+ if (Feld[newx][newy] == EL_AMOEBA_FULL ||
+ Feld[newx][newy] == EL_BD_AMOEBA)
AmoebaCnt[AmoebaNr[newx][newy]]--;
}
RemoveMovingField(newx, newy);
else
{
- Feld[newx][newy] = EL_LEERRAUM;
+ Feld[newx][newy] = EL_EMPTY;
DrawLevelField(newx, newy);
}
if (AmoebaNr[newx][newy])
{
AmoebaCnt2[AmoebaNr[newx][newy]]--;
- if (Feld[newx][newy] == EL_AMOEBE_VOLL ||
- Feld[newx][newy] == EL_AMOEBE_BD)
+ if (Feld[newx][newy] == EL_AMOEBA_FULL ||
+ Feld[newx][newy] == EL_BD_AMOEBA)
AmoebaCnt[AmoebaNr[newx][newy]]--;
}
}
else /* element == EL_PACMAN */
{
- Feld[newx][newy] = EL_LEERRAUM;
+ Feld[newx][newy] = EL_EMPTY;
DrawNewLevelField(newx, newy);
PlaySoundLevel(x, y, SND_PACMAN_EATING);
}
}
else if (element == EL_MOLE && IN_LEV_FIELD(newx, newy) &&
(Feld[newx][newy] == EL_DEAMOEBING ||
- (Feld[newx][newy] == EL_LEERRAUM && Stop[newx][newy])))
+ (Feld[newx][newy] == EL_EMPTY && Stop[newx][newy])))
{
/* wait for shrinking amoeba to completely disappear */
return;
TurnRound(x, y);
- if (element == EL_KAEFER || element == EL_FLIEGER ||
+ if (element == EL_BUG || element == EL_SPACESHIP ||
element == EL_SP_SNIKSNAK)
#if 0
DrawLevelField(x, y);
#else
DrawNewLevelField(x, y);
#endif
- else if (element == EL_KAEFER || element == EL_FLIEGER ||
+ else if (element == EL_BUG || element == EL_SPACESHIP ||
element == EL_SP_SNIKSNAK || element == EL_MOLE)
#if 1
DrawLevelField(x, y);
int newx = x + dx, newy = y + dy;
int step = (horiz_move ? dx : dy) * TILEX / 8;
- if (element == EL_TROPFEN || element == EL_AMOEBA_DRIPPING)
+ if (element == EL_AMOEBA_DROP || element == EL_AMOEBA_DRIPPING)
step /= 2;
else if (element == EL_QUICKSAND_FILLING ||
element == EL_QUICKSAND_EMPTYING)
if (ABS(MovPos[x][y]) >= TILEX) /* object reached its destination */
{
- Feld[x][y] = EL_LEERRAUM;
+ Feld[x][y] = EL_EMPTY;
Feld[newx][newy] = element;
if (element == EL_MOLE)
{ 0, +1 }
};
- Feld[x][y] = EL_ERDREICH;
+ Feld[x][y] = EL_SAND;
DrawLevelField(x, y);
for(i=0; i<4; i++)
xx = x + xy[i][0];
yy = y + xy[i][1];
- if (IN_LEV_FIELD(xx, yy) && Feld[xx][yy] == EL_ERDREICH)
+ if (IN_LEV_FIELD(xx, yy) && Feld[xx][yy] == EL_SAND)
DrawLevelField(xx, yy); /* for "ErdreichAnbroeckeln()" */
}
}
Feld[x][y] = get_next_element(element);
element = Feld[newx][newy] = Store[x][y];
}
- else if (Store[x][y] == EL_SALZSAEURE)
+ else if (Store[x][y] == EL_ACID)
{
- element = Feld[newx][newy] = EL_SALZSAEURE;
+ element = Feld[newx][newy] = EL_ACID;
}
Store[x][y] = 0;
if (!CAN_MOVE(element))
MovDir[newx][newy] = 0;
- if (element == EL_KAEFER || element == EL_FLIEGER ||
+ if (element == EL_BUG || element == EL_SPACESHIP ||
element == EL_SP_SNIKSNAK || element == EL_PACMAN ||
element == EL_SP_ELECTRON)
{
}
else /* still moving on */
{
- if (element == EL_KAEFER || element == EL_FLIEGER ||
+ if (element == EL_BUG || element == EL_SPACESHIP ||
element == EL_SP_SNIKSNAK || element == EL_PACMAN ||
element == EL_SP_ELECTRON)
DrawNewLevelField(x, y);
if (!IN_LEV_FIELD(x, y))
continue;
- if ((Feld[x][y] == EL_AMOEBE_VOLL ||
- Feld[x][y] == EL_AMOEBE_BD ||
- Feld[x][y] == EL_AMOEBE_TOT) &&
+ if ((Feld[x][y] == EL_AMOEBA_FULL ||
+ Feld[x][y] == EL_BD_AMOEBA ||
+ Feld[x][y] == EL_AMOEBA_DEAD) &&
AmoebaNr[x][y] != new_group_nr)
{
int old_group_nr = AmoebaNr[x][y];
{
int i, x, y;
- if (Feld[ax][ay] == EL_AMOEBE_TOT)
+ if (Feld[ax][ay] == EL_AMOEBA_DEAD)
{
int group_nr = AmoebaNr[ax][ay];
{
for (x=0; x<lev_fieldx; x++)
{
- if (Feld[x][y] == EL_AMOEBE_TOT && AmoebaNr[x][y] == group_nr)
+ if (Feld[x][y] == EL_AMOEBA_DEAD && AmoebaNr[x][y] == group_nr)
{
AmoebaNr[x][y] = 0;
Feld[x][y] = EL_AMOEBA2DIAM;
for (x=0; x<lev_fieldx; x++)
{
if (AmoebaNr[x][y] == group_nr &&
- (Feld[x][y] == EL_AMOEBE_TOT ||
- Feld[x][y] == EL_AMOEBE_BD ||
+ (Feld[x][y] == EL_AMOEBA_DEAD ||
+ Feld[x][y] == EL_BD_AMOEBA ||
Feld[x][y] == EL_AMOEBING))
{
AmoebaNr[x][y] = 0;
if (DelayReached(&sound_delay, sound_delay_value))
{
- if (Store[x][y] == EL_AMOEBE_BD)
+ if (Store[x][y] == EL_BD_AMOEBA)
PlaySoundLevel(x, y, SND_BD_AMOEBA_CREATING);
else
PlaySoundLevel(x, y, SND_AMOEBA_CREATING);
if (!MovDelay[x][y])
{
- Feld[x][y] = EL_LEERRAUM;
+ Feld[x][y] = EL_EMPTY;
DrawLevelField(x, y);
/* don't let mole enter this field in this cycle;
if (!level.amoeba_speed)
{
- Feld[ax][ay] = EL_AMOEBE_TOT;
+ Feld[ax][ay] = EL_AMOEBA_DEAD;
DrawLevelField(ax, ay);
return;
}
return;
}
- if (element == EL_AMOEBE_NASS) /* object is an acid / amoeba drop */
+ if (element == EL_AMOEBA_WET) /* object is an acid / amoeba drop */
{
int start = RND(4);
int x = ax + xy[start][0];
return;
if (IS_FREE(x, y) ||
- Feld[x][y] == EL_ERDREICH || Feld[x][y] == EL_MORAST_LEER)
+ Feld[x][y] == EL_SAND || Feld[x][y] == EL_QUICKSAND_EMPTY)
{
newax = x;
neway = y;
continue;
if (IS_FREE(x, y) ||
- Feld[x][y] == EL_ERDREICH || Feld[x][y] == EL_MORAST_LEER)
+ Feld[x][y] == EL_SAND || Feld[x][y] == EL_QUICKSAND_EMPTY)
{
newax = x;
neway = y;
{
if (i == 4 && (!waiting_for_player || game.emulation == EMU_BOULDERDASH))
{
- Feld[ax][ay] = EL_AMOEBE_TOT;
+ Feld[ax][ay] = EL_AMOEBA_DEAD;
DrawLevelField(ax, ay);
AmoebaCnt[AmoebaNr[ax][ay]]--;
if (AmoebaCnt[AmoebaNr[ax][ay]] <= 0) /* amoeba is completely dead */
{
- if (element == EL_AMOEBE_VOLL)
+ if (element == EL_AMOEBA_FULL)
AmoebeUmwandeln(ax, ay);
- else if (element == EL_AMOEBE_BD)
+ else if (element == EL_BD_AMOEBA)
AmoebeUmwandelnBD(ax, ay, level.amoeba_content);
}
}
return;
}
- else if (element == EL_AMOEBE_VOLL || element == EL_AMOEBE_BD)
+ else if (element == EL_AMOEBA_FULL || element == EL_BD_AMOEBA)
{
/* amoeba gets larger by growing in some direction */
/* if amoeba touches other amoeba(s) after growing, unify them */
AmoebenVereinigen(newax, neway);
- if (element == EL_AMOEBE_BD && AmoebaCnt2[new_group_nr] >= 200)
+ if (element == EL_BD_AMOEBA && AmoebaCnt2[new_group_nr] >= 200)
{
AmoebeUmwandelnBD(newax, neway, EL_BD_ROCK);
return;
}
}
- if (element != EL_AMOEBE_NASS || neway < ay || !IS_FREE(newax, neway) ||
+ if (element != EL_AMOEBA_WET || neway < ay || !IS_FREE(newax, neway) ||
(neway == lev_fieldy - 1 && newax != ax))
{
Feld[newax][neway] = EL_AMOEBING; /* simple growth of new amoeba tile */
}
else if (neway == ay)
{
- Feld[newax][neway] = EL_TROPFEN; /* drop left or right from amoeba */
+ Feld[newax][neway] = EL_AMOEBA_DROP; /* drop left or right from amoeba */
PlaySoundLevel(newax, neway, SND_AMOEBA_DROP_CREATING);
}
else
{
InitMovingField(ax, ay, MV_DOWN); /* drop dripping out of amoeba */
Feld[ax][ay] = EL_AMOEBA_DRIPPING;
- Store[ax][ay] = EL_TROPFEN;
+ Store[ax][ay] = EL_AMOEBA_DROP;
ContinueMoving(ax, ay);
return;
}
continue;
if (((Feld[x][y] == element ||
- (element == EL_LIFE && IS_PLAYER(x, y))) &&
+ (element == EL_GAMEOFLIFE && IS_PLAYER(x, y))) &&
!Stop[x][y]) ||
(IS_FREE(x, y) && Stop[x][y]))
nachbarn++;
{
if (nachbarn < life[0] || nachbarn > life[1])
{
- Feld[xx][yy] = EL_LEERRAUM;
+ Feld[xx][yy] = EL_EMPTY;
if (!Stop[xx][yy])
DrawLevelField(xx, yy);
Stop[xx][yy] = TRUE;
changed = TRUE;
}
}
- else if (IS_FREE(xx, yy) || Feld[xx][yy] == EL_ERDREICH)
+ else if (IS_FREE(xx, yy) || Feld[xx][yy] == EL_SAND)
{ /* free border field */
if (nachbarn >= life[2] && nachbarn <= life[3])
{
Feld[xx][yy] = element;
- MovDelay[xx][yy] = (element == EL_LIFE ? 0 : life_time-1);
+ MovDelay[xx][yy] = (element == EL_GAMEOFLIFE ? 0 : life_time-1);
if (!Stop[xx][yy])
DrawLevelField(xx, yy);
Stop[xx][yy] = TRUE;
}
if (changed)
- PlaySoundLevel(ax, ay, element == EL_LIFE ? SND_GAMEOFLIFE_CREATING :
+ PlaySoundLevel(ax, ay, element == EL_GAMEOFLIFE ? SND_GAMEOFLIFE_CREATING :
SND_BIOMAZE_CREATING);
}
}
}
- Feld[x][y] = EL_ABLENK_AUS;
+ Feld[x][y] = EL_ROBOT_WHEEL;
DrawLevelField(x, y);
if (ZX == x && ZY == y)
ZX = ZY = -1;
ZX = ZY = -1;
}
-void Birne(int x, int y)
-{
- if (!MovDelay[x][y]) /* next animation frame */
- MovDelay[x][y] = 800;
-
- if (MovDelay[x][y]) /* wait some time before next frame */
- {
- MovDelay[x][y]--;
- if (MovDelay[x][y])
- {
- if (!(MovDelay[x][y]%5))
- {
- if (!(MovDelay[x][y]%10))
- Feld[x][y]=EL_ABLENK_EIN;
- else
- Feld[x][y]=EL_ABLENK_AUS;
- DrawLevelField(x, y);
- Feld[x][y]=EL_ABLENK_EIN;
- }
- return;
- }
- }
-
- Feld[x][y]=EL_ABLENK_AUS;
- DrawLevelField(x, y);
- if (ZX == x && ZY == y)
- ZX=ZY=-1;
-}
-
void Blubber(int x, int y)
{
if (y > 0 && IS_MOVING(x, y-1) && MovDir[x][y-1] == MV_DOWN)
if (!MovDelay[x][y])
{
- Feld[x][y] = EL_EDELSTEIN;
+ Feld[x][y] = EL_EMERALD;
DrawLevelField(x, y);
}
}
if (!MovDelay[x][y])
{
- Feld[x][y] = EL_LEERRAUM;
+ Feld[x][y] = EL_EMPTY;
DrawLevelField(x, y);
}
}
if (!MovDelay[x][y])
{
- Feld[x][y] = EL_AUSGANG_AUF;
+ Feld[x][y] = EL_EXIT_OPEN;
DrawLevelField(x, y);
}
}
element == EL_MAUER_X || element == EL_MAUER_LEBT) &&
((links_massiv && rechts_massiv) ||
element == EL_MAUER_Y))
- Feld[ax][ay] = EL_MAUERWERK;
+ Feld[ax][ay] = EL_WALL;
if (new_wall)
PlaySoundLevel(ax, ay, SND_WALL_GROWING);
if (IN_LEV_FIELD(xx, yy) && Feld[xx][yy] == EL_BURNING)
{
- Feld[xx][yy] = EL_LEERRAUM;
+ Feld[xx][yy] = EL_EMPTY;
DrawLevelField(xx, yy);
}
else
AmoebeAbleger(x, y);
#endif
- else if (element == EL_LIFE || element == EL_LIFE_ASYNC)
+ else if (element == EL_GAMEOFLIFE || element == EL_BIOMAZE)
Life(x, y);
- else if (element == EL_ABLENK_EIN)
+ else if (element == EL_ROBOT_WHEEL_ACTIVE)
RobotWheel(x, y);
else if (element == EL_TIMEGATE_SWITCH_ON)
TimegateWheel(x, y);
- else if (element == EL_SALZSAEURE)
+ else if (element == EL_ACID)
Blubber(x, y);
else if (element == EL_BLURB_LEFT || element == EL_BLURB_RIGHT)
Blurb(x, y);
NussKnacken(x, y);
else if (element == EL_PEARL_BREAKING)
BreakingPearl(x, y);
- else if (element == EL_AUSGANG_ZU)
+ else if (element == EL_EXIT_CLOSED)
AusgangstuerPruefen(x, y);
else if (element == EL_AUSGANG_ACT)
AusgangstuerOeffnen(x, y);
- else if (element == EL_AUSGANG_AUF)
+ else if (element == EL_EXIT_OPEN)
AusgangstuerBlinken(x, y);
else if (element == EL_MAUERND)
MauerWaechst(x, y);
element = Feld[x][y];
if (!IS_PLAYER(x,y) &&
- (element == EL_LEERRAUM ||
- element == EL_ERDREICH ||
- element == EL_MORAST_LEER ||
+ (element == EL_EMPTY ||
+ element == EL_SAND ||
+ element == EL_QUICKSAND_EMPTY ||
element == EL_BLURB_LEFT ||
element == EL_BLURB_RIGHT))
{
- if ((IN_LEV_FIELD(x, y-1) && Feld[x][y-1] == EL_AMOEBE_NASS) ||
- (IN_LEV_FIELD(x-1, y) && Feld[x-1][y] == EL_AMOEBE_NASS) ||
- (IN_LEV_FIELD(x+1, y) && Feld[x+1][y] == EL_AMOEBE_NASS) ||
- (IN_LEV_FIELD(x, y+1) && Feld[x][y+1] == EL_AMOEBE_NASS))
- Feld[x][y] = EL_TROPFEN;
+ if ((IN_LEV_FIELD(x, y-1) && Feld[x][y-1] == EL_AMOEBA_WET) ||
+ (IN_LEV_FIELD(x-1, y) && Feld[x-1][y] == EL_AMOEBA_WET) ||
+ (IN_LEV_FIELD(x+1, y) && Feld[x+1][y] == EL_AMOEBA_WET) ||
+ (IN_LEV_FIELD(x, y+1) && Feld[x][y+1] == EL_AMOEBA_WET))
+ Feld[x][y] = EL_AMOEBA_DROP;
}
random = random * 129 + 1;
DrawLevelField(x, y);
}
else if (element == EL_INVISIBLE_STEEL ||
- element == EL_UNSICHTBAR ||
+ element == EL_INVISIBLE_WALL ||
element == EL_SAND_INVISIBLE)
DrawLevelField(x, y);
}
boolean player_is_moving_to_valid_field =
(IN_LEV_FIELD(new_jx, new_jy) &&
(Feld[new_jx][new_jy] == EL_SP_BASE ||
- Feld[new_jx][new_jy] == EL_ERDREICH));
+ Feld[new_jx][new_jy] == EL_SAND));
if (field_under_player_is_free &&
!player_is_moving_to_valid_field &&
if (DONT_GO_TO(element))
{
- if (element == EL_SALZSAEURE && dx == 0 && dy == 1)
+ if (element == EL_ACID && dx == 0 && dy == 1)
{
Blurb(jx, jy);
- Feld[jx][jy] = EL_SPIELFIGUR;
+ Feld[jx][jy] = EL_PLAYER;
InitMovingField(jx, jy, MV_DOWN);
- Store[jx][jy] = EL_SALZSAEURE;
+ Store[jx][jy] = EL_ACID;
ContinueMoving(jx, jy);
BuryHero(player);
}
player->actual_frame_counter = FrameCounter;
player->GfxPos = move_stepsize * (player->MovPos / move_stepsize);
- if (Feld[last_jx][last_jy] == EL_LEERRAUM)
+ if (Feld[last_jx][last_jy] == EL_EMPTY)
Feld[last_jx][last_jy] = EL_PLAYER_IS_LEAVING;
DrawPlayer(player);
player->GfxPos = move_stepsize * (player->MovPos / move_stepsize);
if (Feld[last_jx][last_jy] == EL_PLAYER_IS_LEAVING)
- Feld[last_jx][last_jy] = EL_LEERRAUM;
+ Feld[last_jx][last_jy] = EL_EMPTY;
/* before DrawPlayer() to draw correct player graphic for this case */
if (player->MovPos == 0)
player->last_jx = jx;
player->last_jy = jy;
- if (Feld[jx][jy] == EL_AUSGANG_AUF)
+ if (Feld[jx][jy] == EL_EXIT_OPEN)
{
RemoveHero(player);
continue;
element = Feld[x][y];
- if (IS_AMOEBOID(element) || element == EL_LIFE ||
- element == EL_AMOEBING || element == EL_TROPFEN)
+ if (IS_AMOEBOID(element) || element == EL_GAMEOFLIFE ||
+ element == EL_AMOEBING || element == EL_AMOEBA_DROP)
{
kill_x = x;
kill_y = y;
return;
if (IS_PFORTE(Feld[jx][jy]))
- Feld[jx][jy] = EL_LEERRAUM;
+ Feld[jx][jy] = EL_EMPTY;
/* deactivate shield (else Bang()/Explode() would not work right) */
player->shield_passive_time_left = 0;
switch (element)
{
- case EL_LEERRAUM:
- case EL_ERDREICH:
+ case EL_EMPTY:
+ case EL_SAND:
case EL_SAND_INVISIBLE:
case EL_TRAP_INACTIVE:
case EL_SP_BASE:
PlaySoundLevelElementAction(x, y, element, SND_ACTION_DIGGING);
break;
- case EL_EDELSTEIN:
+ case EL_EMERALD:
case EL_EDELSTEIN_BD:
- case EL_EDELSTEIN_GELB:
- case EL_EDELSTEIN_ROT:
- case EL_EDELSTEIN_LILA:
- case EL_DIAMANT:
+ case EL_EDELSTEIN_YELLOW:
+ case EL_EDELSTEIN_RED:
+ case EL_EDELSTEIN_PURPLE:
+ case EL_DIAMOND:
case EL_SP_INFOTRON:
case EL_PEARL:
case EL_CRYSTAL:
RemoveField(x, y);
- local_player->gems_still_needed -= (element == EL_DIAMANT ? 3 :
+ local_player->gems_still_needed -= (element == EL_DIAMOND ? 3 :
element == EL_PEARL ? 5 :
element == EL_CRYSTAL ? 8 : 1);
if (local_player->gems_still_needed < 0)
break;
case EL_ENVELOPE:
- Feld[x][y] = EL_LEERRAUM;
+ Feld[x][y] = EL_EMPTY;
PlaySoundLevel(x, y, SND_ENVELOPE_COLLECTING);
break;
PlaySoundLevel(x, y, SND_SHIELD_DEADLY_COLLECTING);
break;
- case EL_DYNAMITE_INACTIVE:
+ case EL_DYNAMITE:
case EL_SP_DISK_RED:
RemoveField(x, y);
player->dynamite++;
- RaiseScoreElement(EL_DYNAMITE_INACTIVE);
+ RaiseScoreElement(EL_DYNAMITE);
DrawText(DX_DYNAMITE, DY_DYNAMITE,
int2str(local_player->dynamite, 3),
FS_SMALL, FC_YELLOW);
RemoveField(x, y);
player->dynabomb_count++;
player->dynabombs_left++;
- RaiseScoreElement(EL_DYNAMITE_INACTIVE);
+ RaiseScoreElement(EL_DYNAMITE);
PlaySoundLevel(x, y, SND_DYNABOMB_NR_COLLECTING);
break;
case EL_DYNABOMB_SZ:
RemoveField(x, y);
player->dynabomb_size++;
- RaiseScoreElement(EL_DYNAMITE_INACTIVE);
+ RaiseScoreElement(EL_DYNAMITE);
PlaySoundLevel(x, y, SND_DYNABOMB_SZ_COLLECTING);
break;
case EL_DYNABOMB_XL:
RemoveField(x, y);
player->dynabomb_xl = TRUE;
- RaiseScoreElement(EL_DYNAMITE_INACTIVE);
+ RaiseScoreElement(EL_DYNAMITE);
PlaySoundLevel(x, y, SND_DYNABOMB_XL_COLLECTING);
break;
- case EL_SCHLUESSEL1:
- case EL_SCHLUESSEL2:
- case EL_SCHLUESSEL3:
- case EL_SCHLUESSEL4:
+ case EL_KEY1:
+ case EL_KEY2:
+ case EL_KEY3:
+ case EL_KEY4:
{
- int key_nr = element - EL_SCHLUESSEL1;
+ int key_nr = element - EL_KEY1;
RemoveField(x, y);
player->key[key_nr] = TRUE;
- RaiseScoreElement(EL_SCHLUESSEL);
+ RaiseScoreElement(EL_KEY);
DrawMiniGraphicExt(drawto, DX_KEYS + key_nr * MINI_TILEX, DY_KEYS,
GFX_SCHLUESSEL1 + key_nr);
DrawMiniGraphicExt(window, DX_KEYS + key_nr * MINI_TILEX, DY_KEYS,
RemoveField(x, y);
player->key[key_nr] = TRUE;
- RaiseScoreElement(EL_SCHLUESSEL);
+ RaiseScoreElement(EL_KEY);
DrawMiniGraphicExt(drawto, DX_KEYS + key_nr * MINI_TILEX, DY_KEYS,
GFX_SCHLUESSEL1 + key_nr);
DrawMiniGraphicExt(window, DX_KEYS + key_nr * MINI_TILEX, DY_KEYS,
break;
}
- case EL_ABLENK_AUS:
- Feld[x][y] = EL_ABLENK_EIN;
+ case EL_ROBOT_WHEEL:
+ Feld[x][y] = EL_ROBOT_WHEEL_ACTIVE;
ZX = x;
ZY = y;
DrawLevelField(x, y);
break;
/* the following elements cannot be pushed by "snapping" */
- case EL_FELSBROCKEN:
- case EL_BOMBE:
+ case EL_ROCK:
+ case EL_BOMB:
case EL_DX_SUPABOMB:
- case EL_KOKOSNUSS:
- case EL_ZEIT_LEER:
+ case EL_NUT:
+ case EL_TIME_ORB_EMPTY:
case EL_SP_ZONK:
case EL_SP_DISK_ORANGE:
case EL_SPRING:
PlaySoundLevelElementAction(x, y, element, SND_ACTION_PUSHING);
break;
- case EL_PFORTE1:
- case EL_PFORTE2:
- case EL_PFORTE3:
- case EL_PFORTE4:
- if (!player->key[element - EL_PFORTE1])
+ case EL_GATE1:
+ case EL_GATE2:
+ case EL_GATE3:
+ case EL_GATE4:
+ if (!player->key[element - EL_GATE1])
return MF_NO_ACTION;
break;
- case EL_PFORTE1X:
- case EL_PFORTE2X:
- case EL_PFORTE3X:
- case EL_PFORTE4X:
- if (!player->key[element - EL_PFORTE1X])
+ case EL_GATE1_GRAY:
+ case EL_GATE2_GRAY:
+ case EL_GATE3_GRAY:
+ case EL_GATE4_GRAY:
+ if (!player->key[element - EL_GATE1_GRAY])
return MF_NO_ACTION;
break;
PlaySoundLevel(x, y, SND_GATE_PASSING);
break;
- case EL_EM_GATE_1X:
- case EL_EM_GATE_2X:
- case EL_EM_GATE_3X:
- case EL_EM_GATE_4X:
- if (!player->key[element - EL_EM_GATE_1X])
+ case EL_EM_GATE1_GRAY:
+ case EL_EM_GATE2_GRAY:
+ case EL_EM_GATE3_GRAY:
+ case EL_EM_GATE4_GRAY:
+ if (!player->key[element - EL_EM_GATE1_GRAY])
return MF_NO_ACTION;
if (!IN_LEV_FIELD(x + dx, y + dy) || !IS_FREE(x + dx, y + dy))
return MF_NO_ACTION;
}
break;
- case EL_AUSGANG_ZU:
+ case EL_EXIT_CLOSED:
case EL_AUSGANG_ACT:
/* door is not (yet) open */
return MF_NO_ACTION;
break;
- case EL_AUSGANG_AUF:
+ case EL_EXIT_OPEN:
if (mode == DF_SNAP)
return MF_NO_ACTION;
break;
- case EL_BIRNE_AUS:
- Feld[x][y] = EL_BIRNE_EIN;
+ case EL_LAMP:
+ Feld[x][y] = EL_LAMP_ACTIVE;
local_player->lights_still_needed--;
DrawLevelField(x, y);
PlaySoundLevel(x, y, SND_LAMP_ACTIVATING);
return MF_ACTION;
break;
- case EL_ZEIT_VOLL:
- Feld[x][y] = EL_ZEIT_LEER;
+ case EL_TIME_ORB_FULL:
+ Feld[x][y] = EL_TIME_ORB_EMPTY;
TimeLeft += 10;
DrawText(DX_TIME, DY_TIME, int2str(TimeLeft, 3), FS_SMALL, FC_YELLOW);
DrawLevelField(x, y);
IS_ACTIVE_BOMB(element) || element == EL_EXPLODING)
return FALSE;
- if (element != EL_LEERRAUM)
+ if (element != EL_EMPTY)
Store[jx][jy] = element;
if (player->dynamite)
{
switch(element)
{
- case EL_EDELSTEIN:
+ case EL_EMERALD:
case EL_EDELSTEIN_BD:
- case EL_EDELSTEIN_GELB:
- case EL_EDELSTEIN_ROT:
- case EL_EDELSTEIN_LILA:
+ case EL_EDELSTEIN_YELLOW:
+ case EL_EDELSTEIN_RED:
+ case EL_EDELSTEIN_PURPLE:
RaiseScore(level.score[SC_EDELSTEIN]);
break;
- case EL_DIAMANT:
+ case EL_DIAMOND:
RaiseScore(level.score[SC_DIAMANT]);
break;
- case EL_KAEFER:
+ case EL_BUG:
case EL_BUTTERFLY:
RaiseScore(level.score[SC_KAEFER]);
break;
- case EL_FLIEGER:
+ case EL_SPACESHIP:
case EL_FIREFLY:
RaiseScore(level.score[SC_FLIEGER]);
break;
- case EL_MAMPFER:
- case EL_MAMPFER2:
+ case EL_YAMYAM:
+ case EL_DARK_YAMYAM:
RaiseScore(level.score[SC_MAMPFER]);
break;
case EL_ROBOT:
case EL_PACMAN:
RaiseScore(level.score[SC_PACMAN]);
break;
- case EL_KOKOSNUSS:
+ case EL_NUT:
RaiseScore(level.score[SC_KOKOSNUSS]);
break;
- case EL_DYNAMITE_INACTIVE:
+ case EL_DYNAMITE:
RaiseScore(level.score[SC_DYNAMIT]);
break;
- case EL_SCHLUESSEL:
+ case EL_KEY:
RaiseScore(level.score[SC_SCHLUESSEL]);
break;
default:
}
element_to_graphic[] =
{
- { EL_LEERRAUM, GFX_LEERRAUM },
- { EL_ERDREICH, GFX_ERDREICH },
- { EL_MAUERWERK, GFX_MAUERWERK },
- { EL_FELSBODEN, GFX_FELSBODEN },
- { EL_FELSBROCKEN, GFX_FELSBROCKEN },
- { EL_SCHLUESSEL, GFX_SCHLUESSEL },
- { EL_EDELSTEIN, GFX_EDELSTEIN },
- { EL_AUSGANG_ZU, GFX_AUSGANG_ZU },
+ { EL_EMPTY, GFX_LEERRAUM },
+ { EL_SAND, GFX_ERDREICH },
+ { EL_WALL, GFX_MAUERWERK },
+ { EL_WALL_CRUMBLED, GFX_FELSBODEN },
+ { EL_ROCK, GFX_FELSBROCKEN },
+ { EL_KEY, GFX_SCHLUESSEL },
+ { EL_EMERALD, GFX_EDELSTEIN },
+ { EL_EXIT_CLOSED, GFX_AUSGANG_ZU },
{ EL_AUSGANG_ACT, GFX_AUSGANG_ACT },
- { EL_AUSGANG_AUF, GFX_AUSGANG_AUF },
- { EL_SPIELFIGUR, GFX_SPIELFIGUR },
+ { EL_EXIT_OPEN, GFX_AUSGANG_AUF },
+ { EL_PLAYER, GFX_SPIELFIGUR },
{ EL_SPIELER1, GFX_SPIELER1 },
{ EL_SPIELER2, GFX_SPIELER2 },
{ EL_SPIELER3, GFX_SPIELER3 },
{ EL_SPIELER4, GFX_SPIELER4 },
- { EL_KAEFER, GFX_KAEFER },
- { EL_KAEFER_RIGHT, GFX_KAEFER_RIGHT },
- { EL_KAEFER_UP, GFX_KAEFER_UP },
- { EL_KAEFER_LEFT, GFX_KAEFER_LEFT },
- { EL_KAEFER_DOWN, GFX_KAEFER_DOWN },
- { EL_FLIEGER, GFX_FLIEGER },
- { EL_FLIEGER_RIGHT, GFX_FLIEGER_RIGHT },
- { EL_FLIEGER_UP, GFX_FLIEGER_UP },
- { EL_FLIEGER_LEFT, GFX_FLIEGER_LEFT },
- { EL_FLIEGER_DOWN, GFX_FLIEGER_DOWN },
+ { EL_BUG, GFX_KAEFER },
+ { EL_BUG_RIGHT, GFX_KAEFER_RIGHT },
+ { EL_BUG_UP, GFX_KAEFER_UP },
+ { EL_BUG_LEFT, GFX_KAEFER_LEFT },
+ { EL_BUG_DOWN, GFX_KAEFER_DOWN },
+ { EL_SPACESHIP, GFX_FLIEGER },
+ { EL_SPACESHIP_RIGHT, GFX_FLIEGER_RIGHT },
+ { EL_SPACESHIP_UP, GFX_FLIEGER_UP },
+ { EL_SPACESHIP_LEFT, GFX_FLIEGER_LEFT },
+ { EL_SPACESHIP_DOWN, GFX_FLIEGER_DOWN },
{ EL_BUTTERFLY, GFX_BUTTERFLY },
{ EL_BUTTERFLY_RIGHT, GFX_BUTTERFLY_RIGHT },
{ EL_BUTTERFLY_UP, GFX_BUTTERFLY_UP },
{ EL_FIREFLY_UP, GFX_FIREFLY_UP },
{ EL_FIREFLY_LEFT, GFX_FIREFLY_LEFT },
{ EL_FIREFLY_DOWN, GFX_FIREFLY_DOWN },
- { EL_MAMPFER, GFX_MAMPFER },
+ { EL_YAMYAM, GFX_MAMPFER },
{ EL_ROBOT, GFX_ROBOT },
- { EL_BETON, GFX_BETON },
- { EL_DIAMANT, GFX_DIAMANT },
- { EL_MORAST_LEER, GFX_MORAST_LEER },
- { EL_MORAST_VOLL, GFX_MORAST_VOLL },
+ { EL_STEELWALL, GFX_BETON },
+ { EL_DIAMOND, GFX_DIAMANT },
+ { EL_QUICKSAND_EMPTY, GFX_MORAST_LEER },
+ { EL_QUICKSAND_FULL, GFX_MORAST_VOLL },
{ EL_QUICKSAND_EMPTYING, GFX_MORAST_LEER },
- { EL_TROPFEN, GFX_TROPFEN },
- { EL_BOMBE, GFX_BOMBE },
- { EL_MAGIC_WALL_OFF, GFX_MAGIC_WALL_OFF },
+ { EL_AMOEBA_DROP, GFX_TROPFEN },
+ { EL_BOMB, GFX_BOMBE },
+ { EL_MAGIC_WALL, GFX_MAGIC_WALL_OFF },
{ EL_MAGIC_WALL_EMPTY, GFX_MAGIC_WALL_EMPTY },
{ EL_MAGIC_WALL_EMPTYING, GFX_MAGIC_WALL_EMPTY },
{ EL_MAGIC_WALL_FULL, GFX_MAGIC_WALL_FULL },
{ EL_MAGIC_WALL_DEAD, GFX_MAGIC_WALL_DEAD },
- { EL_SALZSAEURE, GFX_SALZSAEURE },
- { EL_AMOEBE_TOT, GFX_AMOEBE_TOT },
- { EL_AMOEBE_NASS, GFX_AMOEBE_NASS },
- { EL_AMOEBE_NORM, GFX_AMOEBE_NORM },
- { EL_AMOEBE_VOLL, GFX_AMOEBE_VOLL },
- { EL_AMOEBE_BD, GFX_AMOEBE_BD },
+ { EL_ACID, GFX_SALZSAEURE },
+ { EL_AMOEBA_DEAD, GFX_AMOEBE_TOT },
+ { EL_AMOEBA_WET, GFX_AMOEBE_NASS },
+ { EL_AMOEBA_DRY, GFX_AMOEBE_NORM },
+ { EL_AMOEBA_FULL, GFX_AMOEBE_VOLL },
+ { EL_BD_AMOEBA, GFX_AMOEBE_BD },
{ EL_AMOEBA2DIAM, GFX_AMOEBA2DIAM },
{ EL_AMOEBA_DRIPPING, GFX_AMOEBE_NASS },
- { EL_KOKOSNUSS, GFX_KOKOSNUSS },
- { EL_LIFE, GFX_LIFE },
- { EL_LIFE_ASYNC, GFX_LIFE_ASYNC },
+ { EL_NUT, GFX_KOKOSNUSS },
+ { EL_GAMEOFLIFE, GFX_LIFE },
+ { EL_BIOMAZE, GFX_LIFE_ASYNC },
{ EL_DYNAMITE_ACTIVE, GFX_DYNAMIT },
{ EL_BADEWANNE, GFX_BADEWANNE },
- { EL_BADEWANNE1, GFX_BADEWANNE1 },
- { EL_BADEWANNE2, GFX_BADEWANNE2 },
- { EL_BADEWANNE3, GFX_BADEWANNE3 },
- { EL_BADEWANNE4, GFX_BADEWANNE4 },
- { EL_BADEWANNE5, GFX_BADEWANNE5 },
- { EL_ABLENK_AUS, GFX_ABLENK_AUS },
- { EL_ABLENK_EIN, GFX_ABLENK_EIN },
- { EL_SCHLUESSEL1, GFX_SCHLUESSEL1 },
- { EL_SCHLUESSEL2, GFX_SCHLUESSEL2 },
- { EL_SCHLUESSEL3, GFX_SCHLUESSEL3 },
- { EL_SCHLUESSEL4, GFX_SCHLUESSEL4 },
- { EL_PFORTE1, GFX_PFORTE1 },
- { EL_PFORTE2, GFX_PFORTE2 },
- { EL_PFORTE3, GFX_PFORTE3 },
- { EL_PFORTE4, GFX_PFORTE4 },
- { EL_PFORTE1X, GFX_PFORTE1X },
- { EL_PFORTE2X, GFX_PFORTE2X },
- { EL_PFORTE3X, GFX_PFORTE3X },
- { EL_PFORTE4X, GFX_PFORTE4X },
- { EL_DYNAMITE_INACTIVE, GFX_DYNAMIT_AUS },
+ { EL_ACIDPOOL_TOPLEFT, GFX_BADEWANNE1 },
+ { EL_ACIDPOOL_TOPRIGHT, GFX_BADEWANNE2 },
+ { EL_ACIDPOOL_BOTTOMLEFT, GFX_BADEWANNE3 },
+ { EL_ACIDPOOL_BOTTOM, GFX_BADEWANNE4 },
+ { EL_ACIDPOOL_BOTTOMRIGHT, GFX_BADEWANNE5 },
+ { EL_ROBOT_WHEEL, GFX_ABLENK_AUS },
+ { EL_ROBOT_WHEEL_ACTIVE, GFX_ABLENK_EIN },
+ { EL_KEY1, GFX_SCHLUESSEL1 },
+ { EL_KEY2, GFX_SCHLUESSEL2 },
+ { EL_KEY3, GFX_SCHLUESSEL3 },
+ { EL_KEY4, GFX_SCHLUESSEL4 },
+ { EL_GATE1, GFX_PFORTE1 },
+ { EL_GATE2, GFX_PFORTE2 },
+ { EL_GATE3, GFX_PFORTE3 },
+ { EL_GATE4, GFX_PFORTE4 },
+ { EL_GATE1_GRAY, GFX_PFORTE1X },
+ { EL_GATE2_GRAY, GFX_PFORTE2X },
+ { EL_GATE3_GRAY, GFX_PFORTE3X },
+ { EL_GATE4_GRAY, GFX_PFORTE4X },
+ { EL_DYNAMITE, GFX_DYNAMIT_AUS },
{ EL_PACMAN, GFX_PACMAN },
{ EL_PACMAN_RIGHT, GFX_PACMAN_RIGHT },
{ EL_PACMAN_UP, GFX_PACMAN_UP },
{ EL_PACMAN_LEFT, GFX_PACMAN_LEFT },
{ EL_PACMAN_DOWN, GFX_PACMAN_DOWN },
- { EL_UNSICHTBAR, GFX_UNSICHTBAR },
- { EL_ERZ_EDEL, GFX_ERZ_EDEL },
- { EL_ERZ_DIAM, GFX_ERZ_DIAM },
- { EL_BIRNE_AUS, GFX_BIRNE_AUS },
- { EL_BIRNE_EIN, GFX_BIRNE_EIN },
- { EL_ZEIT_VOLL, GFX_ZEIT_VOLL },
- { EL_ZEIT_LEER, GFX_ZEIT_LEER },
+ { EL_INVISIBLE_WALL, GFX_UNSICHTBAR },
+ { EL_WALL_EMERALD, GFX_ERZ_EDEL },
+ { EL_WALL_DIAMOND, GFX_ERZ_DIAM },
+ { EL_LAMP, GFX_BIRNE_AUS },
+ { EL_LAMP_ACTIVE, GFX_BIRNE_EIN },
+ { EL_TIME_ORB_FULL, GFX_ZEIT_VOLL },
+ { EL_TIME_ORB_EMPTY, GFX_ZEIT_LEER },
{ EL_MAUER_LEBT, GFX_MAUER_LEBT },
{ EL_MAUER_X, GFX_MAUER_X },
{ EL_MAUER_Y, GFX_MAUER_Y },
{ EL_MAUER_XY, GFX_MAUER_XY },
{ EL_EDELSTEIN_BD, GFX_EDELSTEIN_BD },
- { EL_EDELSTEIN_GELB, GFX_EDELSTEIN_GELB },
- { EL_EDELSTEIN_ROT, GFX_EDELSTEIN_ROT },
- { EL_EDELSTEIN_LILA, GFX_EDELSTEIN_LILA },
- { EL_ERZ_EDEL_BD, GFX_ERZ_EDEL_BD },
- { EL_ERZ_EDEL_GELB, GFX_ERZ_EDEL_GELB },
- { EL_ERZ_EDEL_ROT, GFX_ERZ_EDEL_ROT },
- { EL_ERZ_EDEL_LILA, GFX_ERZ_EDEL_LILA },
- { EL_MAMPFER2, GFX_MAMPFER2 },
+ { EL_EDELSTEIN_YELLOW, GFX_EDELSTEIN_GELB },
+ { EL_EDELSTEIN_RED, GFX_EDELSTEIN_ROT },
+ { EL_EDELSTEIN_PURPLE, GFX_EDELSTEIN_LILA },
+ { EL_WALL_BD_DIAMOND, GFX_ERZ_EDEL_BD },
+ { EL_WALL_EMERALD_YELLOW, GFX_ERZ_EDEL_GELB },
+ { EL_WALL_EMERALD_RED, GFX_ERZ_EDEL_ROT },
+ { EL_WALL_EMERALD_PURPLE, GFX_ERZ_EDEL_LILA },
+ { EL_DARK_YAMYAM, GFX_MAMPFER2 },
{ EL_MAGIC_WALL_BD_OFF, GFX_MAGIC_WALL_BD_OFF },
{ EL_MAGIC_WALL_BD_EMPTY, GFX_MAGIC_WALL_BD_EMPTY },
{ EL_MAGIC_WALL_BD_EMPTYING, GFX_MAGIC_WALL_BD_EMPTY },
{ EL_EM_GATE_2, GFX_EM_GATE_2 },
{ EL_EM_GATE_3, GFX_EM_GATE_3 },
{ EL_EM_GATE_4, GFX_EM_GATE_4 },
- { EL_EM_GATE_1X, GFX_EM_GATE_1X },
- { EL_EM_GATE_2X, GFX_EM_GATE_2X },
- { EL_EM_GATE_3X, GFX_EM_GATE_3X },
- { EL_EM_GATE_4X, GFX_EM_GATE_4X },
+ { EL_EM_GATE1_GRAY, GFX_EM_GATE_1X },
+ { EL_EM_GATE2_GRAY, GFX_EM_GATE_2X },
+ { EL_EM_GATE3_GRAY, GFX_EM_GATE_3X },
+ { EL_EM_GATE4_GRAY, GFX_EM_GATE_4X },
{ EL_EM_KEY_1_FILE, GFX_EM_KEY_1 },
{ EL_EM_KEY_2_FILE, GFX_EM_KEY_2 },
{ EL_EM_KEY_3_FILE, GFX_EM_KEY_3 },
element_to_direction_graphic[] =
{
{
- EL_FLIEGER,
+ EL_SPACESHIP,
IMG_SPACESHIP_LEFT, IMG_SPACESHIP_RIGHT,
IMG_SPACESHIP_UP, IMG_SPACESHIP_DOWN
},
{
- EL_KAEFER,
+ EL_BUG,
IMG_BUG_LEFT, IMG_BUG_RIGHT,
IMG_BUG_UP, IMG_BUG_DOWN
},
static int ep_amoebalive[] =
{
- EL_AMOEBE_NASS,
- EL_AMOEBE_NORM,
- EL_AMOEBE_VOLL,
- EL_AMOEBE_BD
+ EL_AMOEBA_WET,
+ EL_AMOEBA_DRY,
+ EL_AMOEBA_FULL,
+ EL_BD_AMOEBA
};
static int ep_amoebalive_num = SIZEOF_ARRAY_INT(ep_amoebalive);
static int ep_amoeboid[] =
{
- EL_AMOEBE_TOT,
- EL_AMOEBE_NASS,
- EL_AMOEBE_NORM,
- EL_AMOEBE_VOLL,
- EL_AMOEBE_BD
+ EL_AMOEBA_DEAD,
+ EL_AMOEBA_WET,
+ EL_AMOEBA_DRY,
+ EL_AMOEBA_FULL,
+ EL_BD_AMOEBA
};
static int ep_amoeboid_num = SIZEOF_ARRAY_INT(ep_amoeboid);
static int ep_schluessel[] =
{
- EL_SCHLUESSEL1,
- EL_SCHLUESSEL2,
- EL_SCHLUESSEL3,
- EL_SCHLUESSEL4,
+ EL_KEY1,
+ EL_KEY2,
+ EL_KEY3,
+ EL_KEY4,
EL_EM_KEY_1,
EL_EM_KEY_2,
EL_EM_KEY_3,
static int ep_pforte[] =
{
- EL_PFORTE1,
- EL_PFORTE2,
- EL_PFORTE3,
- EL_PFORTE4,
- EL_PFORTE1X,
- EL_PFORTE2X,
- EL_PFORTE3X,
- EL_PFORTE4X,
+ EL_GATE1,
+ EL_GATE2,
+ EL_GATE3,
+ EL_GATE4,
+ EL_GATE1_GRAY,
+ EL_GATE2_GRAY,
+ EL_GATE3_GRAY,
+ EL_GATE4_GRAY,
EL_EM_GATE_1,
EL_EM_GATE_2,
EL_EM_GATE_3,
static int ep_solid[] =
{
- EL_BETON,
- EL_MAUERWERK,
+ EL_STEELWALL,
+ EL_WALL,
EL_MAUER_LEBT,
EL_MAUER_X,
EL_MAUER_Y,
EL_MAUER_XY,
EL_BD_WALL,
- EL_FELSBODEN,
- EL_AUSGANG_ZU,
+ EL_WALL_CRUMBLED,
+ EL_EXIT_CLOSED,
EL_AUSGANG_ACT,
- EL_AUSGANG_AUF,
- EL_AMOEBE_TOT,
- EL_AMOEBE_NASS,
- EL_AMOEBE_NORM,
- EL_AMOEBE_VOLL,
- EL_AMOEBE_BD,
- EL_MORAST_VOLL,
- EL_MORAST_LEER,
+ EL_EXIT_OPEN,
+ EL_AMOEBA_DEAD,
+ EL_AMOEBA_WET,
+ EL_AMOEBA_DRY,
+ EL_AMOEBA_FULL,
+ EL_BD_AMOEBA,
+ EL_QUICKSAND_FULL,
+ EL_QUICKSAND_EMPTY,
EL_QUICKSAND_FILLING,
EL_QUICKSAND_EMPTYING,
- EL_MAGIC_WALL_OFF,
+ EL_MAGIC_WALL,
EL_MAGIC_WALL_EMPTY,
EL_MAGIC_WALL_EMPTYING,
EL_MAGIC_WALL_FILLING,
EL_MAGIC_WALL_BD_FULL,
EL_MAGIC_WALL_BD_FILLING,
EL_MAGIC_WALL_BD_DEAD,
- EL_LIFE,
- EL_LIFE_ASYNC,
- EL_BADEWANNE1,
- EL_BADEWANNE2,
- EL_BADEWANNE3,
- EL_BADEWANNE4,
- EL_BADEWANNE5,
+ EL_GAMEOFLIFE,
+ EL_BIOMAZE,
+ EL_ACIDPOOL_TOPLEFT,
+ EL_ACIDPOOL_TOPRIGHT,
+ EL_ACIDPOOL_BOTTOMLEFT,
+ EL_ACIDPOOL_BOTTOM,
+ EL_ACIDPOOL_BOTTOMRIGHT,
EL_SP_CHIP_SINGLE,
EL_SP_CHIP_LEFT,
EL_SP_CHIP_RIGHT,
EL_CRYSTAL,
EL_WALL_PEARL,
EL_WALL_CRYSTAL,
- EL_PFORTE1,
- EL_PFORTE2,
- EL_PFORTE3,
- EL_PFORTE4,
- EL_PFORTE1X,
- EL_PFORTE2X,
- EL_PFORTE3X,
- EL_PFORTE4X,
+ EL_GATE1,
+ EL_GATE2,
+ EL_GATE3,
+ EL_GATE4,
+ EL_GATE1_GRAY,
+ EL_GATE2_GRAY,
+ EL_GATE3_GRAY,
+ EL_GATE4_GRAY,
EL_EM_GATE_1,
EL_EM_GATE_2,
EL_EM_GATE_3,
static int ep_massive[] =
{
- EL_BETON,
- EL_SALZSAEURE,
- EL_BADEWANNE1,
- EL_BADEWANNE2,
- EL_BADEWANNE3,
- EL_BADEWANNE4,
- EL_BADEWANNE5,
+ EL_STEELWALL,
+ EL_ACID,
+ EL_ACIDPOOL_TOPLEFT,
+ EL_ACIDPOOL_TOPRIGHT,
+ EL_ACIDPOOL_BOTTOMLEFT,
+ EL_ACIDPOOL_BOTTOM,
+ EL_ACIDPOOL_BOTTOMRIGHT,
EL_SP_HARD_GRAY,
EL_SP_HARD_GREEN,
EL_SP_HARD_BLUE,
EL_EMC_STEEL_WALL_3,
EL_EMC_STEEL_WALL_4,
EL_CRYSTAL,
- EL_PFORTE1,
- EL_PFORTE2,
- EL_PFORTE3,
- EL_PFORTE4,
- EL_PFORTE1X,
- EL_PFORTE2X,
- EL_PFORTE3X,
- EL_PFORTE4X,
+ EL_GATE1,
+ EL_GATE2,
+ EL_GATE3,
+ EL_GATE4,
+ EL_GATE1_GRAY,
+ EL_GATE2_GRAY,
+ EL_GATE3_GRAY,
+ EL_GATE4_GRAY,
EL_EM_GATE_1,
EL_EM_GATE_2,
EL_EM_GATE_3,
static int ep_slippery[] =
{
- EL_FELSBODEN,
+ EL_WALL_CRUMBLED,
EL_BD_WALL,
- EL_FELSBROCKEN,
+ EL_ROCK,
EL_BD_ROCK,
- EL_EDELSTEIN,
+ EL_EMERALD,
EL_EDELSTEIN_BD,
- EL_EDELSTEIN_GELB,
- EL_EDELSTEIN_ROT,
- EL_EDELSTEIN_LILA,
- EL_DIAMANT,
- EL_BOMBE,
- EL_KOKOSNUSS,
- EL_ABLENK_EIN,
- EL_ABLENK_AUS,
- EL_ZEIT_VOLL,
- EL_ZEIT_LEER,
- EL_BIRNE_EIN,
- EL_BIRNE_AUS,
- EL_BADEWANNE1,
- EL_BADEWANNE2,
+ EL_EDELSTEIN_YELLOW,
+ EL_EDELSTEIN_RED,
+ EL_EDELSTEIN_PURPLE,
+ EL_DIAMOND,
+ EL_BOMB,
+ EL_NUT,
+ EL_ROBOT_WHEEL_ACTIVE,
+ EL_ROBOT_WHEEL,
+ EL_TIME_ORB_FULL,
+ EL_TIME_ORB_EMPTY,
+ EL_LAMP_ACTIVE,
+ EL_LAMP,
+ EL_ACIDPOOL_TOPLEFT,
+ EL_ACIDPOOL_TOPRIGHT,
EL_SONDE,
EL_SP_ZONK,
EL_SP_INFOTRON,
static int ep_enemy[] =
{
- EL_KAEFER,
- EL_FLIEGER,
+ EL_BUG,
+ EL_SPACESHIP,
EL_BUTTERFLY,
EL_FIREFLY,
- EL_MAMPFER,
- EL_MAMPFER2,
+ EL_YAMYAM,
+ EL_DARK_YAMYAM,
EL_ROBOT,
EL_PACMAN,
EL_SP_SNIKSNAK,
static int ep_mauer[] =
{
- EL_BETON,
- EL_PFORTE1,
- EL_PFORTE2,
- EL_PFORTE3,
- EL_PFORTE4,
- EL_PFORTE1X,
- EL_PFORTE2X,
- EL_PFORTE3X,
- EL_PFORTE4X,
+ EL_STEELWALL,
+ EL_GATE1,
+ EL_GATE2,
+ EL_GATE3,
+ EL_GATE4,
+ EL_GATE1_GRAY,
+ EL_GATE2_GRAY,
+ EL_GATE3_GRAY,
+ EL_GATE4_GRAY,
EL_EM_GATE_1,
EL_EM_GATE_2,
EL_EM_GATE_3,
EL_EM_GATE_2X,
EL_EM_GATE_3X,
EL_EM_GATE_4X,
- EL_AUSGANG_ZU,
+ EL_EXIT_CLOSED,
EL_AUSGANG_ACT,
- EL_AUSGANG_AUF,
- EL_MAUERWERK,
- EL_FELSBODEN,
+ EL_EXIT_OPEN,
+ EL_WALL,
+ EL_WALL_CRUMBLED,
EL_MAUER_LEBT,
EL_MAUER_X,
EL_MAUER_Y,
static int ep_can_fall[] =
{
- EL_FELSBROCKEN,
+ EL_ROCK,
EL_BD_ROCK,
- EL_EDELSTEIN,
+ EL_EMERALD,
EL_EDELSTEIN_BD,
- EL_EDELSTEIN_GELB,
- EL_EDELSTEIN_ROT,
- EL_EDELSTEIN_LILA,
- EL_DIAMANT,
- EL_BOMBE,
- EL_KOKOSNUSS,
- EL_TROPFEN,
- EL_MORAST_VOLL,
+ EL_EDELSTEIN_YELLOW,
+ EL_EDELSTEIN_RED,
+ EL_EDELSTEIN_PURPLE,
+ EL_DIAMOND,
+ EL_BOMB,
+ EL_NUT,
+ EL_AMOEBA_DROP,
+ EL_QUICKSAND_FULL,
EL_MAGIC_WALL_FULL,
EL_MAGIC_WALL_BD_FULL,
- EL_ZEIT_VOLL,
- EL_ZEIT_LEER,
+ EL_TIME_ORB_FULL,
+ EL_TIME_ORB_EMPTY,
EL_SP_ZONK,
EL_SP_INFOTRON,
EL_SP_DISK_ORANGE,
static int ep_can_smash[] =
{
- EL_FELSBROCKEN,
+ EL_ROCK,
EL_BD_ROCK,
- EL_EDELSTEIN,
+ EL_EMERALD,
EL_EDELSTEIN_BD,
- EL_EDELSTEIN_GELB,
- EL_EDELSTEIN_ROT,
- EL_EDELSTEIN_LILA,
- EL_DIAMANT,
- EL_SCHLUESSEL1,
- EL_SCHLUESSEL2,
- EL_SCHLUESSEL3,
- EL_SCHLUESSEL4,
+ EL_EDELSTEIN_YELLOW,
+ EL_EDELSTEIN_RED,
+ EL_EDELSTEIN_PURPLE,
+ EL_DIAMOND,
+ EL_KEY1,
+ EL_KEY2,
+ EL_KEY3,
+ EL_KEY4,
EL_EM_KEY_1,
EL_EM_KEY_2,
EL_EM_KEY_3,
EL_EM_KEY_4,
- EL_BOMBE,
- EL_KOKOSNUSS,
- EL_TROPFEN,
- EL_ZEIT_VOLL,
- EL_ZEIT_LEER,
+ EL_BOMB,
+ EL_NUT,
+ EL_AMOEBA_DROP,
+ EL_TIME_ORB_FULL,
+ EL_TIME_ORB_EMPTY,
EL_SP_ZONK,
EL_SP_INFOTRON,
EL_SP_DISK_ORANGE,
static int ep_can_change[] =
{
- EL_FELSBROCKEN,
+ EL_ROCK,
EL_BD_ROCK,
- EL_EDELSTEIN,
+ EL_EMERALD,
EL_EDELSTEIN_BD,
- EL_EDELSTEIN_GELB,
- EL_EDELSTEIN_ROT,
- EL_EDELSTEIN_LILA,
- EL_DIAMANT
+ EL_EDELSTEIN_YELLOW,
+ EL_EDELSTEIN_RED,
+ EL_EDELSTEIN_PURPLE,
+ EL_DIAMOND
};
static int ep_can_change_num = SIZEOF_ARRAY_INT(ep_can_change);
static int ep_can_move[] =
{
- EL_KAEFER,
- EL_FLIEGER,
+ EL_BUG,
+ EL_SPACESHIP,
EL_BUTTERFLY,
EL_FIREFLY,
- EL_MAMPFER,
- EL_MAMPFER2,
+ EL_YAMYAM,
+ EL_DARK_YAMYAM,
EL_ROBOT,
EL_PACMAN,
EL_MOLE,
static int ep_could_move[] =
{
- EL_KAEFER_RIGHT,
- EL_KAEFER_UP,
- EL_KAEFER_LEFT,
- EL_KAEFER_DOWN,
- EL_FLIEGER_RIGHT,
- EL_FLIEGER_UP,
- EL_FLIEGER_LEFT,
- EL_FLIEGER_DOWN,
+ EL_BUG_RIGHT,
+ EL_BUG_UP,
+ EL_BUG_LEFT,
+ EL_BUG_DOWN,
+ EL_SPACESHIP_RIGHT,
+ EL_SPACESHIP_UP,
+ EL_SPACESHIP_LEFT,
+ EL_SPACESHIP_DOWN,
EL_BUTTERFLY_RIGHT,
EL_BUTTERFLY_UP,
EL_BUTTERFLY_LEFT,
static int ep_dont_touch[] =
{
- EL_KAEFER,
- EL_FLIEGER,
+ EL_BUG,
+ EL_SPACESHIP,
EL_BUTTERFLY,
EL_FIREFLY
};
static int ep_dont_go_to[] =
{
- EL_KAEFER,
- EL_FLIEGER,
+ EL_BUG,
+ EL_SPACESHIP,
EL_BUTTERFLY,
EL_FIREFLY,
- EL_MAMPFER,
- EL_MAMPFER2,
+ EL_YAMYAM,
+ EL_DARK_YAMYAM,
EL_ROBOT,
EL_PACMAN,
- EL_TROPFEN,
- EL_SALZSAEURE,
+ EL_AMOEBA_DROP,
+ EL_ACID,
EL_SP_SNIKSNAK,
EL_SP_ELECTRON,
EL_SP_BUG_ACTIVE,
static int ep_mampf2[] =
{
- EL_ERDREICH,
- EL_KAEFER,
- EL_FLIEGER,
+ EL_SAND,
+ EL_BUG,
+ EL_SPACESHIP,
EL_BUTTERFLY,
EL_FIREFLY,
- EL_MAMPFER,
+ EL_YAMYAM,
EL_ROBOT,
EL_PACMAN,
- EL_TROPFEN,
- EL_AMOEBE_TOT,
- EL_AMOEBE_NASS,
- EL_AMOEBE_NORM,
- EL_AMOEBE_VOLL,
- EL_AMOEBE_BD,
- EL_EDELSTEIN,
+ EL_AMOEBA_DROP,
+ EL_AMOEBA_DEAD,
+ EL_AMOEBA_WET,
+ EL_AMOEBA_DRY,
+ EL_AMOEBA_FULL,
+ EL_BD_AMOEBA,
+ EL_EMERALD,
EL_EDELSTEIN_BD,
- EL_EDELSTEIN_GELB,
- EL_EDELSTEIN_ROT,
- EL_EDELSTEIN_LILA,
- EL_DIAMANT,
+ EL_EDELSTEIN_YELLOW,
+ EL_EDELSTEIN_RED,
+ EL_EDELSTEIN_PURPLE,
+ EL_DIAMOND,
EL_PEARL,
EL_CRYSTAL
};
static int ep_bd_element[] =
{
- EL_LEERRAUM,
- EL_ERDREICH,
- EL_FELSBODEN,
+ EL_EMPTY,
+ EL_SAND,
+ EL_WALL_CRUMBLED,
EL_BD_WALL,
- EL_FELSBROCKEN,
+ EL_ROCK,
EL_BD_ROCK,
EL_EDELSTEIN_BD,
EL_MAGIC_WALL_BD_OFF,
- EL_AUSGANG_ZU,
- EL_AUSGANG_AUF,
- EL_BETON,
- EL_SPIELFIGUR,
+ EL_EXIT_CLOSED,
+ EL_EXIT_OPEN,
+ EL_STEELWALL,
+ EL_PLAYER,
EL_FIREFLY,
EL_FIREFLY_1,
EL_FIREFLY_2,
EL_BUTTERFLY_2,
EL_BUTTERFLY_3,
EL_BUTTERFLY_4,
- EL_AMOEBE_BD,
+ EL_BD_AMOEBA,
EL_CHAR_FRAGE
};
static int ep_bd_element_num = SIZEOF_ARRAY_INT(ep_bd_element);
static int ep_sb_element[] =
{
- EL_LEERRAUM,
- EL_BETON,
+ EL_EMPTY,
+ EL_STEELWALL,
EL_SOKOBAN_OBJEKT,
EL_SOKOBAN_FELD_LEER,
EL_SOKOBAN_FELD_VOLL,
- EL_SPIELFIGUR,
+ EL_PLAYER,
EL_INVISIBLE_STEEL
};
static int ep_sb_element_num = SIZEOF_ARRAY_INT(ep_sb_element);
static int ep_gem[] =
{
- EL_EDELSTEIN,
+ EL_EMERALD,
EL_EDELSTEIN_BD,
- EL_EDELSTEIN_GELB,
- EL_EDELSTEIN_ROT,
- EL_EDELSTEIN_LILA,
- EL_DIAMANT
+ EL_EDELSTEIN_YELLOW,
+ EL_EDELSTEIN_RED,
+ EL_EDELSTEIN_PURPLE,
+ EL_DIAMOND
};
static int ep_gem_num = SIZEOF_ARRAY_INT(ep_gem);
static int ep_inactive[] =
{
- EL_LEERRAUM,
- EL_ERDREICH,
- EL_MAUERWERK,
+ EL_EMPTY,
+ EL_SAND,
+ EL_WALL,
EL_BD_WALL,
- EL_FELSBODEN,
- EL_SCHLUESSEL,
- EL_BETON,
- EL_AMOEBE_TOT,
- EL_MORAST_LEER,
+ EL_WALL_CRUMBLED,
+ EL_KEY,
+ EL_STEELWALL,
+ EL_AMOEBA_DEAD,
+ EL_QUICKSAND_EMPTY,
EL_BADEWANNE,
- EL_ABLENK_AUS,
- EL_SCHLUESSEL1,
- EL_SCHLUESSEL2,
- EL_SCHLUESSEL3,
- EL_SCHLUESSEL4,
+ EL_ROBOT_WHEEL,
+ EL_KEY1,
+ EL_KEY2,
+ EL_KEY3,
+ EL_KEY4,
EL_EM_KEY_1,
EL_EM_KEY_2,
EL_EM_KEY_3,
EL_EM_KEY_4,
- EL_PFORTE1,
- EL_PFORTE2,
- EL_PFORTE3,
- EL_PFORTE4,
- EL_PFORTE1X,
- EL_PFORTE2X,
- EL_PFORTE3X,
- EL_PFORTE4X,
+ EL_GATE1,
+ EL_GATE2,
+ EL_GATE3,
+ EL_GATE4,
+ EL_GATE1_GRAY,
+ EL_GATE2_GRAY,
+ EL_GATE3_GRAY,
+ EL_GATE4_GRAY,
EL_EM_GATE_1,
EL_EM_GATE_2,
EL_EM_GATE_3,
EL_EM_GATE_2X,
EL_EM_GATE_3X,
EL_EM_GATE_4X,
- EL_DYNAMITE_INACTIVE,
- EL_UNSICHTBAR,
- EL_BIRNE_AUS,
- EL_BIRNE_EIN,
- EL_ERZ_EDEL,
- EL_ERZ_DIAM,
- EL_ERZ_EDEL_BD,
- EL_ERZ_EDEL_GELB,
+ EL_DYNAMITE,
+ EL_INVISIBLE_WALL,
+ EL_LAMP,
+ EL_LAMP_ACTIVE,
+ EL_WALL_EMERALD,
+ EL_WALL_DIAMOND,
+ EL_WALL_BD_DIAMOND,
+ EL_WALL_EMERALD_YELLOW,
EL_DYNABOMB_NR,
EL_DYNABOMB_SZ,
EL_DYNABOMB_XL,
EL_SOKOBAN_OBJEKT,
EL_SOKOBAN_FELD_LEER,
EL_SOKOBAN_FELD_VOLL,
- EL_ERZ_EDEL_ROT,
- EL_ERZ_EDEL_LILA,
- EL_BADEWANNE1,
- EL_BADEWANNE2,
- EL_BADEWANNE3,
- EL_BADEWANNE4,
- EL_BADEWANNE5,
- EL_MAGIC_WALL_OFF,
+ EL_WALL_EMERALD_RED,
+ EL_WALL_EMERALD_PURPLE,
+ EL_ACIDPOOL_TOPLEFT,
+ EL_ACIDPOOL_TOPRIGHT,
+ EL_ACIDPOOL_BOTTOMLEFT,
+ EL_ACIDPOOL_BOTTOM,
+ EL_ACIDPOOL_BOTTOMRIGHT,
+ EL_MAGIC_WALL,
EL_MAGIC_WALL_DEAD,
EL_MAGIC_WALL_BD_OFF,
EL_MAGIC_WALL_BD_DEAD,
static int ep_explosive[] =
{
- EL_BOMBE,
+ EL_BOMB,
EL_DYNAMITE_ACTIVE,
- EL_DYNAMITE_INACTIVE,
+ EL_DYNAMITE,
EL_DYNABOMB_ACTIVE_1,
EL_DYNABOMB_ACTIVE_2,
EL_DYNABOMB_ACTIVE_3,
EL_DYNABOMB_NR,
EL_DYNABOMB_SZ,
EL_DYNABOMB_XL,
- EL_KAEFER,
+ EL_BUG,
EL_MOLE,
EL_PINGUIN,
EL_SCHWEIN,
static int ep_mampf3[] =
{
- EL_EDELSTEIN,
+ EL_EMERALD,
EL_EDELSTEIN_BD,
- EL_EDELSTEIN_GELB,
- EL_EDELSTEIN_ROT,
- EL_EDELSTEIN_LILA,
- EL_DIAMANT,
+ EL_EDELSTEIN_YELLOW,
+ EL_EDELSTEIN_RED,
+ EL_EDELSTEIN_PURPLE,
+ EL_DIAMOND,
EL_PEARL,
EL_CRYSTAL
};
static int ep_pushable[] =
{
- EL_FELSBROCKEN,
+ EL_ROCK,
EL_BD_ROCK,
- EL_BOMBE,
- EL_KOKOSNUSS,
- EL_ZEIT_LEER,
+ EL_BOMB,
+ EL_NUT,
+ EL_TIME_ORB_EMPTY,
EL_SOKOBAN_FELD_VOLL,
EL_SOKOBAN_OBJEKT,
EL_SONDE,
static int ep_player[] =
{
- EL_SPIELFIGUR,
+ EL_PLAYER,
EL_SPIELER1,
EL_SPIELER2,
EL_SPIELER3,
static int ep_has_content[] =
{
- EL_MAMPFER,
- EL_AMOEBE_NASS,
- EL_AMOEBE_NORM,
- EL_AMOEBE_VOLL,
- EL_AMOEBE_BD
+ EL_YAMYAM,
+ EL_AMOEBA_WET,
+ EL_AMOEBA_DRY,
+ EL_AMOEBA_FULL,
+ EL_BD_AMOEBA
};
static int ep_has_content_num = SIZEOF_ARRAY_INT(ep_has_content);
static int ep_eatable[] =
{
- EL_ERDREICH,
+ EL_SAND,
EL_SP_BASE,
EL_SP_BUG,
EL_TRAP_INACTIVE,
EL_SP_CHIP_UPPER,
EL_SP_CHIP_LOWER,
/* additional elements that appeared in newer Supaplex levels */
- EL_UNSICHTBAR,
+ EL_INVISIBLE_WALL,
/* more than one murphy in a level results in an inactive clone */
EL_SP_MURPHY_CLONE
};
6, /* GFX_ACTION_IMPACT (9) */
6, /* GFX_ACTION_CRACKING (10) */
6, /* GFX_ACTION_ACTIVATING (11) */
- 6, /* GFX_ACTION_BURNING (12) */
+ 6, /* GFX_ACTION_ACTIVE (12) */
6 /* GFX_ACTION_OTHER (13) */
};
{ "dynamite.xpos", "0" },
{ "dynamite.ypos", "3" },
{ "dynamite.frames", "1" },
- { "dynamite.burning", "RocksElements.pcx" },
- { "dynamite.burning.xpos", "1" },
- { "dynamite.burning.ypos", "3" },
- { "dynamite.burning.frames", "7" },
+ { "dynamite.actice", "RocksElements.pcx" },
+ { "dynamite.actice.xpos", "1" },
+ { "dynamite.actice.ypos", "3" },
+ { "dynamite.actice.frames", "7" },
{ "spaceship_right", "RocksElements.pcx" },
{ "spaceship_right.xpos", "8" },
{ "robot_wheel", "RocksElements.pcx" },
{ "robot_wheel.xpos", "0" },
{ "robot_wheel.ypos", "6" },
- { "robot_wheel.frames", "4" },
+ { "robot_wheel.frames", "1" },
+ { "robot_wheel.active", "RocksElements.pcx" },
+ { "robot_wheel.active.xpos", "0" },
+ { "robot_wheel.active.ypos", "6" },
+ { "robot_wheel.active.frames", "4" },
{ "amoeba_drop", "RocksElements.pcx" },
{ "amoeba_drop.xpos", "5" },
{ "amoeba_dead4.ypos", "6" },
{ "amoeba_dead4.frames", "1" },
- { "lamp_off", "RocksElements.pcx" },
- { "lamp_off.xpos", "0" },
- { "lamp_off.ypos", "7" },
- { "lamp_off.frames", "1" },
- { "lamp_on", "RocksElements.pcx" },
- { "lamp_on.xpos", "1" },
- { "lamp_on.ypos", "7" },
- { "lamp_on.frames", "1" },
+ { "lamp", "RocksElements.pcx" },
+ { "lamp.xpos", "0" },
+ { "lamp.ypos", "7" },
+ { "lamp.frames", "1" },
+ { "lamp.active", "RocksElements.pcx" },
+ { "lamp.active.xpos", "1" },
+ { "lamp.active.ypos", "7" },
+ { "lamp.active.frames", "1" },
{ "time_orb_full", "RocksElements.pcx" },
{ "time_orb_full.xpos", "2" },
{ "dark_yamyam.frames", "4" },
{ "dark_yamyam.pingpong", "1" },
- { "dynabomb.burning", "RocksElements.pcx" },
- { "dynabomb.burning.xpos", "12" },
- { "dynabomb.burning.ypos", "11" },
- { "dynabomb.burning.frames", "4" },
- { "dynabomb.burning.pingpong", "1" },
+ { "dynabomb.actice", "RocksElements.pcx" },
+ { "dynabomb.actice.xpos", "12" },
+ { "dynabomb.actice.ypos", "11" },
+ { "dynabomb.actice.frames", "4" },
+ { "dynabomb.actice.pingpong", "1" },
{ "dynabomb_nr", "RocksElements.pcx" },
{ "dynabomb_nr.xpos", "12" },
{ "dynabomb_nr.ypos", "11" },
{ "invisible_steelwall.xpos", "3" },
{ "invisible_steelwall.ypos", "5" },
{ "invisible_steelwall.frames", "1" },
- { "invisible_steelwall_on", "RocksSP.pcx" },
- { "invisible_steelwall_on.xpos", "1" },
- { "invisible_steelwall_on.ypos", "5" },
- { "invisible_steelwall_on.frames", "1" },
+ { "invisible_steelwall.active", "RocksSP.pcx" },
+ { "invisible_steelwall.active.xpos", "1" },
+ { "invisible_steelwall.active.ypos", "5" },
+ { "invisible_steelwall.active.frames", "1" },
{ "invisible_sand", "RocksSP.pcx" },
{ "invisible_sand.xpos", "6" },
{ "invisible_sand.ypos", "5" },
{ "invisible_sand.frames", "1" },
- { "invisible_sand_on", "RocksSP.pcx" },
- { "invisible_sand_on.xpos", "2" },
- { "invisible_sand_on.ypos", "5" },
- { "invisible_sand_on.frames", "1" },
+ { "invisible_sand.active", "RocksSP.pcx" },
+ { "invisible_sand.active.xpos", "2" },
+ { "invisible_sand.active.ypos", "5" },
+ { "invisible_sand.active.frames", "1" },
{ "invisible_wall", "RocksSP.pcx" },
{ "invisible_wall.xpos", "7" },
{ "invisible_wall.ypos", "5" },
{ "invisible_wall.frames", "1" },
- { "invisible_wall_on", "RocksSP.pcx" },
- { "invisible_wall_on.xpos", "5" },
- { "invisible_wall_on.ypos", "5" },
- { "invisible_wall_on.frames", "1" },
+ { "invisible_wall.active", "RocksSP.pcx" },
+ { "invisible_wall.active.xpos", "5" },
+ { "invisible_wall.active.ypos", "5" },
+ { "invisible_wall.active.frames", "1" },
{ "em_key1", "RocksSP.pcx" },
{ "em_key1.xpos", "4" },
{ "switchgate_switch_down.ypos", "12" },
{ "switchgate_switch_down.frames", "1" },
- { "light_switch_off", "RocksDC.pcx" },
- { "light_switch_off.xpos", "6" },
- { "light_switch_off.ypos", "12" },
- { "light_switch_off.frames", "1" },
- { "light_switch_on", "RocksDC.pcx" },
- { "light_switch_on.xpos", "7" },
- { "light_switch_on.ypos", "12" },
- { "light_switch_on.frames", "1" },
+ { "light_switch", "RocksDC.pcx" },
+ { "light_switch.xpos", "6" },
+ { "light_switch.ypos", "12" },
+ { "light_switch.frames", "1" },
+ { "light_switch.active", "RocksDC.pcx" },
+ { "light_switch.active.xpos", "7" },
+ { "light_switch.active.ypos", "12" },
+ { "light_switch.active.frames", "1" },
{ "timegate_wheel", "RocksDC.pcx" },
{ "timegate_wheel.xpos", "0" },
{ "nut.impact", "klumpf.wav" },
{ "dynamite.collecting", "pong.wav" },
{ "dynamite.dropping", "deng.wav" },
- { "dynamite.burning", "zisch.wav" },
+ { "dynamite.actice", "zisch.wav" },
{ "key.collecting", "pong.wav" },
{ "gate.passing", "gate.wav" },
{ "bug.moving", "klapper.wav" },
{ "dynabomb_sz.collecting", "pong.wav" },
{ "dynabomb_xl.collecting", "pong.wav" },
{ "dynabomb.dropping", "deng.wav" },
- { "dynabomb.burning", "zisch.wav" },
+ { "dynabomb.actice", "zisch.wav" },
{ "satellite.moving", SND_FILE_UNDEFINED },
{ "satellite.waiting", SND_FILE_UNDEFINED },
{ "satellite.pushing", "pusch.wav" },
#define IS_PLAYER(x,y) (ELEM_IS_PLAYER(StorePlayer[x][y]))
-#define IS_FREE(x,y) (Feld[x][y] == EL_LEERRAUM && !IS_PLAYER(x,y))
-#define IS_FREE_OR_PLAYER(x,y) (Feld[x][y] == EL_LEERRAUM)
+#define IS_FREE(x,y) (Feld[x][y] == EL_EMPTY && !IS_PLAYER(x,y))
+#define IS_FREE_OR_PLAYER(x,y) (Feld[x][y] == EL_EMPTY)
#define IS_MOVING(x,y) (MovPos[x][y] != 0)
#define IS_FALLING(x,y) (MovPos[x][y] != 0 && MovDir[x][y] == MV_DOWN)
#define IS_BLOCKED(x,y) (Feld[x][y] == EL_BLOCKED)
-#define EL_CHANGED(e) ((e) == EL_FELSBROCKEN ? EL_EDELSTEIN : \
+#define EL_CHANGED(e) ((e) == EL_FELSBROCKEN ? EL_EMERALD : \
(e) == EL_BD_ROCK ? EL_EDELSTEIN_BD : \
- (e) == EL_EDELSTEIN ? EL_DIAMANT : \
- (e) == EL_EDELSTEIN_GELB ? EL_DIAMANT : \
- (e) == EL_EDELSTEIN_ROT ? EL_DIAMANT : \
- (e) == EL_EDELSTEIN_LILA ? EL_DIAMANT : \
+ (e) == EL_EMERALD ? EL_DIAMOND : \
+ (e) == EL_EDELSTEIN_YELLOW ? EL_DIAMOND : \
+ (e) == EL_EDELSTEIN_RED ? EL_DIAMOND : \
+ (e) == EL_EDELSTEIN_PURPLE ? EL_DIAMOND : \
EL_FELSBROCKEN)
#define EL_CHANGED2(e) ((e) == EL_FELSBROCKEN ? EL_EDELSTEIN_BD : \
(e) == EL_BD_ROCK ? EL_EDELSTEIN_BD : \
#define MICRO_MORE_PER_LINE 16
/* game elements:
-** 0 - 499: real elements, stored in level file
-** 500 - 699: flag elements, only used at runtime
+** 0 <= element < xxx: real elements, stored in level file
+** xxx <= element < yyy: flag elements, only used at runtime
*/
/* "real" level elements */
-#define EL_LEERRAUM 0
-#define EL_ERDREICH 1
-#define EL_MAUERWERK 2
-#define EL_FELSBODEN 3
-#define EL_FELSBROCKEN 4
-#define EL_SCHLUESSEL 5
-#define EL_EDELSTEIN 6
-#define EL_AUSGANG_ZU 7
-#define EL_SPIELFIGUR 8
-#define EL_KAEFER 9
-#define EL_FLIEGER 10
-#define EL_MAMPFER 11
+#define EL_EMPTY_SPACE 0
+#define EL_EMPTY EL_EMPTY_SPACE
+#define EL_SAND 1
+#define EL_WALL 2
+#define EL_WALL_CRUMBLED 3
+#define EL_ROCK 4
+#define EL_KEY 5
+#define EL_EMERALD 6
+#define EL_EXIT_CLOSED 7
+#define EL_PLAYER 8
+#define EL_BUG 9
+#define EL_SPACESHIP 10
+#define EL_YAMYAM 11
#define EL_ROBOT 12
-#define EL_BETON 13
-#define EL_DIAMANT 14
-#define EL_AMOEBE_TOT 15
-#define EL_MORAST_LEER 16
-#define EL_MORAST_VOLL 17
-#define EL_TROPFEN 18
-#define EL_BOMBE 19
-#define EL_MAGIC_WALL_OFF 20
+#define EL_STEELWALL 13
+#define EL_DIAMOND 14
+#define EL_AMOEBA_DEAD 15
+#define EL_QUICKSAND_EMPTY 16
+#define EL_QUICKSAND_FULL 17
+#define EL_AMOEBA_DROP 18
+#define EL_BOMB 19
+#define EL_MAGIC_WALL 20
#define EL_SPEED_PILL 21
-#define EL_SALZSAEURE 22
-#define EL_AMOEBE_NASS 23
-#define EL_AMOEBE_NORM 24
-#define EL_KOKOSNUSS 25
-#define EL_LIFE 26
-#define EL_LIFE_ASYNC 27
+#define EL_ACID 22
+#define EL_AMOEBA_WET 23
+#define EL_AMOEBA_DRY 24
+#define EL_NUT 25
+#define EL_GAMEOFLIFE 26
+#define EL_BIOMAZE 27
#define EL_DYNAMITE_ACTIVE 28
-#define EL_BADEWANNE 29
-#define EL_ABLENK_AUS 30
-#define EL_ABLENK_EIN 31
-#define EL_SCHLUESSEL1 32
-#define EL_SCHLUESSEL2 33
-#define EL_SCHLUESSEL3 34
-#define EL_SCHLUESSEL4 35
-#define EL_PFORTE1 36
-#define EL_PFORTE2 37
-#define EL_PFORTE3 38
-#define EL_PFORTE4 39
-#define EL_PFORTE1X 40
-#define EL_PFORTE2X 41
-#define EL_PFORTE3X 42
-#define EL_PFORTE4X 43
-#define EL_DYNAMITE_INACTIVE 44
+#define EL_STONEBLOCK 29
+#define EL_ROBOT_WHEEL 30
+#define EL_ROBOT_WHEEL_ACTIVE 31
+#define EL_KEY1 32
+#define EL_KEY2 33
+#define EL_KEY3 34
+#define EL_KEY4 35
+#define EL_GATE1 36
+#define EL_GATE2 37
+#define EL_GATE3 38
+#define EL_GATE4 39
+#define EL_GATE1_GRAY 40
+#define EL_GATE2_GRAY 41
+#define EL_GATE3_GRAY 42
+#define EL_GATE4_GRAY 43
+#define EL_DYNAMITE 44
#define EL_PACMAN 45
-#define EL_UNSICHTBAR 46
-#define EL_BIRNE_AUS 47
-#define EL_BIRNE_EIN 48
-#define EL_ERZ_EDEL 49
-#define EL_ERZ_DIAM 50
-#define EL_AMOEBE_VOLL 51
-#define EL_AMOEBE_BD 52
-#define EL_ZEIT_VOLL 53
-#define EL_ZEIT_LEER 54
+#define EL_INVISIBLE_WALL 46
+#define EL_LAMP 47
+#define EL_LAMP_ACTIVE 48
+#define EL_WALL_EMERALD 49
+#define EL_WALL_DIAMOND 50
+#define EL_AMOEBA_FULL 51
+#define EL_BD_AMOEBA 52
+#define EL_TIME_ORB_FULL 53
+#define EL_TIME_ORB_EMPTY 54
#define EL_MAUER_LEBT 55
#define EL_EDELSTEIN_BD 56
-#define EL_EDELSTEIN_GELB 57
-#define EL_ERZ_EDEL_BD 58
-#define EL_ERZ_EDEL_GELB 59
-#define EL_MAMPFER2 60
+#define EL_EDELSTEIN_YELLOW 57
+#define EL_WALL_BD_DIAMOND 58
+#define EL_WALL_EMERALD_YELLOW 59
+#define EL_DARK_YAMYAM 60
#define EL_MAGIC_WALL_BD_OFF 61
#define EL_INVISIBLE_STEEL 62
#define EL_SPIELER2 81
#define EL_SPIELER3 82
#define EL_SPIELER4 83
-#define EL_KAEFER_RIGHT 84
-#define EL_KAEFER_UP 85
-#define EL_KAEFER_LEFT 86
-#define EL_KAEFER_DOWN 87
-#define EL_FLIEGER_RIGHT 88
-#define EL_FLIEGER_UP 89
-#define EL_FLIEGER_LEFT 90
-#define EL_FLIEGER_DOWN 91
+#define EL_BUG_RIGHT 84
+#define EL_BUG_UP 85
+#define EL_BUG_LEFT 86
+#define EL_BUG_DOWN 87
+#define EL_SPACESHIP_RIGHT 88
+#define EL_SPACESHIP_UP 89
+#define EL_SPACESHIP_LEFT 90
+#define EL_SPACESHIP_DOWN 91
#define EL_PACMAN_RIGHT 92
#define EL_PACMAN_UP 93
#define EL_PACMAN_LEFT 94
#define EL_PACMAN_DOWN 95
-#define EL_EDELSTEIN_ROT 96
-#define EL_EDELSTEIN_LILA 97
-#define EL_ERZ_EDEL_ROT 98
-#define EL_ERZ_EDEL_LILA 99
-#define EL_BADEWANNE1 100
-#define EL_BADEWANNE2 101
-#define EL_BADEWANNE3 102
-#define EL_BADEWANNE4 103
-#define EL_BADEWANNE5 104
+#define EL_EDELSTEIN_RED 96
+#define EL_EDELSTEIN_PURPLE 97
+#define EL_WALL_EMERALD_RED 98
+#define EL_WALL_EMERALD_PURPLE 99
+#define EL_ACIDPOOL_TOPLEFT 100
+#define EL_ACIDPOOL_TOPRIGHT 101
+#define EL_ACIDPOOL_BOTTOMLEFT 102
+#define EL_ACIDPOOL_BOTTOM 103
+#define EL_ACIDPOOL_BOTTOMRIGHT 104
#define EL_BD_WALL 105
#define EL_BD_ROCK 106
-#define EL_AUSGANG_AUF 107
+#define EL_EXIT_OPEN 107
#define EL_BLACK_ORB 108
#define EL_AMOEBA2DIAM 109
#define EL_MOLE 110
#define EL_SCHWEIN 117
#define EL_DRACHE 118
-#define EL_EM_KEY_1_FILE 119
+#define EL_EM_KEY1_FILE 119
#define EL_CHAR_START 120
#define EL_CHAR_ASCII0 (EL_CHAR_START-32)
#define EL_MAUER_Y 201
#define EL_MAUER_XY 202
-#define EL_EM_GATE_1 203
-#define EL_EM_GATE_2 204
-#define EL_EM_GATE_3 205
-#define EL_EM_GATE_4 206
+#define EL_EM_GATE1 203
+#define EL_EM_GATE2 204
+#define EL_EM_GATE3 205
+#define EL_EM_GATE4 206
-#define EL_EM_KEY_2_FILE 207
-#define EL_EM_KEY_3_FILE 208
-#define EL_EM_KEY_4_FILE 209
+#define EL_EM_KEY2_FILE 207
+#define EL_EM_KEY3_FILE 208
+#define EL_EM_KEY4_FILE 209
#define EL_SP_START 210
#define EL_SP_EMPTY (EL_SP_START + 0)
#define EL_SP_CHIP_LOWER (EL_SP_START + 39)
#define EL_SP_END (EL_SP_START + 39)
-#define EL_EM_GATE_1X 250
-#define EL_EM_GATE_2X 251
-#define EL_EM_GATE_3X 252
-#define EL_EM_GATE_4X 253
+#define EL_EM_GATE1_GRAY 250
+#define EL_EM_GATE2_GRAY 251
+#define EL_EM_GATE3_GRAY 252
+#define EL_EM_GATE4_GRAY 253
#define EL_UNUSED_254 254
#define EL_UNUSED_255 255
#define GFX_ACTION_IMPACT 9
#define GFX_ACTION_CRACKING 10
#define GFX_ACTION_ACTIVATING 11
-#define GFX_ACTION_BURNING 12
+#define GFX_ACTION_ACTIVE 12
#define GFX_ACTION_OTHER 13
#define NUM_GFX_ACTIONS 14
#define IMG_GATE3_GRAY 37
#define IMG_GATE4_GRAY 38
#define IMG_DYNAMITE 39
-#define IMG_DYNAMITE_BURNING 40
+#define IMG_DYNAMITE_ACTIVE 40
#define IMG_SPACESHIP_RIGHT 41
#define IMG_SPACESHIP_UP 42
#define IMG_SPACESHIP_LEFT 43
#define IMG_EXIT_OPENING 103
#define IMG_EXIT_OPEN 104
#define IMG_DARK_YAMYAM 105
-#define IMG_DYNABOMB_BURNING 106
+#define IMG_DYNABOMB_ACTIVE 106
#define IMG_DYNABOMB_NR 107
#define IMG_DYNABOMB_SZ 108
#define IMG_ARROW_LEFT 109
#define SND_NUT_IMPACT 54
#define SND_DYNAMITE_COLLECTING 55
#define SND_DYNAMITE_DROPPING 56
-#define SND_DYNAMITE_BURNING 57
+#define SND_DYNAMITE_ACTIVE 57
#define SND_KEY_COLLECTING 58
#define SND_GATE_PASSING 59
#define SND_BUG_MOVING 60
#define SND_DYNABOMB_SZ_COLLECTING 128
#define SND_DYNABOMB_XL_COLLECTING 129
#define SND_DYNABOMB_DROPPING 130
-#define SND_DYNABOMB_BURNING 131
+#define SND_DYNABOMB_ACTIVE 131
#define SND_SATELLITE_MOVING 132
#define SND_SATELLITE_WAITING 133
#define SND_SATELLITE_PUSHING 134
{
int x, y;
- BorderElement = EL_LEERRAUM;
+ BorderElement = EL_EMPTY;
- for(y=0; y<lev_fieldy && BorderElement == EL_LEERRAUM; y++)
+ for(y=0; y<lev_fieldy && BorderElement == EL_EMPTY; y++)
{
for(x=0; x<lev_fieldx; x++)
{
if (!IS_MASSIVE(Feld[x][y]))
- BorderElement = EL_BETON;
+ BorderElement = EL_STEELWALL;
if (y != 0 && y != lev_fieldy - 1 && x != lev_fieldx - 1)
x = lev_fieldx - 2;
if (Feld[next_jx][next_jy] == EL_SOKOBAN_FELD_VOLL)
DrawLevelElement(next_jx, next_jy, EL_SOKOBAN_FELD_LEER);
else
- DrawLevelElement(next_jx, next_jy, EL_LEERRAUM);
+ DrawLevelElement(next_jx, next_jy, EL_EMPTY);
}
else
DrawLevelField(next_jx, next_jy);
else if (!IS_ACTIVE_BOMB(element))
DrawLevelField(jx, jy);
else
- DrawLevelElement(jx, jy, EL_LEERRAUM);
+ DrawLevelElement(jx, jy, EL_EMPTY);
/* draw player himself */
int element = Feld[next_jx][next_jy];
int graphic = el2gfx(element);
- if ((element == EL_FELSBROCKEN ||
+ if ((element == EL_ROCK ||
element == EL_SP_ZONK ||
element == EL_BD_ROCK) && sxx)
{
int phase2 = phase8 / 4;
int dir = MovDir[ux][uy];
- if (element == EL_PACMAN || element == EL_KAEFER || element == EL_FLIEGER)
+ if (element == EL_PACMAN || element == EL_BUG || element == EL_SPACESHIP)
{
graphic += 1 * !phase2;
{
graphic = GFX_SONDE_START + getGraphicAnimationPhase(8, 2, ANIM_NORMAL);
}
- else if (element == EL_SALZSAEURE)
+ else if (element == EL_ACID)
{
graphic = GFX_GEBLUBBER + getGraphicAnimationPhase(4, 10, ANIM_NORMAL);
}
{
graphic += phase4;
}
- else if ((element == EL_FELSBROCKEN ||
+ else if ((element == EL_ROCK ||
element == EL_SP_ZONK ||
element == EL_BD_ROCK ||
element == EL_SP_INFOTRON ||
{
if (uy >= lev_fieldy-1 || !IS_BELT(Feld[ux][uy+1]))
{
- if (element == EL_FELSBROCKEN ||
+ if (element == EL_ROCK ||
element == EL_SP_ZONK ||
element == EL_BD_ROCK)
{
}
else if (IS_AMOEBOID(element) || element == EL_AMOEBA_DRIPPING)
{
- graphic = (element == EL_AMOEBE_TOT ? GFX_AMOEBE_TOT : GFX_AMOEBE_LEBT);
+ graphic = (element == EL_AMOEBA_DEAD ? GFX_AMOEBE_TOT : GFX_AMOEBE_LEBT);
graphic += (x + 2 * y + 4) % 4;
}
else if (element == EL_MAUER_LEBT)
graphic = GFX_MAUER_L;
}
else if ((element == EL_INVISIBLE_STEEL ||
- element == EL_UNSICHTBAR ||
+ element == EL_INVISIBLE_WALL ||
element == EL_SAND_INVISIBLE) && game.light_time_left)
{
graphic = (element == EL_INVISIBLE_STEEL ? GFX_INVISIBLE_STEEL_ON :
- element == EL_UNSICHTBAR ? GFX_UNSICHTBAR_ON :
+ element == EL_INVISIBLE_WALL ? GFX_UNSICHTBAR_ON :
GFX_SAND_INVISIBLE_ON);
}
;
}
#if 0
- else if (element == EL_PACMAN || element == EL_KAEFER ||
- element == EL_FLIEGER)
+ else if (element == EL_PACMAN || element == EL_BUG ||
+ element == EL_SPACESHIP)
{
graphic += 1 * !phase2;
graphic = GFX_SONDE_START + getNewGraphicAnimationFrame(graphic, move_pos);
#endif
}
- else if (element == EL_SALZSAEURE)
+ else if (element == EL_ACID)
{
#if 1
graphic = GFX_GEBLUBBER + getGraphicAnimationPhase(4, 10, ANIM_NORMAL);
{
graphic += phase4;
}
- else if ((element == EL_FELSBROCKEN ||
+ else if ((element == EL_ROCK ||
element == EL_SP_ZONK ||
element == EL_BD_ROCK ||
element == EL_SP_INFOTRON ||
{
if (uy >= lev_fieldy-1 || !IS_BELT(Feld[ux][uy+1]))
{
- if (element == EL_FELSBROCKEN ||
+ if (element == EL_ROCK ||
element == EL_SP_ZONK ||
element == EL_BD_ROCK)
{
}
else if (IS_AMOEBOID(element) || element == EL_AMOEBA_DRIPPING)
{
- graphic = (element == EL_AMOEBE_TOT ? GFX_AMOEBE_TOT : GFX_AMOEBE_LEBT);
+ graphic = (element == EL_AMOEBA_DEAD ? GFX_AMOEBE_TOT : GFX_AMOEBE_LEBT);
graphic += (x + 2 * y + 4) % 4;
}
else if (element == EL_MAUER_LEBT)
graphic = GFX_MAUER_L;
}
else if ((element == EL_INVISIBLE_STEEL ||
- element == EL_UNSICHTBAR ||
+ element == EL_INVISIBLE_WALL ||
element == EL_SAND_INVISIBLE) && game.light_time_left)
{
graphic = (element == EL_INVISIBLE_STEEL ? GFX_INVISIBLE_STEEL_ON :
- element == EL_UNSICHTBAR ? GFX_UNSICHTBAR_ON :
+ element == EL_INVISIBLE_WALL ? GFX_UNSICHTBAR_ON :
GFX_SAND_INVISIBLE_ON);
}
element = Feld[ux][uy];
- if (element == EL_ERDREICH ||
+ if (element == EL_SAND ||
element == EL_LANDMINE ||
element == EL_TRAP_INACTIVE ||
element == EL_TRAP_ACTIVE)
uxx = ux + xy[i][0];
uyy = uy + xy[i][1];
if (!IN_LEV_FIELD(uxx, uyy))
- element = EL_BETON;
+ element = EL_STEELWALL;
else
element = Feld[uxx][uyy];
- if (element == EL_ERDREICH ||
+ if (element == EL_SAND ||
element == EL_LANDMINE ||
element == EL_TRAP_INACTIVE ||
element == EL_TRAP_ACTIVE)
uyy = uy + xy[i][1];
if (!IN_LEV_FIELD(uxx, uyy) ||
- (Feld[uxx][uyy] != EL_ERDREICH &&
+ (Feld[uxx][uyy] != EL_SAND &&
Feld[uxx][uyy] != EL_LANDMINE &&
Feld[uxx][uyy] != EL_TRAP_INACTIVE &&
Feld[uxx][uyy] != EL_TRAP_ACTIVE) ||
else
DrawScreenElementShifted(x, y, 0, MovPos[ux][uy], content, cut_mode);
- if (content == EL_SALZSAEURE)
- DrawLevelElementThruMask(ux, uy + 1, EL_SALZSAEURE);
+ if (content == EL_ACID)
+ DrawLevelElementThruMask(ux, uy + 1, EL_ACID);
}
else if (IS_BLOCKED(ux, uy))
{
else
DrawNewScreenElementShifted(x, y, 0, MovPos[ux][uy], content, cut_mode);
- if (content == EL_SALZSAEURE)
- DrawNewLevelElementThruMask(ux, uy + 1, EL_SALZSAEURE);
+ if (content == EL_ACID)
+ DrawNewLevelElementThruMask(ux, uy + 1, EL_ACID);
}
else if (IS_BLOCKED(ux, uy))
{
{ GFX_VSTEEL_HORIZONTAL, GFX_ISTEEL_HORIZONTAL }
};
- steel_type = (BorderElement == EL_BETON ? 0 : 1);
+ steel_type = (BorderElement == EL_STEELWALL ? 0 : 1);
steel_position = (x == -1 && y == -1 ? 0 :
x == lev_fieldx && y == -1 ? 1 :
x == -1 && y == lev_fieldy ? 2 :
{
switch(element)
{
- case EL_QUICKSAND_FILLING: return EL_MORAST_VOLL;
- case EL_QUICKSAND_EMPTYING: return EL_MORAST_LEER;
+ case EL_QUICKSAND_FILLING: return EL_QUICKSAND_FULL;
+ case EL_QUICKSAND_EMPTYING: return EL_QUICKSAND_EMPTY;
case EL_MAGIC_WALL_FILLING: return EL_MAGIC_WALL_FULL;
case EL_MAGIC_WALL_EMPTYING: return EL_MAGIC_WALL_EMPTY;
case EL_MAGIC_WALL_BD_FILLING: return EL_MAGIC_WALL_BD_FULL;
case EL_MAGIC_WALL_BD_EMPTYING: return EL_MAGIC_WALL_BD_EMPTY;
- case EL_AMOEBA_DRIPPING: return EL_AMOEBE_NASS;
+ case EL_AMOEBA_DRIPPING: return EL_AMOEBA_WET;
default: return element;
}
switch(element)
{
case EL_LEERRAUM: return -1;
- case EL_ERDREICH: return GFX_ERDREICH;
- case EL_MAUERWERK: return GFX_MAUERWERK;
- case EL_FELSBODEN: return GFX_FELSBODEN;
- case EL_FELSBROCKEN: return GFX_FELSBROCKEN;
- case EL_SCHLUESSEL: return GFX_SCHLUESSEL;
- case EL_EDELSTEIN: return GFX_EDELSTEIN;
- case EL_AUSGANG_ZU: return GFX_AUSGANG_ZU;
+ case EL_SAND: return GFX_ERDREICH;
+ case EL_WALL: return GFX_MAUERWERK;
+ case EL_WALL_CRUMBLED: return GFX_FELSBODEN;
+ case EL_ROCK: return GFX_FELSBROCKEN;
+ case EL_KEY: return GFX_SCHLUESSEL;
+ case EL_EMERALD: return GFX_EDELSTEIN;
+ case EL_EXIT_CLOSED: return GFX_AUSGANG_ZU;
case EL_AUSGANG_ACT: return GFX_AUSGANG_ACT;
- case EL_AUSGANG_AUF: return GFX_AUSGANG_AUF;
- case EL_SPIELFIGUR: return GFX_SPIELFIGUR;
+ case EL_EXIT_OPEN: return GFX_AUSGANG_AUF;
+ case EL_PLAYER: return GFX_SPIELFIGUR;
case EL_SPIELER1: return GFX_SPIELER1;
case EL_SPIELER2: return GFX_SPIELER2;
case EL_SPIELER3: return GFX_SPIELER3;
case EL_SPIELER4: return GFX_SPIELER4;
- case EL_KAEFER: return GFX_KAEFER;
- case EL_KAEFER_RIGHT: return GFX_KAEFER_RIGHT;
- case EL_KAEFER_UP: return GFX_KAEFER_UP;
- case EL_KAEFER_LEFT: return GFX_KAEFER_LEFT;
- case EL_KAEFER_DOWN: return GFX_KAEFER_DOWN;
- case EL_FLIEGER: return GFX_FLIEGER;
- case EL_FLIEGER_RIGHT: return GFX_FLIEGER_RIGHT;
- case EL_FLIEGER_UP: return GFX_FLIEGER_UP;
- case EL_FLIEGER_LEFT: return GFX_FLIEGER_LEFT;
- case EL_FLIEGER_DOWN: return GFX_FLIEGER_DOWN;
+ case EL_BUG: return GFX_KAEFER;
+ case EL_BUG_RIGHT: return GFX_KAEFER_RIGHT;
+ case EL_BUG_UP: return GFX_KAEFER_UP;
+ case EL_BUG_LEFT: return GFX_KAEFER_LEFT;
+ case EL_BUG_DOWN: return GFX_KAEFER_DOWN;
+ case EL_SPACESHIP: return GFX_FLIEGER;
+ case EL_SPACESHIP_RIGHT: return GFX_FLIEGER_RIGHT;
+ case EL_SPACESHIP_UP: return GFX_FLIEGER_UP;
+ case EL_SPACESHIP_LEFT: return GFX_FLIEGER_LEFT;
+ case EL_SPACESHIP_DOWN: return GFX_FLIEGER_DOWN;
case EL_BUTTERFLY: return GFX_BUTTERFLY;
case EL_BUTTERFLY_RIGHT: return GFX_BUTTERFLY_RIGHT;
case EL_BUTTERFLY_UP: return GFX_BUTTERFLY_UP;
case EL_FIREFLY_UP: return GFX_FIREFLY_UP;
case EL_FIREFLY_LEFT: return GFX_FIREFLY_LEFT;
case EL_FIREFLY_DOWN: return GFX_FIREFLY_DOWN;
- case EL_MAMPFER: return GFX_MAMPFER;
+ case EL_YAMYAM: return GFX_MAMPFER;
case EL_ROBOT: return GFX_ROBOT;
- case EL_BETON: return GFX_BETON;
- case EL_DIAMANT: return GFX_DIAMANT;
- case EL_MORAST_LEER: return GFX_MORAST_LEER;
- case EL_MORAST_VOLL: return GFX_MORAST_VOLL;
+ case EL_STEELWALL: return GFX_BETON;
+ case EL_DIAMOND: return GFX_DIAMANT;
+ case EL_QUICKSAND_EMPTY: return GFX_MORAST_LEER;
+ case EL_QUICKSAND_FULL: return GFX_MORAST_VOLL;
case EL_QUICKSAND_EMPTYING: return GFX_MORAST_LEER;
- case EL_TROPFEN: return GFX_TROPFEN;
- case EL_BOMBE: return GFX_BOMBE;
- case EL_MAGIC_WALL_OFF: return GFX_MAGIC_WALL_OFF;
+ case EL_AMOEBA_DROP: return GFX_TROPFEN;
+ case EL_BOMB: return GFX_BOMBE;
+ case EL_MAGIC_WALL: return GFX_MAGIC_WALL_OFF;
case EL_MAGIC_WALL_EMPTY: return GFX_MAGIC_WALL_EMPTY;
case EL_MAGIC_WALL_EMPTYING:return GFX_MAGIC_WALL_EMPTY;
case EL_MAGIC_WALL_FULL: return GFX_MAGIC_WALL_FULL;
case EL_MAGIC_WALL_DEAD: return GFX_MAGIC_WALL_DEAD;
- case EL_SALZSAEURE: return GFX_SALZSAEURE;
- case EL_AMOEBE_TOT: return GFX_AMOEBE_TOT;
- case EL_AMOEBE_NASS: return GFX_AMOEBE_NASS;
- case EL_AMOEBE_NORM: return GFX_AMOEBE_NORM;
- case EL_AMOEBE_VOLL: return GFX_AMOEBE_VOLL;
- case EL_AMOEBE_BD: return GFX_AMOEBE_BD;
+ case EL_ACID: return GFX_SALZSAEURE;
+ case EL_AMOEBA_DEAD: return GFX_AMOEBE_TOT;
+ case EL_AMOEBA_WET: return GFX_AMOEBE_NASS;
+ case EL_AMOEBA_DRY: return GFX_AMOEBE_NORM;
+ case EL_AMOEBA_FULL: return GFX_AMOEBE_VOLL;
+ case EL_BD_AMOEBA: return GFX_AMOEBE_BD;
case EL_AMOEBA2DIAM: return GFX_AMOEBA2DIAM;
case EL_AMOEBA_DRIPPING: return GFX_AMOEBE_NASS;
- case EL_KOKOSNUSS: return GFX_KOKOSNUSS;
- case EL_LIFE: return GFX_LIFE;
- case EL_LIFE_ASYNC: return GFX_LIFE_ASYNC;
+ case EL_NUT: return GFX_KOKOSNUSS;
+ case EL_GAMEOFLIFE: return GFX_LIFE;
+ case EL_BIOMAZE: return GFX_LIFE_ASYNC;
case EL_DYNAMITE_ACTIVE: return GFX_DYNAMIT;
case EL_BADEWANNE: return GFX_BADEWANNE;
- case EL_BADEWANNE1: return GFX_BADEWANNE1;
- case EL_BADEWANNE2: return GFX_BADEWANNE2;
- case EL_BADEWANNE3: return GFX_BADEWANNE3;
- case EL_BADEWANNE4: return GFX_BADEWANNE4;
- case EL_BADEWANNE5: return GFX_BADEWANNE5;
- case EL_ABLENK_AUS: return GFX_ABLENK_AUS;
- case EL_ABLENK_EIN: return GFX_ABLENK_EIN;
- case EL_SCHLUESSEL1: return GFX_SCHLUESSEL1;
- case EL_SCHLUESSEL2: return GFX_SCHLUESSEL2;
- case EL_SCHLUESSEL3: return GFX_SCHLUESSEL3;
- case EL_SCHLUESSEL4: return GFX_SCHLUESSEL4;
- case EL_PFORTE1: return GFX_PFORTE1;
- case EL_PFORTE2: return GFX_PFORTE2;
- case EL_PFORTE3: return GFX_PFORTE3;
- case EL_PFORTE4: return GFX_PFORTE4;
- case EL_PFORTE1X: return GFX_PFORTE1X;
- case EL_PFORTE2X: return GFX_PFORTE2X;
- case EL_PFORTE3X: return GFX_PFORTE3X;
- case EL_PFORTE4X: return GFX_PFORTE4X;
- case EL_DYNAMITE_INACTIVE: return GFX_DYNAMIT_AUS;
+ case EL_ACIDPOOL_TOPLEFT: return GFX_BADEWANNE1;
+ case EL_ACIDPOOL_TOPRIGHT: return GFX_BADEWANNE2;
+ case EL_ACIDPOOL_BOTTOMLEFT:return GFX_BADEWANNE3;
+ case EL_ACIDPOOL_BOTTOM: return GFX_BADEWANNE4;
+ case EL_ACIDPOOL_BOTTOMRIGHT:return GFX_BADEWANNE5;
+ case EL_ROBOT_WHEEL: return GFX_ABLENK_AUS;
+ case EL_ROBOT_WHEEL_ACTIVE: return GFX_ABLENK_EIN;
+ case EL_KEY1: return GFX_SCHLUESSEL1;
+ case EL_KEY2: return GFX_SCHLUESSEL2;
+ case EL_KEY3: return GFX_SCHLUESSEL3;
+ case EL_KEY4: return GFX_SCHLUESSEL4;
+ case EL_GATE1: return GFX_PFORTE1;
+ case EL_GATE2: return GFX_PFORTE2;
+ case EL_GATE3: return GFX_PFORTE3;
+ case EL_GATE4: return GFX_PFORTE4;
+ case EL_GATE1X: return GFX_PFORTE1X;
+ case EL_GATE2X: return GFX_PFORTE2X;
+ case EL_GATE3X: return GFX_PFORTE3X;
+ case EL_GATE4X: return GFX_PFORTE4X;
+ case EL_DYNAMITE: return GFX_DYNAMIT_AUS;
case EL_PACMAN: return GFX_PACMAN;
case EL_PACMAN_RIGHT: return GFX_PACMAN_RIGHT;
case EL_PACMAN_UP: return GFX_PACMAN_UP;
case EL_PACMAN_LEFT: return GFX_PACMAN_LEFT;
case EL_PACMAN_DOWN: return GFX_PACMAN_DOWN;
- case EL_UNSICHTBAR: return GFX_UNSICHTBAR;
- case EL_ERZ_EDEL: return GFX_ERZ_EDEL;
- case EL_ERZ_DIAM: return GFX_ERZ_DIAM;
- case EL_BIRNE_AUS: return GFX_BIRNE_AUS;
- case EL_BIRNE_EIN: return GFX_BIRNE_EIN;
- case EL_ZEIT_VOLL: return GFX_ZEIT_VOLL;
- case EL_ZEIT_LEER: return GFX_ZEIT_LEER;
+ case EL_INVISIBLE_WALL: return GFX_UNSICHTBAR;
+ case EL_WALL_EDEL: return GFX_ERZ_EDEL;
+ case EL_WALL_DIAMOND: return GFX_ERZ_DIAM;
+ case EL_LAMP: return GFX_BIRNE_AUS;
+ case EL_LAMP_ACTIVE: return GFX_BIRNE_EIN;
+ case EL_TIME_ORB_FULL: return GFX_ZEIT_VOLL;
+ case EL_TIME_ORB_EMPTY: return GFX_ZEIT_LEER;
case EL_MAUER_LEBT: return GFX_MAUER_LEBT;
case EL_MAUER_X: return GFX_MAUER_X;
case EL_MAUER_Y: return GFX_MAUER_Y;
case EL_MAUER_XY: return GFX_MAUER_XY;
- case EL_EDELSTEIN_BD: return GFX_EDELSTEIN_BD;
- case EL_EDELSTEIN_GELB: return GFX_EDELSTEIN_GELB;
- case EL_EDELSTEIN_ROT: return GFX_EDELSTEIN_ROT;
- case EL_EDELSTEIN_LILA: return GFX_EDELSTEIN_LILA;
- case EL_ERZ_EDEL_BD: return GFX_ERZ_EDEL_BD;
- case EL_ERZ_EDEL_GELB: return GFX_ERZ_EDEL_GELB;
- case EL_ERZ_EDEL_ROT: return GFX_ERZ_EDEL_ROT;
- case EL_ERZ_EDEL_LILA: return GFX_ERZ_EDEL_LILA;
- case EL_MAMPFER2: return GFX_MAMPFER2;
+ case EL_EMERALD_BD: return GFX_EDELSTEIN_BD;
+ case EL_EMERALD_YELLOW: return GFX_EDELSTEIN_GELB;
+ case EL_EMERALD_RED: return GFX_EDELSTEIN_ROT;
+ case EL_EMERALD_PURPLE: return GFX_EDELSTEIN_LILA;
+ case EL_WALL_BD_DIAMOND: return GFX_ERZ_EDEL_BD;
+ case EL_WALL_EDEL_YELLOW: return GFX_ERZ_EDEL_GELB;
+ case EL_WALL_EDEL_RED: return GFX_ERZ_EDEL_ROT;
+ case EL_WALL_EDEL_PURPLE: return GFX_ERZ_EDEL_LILA;
+ case EL_DARK_YAMYAM: return GFX_MAMPFER2;
case EL_MAGIC_WALL_BD_OFF: return GFX_MAGIC_WALL_BD_OFF;
case EL_MAGIC_WALL_BD_EMPTY:return GFX_MAGIC_WALL_BD_EMPTY;
case EL_MAGIC_WALL_BD_EMPTYING:return GFX_MAGIC_WALL_BD_EMPTY;
/* ^^^^^^^^^^ non-standard position in supaplex graphic set! */
case EL_INVISIBLE_STEEL: return GFX_INVISIBLE_STEEL;
case EL_BLACK_ORB: return GFX_BLACK_ORB;
- case EL_EM_GATE_1: return GFX_EM_GATE_1;
- case EL_EM_GATE_2: return GFX_EM_GATE_2;
- case EL_EM_GATE_3: return GFX_EM_GATE_3;
- case EL_EM_GATE_4: return GFX_EM_GATE_4;
- case EL_EM_GATE_1X: return GFX_EM_GATE_1X;
- case EL_EM_GATE_2X: return GFX_EM_GATE_2X;
- case EL_EM_GATE_3X: return GFX_EM_GATE_3X;
- case EL_EM_GATE_4X: return GFX_EM_GATE_4X;
+ case EL_EM_GATE1: return GFX_EM_GATE_1;
+ case EL_EM_GATE2: return GFX_EM_GATE_2;
+ case EL_EM_GATE3: return GFX_EM_GATE_3;
+ case EL_EM_GATE4: return GFX_EM_GATE_4;
+ case EL_EM_GATE1_GRAY: return GFX_EM_GATE_1X;
+ case EL_EM_GATE2_GRAY: return GFX_EM_GATE_2X;
+ case EL_EM_GATE3_GRAY: return GFX_EM_GATE_3X;
+ case EL_EM_GATE4_GRAY: return GFX_EM_GATE_4X;
case EL_EM_KEY_1_FILE: return GFX_EM_KEY_1;
case EL_EM_KEY_2_FILE: return GFX_EM_KEY_2;
case EL_EM_KEY_3_FILE: return GFX_EM_KEY_3;