214 |
0, // 0x14 |
0, // 0x14 |
215 |
0, // 0x15 |
0, // 0x15 |
216 |
0, // 0x16 |
0, // 0x16 |
217 |
0, // 0x17 |
"it-floppy", // 0x17 |
218 |
0, // 0x18 |
0, // 0x18 |
219 |
0, // 0x19 |
0, // 0x19 |
220 |
0, // 0x1a |
0, // 0x1a |
331 |
0, // 0x24 |
0, // 0x24 |
332 |
0, // 0x25 |
0, // 0x25 |
333 |
0, // 0x26 |
0, // 0x26 |
334 |
"st-wood", // 0x27 |
0, // 0x27 |
335 |
"st-switch", // 0x28 |
"st-switch", // 0x28 |
336 |
0, // 0x29 |
0, // 0x29 |
337 |
0, // 0x2a |
0, // 0x2a |
349 |
0, // 0x36 |
0, // 0x36 |
350 |
0, // 0x37 |
0, // 0x37 |
351 |
0, // 0x38 |
0, // 0x38 |
352 |
0, // 0x39 |
"st-magic", // 0x39 |
353 |
0, // 0x3a |
0, // 0x3a |
354 |
0, // 0x3b |
0, // 0x3b |
355 |
0, // 0x3c |
0, // 0x3c |
492 |
case OxydVersion_PerOxyd: |
case OxydVersion_PerOxyd: |
493 |
break; |
break; |
494 |
case OxydVersion_OxydExtra: |
case OxydVersion_OxydExtra: |
495 |
|
stone_map[0x27] = "st-wood"; |
496 |
|
stone_map[0x3c] = "st-stoneimpulse"; |
497 |
|
stone_map[0x76] = "st-invisible"; |
498 |
break; |
break; |
499 |
case OxydVersion_OxydMagnum: |
case OxydVersion_OxydMagnum: |
|
break; |
|
500 |
case OxydVersion_OxydMagnumGold: |
case OxydVersion_OxydMagnumGold: |
501 |
|
floor_map[0x34] = "fl-brick"; |
502 |
|
floor_map[0x35] = "fl-brick"; |
503 |
|
floor_map[0x38] = "fl-brick"; |
504 |
|
floor_map[0x3c] = "fl-leaves"; |
505 |
|
|
506 |
|
item_map[0x25] = "it-seed"; |
507 |
|
|
508 |
|
stone_map[0x1a] = "st-grate1"; |
509 |
|
stone_map[0x1f] = "st-brick"; |
510 |
|
stone_map[0x23] = "st-woven"; |
511 |
|
stone_map[0x24] = "st-marble"; |
512 |
|
stone_map[0x25] = "st-glass1"; |
513 |
|
stone_map[0x27] = "st-glass1"; |
514 |
|
stone_map[0x2b] = "st-wood"; |
515 |
|
stone_map[0x68] = "st-bombs"; |
516 |
|
stone_map[0x6c] = "st-shogun-s"; |
517 |
|
stone_map[0x6d] = "st-stoneimpulse"; |
518 |
|
stone_map[0x8c] = "st-white1"; |
519 |
|
stone_map[0x8d] = "st-black1"; |
520 |
|
stone_map[0x8e] = "st-yinyang2"; |
521 |
|
stone_map[0x93] = "st-yinyang1"; |
522 |
|
stone_map[0xa4] = "st-stoneimpulse-hollow"; |
523 |
break; |
break; |
524 |
default: |
default: |
525 |
break; |
break; |
553 |
"Oxyd 1", "Oxyd magnum", "Magnum Gold", "Per.Oxyd", "Oxyd extra" |
"Oxyd 1", "Oxyd magnum", "Magnum Gold", "Per.Oxyd", "Oxyd extra" |
554 |
}; |
}; |
555 |
static char *names2p[] = { |
static char *names2p[] = { |
556 |
"Oxyd 1 (2p)", "Oxyd magnum (2p)", "", "Per.Oxyd (2p)", "Oxyd extra (2p)" |
"Oxyd 1 (2p)", "", "", "Per.Oxyd (2p)", "Oxyd extra (2p)" |
557 |
}; |
}; |
558 |
return level_index[0]>99 ? names2p[m_version] : names1p[m_version]; |
return level_index[0]>99 ? names2p[m_version] : names1p[m_version]; |
559 |
} |
} |
567 |
for (unsigned y=0; y<grid.getHeight(); ++y) { |
for (unsigned y=0; y<grid.getHeight(); ++y) { |
568 |
for (unsigned x=0; x<grid.getWidth(); ++x) { |
for (unsigned x=0; x<grid.getWidth(); ++x) { |
569 |
const char *name = floor_map[grid.get(x,y)]; |
const char *name = floor_map[grid.get(x,y)]; |
570 |
|
if( name == 0) |
571 |
|
fprintf(stderr, "Unknown floor %X\n",grid.get(x,y)); |
572 |
Floor *fl = MakeFloor(name ? name : "fl-dummy"); |
Floor *fl = MakeFloor(name ? name : "fl-dummy"); |
573 |
SetFloor (GridPos(x, y), fl); |
SetFloor (GridPos(x, y), fl); |
574 |
} |
} |
593 |
it = MakeItem ("it-document"); |
it = MakeItem ("it-document"); |
594 |
it->set_attrib ("text", Value(level.getNoteText(1, Language_English).c_str())); |
it->set_attrib ("text", Value(level.getNoteText(1, Language_English).c_str())); |
595 |
break; |
break; |
596 |
|
|
597 |
|
case 0x0d: it = MakeItem("it-crack"); |
598 |
|
it->set_attrib("type", "0"); |
599 |
|
break; |
600 |
|
case 0x0e: it = MakeItem("it-crack"); |
601 |
|
it->set_attrib("type", 1); |
602 |
|
break; |
603 |
|
case 0x0f: it = MakeItem("it-crack"); |
604 |
|
it->set_attrib("type", 2); |
605 |
|
break; |
606 |
|
case 0x10: it = MakeItem("it-crack"); |
607 |
|
it->set_attrib("type", 3); |
608 |
|
break; |
609 |
|
|
610 |
default: |
default: |
611 |
{ |
{ |
612 |
const char *name = item_map[type]; |
const char *name = item_map[type]; |
613 |
|
if( name == 0) |
614 |
|
fprintf(stderr, "Unknown item %X\n",type); |
615 |
it = MakeItem (name ? name : "it-dummy"); |
it = MakeItem (name ? name : "it-dummy"); |
616 |
} |
} |
617 |
} |
} |
701 |
default: |
default: |
702 |
{ |
{ |
703 |
const char *name = stone_map[type]; |
const char *name = stone_map[type]; |
704 |
|
if( name == 0) |
705 |
|
fprintf(stderr, "Unknown stone %X\n",type); |
706 |
st = MakeStone (name ? name : "st-dummy"); |
st = MakeStone (name ? name : "st-dummy"); |
707 |
} |
} |
708 |
} |
} |
920 |
|
|
921 |
if (twoplayers && oxyd_version == OxydVersion_OxydExtra) |
if (twoplayers && oxyd_version == OxydVersion_OxydExtra) |
922 |
return 0; |
return 0; |
923 |
|
|
924 |
|
if (twoplayers && oxyd_version == OxydVersion_OxydMagnum) |
925 |
|
return 0; |
926 |
|
|
927 |
if (twoplayers && oxyd_version == OxydVersion_OxydMagnumGold) |
if (twoplayers && oxyd_version == OxydVersion_OxydMagnumGold) |
928 |
return 0; |
return 0; |