From 8916a0bd3086c51fe8085021bd856e9b255930dd Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Mon, 10 Aug 2020 23:15:05 -0400 Subject: [PATCH] mist: meche: unwisely adding in some extra graphics was playing actual Myst and noticed it's helpful to be able to look up to figure out elevator also fixed crashing bug if you try to turn around at controls --- mist/README | 18 +++++++-------- mist/TODO | 6 ++++- mist/common_defines.inc | 1 + mist/graphics_meche/Makefile | 2 ++ mist/graphics_meche/top_floor_up_w.png | Bin 0 -> 1134 bytes mist/leveldata_meche.inc | 27 +++++++++++++++++++--- mist/meche_rotation.s | 30 ++++++++++++++++++++----- 7 files changed, 65 insertions(+), 19 deletions(-) create mode 100644 mist/graphics_meche/top_floor_up_w.png diff --git a/mist/README b/mist/README index 4bccc78a..e9a41f26 100644 --- a/mist/README +++ b/mist/README @@ -30,14 +30,14 @@ Sizes: disk1: SECTORS TRACKS HELLO 566 -> 768 -> 3 - LOADER 4006 -> 4096 -> 16 1 + LOADER 4013 -> 4096 -> 16 1 MIST_TITLE 21008 -> 21248 -> 83 6 - MIST 39780 -> 39936 -> 156 10 - OCTAGON 32627 -> 32768 -> 128 8 + MIST 40653 -> 40704 -> 159 10 + OCTAGON 32610 -> 32768 -> 128 8 VIEWER 4834 -> 4864 -> 19 2 DENTIST 7879 -> 7936 -> 31 2 D'NI 6863 -> 6912 -> 27 2 - SAVE0 74 -> 256 -> 1 1 + SAVE0 88 -> 256 -> 1 1 SHIP 5047 -> 5120 -> 20 2 ======== ==== 484+10 = 494 = 126k 34 @@ -51,9 +51,9 @@ Sizes: 381+4= 385 = 98k 25 disk3: MECHE 28857 -> 28928 -> 113 8 - SELENA 36907 -> 37120 -> 145 10 - STONEY 29984 -> 30208 -> 118 8 - GENERATOR 8167 -> 8167 -> 2 2 - SUB 8912 -> 8960 -> 35 3 + SELENA 36912 -> 37120 -> 145 10 + STONEY 40195 -> 40448 -> 158 10 + GENERATOR 8434 -> 8448 -> 33 3 + SUB 13786 -> 13824 -> 54 4 ======== ==== - ???+5=??? 31 + 503+5=508 = 127k 35 diff --git a/mist/TODO b/mist/TODO index f630fb79..d521b73d 100644 --- a/mist/TODO +++ b/mist/TODO @@ -32,8 +32,12 @@ For release 1.0 + MECHE -- animations for elevator - -- way to click on end puzzle from other angle -- way to turn around in basement + -- ability to look up at top of elevator + -- look around in the secret rooms + -- note from achenar + + + SUB -- can walk around outside of sub diff --git a/mist/common_defines.inc b/mist/common_defines.inc index 7afb7e79..b23a2952 100644 --- a/mist/common_defines.inc +++ b/mist/common_defines.inc @@ -203,6 +203,7 @@ MECHE_BLUE_SECRET_DOOR = 38 MECHE_BLUE_SECRET_ROOM = 39 MECHE_RED_SECRET_DOOR = 40 MECHE_RED_SECRET_ROOM = 41 +MECHE_TOP_FLOOR_UP = 42 diff --git a/mist/graphics_meche/Makefile b/mist/graphics_meche/Makefile index f2dc370b..429c6df7 100644 --- a/mist/graphics_meche/Makefile +++ b/mist/graphics_meche/Makefile @@ -43,6 +43,7 @@ meche_graphics.inc: \ elevator_top_e.lzsa \ elevator_half_e.lzsa \ top_floor_e.lzsa \ + top_floor_up_w.lzsa \ top_floor_ye_w.lzsa top_floor_ne_w.lzsa \ rotate_controls_e.lzsa \ eastturn_e.lzsa eastturn_w.lzsa \ @@ -125,6 +126,7 @@ meche_graphics.inc: \ echo "elevator_half_e_lzsa: .incbin \"elevator_half_e.lzsa\"" >> meche_graphics.inc echo "elevator_top_e_lzsa: .incbin \"elevator_top_e.lzsa\"" >> meche_graphics.inc echo "top_floor_e_lzsa: .incbin \"top_floor_e.lzsa\"" >> meche_graphics.inc + echo "top_floor_up_w_lzsa: .incbin \"top_floor_up_w.lzsa\"" >> meche_graphics.inc echo "top_floor_ye_w_lzsa: .incbin \"top_floor_ye_w.lzsa\"" >> meche_graphics.inc echo "top_floor_ne_w_lzsa: .incbin \"top_floor_ne_w.lzsa\"" >> meche_graphics.inc echo "rotate_controls_e_lzsa: .incbin \"rotate_controls_e.lzsa\"" >> meche_graphics.inc diff --git a/mist/graphics_meche/top_floor_up_w.png b/mist/graphics_meche/top_floor_up_w.png new file mode 100644 index 0000000000000000000000000000000000000000..afd44f890432a2360103aaf448ec73ea627bce3f GIT binary patch literal 1134 zcmV-!1d;oRP)EX>4Tx04R}tkv&MmP!xqvTcyQT9PA+CkfAzR5EXUQDionYs1;guFnQ@8G-*gu zTpR`0f`dPcRRz+EP?&3VlyYJ8HRq`eSd;;+-(+!JwgLrDw z(mC%FM_EZyh|h^f4Z0xlBiCh@-#8Z?_VdiBkx9=JM~Q`E2g@DIN`^{2NgPvDjq?3j zmle)ioYhK=weHDZ7|ClZ%Uq{5gd`TR1Q7yc)KEqR7UHyPq?kz4dBVd#==eo)$>b`7 zkz)Z>sE`~#_#gb9ty!2DcatIsp!>zPKZb$eF3_yo_V=-EH&1}TGjOG~{nZ9A^GSNW zt;LRjzHQ**x~<83z~v4w@T5zI=r_O#~r13?jTlgZ~RqyPW_Gf+%aMF0Q*;~rpOPQCv`{Q#q2oSd8# z&;8KD|6pv3j+WYzU)=d0000PbVXQnLvL+uWo~o;Lvm$dbY)~9cWHEJ zAV*0}P*;Ht7XSbP7)eAyR7l6&mf@~~Fbst|2?{a9_kY`KJ(SaK-3Z2Cw}}b5?b|tR zH=B4c5>J*DCG?3RZ1*CwxAS6;&Z=`G&aCY-#ix=_ao*# zQXsPcga()8K#XBUl|$kTsMWm&B%^8@_8K&rR=`X*Eu-Om(j+#sPKdy$DL$({4?Hdh zeZU732#lDB2ha>#>qvdza0#$1IS@}?pAi}$CV60Hx-}etwA=#wS_(0OTF% zE&FqJ013sO*q6XM&@!0GDpx?;i4&>q@d>IVuDzCpFb_p0=O#>Z4;L)^(hyhM1+=x= zwX9EAGy>|ym50Q)7v6I~t!od65kRq`1GFLFs7A{Ya|mR;E&%;brYmb2LOJS@68DIU zsPOgj3cc1EdHmqMh~>@}zdqqHZNc(CDH5&vYR4RM(+EwmoR|Yg86E)ZEctY_IUGhz z`{UuqtbOvP?*e^MGGH%VKL*ywlRmr#JkFZG zYx+P%mJ)%drU8x9^top_floor_ye_w_lzsa - sta location27+1,Y + sta location27+1,Y ; MECHE_TOP_FLOOR ; change destination to controls ldy #LOCATION_WEST_EXIT lda #MECHE_IN_ELEVATOR - sta location27,Y + sta location27,Y ; MECHE_TOP_FLOOR + + ; restore ability to look up + ldy #LOCATION_SPECIAL_EXIT + lda #DIRECTION_W + sta location27,Y ; MECHE_TOP_FLOOR jmp change_location ; tail call @@ -675,14 +688,19 @@ half_and_controls: ; change to elevator roof ldy #LOCATION_WEST_BG lda #top_floor_ne_w_lzsa - sta location27+1,Y + sta location27+1,Y ; MECHE_TOP_FLOOR ; change destination to controls ldy #LOCATION_WEST_EXIT lda #MECHE_ROTATE_CONTROLS - sta location27,Y + sta location27,Y ; MECHE_TOP_FLOOR + + ; disable ability to look up + ldy #LOCATION_SPECIAL_EXIT + lda #$ff + sta location27,Y ; MECHE_TOP_FLOOR jmp elevator_button_done_no_update