X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Fgame_mm%2Fmm_main.c;h=7eafc2f592995da6b488956cbd1c875928e2bab2;hp=44ca0ad0830c88b252b1d8b57a2a786552183068;hb=14801844faf14be284c590b66f030c6bf7cea5c2;hpb=8cef7dc31f5b96c492079d59acab2cb1587b3c8c diff --git a/src/game_mm/mm_main.c b/src/game_mm/mm_main.c index 44ca0ad0..7eafc2f5 100644 --- a/src/game_mm/mm_main.c +++ b/src/game_mm/mm_main.c @@ -22,11 +22,20 @@ short Hit[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; short Box[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; short Angle[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; +short Frame[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; + unsigned int Elementeigenschaften[MAX_ELEMENTS]; +struct LaserInfo laser; + short LX,LY, XS,YS, ELX,ELY; short CT,Ct; +int dSX, dSY; +int cSX, cSY; +int cSX2, cSY2; +int cFX, cFY; + Pixel pen_fg, pen_bg, pen_ray, pen_magicolor[2]; int color_status; @@ -83,10 +92,10 @@ struct XY Step[16] = short Sign[16] = { - 0xA,0xF,0xB,0xF, - 0x3,0xF,0x7,0xF, - 0x5,0xF,0xD,0xF, - 0xC,0xF,0xE,0xF + 0xA, 0xF, 0xB, 0xF, + 0x3, 0xF, 0x7, 0xF, + 0x5, 0xF, 0xD, 0xF, + 0xC, 0xF, 0xE, 0xF }; char *element_info_mm[] = @@ -108,10 +117,10 @@ char *element_info_mm[] = "mirror (146.25\xb0)", "mirror (157.5\xb0)", "mirror (168.75\xb0)", - "fixed steel polarisator (0\xb0)", - "fixed steel polarisator (90\xb0)", - "fixed steel polarisator (45\xb0)", - "fixed steel polarisator (135\xb0)", /* 20 */ + "fixed steel polarizer (0\xb0)", + "fixed steel polarizer (90\xb0)", + "fixed steel polarizer (45\xb0)", + "fixed steel polarizer (135\xb0)", /* 20 */ "Gregor McDuffin (looking right)", "Gregor McDuffin (looking up)", "Gregor McDuffin (looking left)", @@ -189,47 +198,47 @@ char *element_info_mm[] = "amoeba wall", "wooden block", "gray ball", - "beamer (0\xb0)", - "beamer (22.5\xb0)", - "beamer (45\xb0)", /* 100 */ - "beamer (67.5\xb0)", - "beamer (90\xb0)", - "beamer (112.5\xb0)", - "beamer (135\xb0)", - "beamer (157.5\xb0)", - "beamer (180\xb0)", - "beamer (202.5\xb0)", - "beamer (225\xb0)", - "beamer (247.5\xb0)", - "beamer (270\xb0)", /* 110 */ - "beamer (292.5\xb0)", - "beamer (315\xb0)", - "beamer (337.5\xb0)", + "teleporter (0\xb0)", + "teleporter (22.5\xb0)", + "teleporter (45\xb0)", /* 100 */ + "teleporter (67.5\xb0)", + "teleporter (90\xb0)", + "teleporter (112.5\xb0)", + "teleporter (135\xb0)", + "teleporter (157.5\xb0)", + "teleporter (180\xb0)", + "teleporter (202.5\xb0)", + "teleporter (225\xb0)", + "teleporter (247.5\xb0)", + "teleporter (270\xb0)", /* 110 */ + "teleporter (292.5\xb0)", + "teleporter (315\xb0)", + "teleporter (337.5\xb0)", "fuse", "pac man (starts moving right)", "pac man (starts moving up)", "pac man (starts moving left)", "pac man (starts moving down)", - "polarisator (0\xb0)", - "polarisator (11.25\xb0)", /* 120 */ - "polarisator (22.5\xb0)", - "polarisator (33.75\xb0)", - "polarisator (45\xb0)", - "polarisator (56.25\xb0)", - "polarisator (67.5\xb0)", - "polarisator (78.75\xb0)", - "polarisator (90\xb0)", - "polarisator (101.25\xb0)", - "polarisator (112.5\xb0)", - "polarisator (123.75\xb0)", /* 130 */ - "polarisator (135\xb0)", - "polarisator (146.25\xb0)", - "polarisator (157.5\xb0)", - "polarisator (168.75\xb0)", - "two-way polarisator (0\xb0)", - "two-way polarisator (22.5\xb0)", - "two-way polarisator (45\xb0)", - "two-way polarisator (67.5\xb0)", + "polarizer (0\xb0)", + "polarizer (11.25\xb0)", /* 120 */ + "polarizer (22.5\xb0)", + "polarizer (33.75\xb0)", + "polarizer (45\xb0)", + "polarizer (56.25\xb0)", + "polarizer (67.5\xb0)", + "polarizer (78.75\xb0)", + "polarizer (90\xb0)", + "polarizer (101.25\xb0)", + "polarizer (112.5\xb0)", + "polarizer (123.75\xb0)", /* 130 */ + "polarizer (135\xb0)", + "polarizer (146.25\xb0)", + "polarizer (157.5\xb0)", + "polarizer (168.75\xb0)", + "two-way polarizer (0\xb0)", + "two-way polarizer (22.5\xb0)", + "two-way polarizer (45\xb0)", + "two-way polarizer (67.5\xb0)", "fixed mirror (0\xb0)", "fixed mirror (45\xb0)", /* 140 */ "fixed mirror (90\xb0)", @@ -237,15 +246,15 @@ char *element_info_mm[] = "reflecting stone lock", "key", "light bulb (dark)", - "ligh bulb (glowing)", + "light bulb (glowing)", "bonus ball", "reflecting stone block", "wooden lock", "extra energy ball (full)", /* 150 */ - "fixed wooden polarisator (0\xb0)", - "fixed wooden polarisator (90\xb0)", - "fixed wooden polarisator (45\xb0)", - "fixed wooden polarisator (135\xb0)", + "fixed wooden polarizer (0\xb0)", + "fixed wooden polarizer (90\xb0)", + "fixed wooden polarizer (45\xb0)", + "fixed wooden polarizer (135\xb0)", "extra energy ball (empty)", "unused", "unused", @@ -347,22 +356,22 @@ char *element_info_mm[] = "mirror (146.25\xb0)", "mirror (157.5\xb0)", "mirror (168.75\xb0)", - "fixed wooden polarisator (0\xb0)", - "fixed wooden polarisator (22.5\xb0)", - "fixed wooden polarisator (45\xb0)", - "fixed wooden polarisator (67.5\xb0)", - "fixed wooden polarisator (90\xb0)", /* 260 */ - "fixed wooden polarisator (112.5\xb0)", - "fixed wooden polarisator (135\xb0)", - "fixed wooden polarisator (157.5\xb0)", - "fixed steel polarisator (0\xb0)", - "fixed steel polarisator (22.5\xb0)", - "fixed steel polarisator (45\xb0)", - "fixed steel polarisator (67.5\xb0)", - "fixed steel polarisator (90\xb0)", - "fixed steel polarisator (112.5\xb0)", - "fixed steel polarisator (135\xb0)", /* 270 */ - "fixed steel polarisator (157.5\xb0)", + "fixed wooden polarizer (0\xb0)", + "fixed wooden polarizer (22.5\xb0)", + "fixed wooden polarizer (45\xb0)", + "fixed wooden polarizer (67.5\xb0)", + "fixed wooden polarizer (90\xb0)", /* 260 */ + "fixed wooden polarizer (112.5\xb0)", + "fixed wooden polarizer (135\xb0)", + "fixed wooden polarizer (157.5\xb0)", + "fixed steel polarizer (0\xb0)", + "fixed steel polarizer (22.5\xb0)", + "fixed steel polarizer (45\xb0)", + "fixed steel polarizer (67.5\xb0)", + "fixed steel polarizer (90\xb0)", + "fixed steel polarizer (112.5\xb0)", + "fixed steel polarizer (135\xb0)", /* 270 */ + "fixed steel polarizer (157.5\xb0)", "deflektor style wooden wall", "deflektor style wooden wall", "deflektor style wooden wall", @@ -431,90 +440,90 @@ char *element_info_mm[] = "rotating mirror (146.25\xb0)", "rotating mirror (157.5\xb0)", "rotating mirror (168.75\xb0)", - "rotating wooden polarisator (0\xb0)", /* 340 */ - "rotating wooden polarisator (22.5\xb0)", - "rotating wooden polarisator (45\xb0)", - "rotating wooden polarisator (67.5\xb0)", - "rotating wooden polarisator (90\xb0)", - "rotating wooden polarisator (112.5\xb0)", - "rotating wooden polarisator (135\xb0)", - "rotating wooden polarisator (157.5\xb0)", - "rotating steel polarisator (0\xb0)", - "rotating steel polarisator (22.5\xb0)", - "rotating steel polarisator (45\xb0)", /* 350 */ - "rotating steel polarisator (67.5\xb0)", - "rotating steel polarisator (90\xb0)", - "rotating steel polarisator (112.5\xb0)", - "rotating steel polarisator (135\xb0)", - "rotating steel polarisator (157.5\xb0)", - "red beamer (0\xb0)", - "red beamer (22.5\xb0)", - "red beamer (45\xb0)", - "red beamer (67.5\xb0)", - "red beamer (90\xb0)", /* 360 */ - "red beamer (112.5\xb0)", - "red beamer (135\xb0)", - "red beamer (157.5\xb0)", - "red beamer (180\xb0)", - "red beamer (202.5\xb0)", - "red beamer (225\xb0)", - "red beamer (247.5\xb0)", - "red beamer (270\xb0)", - "red beamer (292.5\xb0)", - "red beamer (315\xb0)", /* 370 */ - "red beamer (337.5\xb0)", - "yellow beamer (0\xb0)", - "yellow beamer (22.5\xb0)", - "yellow beamer (45\xb0)", - "yellow beamer (67.5\xb0)", - "yellow beamer (90\xb0)", - "yellow beamer (112.5\xb0)", - "yellow beamer (135\xb0)", - "yellow beamer (157.5\xb0)", - "yellow beamer (180\xb0)", /* 380 */ - "yellow beamer (202.5\xb0)", - "yellow beamer (225\xb0)", - "yellow beamer (247.5\xb0)", - "yellow beamer (270\xb0)", - "yellow beamer (292.5\xb0)", - "yellow beamer (315\xb0)", - "yellow beamer (337.5\xb0)", - "green beamer (0\xb0)", - "green beamer (22.5\xb0)", - "green beamer (45\xb0)", /* 390 */ - "green beamer (67.5\xb0)", - "green beamer (90\xb0)", - "green beamer (112.5\xb0)", - "green beamer (135\xb0)", - "green beamer (157.5\xb0)", - "green beamer (180\xb0)", - "green beamer (202.5\xb0)", - "green beamer (225\xb0)", - "green beamer (247.5\xb0)", - "green beamer (270\xb0)", /* 400 */ - "green beamer (292.5\xb0)", - "green beamer (315\xb0)", - "green beamer (337.5\xb0)", - "blue beamer (0\xb0)", - "blue beamer (22.5\xb0)", - "blue beamer (45\xb0)", - "blue beamer (67.5\xb0)", - "blue beamer (90\xb0)", - "blue beamer (112.5\xb0)", - "blue beamer (135\xb0)", /* 410 */ - "blue beamer (157.5\xb0)", - "blue beamer (180\xb0)", - "blue beamer (202.5\xb0)", - "blue beamer (225\xb0)", - "blue beamer (247.5\xb0)", - "blue beamer (270\xb0)", - "blue beamer (292.5\xb0)", - "blue beamer (315\xb0)", - "blue beamer (337.5\xb0)", + "rotating wooden polarizer (0\xb0)", /* 340 */ + "rotating wooden polarizer (22.5\xb0)", + "rotating wooden polarizer (45\xb0)", + "rotating wooden polarizer (67.5\xb0)", + "rotating wooden polarizer (90\xb0)", + "rotating wooden polarizer (112.5\xb0)", + "rotating wooden polarizer (135\xb0)", + "rotating wooden polarizer (157.5\xb0)", + "rotating steel polarizer (0\xb0)", + "rotating steel polarizer (22.5\xb0)", + "rotating steel polarizer (45\xb0)", /* 350 */ + "rotating steel polarizer (67.5\xb0)", + "rotating steel polarizer (90\xb0)", + "rotating steel polarizer (112.5\xb0)", + "rotating steel polarizer (135\xb0)", + "rotating steel polarizer (157.5\xb0)", + "red teleporter (0\xb0)", + "red teleporter (22.5\xb0)", + "red teleporter (45\xb0)", + "red teleporter (67.5\xb0)", + "red teleporter (90\xb0)", /* 360 */ + "red teleporter (112.5\xb0)", + "red teleporter (135\xb0)", + "red teleporter (157.5\xb0)", + "red teleporter (180\xb0)", + "red teleporter (202.5\xb0)", + "red teleporter (225\xb0)", + "red teleporter (247.5\xb0)", + "red teleporter (270\xb0)", + "red teleporter (292.5\xb0)", + "red teleporter (315\xb0)", /* 370 */ + "red teleporter (337.5\xb0)", + "yellow teleporter (0\xb0)", + "yellow teleporter (22.5\xb0)", + "yellow teleporter (45\xb0)", + "yellow teleporter (67.5\xb0)", + "yellow teleporter (90\xb0)", + "yellow teleporter (112.5\xb0)", + "yellow teleporter (135\xb0)", + "yellow teleporter (157.5\xb0)", + "yellow teleporter (180\xb0)", /* 380 */ + "yellow teleporter (202.5\xb0)", + "yellow teleporter (225\xb0)", + "yellow teleporter (247.5\xb0)", + "yellow teleporter (270\xb0)", + "yellow teleporter (292.5\xb0)", + "yellow teleporter (315\xb0)", + "yellow teleporter (337.5\xb0)", + "green teleporter (0\xb0)", + "green teleporter (22.5\xb0)", + "green teleporter (45\xb0)", /* 390 */ + "green teleporter (67.5\xb0)", + "green teleporter (90\xb0)", + "green teleporter (112.5\xb0)", + "green teleporter (135\xb0)", + "green teleporter (157.5\xb0)", + "green teleporter (180\xb0)", + "green teleporter (202.5\xb0)", + "green teleporter (225\xb0)", + "green teleporter (247.5\xb0)", + "green teleporter (270\xb0)", /* 400 */ + "green teleporter (292.5\xb0)", + "green teleporter (315\xb0)", + "green teleporter (337.5\xb0)", + "blue teleporter (0\xb0)", + "blue teleporter (22.5\xb0)", + "blue teleporter (45\xb0)", + "blue teleporter (67.5\xb0)", + "blue teleporter (90\xb0)", + "blue teleporter (112.5\xb0)", + "blue teleporter (135\xb0)", /* 410 */ + "blue teleporter (157.5\xb0)", + "blue teleporter (180\xb0)", + "blue teleporter (202.5\xb0)", + "blue teleporter (225\xb0)", + "blue teleporter (247.5\xb0)", + "blue teleporter (270\xb0)", + "blue teleporter (292.5\xb0)", + "blue teleporter (315\xb0)", + "blue teleporter (337.5\xb0)", "unknown", /* 420 */ /* "-------------------------------", */ }; -int num_element_info_mm = sizeof(element_info_mm)/sizeof(char *); +int num_element_info_mm = sizeof(element_info_mm) / sizeof(char *);