diff --git a/decompiler/config/all-types.gc b/decompiler/config/all-types.gc index d2c4169016..c1a3065734 100644 --- a/decompiler/config/all-types.gc +++ b/decompiler/config/all-types.gc @@ -1039,13 +1039,16 @@ (misty-daxter-hit-lurkers-not-mines #x27f) (sidekick-speech-hint-crate-darkeco1 #x281) + (sidekick-speech-crate-steel-break1 #x283) (sidekick-speech-hint-crate-iron #x284) (sidekick-speech-hint-crate-steel #x285) + (beach-collectors-unblocked #x288) + (jungleb-eco-vents-opened #x289) (misty-stopped-lurkers-at-silo #x28a) (misty-stopped-balloon-lurkers #x28b) - (jungleb-eco-vents-opened #x289) + (sidekick-speech-crate-steel-break2 #x28e) (sidekick-speech-hint-crate-darkeco2 #x28f) @@ -1064,13 +1067,10 @@ (misty-teetertotter-bonk-dax-tutorial #x2a4) (sidekick-hint-misty-get-red-eco #x2a5) - (red-eco-tutorial #x2a6) - (daxter-blue-eco-plat-tutorial #x2a7) (fish? #x2a9) - (misty-bone-bridge-hint #x2aa) (beach-grottopole-increment #x2af) @@ -10549,7 +10549,6 @@ ;; - Types -;; NOTE - root can also be a collide-shape (declare-type joint-mod basic) (deftype manipy (process-drawable) ((new-trans-hook (function none) :offset-assert 176) ;; TODO - no idea on these types @@ -10622,9 +10621,9 @@ (grab-target handle :offset 120) (grab-event symbol :offset-assert 128) (release-event symbol :offset-assert 132) - (old-global-mask uint32 :offset-assert 136) - (old-self-mask uint32 :offset-assert 140) - (old-parent-mask uint32 :offset-assert 144) + (old-global-mask process-mask :offset-assert 136) + (old-self-mask process-mask :offset-assert 140) + (old-parent-mask process-mask :offset-assert 144) (look-at-target handle :offset-assert 152) (pov-target handle :offset-assert 160) (work-process handle :offset-assert 168) @@ -10634,7 +10633,7 @@ (userdata basic :offset-assert 196) (message basic :offset-assert 200) (border-value basic :offset-assert 204) - (mask-to-clear uint32 :offset-assert 208) + (mask-to-clear process-mask :offset-assert 208) (script pair :offset-assert 212) (script-line pair :offset-assert 216) (script-func (function none) :offset-assert 220) ;; TODO - unconfirmed, see generic-obs::lambda::33 @@ -10704,16 +10703,16 @@ (deftype othercam (process) ((hand handle :offset-assert 112) - (old-global-mask uint32 :offset-assert 120) - (mask-to-clear uint32 :offset-assert 124) + (old-global-mask process-mask :offset-assert 120) + (mask-to-clear process-mask :offset-assert 124) (cam-joint-index int32 :offset-assert 128) (old-pos vector :inline :offset-assert 144) (old-mat-z vector :inline :offset-assert 160) (had-valid-frame basic :offset-assert 176) (border-value basic :offset-assert 180) - (die? symbol :offset-assert 184) + (die? symbol :offset-assert 184) (survive-anim-end? symbol :offset-assert 188) - (spooling? symbol :offset-assert 192) + (spooling? symbol :offset-assert 192) ) :heap-base #x60 :method-count-assert 14 @@ -10757,7 +10756,7 @@ (notify-handle handle :offset-assert 192) (anim-name string :offset-assert 200) (command-list pair :offset-assert 204) - (mask-to-clear uint32 :offset-assert 208) + (mask-to-clear process-mask :offset-assert 208) (music-volume-movie float :offset-assert 212) (sfx-volume-movie float :offset-assert 216) ) diff --git a/game/assets/jak1/subtitle/game_subtitle_en.gs b/game/assets/jak1/subtitle/game_subtitle_en.gs index 119193de2f..f5b4076fba 100644 --- a/game/assets/jak1/subtitle/game_subtitle_en.gs +++ b/game/assets/jak1/subtitle/game_subtitle_en.gs @@ -4,22 +4,26 @@ ;; intro ("sage-intro-sequence-a" - (24 "SAGE" "I HAVE SPENT MY LIFE SEARCHING FOR THE ANSWERS THAT MY FATHER, AND MY FATHER'S FATHERS FAILED TO FIND.") - (260 "SAGE" "WHO WERE THE PRECURSORS? WHY DID THEY CREATE THE VAST MONOLITHS THAT LITHER OUR PLANET?") - (454 "SAGE" "HOW DID THEY HARNESS ECO, THE LIFE ENERGY OF THE WORLD? WHAT WAS THEIR PURPOSE? AND WHY DID THEY VANISH?") + (24 :offscreen "SAGE" "I HAVE SPENT MY LIFE SEARCHING FOR THE ANSWERS THAT MY FATHER, AND MY FATHER'S FATHERS FAILED TO FIND.") + (260 :offscreen "SAGE" "WHO WERE THE PRECURSORS? WHY DID THEY CREATE THE VAST MONOLITHS THAT LITHER OUR PLANET?") + (454 :offscreen "SAGE" "HOW DID THEY HARNESS ECO, THE LIFE ENERGY OF THE WORLD?") + (581 :offscreen "SAGE" "WHAT WAS THEIR PURPOSE? AND WHY DID THEY VANISH?") (708) - (720 "SAGE" "I HAVE ASKED THE PLANTS, BUT THEY DO NOT REMEMBER.") - (818 "SAGE" "THE PLANTS HAVE ASKED THE ROCKS, BUT THE ROCKS DO NOT RECALL.") - (957 "SAGE" "EVEN THE ROCKS DO NOT RECALL...") + (720 :offscreen "SAGE" "I HAVE ASKED THE PLANTS, BUT THEY DO NOT REMEMBER.") + (818 :offscreen "SAGE" "THE PLANTS HAVE ASKED THE ROCKS, BUT THE ROCKS DO NOT RECALL.") + (955 :offscreen "SAGE" "EVEN THE ROCKS DO NOT RECALL...") (1064) - (1090 "SAGE" "EVERY BONE IN MY BODY TELLS ME THAT THE ANSWERS REST ON THE SHOULDERS OF A YOUNG BOY") - (1297 "SAGE" "OBLIVIOUS TO HIS DESTINY, UNINTERESTED IN THE SEARCH FOR TRUTH, AND REJECTING OF MY GUIDANCE!") - (1545 "SAGE" "AND WHY WOULD HE WANT TO LISTEN TO OLD SAMOS THE SAGE ANYWAY?") - (1689 "SAGE" "I'M ONLY THE MASTER OF GREEN ECO, ONE OF THE WISEST MEN ON THE PLANET!") + (1090 :offscreen "SAGE" "EVERY BONE IN MY BODY TELLS ME THAT THE ANSWERS REST ON THE SHOULDERS OF A YOUNG BOY") + (1297 :offscreen "SAGE" "OBLIVIOUS TO HIS DESTINY, UNINTERESTED IN THE SEARCH FOR TRUTH, AND REJECTING OF MY GUIDANCE!") + (1536) + (1545 :offscreen "SAGE" "AND WHY WOULD HE WANT TO LISTEN TO OLD SAMOS THE SAGE ANYWAY?") + (1680) + (1686 :offscreen "SAGE" "I'M ONLY THE MASTER OF GREEN ECO, ONE OF THE WISEST MEN ON THE PLANET!") (1875) - (1958 "SAGE" "SO IT SEEMS THE ANSWER BEGINS NOT WITH CAREFUL RESEARCH, OR SENSIBLE THINKING.") - (2145 "SAGE" "NAY! AS WITH MANY OF FATE'S MYSTERIES") - (2281 "SAGE" "IT BEGINS WITH BUT A SMALL ACT OF DISOBEDIENCE.") + (1958 :offscreen "SAGE" "SO IT SEEMS THE ANSWER BEGINS NOT WITH CAREFUL RESEARCH, OR SENSIBLE THINKING.") + (2141) + (2145 :offscreen "SAGE" "NAY! AS WITH MANY OF FATE'S MYSTERIES") + (2281 :offscreen "SAGE" "IT BEGINS WITH BUT A SMALL ACT OF DISOBEDIENCE.") (2440 "DAXTER" "HEY! UH, JAK? OL' GREEN STUFF TOLD US NOT TO COME HERE!") ) @@ -48,9 +52,9 @@ (1331 "DAXTER" "JAK, I THINK WE'RE IN TROUBLE!") (1386) (1857 "DAXTER" "MAN, THAT STUNG.") - (1919) - (1941 "DAXTER" "I TOLD YOU WE SHOULDN'T 'A' COME HERE, AND YOU LISTENED?") - (2034) + (1913) + (1941 "DAXTER" "I TOLD YOU WE SHOULDN'T HAVE COME HERE, AND YOU LISTENED?") + (2028) (2057 "DAXTER" "WHAAAT?") (2101) (2189 "DAXTER" "WAAAAAAAAHHHHHHHH!!") @@ -63,17 +67,18 @@ (137 "SAGE" "WHAT IN GREEN TARNATION DO YOU TWO WANT?") (220 "DAXTER" "WE- WE- WE WAS- THEY WAS- I'M- I WAS-") (283 "SAGE" "DON'T TELL ME! INSTEAD OF HEEDING MY WISDOM, THE TWO OF YOU WENT MUCKING AROUND") - (446 "SAGE" "IN THE ONLY PLACE THAT I TOLD YOU NOT TO GO: MISTY ISLAND!") + (440 "SAGE" "IN THE ONLY PLACE THAT I TOLD YOU NOT TO GO: MISTY ISLAND!") (550 "DAXTER" "THAT'S RIGHT! AND THEN-") - (579 "SAGE" "AND, DAXTER, YOU'VE FINALLY TOOK A MUCH-NEEDED BATH, BUT IN A BATHTUB FILLED WITH DARK ECO.") + (579 "SAGE" "AND, DAXTER, YOU FINALLY TOOK A MUCH-NEEDED BATH, BUT IN A BATHTUB FILLED WITH DARK ECO.") (793 "DAXTER" "LOOK, OLD MAN, ARE YOU GONNA KEEP YAPPIN', OR YOU GONNA HELP ME OUTTA THIS MESS!?") (920 "SAGE" "I'M GONNA KEEP YAPPIN'! BECAUSE IN MY PROFESSIONAL OPINION, THE CHANGE IS AN IMPROVEMENT.") (1079 "SAGE" "AND BESIDES... I COULDN'T HELP YOU IF I WANTED TO.") (1186 "DAXTER" "WHAT!?") - (1221 "SAGE" "THERE'S ONLY ONE PERSON WHO HAS STUDIED DARK ECO LONG ENOUGH") + (1220 "SAGE" "THERE'S ONLY ONE PERSON WHO HAS STUDIED DARK ECO LONG ENOUGH") (1329 "SAGE" "TO HAVE A CHANCE AT RETURNING YOU TO YOUR PREVIOUS FORM:") (1431 "SAGE" "GOL ACHERON, THE SAGE.") - (1496 "SAGE" "BUT HE LIVES FAR TO THE NORTH. FAR, FAR TO NORTH. NOBODY HAS SPOKEN TO HIM IN AGES.") + (1493) + (1496 :offscreen "SAGE" "BUT HE LIVES FAR TO THE NORTH. FAR, FAR TO NORTH. NOBODY HAS SPOKEN TO HIM IN AGES.") (1718 "SAGE" "I WOULD TELEPORT YOU THERE, BUT I CAN'T DO THAT EITHER.") (1831 "SAGE" "NONE OF THE THREE SAGES THAT MAINTAIN THE OTHER TELEPORTER GATES") (1934 "SAGE" "HAVE SEEN FIT TO TURN THEIR ENDS ON FOR QUITE A WHILE!") @@ -81,20 +86,23 @@ ("sage-intro-sequence-d2" (3 "SAGE" "THE ONLY OTHER WAY NORTH IS BY FOOT THROUGH THE FIRE CANYON") - (114 "SAGE" "BUT ITS VOLCANIC SOIL IS HOT ENOUGH TO MELT PRECURSOR METAL.") + (114 :offscreen "SAGE" "BUT ITS VOLCANIC SOIL IS HOT ENOUGH TO MELT PRECURSOR METAL.") (224 "SAGE" "YOU CAN'T JUST WALK THROUGH IT.") (270 "KEIRA" "BUT YOU COULD FLY OVER IT, IF YOU HAD A ZOOMER EQUIPPED WITH A HEAT SHIELD.") + (393) (396 "KEIRA" "I JUST HAPPEN TO BE WORKING ON SUCH A THING AT THIS VERY MOMENT.") + (512) (515 "KEIRA" "ALL I WOULD NEED IS TWENTY POWER CELLS TO GIVE IT ENOUGH ENERGY") (605 "KEIRA" "TO WITHSTAND THE CANYON'S HEAT. ISN'T THAT RIGHT, DADDY?") - (697) + (696) (699 "SAGE" "YES, KEIRA, THAT MIGHT WORK. BUT WHERE ARE A BOY") - (826 "SAGE" "AND A HALF!") + (826 :offscreen "SAGE" "AND A HALF!") (857 "SAGE" "GOING TO GET TWENTY POWER CELLS?") - (911 "KEIRA" "FROM THE VILLAGERS! MOST OF THEM HAVE A POWER CELL OR TWO STASHED AWAY SOMEWHERE.") - (1050 "KEIRA" "AND EVEN IF THEY AREN'T WILLING TO JUST GIVE THEM AWAY") + (910 "KEIRA" "FROM THE VILLAGERS! MOST OF THEM HAVE A POWER CELL OR TWO STASHED AWAY SOMEWHERE.") + (1050 :offscreen "KEIRA" "AND EVEN IF THEY AREN'T WILLING TO JUST GIVE THEM AWAY") (1133 "KEIRA" "GREASING THEIR PALMS WITH A FEW PRECURSOR ORBS SHOULD DO THE TRICK.") - (1249 "KEIRA" "AND I BET THERE ARE EVEN MORE OF THEM OUT IN THE WILDS JUST WAITING FOR SOME") + (1243) + (1246 :offscreen "KEIRA" "AND I BET THERE ARE EVEN MORE OF THEM OUT IN THE WILDS JUST WAITING FOR SOME") (1364 "KEIRA" "BRAVE ADVENTURER TO FIND.") (1435 "DAXTER" "WELL WE'VE GOT THE BRAVE ADVENTURER, AT LEAST.") (1529) @@ -104,12 +112,123 @@ (1689 "SAGE" "BEFORE YOU DO ANYTHING ELSE, YOU BETTER GO THROUGH THE WARP GATE AND GET") (1810 "SAGE" "SOME PRACTICE ON GEYSER ROCK.") (1872) - (1878 "DAXTER" "EHH, WE WON'T FIND ANY MORE OF THAT DARK-OO AND ECO STUFF, WILL WE?") + (1878 "DAXTER" "UH, WE WON'T FIND ANY MORE OF THAT DARK GOOEY ECO STUFF, WILL WE?") (1993 "DAXTER" "'CAUSE I'D HATE TO FALL IN AGAIN AND TURN INTO YOU!") + (2069) (2072 "SAGE" "GET IN THERE! BEFORE I TURN YOU BOTH INTO FERNS!") - (2192) + (2189) ) +("sage-intro-sequence-e" + (200 "SAGE" "GOOD TRAINING, BOYS, BUT THAT'S NOTHING COMPARED TO THE CHALLENGES THAT LIE AHEAD.") + (359 "DAXTER" "AH, THEY'RE NO PROBLEM. WE GOT THE MOVES, EH JAK?") + (496 "DAXTER" "WE'D LOVE TO STAY AND CHAT, BIG GREEN, BUT WE'RE UH... ITCHING TO GET ON WITH OUR ADVENTURES.") + (660 "SAGE" "FINE, FINE, \"ADVENTURE\" AWAY THEN.") + (787 "SAGE" "AND WHILE YOU'RE OUT \"ADVENTURING,\" WHY DON'T YOU MAKE YOURSELF USEFUL?") + (940) + (952 :offscreen "SAGE" "MY DARN GREEN ECO COLLECTORS ARE CLOGGED UP AGAIN.") + (1043) + (1046 :offscreen "SAGE" "HEAD OUT TO THE FAR SIDE OF THE BEACH AND CLEAR THEM OUT WHY DON'T YOU.") + (1160) + (1169 :offscreen "SAGE" "FOLLOW THE LAMPS, THEY'LL TAKE YOU RIGHT THERE.") + (1310) + (1313 :offscreen "SAGE" "NOW, ALL OF YOU...") + (1415) + (1439 :offscreen "SAGE" "GET OUT OF HERE!") + ) + + +;; ----------------- +;; sidekick + + +("sksp0014" :hint #x233 + (0 "DAXTER" "WE SCROUNGED ENOUGH ORBS TO TRADE FOR A POWER CELL.") + (215 "DAXTER" "LET'S GET BACK AND MAKE THE SWITCH ALREADY!") + ) +("sksp0009" :hint #x251 + (0 "DAXTER" "WHAT A WEIRD-LOOKING THING! I'LL BET WE CAN GET THIS OPEN") + (207 "DAXTER" "IF YOU'RE POWERED UP WITH THAT ZAPPY BLUE ECO STUFF.") + ) +("sksp0035" :hint #x25c + (0 "DAXTER" "YEAH, SO WE GOT A PRECURSOR LAUNCHER HERE") + (117 "DAXTER" "BUT YOU AREN'T POWERED UP WITH THE BLUE STUFF. SO IT AIN'T GONNA HELP US!") + ) +("sksp0001" :hint #x280 (0 "DAXTER" "HEY! THAT SWEET-LOOKING BABE KEIRA WAS RIGHT! THERE ARE TRANS-PADS OUT HERE.")) +("sksp0002" :hint #x281 (0 "DAXTER" "TRUST ME, THOSE DARK ECO BOXES ARE BAD NEWS!")) +("sksp0003" :hint #x282 + (0 "DAXTER" "I BET IF WE FOUND ALL OF THOSE SICKLY CUTE SCOUT FLIES ON EACH LEVEL") + (215 "DAXTER" "AT LEAST ONE WILL HAVE A POWER CELL!") + ) +("sksp0004" :hint #x283 (0 "DAXTER" "ALL RIGHT, TREASURE!")) +("sksp0005" :hint #x284 + (0 "DAXTER" "THESE WOOD AND METAL BOXES DON'T LOOK THAT TOUGH!") + (166 "DAXTER" "I'LL BET THEY'LL BREAK IF YOU JUMP DIVE ONTO THEM.") + ) +("sksp0006" :hint #x285 + (0 "DAXTER" "THOSE ALL-METAL BOXES ARE THICKER THAN A YAKOW SKULL!") + (188 "DAXTER" "BUT THERE MUST BE SOMETHING THAT CAN BUST 'EM OPEN.") + ) +("sksp0007" :hint #x286 (0 "DAXTER" "TWO WORDS: POWER CELLS. WE NEED TO FIND 'EM AND WE AREN'T LOOKIN' SO GOOD RIGHT NOW.")) +("sksp0008" :hint #x287 (0 "DAXTER" "WE NEED ORBS. ORBS, JAK! HOW ARE EVER GONNA BUY POWER CELLS IF WE DON'T COLLECT ORBS!")) +("sksp009a" :hint 0 (0 "DAXTER" "HA HA! WE SHOWED HIM A THING OR TWO.")) +("sksp009b" :hint #x28e (0 "DAXTER" "ALL RIGHT, MORE ORBS!")) +("sksp009c" :hint #x28f (0 "DAXTER" "DO ME A FAVOR AND KEEP AWAY FROM THOSE DARK ECO BOXES!")) +("sksp009d" :hint #x290 (0 "DAXTER" "YEAH-HA-HA-HA!")) +("sksp009e" :hint #x291 (0 "DAXTER" "WA-HOO!")) +("sksp009f" :hint #x292 (0 "DAXTER" "GET SOME, GET SOME! HA HA HA!")) +("sksp009g" :hint #x293 (0 "DAXTER" "RIGHT BEHIND YA, JAK!")) +("sksp009i" :hint #x294 (0 "DAXTER" "DID WE FIND ALL THE SCOUT FLIES IN THIS AREA?")) +("sksp009j" :hint #x295 (0 "DAXTER" "HEY! IT LOOKS LIKE SCOUT FLIES ARE ALWAYS IN RED BOXES.")) +("sksp009k" :hint #x296 (0 "DAXTER" "ALRIGHT! YOU FOUND ALL THE SCOUT FLIES IN THIS AREA!")) +("sksp0071" :hint #x2a5 (0 "DAXTER" "GET THE RED ECO!")) +("sksp0072" :hint #x2a6 (0 "DAXTER" "RED ECO MAKES YOUR ATTACKS STRONGER.")) +("sksp0073" :hint #x2a7 (0 "DAXTER" "WE NEED BLUE ECO TO CHARGE THIS PLATFORM UP!")) + +("sksp0145" :hint #x359 (0 "DAXTER" "WOW! YOU CAN SHOOT FIRE BALLS WHEN YOU'RE POWERED UP WITH YELLOW ECO.")) + + + +;; ----------------- +;; village1 + + +("SAGELP03" :hint 0 (0 "SAGE" "THESE TWO COULDN'T UNBLOCK THEIR EARS...")) +("SAGELP04" :hint 0 + (0 "SAGE" "HE'LL JUST NEVER BE LIKE HIS UNCLE...") + (221 "SAGE" "I DON'T CARE WHAT THE OTHERS SAY.") + ) +("SAGELP05" :hint 0 (0 "SAGE" "HELLO, BLUE SAGE? HELLO? WHERE IN THE BLUE BLAZES COULD HE BE...")) +("SAGELP06" :hint 0 (0 "SAGE" "MY, MY, MY...")) +("SAGELP11" :hint 0 (0 "SAGE" "ANYONE? ANYONE AT ALL? COME IN?")) +("ASSTLP01" :hint 0 (0 "KEIRA" "HMM...")) +("ASSTLP02" :hint 0 (0 "KEIRA" "GOTTA GET THIS HEAT SHIELD WORKING...")) +("ASSTLP03" :hint 0 (0 "KEIRA" "WE NEED POWER CELLS TO FUEL THE HEAT SHIELD...")) +("ASSTLP04" :hint 0 (0 "KEIRA" "WHERE'S MY SPANNER?")) +("ASSTLP05" :hint 0 (0 "KEIRA" "FIRE CANYON IS SO HOT...")) + + +("sage-introduction-misty-cannon" + (24 "SAGE" "OH, IT'S THE CONQUERING HEROES.") + (136 "SAGE" "GOOD, I WANTED TO TALK WITH YOU TWO ABOUT SOMETHING SERIOUS.") + (258) + (261 :offscreen "SAGE" "THERE APPEARS TO BE QUITE A BIT OF LURKER ACTIVITY ON MISTY ISLAND.") + (387) + (393 :offscreen "SAGE" "I CAN SEE THEM BOMBARDING THE PRECURSOR SILO FROM MY LOOKOUT TOWER.") + (525) + (528 "SAGE" "IF THE LURKERS OPEN IT UP AND RELEASE THE DARK ECO, WE COULD ALL END UP") + (663 "SAGE" "RUNNING AROUND LOOKING AS RIDICULOUS AS THIS ANNOYING LITTLE SPECIMEN.") + (788) + (807 "SAGE" "JAK, IT'S TIME FOR YOU TO PROVE YOUR WORTH.") + (906 "SAGE" "GET THE FISHERMAN TO LET YOU TAKE HIS BOAT BACK TO MISTY ISLAND") + (1018 "SAGE" "GET TO THE TOP OF THE PRECURSOR SILO AND TAKE OUT THAT CANNON.") + (1071) + (1177 "DAXTER" "AND... WHAT ABOUT ME?") + (1232) + (1235 "SAGE" "YOU? WHY DON'T YOU MOP MY FLOORS? THEY SEEM TO HAVE LOST THEIR SHINE LATELY.") + ) + + ;; ----------------- ;; oracle @@ -121,11 +240,34 @@ ("oracle-right-eye-3" (0 "ORACLE" "YOU HAVE OBTAINED ANOTHER POWER CELL.")) ("oracle-left-eye-3" (0 "ORACLE" "FOR YOUR EFFORT, A POWER CELL IS THE REWARD.")) + +;; ----------------- +;; misty + + +("sksp0031" :hint #x23a (0 "DAXTER" "OOH! LET'S USE THE CANNON TO BLOW THINGS UP!")) +("sksp0067" :hint #x249 (0 "DAXTER" "DON'T FALL INTO THE MIST BELOW US! 'CAUSE I DON'T THINK WE'LL MAKE IT BACK.")) +("sksp0059" :hint #x26e (0 "DAXTER" "THIS PLACE GIVES ME THE WILLIES! LET'S KEEP YOU OUT OF THE OOZE, OKAY?")) +("sksp0056" :hint #x27b (0 "DAXTER" "HEY! I SEE THE SCULPTOR'S MUSE!")) +("sagevb02" :hint #x28a + (6 "SAGE" "I HAVE TO ADMIT, I'M IMPRESSED. YOU TWO DIDN'T SCREW UP!") + (385) + (399 "SAGE" "NOW THAT THE LURKERS CAN'T OPEN THAT SILO, THEY CAN'T FLOOD THE WORLD WITH DARK ECO") + (720 "SAGE" "AND CAUSE UNTOLD DESTRUCTION.") + (863) + (880 "SAGE" "WIPE THAT RIDICULOUS GRIN OFF YOUR FACE, DAXTER! THE TWO OF YOU HAVE PLENTY TO DO.") + (1191 "SAGE" "GET ON WITH IT!") + ) +("sksp0069" :hint #x2a3 (0 "DAXTER" "IT'S AN AMBUSH, JAK! IT'S AN AMBUSH!")) +("sksp0070" :hint #x2a4 (0 "DAXTER" "JUMP, THEN DIVE ONTO THE TEETER-TOTTER.")) +("sksp0435" :hint #x2aa (0 "DAXTER" "KNOCK OVER THOSE BONES!")) + + ;; ----------------- ;; swamp ("billy-introduction" - (6 "BILLY" "HOWDY, FRIENDS! ENJOYIN' MY BEAUTIFUL SWAMP? I OWN THESE HERE PARTS. EVERYTHING THAT DOESN'T SINK INTO THE MUD, THAT IS! (LAUGHS)") + (6 "BILLY" "HOWDY, FRIENDS! ENJOYIN' MY BEAUTIFUL SWAMP? I OWN THESE HERE PARTS. EVERYTHING THAT DOESN'T SINK INTO THE MUD, THAT IS! HA HA HA...") (349) (369 "DAXTER" "JUDGING BY THE SMELL, I'D WAGER YOUR BATHTUB SANK IN THE MUD LONG AGO.") (497) @@ -160,29 +302,41 @@ ;; ----------------- ;; citadel + ("green-sagecage-introduction" (130 "SAGE" "IT'S ABOUT TIME YOU TWO DECIDED TO SHOW UP!") (207 "DAXTER" "NICE TO SEE YOU TOO! DO THEY HAVE YOU MOPPING THE FLOORS NOW?") - (343 "SAGE" "THERE'S NO TIME FOR JOKES, DAXTER. GOL AND MAIA KIDNAPPED US TO SAP OUR ENERGIES TO POWER THEIR ABOMINABLE MACHINE.") - (574 :offscreen "SAGE" "IT APPEARS THEY HAVE COMBINED THE FUNCTIONAL REMAINS OF A PRECURSOR ROBOT WITH SCAVENGED ARTIFACTS FROM ACROSS THE LAND.") - (800 :offscreen "SAGE" "THEN THEY ADDED A FEW DIABOLICAL ADDITIONS OF THEIR OWN, CREATING THE ONE THING CAPABLE OF OPENING THE DARK ECO SILOS.") + (343 "SAGE" "THERE'S NO TIME FOR JOKES, DAXTER. GOL AND MAIA KIDNAPPED US") + (477 "SAGE" "TO SAP OUR ENERGIES TO POWER THEIR ABOMINABLE MACHINE.") + (574) + (577 :offscreen "SAGE" "IT APPEARS THEY HAVE COMBINED THE FUNCTIONAL REMAINS OF A PRECURSOR ROBOT") + (710 :offscreen "SAGE" "WITH SCAVENGED ARTIFACTS FROM ACROSS THE LAND.") + (800) + (803 :offscreen "SAGE" "THEN THEY ADDED A FEW DIABOLICAL ADDITIONS OF THEIR OWN,") + (921 :offscreen "SAGE" "CREATING THE ONE THING CAPABLE OF OPENING THE DARK ECO SILOS.") (1060 "SAGE" "IF YOU CAN FREE THE FOUR OF US, WE CAN USE OUR COMBINED POWERS") (1180 "SAGE" "TO BREAK THE FORCE SHIELD SURROUNDING THE ROBOT, BEFORE THEY USE IT TO DESTROY THE WORLD.") ) ("redsage-resolution" - (60 "RED SAGE" "(CHUCKLES) YOU'VE FINALLY COME TO RESCUE ME.") - (190 "RED SAGE" "DO YOU KNOW HOW LONG I'VE BEEN IN HERE? WHAT TOOK YOU SO LONG, YOU KNOW? (CHUCKLES) WHAT ARE YOUR NAMES?") - (429 "DAXTER" "I'M DAXTER! HE'S JAK, HE'S WITH ME.") + (58 "RED SAGE" "(CHUCKLES) YOU'VE FINALLY COME TO RESCUE ME.") + (190 "RED SAGE" "DO YOU KNOW HOW LONG I'VE BEEN IN HERE? WHAT TOOK YOU SO LONG? AND UH... (CHUCKLES)") + (381 "RED SAGE" "WHAT ARE YOUR NAMES?") + (429) + (432 "DAXTER" "I'M DAXTER! HE'S JAK, HE'S WITH ME.") (540 :offscreen "RED SAGE" "GOOD JOB, DAXTER. YOU'RE A REAL HERO.") - (670) - (700 "RED SAGE" "YOU'VE GOT TO STOP GOL FROM LAUNCHING THE ROBOT. I'LL USE MY ECO POWER TO HELP OPEN THE SHIELD DOOR.") + (674) + (700 "RED SAGE" "YOU'VE GOT TO STOP GOL FROM LAUNCHING THE ROBOT.") + (837 "RED SAGE" "I'LL USE MY ECO POWER TO HELP OPEN THE SHIELD DOOR.") ) ("bluesage-resolution" - (60 "BLUE SAGE" "GOOD WORK, FELLOWS! OLD SAMOS WAS RIGHT ABOUT YOU!") - (165 "BLUE SAGE" "GREAT PILES OF PRECURSOR METAL! THAT INSIDIOUS MECHANICAL CREATION MUST NOT BE ALLOWED TO WREAK ITS TERRIBLE HAVOC!") - (420 "BLUE SAGE" "I WILL TRY TO ACTUATE THE SHIELD DOOR BY ELLICITING A CONDUIT OF ENERGY BETWEEN MYSELF AND THE VAST PORTAL BELOW!") + (63 "BLUE SAGE" "GOOD WORK, FELLOWS! OLD SAMOS WAS RIGHT ABOUT YOU!") + (162) + (165 "BLUE SAGE" "GREAT PILES OF PRECURSOR METAL!") + (253 "BLUE SAGE" "THAT INSIDIOUS MECHANICAL CREATION MUST NOT BE ALLOWED TO WREAK ITS TERRIBLE HAVOC!") + (420 "BLUE SAGE" "I WILL TRY TO ACTUATE THE SHIELD DOOR BY ELLICITING A CONDUIT OF ENERGY") + (563 "BLUE SAGE" "BETWEEN MYSELF AND THE VAST PORTAL BELOW!") (666 "DAXTER" "UH... YEAH. YOU DO THAT. WE'LL UH... JUST GO FIND MORE HELP.") (873) (891 :offscreen "DAXTER" "WEIRDO!") @@ -190,33 +344,153 @@ ) ("yellowsage-resolution" - (50 "YELLOW SAGE" "WHO WOULDA THOUGHT I'D LIVE TO SEE THE DAY WHEN I NEEDED TO BE RESCUED BY A BOY AND HIS MUSKRAT!") + (57 "YELLOW SAGE" "WHO WOULDA THOUGHT I'D LIVE TO SEE THE DAY") + (137 "YELLOW SAGE" "WHEN I NEEDED TO BE RESCUED BY A BOY AND HIS MUSKRAT!") (271 "YELLOW SAGE" "(SIGHS) I'M GONNA GIVE GOL AND MAIA A LITTLE PAYBACK FOR THIS EMBARRASSMENT!") + (471) (480 "YELLOW SAGE" "THEN WE'LL SEE ABOUT COOKING UP SOME MUSKRAT STEW...") - (606) + (605) ) ("green-sagecage-resolution" - (30 "SAGE" "GOOD WORK, BOYS! YOU'RE REAL HEROES NOW. I'LL COMBINE MY GREEN ECO POWER WITH THE OTHER THREE SAGES") - (284 "SAGE" "AND TOGETHER WE'LL OPEN THE SHIELD DOOR SURROUNDING THE PRECURSOR ROBOT.") - (405 "DAXTER" "YEAH YEAH THAT SOUNDS LIKE A GOOD START. AND THEN AFTER YOU GUYS OPEN THAT SHIELD, WHAT ARE YOU GONNA DO ABOUT THE ROBOT?") - (576 "SAGE" "NOTHING, DAXTER. WE HAVE TO KEEP THE SHIELD OPEN, IT'S UP TO YOU TWO TO FIGURE OUT HOW TO DESTROY THE ROBOT.") - (823 "DAXTER" "OH, GREAT. I GET TO HELP THE GUY THAT TURNED ME INTO A FURBALL DESTROY THE ONLY PERSON WHO CAN TURN ME BACK!") + (35 "SAGE" "GOOD WORK, BOYS! YOU'RE REAL HEROES NOW.") + (158 "SAGE" "I'LL COMBINE MY GREEN ECO POWER WITH THE OTHER THREE SAGES") + (280 "SAGE" "AND TOGETHER WE'LL OPEN THE SHIELD DOOR SURROUNDING THE PRECURSOR ROBOT.") + (405 "DAXTER" "YEAH YEAH THAT SOUNDS LIKE A GOOD START.") + (457 "DAXTER" "AND THEN AFTER YOU GUYS OPEN THAT SHIELD, WHAT ARE YOU GONNA DO ABOUT THE ROBOT?") + (576 "SAGE" "NOTHING, DAXTER. WE HAVE TO KEEP THE SHIELD OPEN.") + (704 "SAGE" "IT'S UP TO YOU TWO TO FIGURE OUT HOW TO DESTROY THE ROBOT.") + (823 "DAXTER" "OH, GREAT. I GET TO HELP THE GUY THAT TURNED ME INTO A FURBALL") + (983 "DAXTER" "DESTROY THE ONLY PERSON WHO CAN TURN ME BACK!") (1111) - (1156 "SAGE" "FIRST, SAVE THE WORLD! THEN WE'LL TRY TO CONVINCE GOL TO HELP DAXTER.") + (1161 "SAGE" "FIRST, SAVE THE WORLD! THEN WE'LL TRY TO CONVINCE GOL TO HELP DAXTER.") ) ("green-sagecage-outro-preboss" - (50 "GOL" "YOU'RE TOO LATE, SAMOS. ONCE I POSSESS LIMITLESS DARK ECO, I WILL HAVE THE KEY TO CREATION ITSELF!") + (56 "GOL" "YOU'RE TOO LATE, SAMOS.") + (125 "GOL" "ONCE I POSSESS LIMITLESS DARK ECO, I WILL HAVE THE KEY TO CREATION ITSELF!") (335 "SAGE" "THIS IS MADNESS! RELEASING THAT MUCH DARK ECO WILL DESTROY EVERYTHING WE KNOW!") - (485 "SAGE" "JUST LOOK WHAT IT'S DONE TO YOU!") + (504 "SAGE" "JUST LOOK WHAT IT'S DONE TO YOU!") + (578) (581 "MAIA" "IT HAS GIVEN US A BEAUTY BEYOND ANYTHING YOU COULD UNDERSTAND.") + (693) (696 "DAXTER" "BEAUTY? HAVE YOU TWO LOOKED IN A MIRROR LATELY?") + (825) (828 "MAIA" "JUST WAIT UNTIL WE OPEN THE SILOS, LITTLE ONE. YOU THINK SHORT AND FUZZY IS BAD?") - (1017 "GOL" "AND TO THINK, YOU TWO TRAVELLED ALL THIS WAY FOR MY HELP.") + (1030 "GOL" "AND TO THINK, YOU TWO TRAVELLED ALL THIS WAY FOR MY HELP.") (1180 "GOL" "FOOLS! ENJOY YOUR FRONT ROW SEATS TO THE RECREATION OF THE WORLD!") - (1382) + (1391) (1605 "SAGE" "JAK! TAKE THE ELEVATOR UP AND STOP THAT ROBOT!") ) +("BLU-AM01" :hint 0 (0 "BLUE SAGE" "A LITTLE BIT OF HELP WOULD BE GOOD!")) +("BLU-AM02" :hint 0 (0 "BLUE SAGE" "OH, THIS IS A FINE MESS.")) +("BLU-AM03" :hint 0 (0 "BLUE SAGE" "HMM, QUITE AN ENIGMA WE'RE FACING.")) +("RED-AM01" :hint 0 (0 "RED SAGE" "IS ANYBODY THERE?")) +("RED-AM02" :hint 0 (0 "RED SAGE" "WELL...")) +("RED-AM03" :hint 0 (0 "RED SAGE" "WHAT KEPT YOU?")) +("YEL-AM01" :hint 0 (0 "RED SAGE" "TIME IS RUNNIN' OUT!")) +("YEL-AM02" :hint 0 (0 "RED SAGE" "HEY! GET ME OUTTA HERE!")) +("YEL-AM03" :hint 0 (0 "RED SAGE" "WHEN I GET OUTTA HERE, SOME SHOOTIN'S GONNA START!")) + +("sksp0381" :hint #x806 (0 "DAXTER" "BREAK THE GENERATOR TO FREE THE SAGE!")) +("sksp0382" :hint #x807 (0 "DAXTER" "JUST HANG ON TO THE EDGE!")) +("sksp0383" :hint #x808 (0 "DAXTER" "WE GOT COMPANY, JAK. LOOOTS OF LURKERS!")) +("sksp0384" :hint #x809 (0 "DAXTER" "DESTROY THOSE GENERATORS!")) +("sksp0385" :hint #x80a (0 "DAXTER" "PUSH THE BUTTON!")) +("sksp0386" :hint #x80b (0 "DAXTER" "THAT ROBOT DOESN'T SCARE ME!")) +("sksp0387" :hint #x80c (0 "DAXTER" "LET'S GO CLIMB UP THOSE PLATFORMS!")) +("sksp0388" :hint #x80d (0 "DAXTER" "DON'T MISS THE NEXT LAUNCHER!")) +("sksp0389" :hint #x80e (0 "DAXTER" "WATCH IT!")) +("sksp0390" :hint #x80f (0 "DAXTER" "WE HAVE TO RESCUE ALL THE SAGES!")) +("sksp0391" :hint #x810 (0 "DAXTER" "DO YOU THINK GOL WILL STILL CHANGE ME BACK?")) +("sksp0392" :hint #x811 (0 "DAXTER" "SO THIS IS GOL AND MAIA'S CITADEL. NICE AND COZY.")) +("sksp0393" :hint #x812 (0 "DAXTER" "LAND ON THE NEXT LAUNCHER!")) +("sksp0378" :hint #x813 (0 "DAXTER" "THE DOOR'S OPEN, LET'S GET GOING!")) + + +;; ----------------- +;; training + + +("asstvb40" :hint #x900 + (0 "KEIRA" "THIS DEVICE IS A COMMUNICATOR. WITH IT, MY FATHER AND I") + (181 "KEIRA" "CAN GIVE YOU ADVICE AT ANY TIME DURING YOUR QUEST.") + ) +("asstvb41" :hint #x901 + (0 "KEIRA" "THESE FLOATING EGG-SHAPED THINGS ARE PRECURSOR ORBS.") + (176) + (180 "KEIRA" "COLLECT ENOUGH OF THEM, AND SOME OF THE VILLAGERS WILL GIVE YOU") + (315 "KEIRA" "A POWER CELL IN EXCHANGE.") + ) +("asstvb42" :hint #x902 + (0 "KEIRA" "THIS IS A POWER CELL, THE MOST IMPORTANT PRECURSOR ARTIFACT YOU CAN FIND!") + (327) + (333 "KEIRA" "YOU NEED TO COLLECT 20 OF THESE SO I CAN POWER THE HEAT SHIELD") + (507 "KEIRA" "FOR YOUR A-GRAV ZOOMER.") + ) +("asstvb44" :hint #x903 + (0 "KEIRA" "HEY, YOU FOUND ONE OF MY SCOUT FLIES!") + (160 "KEIRA" "I SENT 7 OF THEM TO EACH AREA TO LOOK FOR POWER CELLS") + (343 "KEIRA" "BUT THE LURKERS MUST HAVE CAPTURED THEM ALL!") + ) +("asstvb45" :hint #x904 + (0 "KEIRA" "WOW! THAT LAST SCOUT FLY HAD A POWER CELL!") + (219 "KEIRA" "I'LL BET IF YOU COLLECT ALL 7 IN EACH AREA YOU CAN FIND EVEN MORE POWER CELLS.") + ) +("asstvb46" :hint #x905 + (0 "KEIRA" "BE CAREFUL IN THE OCEAN, THE WATERS ARE CHOCK-FULL OF LURKER SHARKS") + (258 "KEIRA" "AND I'VE NEVER SEEN ANYONE DEFEAT ONE.") + (419) + (426 "KEIRA" "STAY CLEAR OF THEM IF YOU KNOW WHAT'S GOOD FOR YOU!") + ) +("asstvb47" :hint #x906 (0 "KEIRA" "REMEMBER, THAT'S A POWER CELL. YOU NEED TO COLLECT AS MANY OF THOSE AS YOU CAN.")) +("asstvb48" :hint #x907 + (0 "KEIRA" "THAT'S A BLUE ECO VENT! MORE CONCENTRATED THAN THE FLOATING CLUSTERS,") + (253 "KEIRA" "THIS VENT WILL GIVE YOU A FULL CHARGE OF BLUE ECO,") + (419 "KEIRA" "LETTING YOU USE IT FOR THE MAXIMUM TIME.") + ) +("sagevb21" :hint #x908 + (3 "SAGE" "THOSE LITTLE GREEN BALLS OF ENERGY ON THE GROUND ARE A TYPE OF ECO.") + (280 "SAGE" "PICK UP 50 SMALL GREEN ECOES, OR ONE BIG GREEN ONE TO INCREASE YOUR HEALTH.") + ) +("sagevb22" :hint #x909 + (0 "SAGE" "THAT'S BLUE ECO, WHICH CONTAINS THE ENERGY OF MOTION.") + (291 "SAGE" "BLUE ECO ALLOWS YOU TO RUN FAST, BREAK BOXES, AND EVEN ACTIVATE SOME PRECURSOR") + (640 "SAGE" "ARTIFACTS WHEN YOU GET NEAR THEM.") + ) +("sagevb23" :hint #x90a (0 "SAGE" "NOTICE HOW EACH BLUE ECO CLUSTER YOU PICK UP INCREASES THE TIME YOU CAN USE ITS POWER.")) +("sagevb24" :hint #x90b + (3 "SAGE" "THIS IS A PRECURSOR DOOR. IT CAN ONLY BE OPENED BY APPROACHING THE DOOR") + (357 "SAGE" "WHILE CHANNELING BLUE ECO THROUGH YOUR BODY.") + ) +("sagevb25" :hint #x90c + (3 "SAGE" "GOOD WORK, THE BLUE ECO CAUSED THE DOOR TO OPEN. WITH BLUE ECO, YOU CAN BREATHE") + (365 "SAGE" "ENERGY INTO ALL KINDS OF PRECURSOR ARTIFACTS THAT HAVE LAIN DORMANT FOR YEARS.") + ) +("sagevb26" :hint #x90d (0 "SAGE" "USE YOUR GOGGLES TO VIEW YOUR PROGRESS DURING THE ADVENTURE.")) +("sagevb27" :hint #x90e (1 "SAGE" "YOU CAN JUMP ONCE, THEN JUMP AGAIN IN THE AIR TO REACH EVEN HIGHER LEDGES.")) +("sagevb28" :hint #x90f (0 "SAGE" "WHEN YOU'RE SURROUNDED BY ENEMIES, USE YOUR SPIN KICK.")) +("sagevb29" :hint #x910 (0 "SAGE" "THAT'S NOT A SPIN KICK! TRY AGAIN.")) +("sagevb30" :hint #x911 (0 "SAGE" "COME ON, JAK! DO A SPIN KICK.")) +("sagevb31" :hint #x912 (0 "SAGE" "GOOD WORK. USE THE SPIN KICK WHEN YOU WANT A GOOD ALL-ROUND ATTACK.")) +("sagevb32" :hint #x913 (0 "SAGE" "FOR A STRAIGHT LINE, MOVING ATTACK, USE YOUR FIST TO PUNCH.")) +("sagevb33" :hint #x914 (0 "SAGE" "THAT'S NOT A PUNCH ATTACK! LET'S SEE YOU PUNCH ALREADY.")) +("sagevb34" :hint #x915 (0 "SAGE" "JAK! USE A PUNCH.")) +("sagevb35" :hint #x916 (0 "SAGE" "GREAT JOB. USE THE PUNCH TO CLOSE DISTANCE QUICKLY IN A TOUGH SPOT.")) +("sagevb36" :hint #x917 + (0 "SAGE" "SOMETIMES YOU'LL WANT TO HIT THINGS WITH A GREATER FORCE.") + (218 "SAGE" "TO BREAK ONE OF THESE BOXES, YOU SHOULD JUMP IN THE AIR") + (420 "SAGE" "AND THEN DIVE DOWN ONTO IT, HANDS FIRST.") + ) +("sagevb37" :hint #x918 (0 "SAGE" "WHEN YOU GET SOME CONFIDENCE, TRY USING SOME OF YOUR MOVES IN COMBINATIONS.")) +("sagevb38" :hint #x919 + (0 "SAGE" "YOU CAN'T COME BACK THROUGH THE WARP GATE UNTIL YOU FIND") + (168 "SAGE" "ALL 4 POWER CELLS ON THIS ISLAND.") + ) +("sagevb39" :hint #x91a + (0 "SAGE" "GREAT! YOU FOUND ALL OF THE POWER CELLS ON THE ISLAND.") + (269 "SAGE" "COME BACK TO THE WARP GATE SO I CAN BRING YOU BACK TO THE LAB. HURRY UP!") + ) + diff --git a/goal_src/build/all_files.gc b/goal_src/build/all_files.gc index 1cfabb873c..1bd182af8e 100644 --- a/goal_src/build/all_files.gc +++ b/goal_src/build/all_files.gc @@ -217,7 +217,6 @@ "goal_src/engine/level/level-info.gc" "goal_src/engine/level/level.gc" "goal_src/engine/ui/text.gc" - "goal_src/pc/subtitle.gc" ;; added "goal_src/engine/collide/collide-probe.gc" "goal_src/engine/collide/collide-frag.gc" "goal_src/engine/collide/collide-mesh.gc" @@ -303,6 +302,7 @@ "goal_src/engine/debug/viewer.gc" "goal_src/engine/debug/part-tester.gc" "goal_src/engine/debug/default-menu.gc" + "goal_src/pc/subtitle.gc" ;; added "goal_src/levels/common/texture-upload.gc" "goal_src/levels/common/rigid-body-h.gc" "goal_src/levels/common/water-anim.gc" diff --git a/goal_src/dgos/engine.gd b/goal_src/dgos/engine.gd index c00085d8f9..418f45feda 100644 --- a/goal_src/dgos/engine.gd +++ b/goal_src/dgos/engine.gd @@ -209,7 +209,6 @@ ("level-info.o" "level-info") ("level.o" "level") ("text.o" "text") - ("subtitle.o" "subtitle") ;; added ("collide-probe.o" "collide-probe") ("collide-frag.o" "collide-frag") ("collide-mesh.o" "collide-mesh") @@ -296,5 +295,6 @@ ("viewer.o" "viewer") ("part-tester.o" "part-tester") ("default-menu.o" "default-menu") + ("subtitle.o" "subtitle") ;; added ) diff --git a/goal_src/dgos/game.gd b/goal_src/dgos/game.gd index 44feb49583..5ccd07c25d 100644 --- a/goal_src/dgos/game.gd +++ b/goal_src/dgos/game.gd @@ -205,7 +205,6 @@ ("level-info.o" "level-info") ("level.o" "level") ("text.o" "text") - ("subtitle.o" "subtitle") ;; added ("collide-probe.o" "collide-probe") ("collide-frag.o" "collide-frag") ("collide-mesh.o" "collide-mesh") @@ -292,6 +291,7 @@ ("viewer.o" "viewer") ("part-tester.o" "part-tester") ("default-menu.o" "default-menu") + ("subtitle.o" "subtitle") ;; added ("dir-tpages.go" "dir-tpages") ("tpage-463.go" "tpage-463") ("tpage-2.go" "tpage-2") diff --git a/goal_src/engine/ambient/ambient.gc b/goal_src/engine/ambient/ambient.gc index c8b286f46e..1ddb7b512e 100644 --- a/goal_src/engine/ambient/ambient.gc +++ b/goal_src/engine/ambient/ambient.gc @@ -308,6 +308,7 @@ (none) ) +(#when PC_PORT (define *level-hint-spool-name* (the string #f))) (defbehavior level-hint-init-by-other level-hint ((arg0 game-text-id) (arg1 string) (arg2 entity)) (mark-text-as-seen *game-info* arg0) (set! (-> self text-id-to-display) arg0) @@ -489,6 +490,7 @@ ) :exit (behavior () + (#when PC_PORT (set! *level-hint-spool-name* (the string #f))) (if (nonzero? (-> self sound-id)) (sound-stop (-> self sound-id)) ) @@ -503,6 +505,7 @@ ) :code (behavior ((arg0 string)) + (#when PC_PORT (set! *level-hint-spool-name* arg0)) (when (and (-> *setting-control* current play-hints) (< 0.0 (-> *setting-control* current dialog-volume))) (case (-> self mode) (('voicebox) diff --git a/goal_src/engine/camera/pov-camera-h.gc b/goal_src/engine/camera/pov-camera-h.gc index 6b70f5aa5b..19bcdbf7f5 100644 --- a/goal_src/engine/camera/pov-camera-h.gc +++ b/goal_src/engine/camera/pov-camera-h.gc @@ -22,15 +22,15 @@ ;; for example, the introduction to orbs in geyser, or the camera that shows you where the steps to fire canyon ;; are. (deftype pov-camera (process-drawable) - ((cspace-array cspace-array :offset 112) - (flags pov-camera-flag :offset-assert 176) - (debounce-start-time time-frame :offset-assert 184) - (notify-handle handle :offset-assert 192) - (anim-name string :offset-assert 200) - (command-list pair :offset-assert 204) - (mask-to-clear uint32 :offset-assert 208) - (music-volume-movie float :offset-assert 212) - (sfx-volume-movie float :offset-assert 216) + ((cspace-array cspace-array :offset 112) + (flags pov-camera-flag :offset-assert 176) + (debounce-start-time time-frame :offset-assert 184) + (notify-handle handle :offset-assert 192) + (anim-name string :offset-assert 200) + (command-list pair :offset-assert 204) + (mask-to-clear process-mask :offset-assert 208) + (music-volume-movie float :offset-assert 212) + (sfx-volume-movie float :offset-assert 216) ) :heap-base #x70 :method-count-assert 30 diff --git a/goal_src/engine/camera/pov-camera.gc b/goal_src/engine/camera/pov-camera.gc index 21b79fc919..99b9401165 100644 --- a/goal_src/engine/camera/pov-camera.gc +++ b/goal_src/engine/camera/pov-camera.gc @@ -293,14 +293,14 @@ ((= (-> arg2 type) spool-anim) ) ) - (set! (-> self mask-to-clear) (the-as uint #x4a0800)) + (set! (-> self mask-to-clear) (process-mask movie enemy platform projectile)) (set! (-> self event-hook) (lambda :behavior pov-camera ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (let ((v1-0 arg2)) (the-as object (cond ((= v1-0 'mask) (let ((v0-0 (the-as number (-> arg3 param 0)))) - (set! (-> self mask-to-clear) (the-as uint v0-0)) + (set! (-> self mask-to-clear) (the-as process-mask v0-0)) v0-0 ) ) diff --git a/goal_src/engine/game/generic-obs-h.gc b/goal_src/engine/game/generic-obs-h.gc index b3ae76c9a0..b3eb83d260 100644 --- a/goal_src/engine/game/generic-obs-h.gc +++ b/goal_src/engine/game/generic-obs-h.gc @@ -112,9 +112,9 @@ (grab-target handle :offset 120) (grab-event symbol :offset-assert 128) (release-event symbol :offset-assert 132) - (old-global-mask uint32 :offset-assert 136) - (old-self-mask uint32 :offset-assert 140) - (old-parent-mask uint32 :offset-assert 144) + (old-global-mask process-mask :offset-assert 136) + (old-self-mask process-mask :offset-assert 140) + (old-parent-mask process-mask :offset-assert 144) (look-at-target handle :offset-assert 152) (pov-target handle :offset-assert 160) (work-process handle :offset-assert 168) @@ -124,7 +124,7 @@ (userdata basic :offset-assert 196) (message basic :offset-assert 200) (border-value basic :offset-assert 204) - (mask-to-clear uint32 :offset-assert 208) + (mask-to-clear process-mask :offset-assert 208) (script pair :offset-assert 212) (script-line pair :offset-assert 216) (script-func (function none) :offset-assert 220) @@ -199,17 +199,17 @@ ;; control the camera from something else (an animation) (deftype othercam (process) - ((hand handle :offset-assert 112) - (old-global-mask uint32 :offset-assert 120) - (mask-to-clear uint32 :offset-assert 124) - (cam-joint-index int32 :offset-assert 128) - (old-pos vector :inline :offset-assert 144) - (old-mat-z vector :inline :offset-assert 160) - (had-valid-frame basic :offset-assert 176) - (border-value basic :offset-assert 180) - (die? symbol :offset-assert 184) - (survive-anim-end? symbol :offset-assert 188) - (spooling? symbol :offset-assert 192) + ((hand handle :offset-assert 112) + (old-global-mask process-mask :offset-assert 120) + (mask-to-clear process-mask :offset-assert 124) + (cam-joint-index int32 :offset-assert 128) + (old-pos vector :inline :offset-assert 144) + (old-mat-z vector :inline :offset-assert 160) + (had-valid-frame basic :offset-assert 176) + (border-value basic :offset-assert 180) + (die? symbol :offset-assert 184) + (survive-anim-end? symbol :offset-assert 188) + (spooling? symbol :offset-assert 192) ) :heap-base #x60 :method-count-assert 14 diff --git a/goal_src/engine/game/generic-obs.gc b/goal_src/engine/game/generic-obs.gc index 29b7ccd943..a5f77bdc15 100644 --- a/goal_src/engine/game/generic-obs.gc +++ b/goal_src/engine/game/generic-obs.gc @@ -1144,7 +1144,7 @@ ) ((= v1-0 'mask) (set! v0-0 (-> arg3 param 0)) - (set! (-> self mask-to-clear) v0-0) + (set! (-> self mask-to-clear) (the-as process-mask v0-0)) v0-0 ) ((= v1-0 'border) @@ -1203,7 +1203,7 @@ (defbehavior camera-tracker-init camera-tracker ((arg0 object)) (stack-size-set! (-> self main-thread) 512) (logclear! (-> self mask) (process-mask actor-pause movie enemy platform projectile)) - (set! (-> self mask-to-clear) (the-as uint #x4a0800)) + (set! (-> self mask-to-clear) (process-mask movie enemy platform projectile)) (set! (-> self grab-target) (the-as handle #f)) (set! (-> self grab-event) 'grab) (set! (-> self release-event) 'end-mode) diff --git a/goal_src/engine/game/task/process-taskable.gc b/goal_src/engine/game/task/process-taskable.gc index 49307553cd..8eb01b603f 100644 --- a/goal_src/engine/game/task/process-taskable.gc +++ b/goal_src/engine/game/task/process-taskable.gc @@ -1304,7 +1304,7 @@ ) (('mask) (set! v0-0 (-> arg3 param 0)) - (set! (-> self mask-to-clear) (the-as uint v0-0)) + (set! (-> self mask-to-clear) (the-as process-mask v0-0)) v0-0 ) ) @@ -1424,7 +1424,7 @@ (set! (-> self border-value) #f) (set! (-> self die?) #f) (set! (-> self survive-anim-end?) arg2) - (set! (-> self mask-to-clear) (the-as uint #x4a0800)) + (set! (-> self mask-to-clear) (process-mask movie enemy platform projectile)) (set! (-> self event-hook) (-> othercam-running event)) (go othercam-running) 0 @@ -1434,7 +1434,10 @@ (defmethod draw-npc-shadow process-taskable ((obj process-taskable)) (let ((gp-0 (-> obj draw shadow-ctrl))) (cond - ((and (-> obj draw shadow) (zero? (-> obj draw cur-lod)) (logtest? (-> obj draw status) (draw-status was-drawn))) + ((and (-> obj draw shadow) + (zero? (-> obj draw cur-lod)) + (logtest? (-> obj draw status) (draw-status was-drawn)) + ) (collide-to-find-planes gp-0 (-> obj draw origin) -4096.0 4096.0 32768.0) (update-direction-from-time-of-day gp-0) ) diff --git a/goal_src/engine/ui/text-h.gc b/goal_src/engine/ui/text-h.gc index 3e444f6c2f..6480f2e165 100644 --- a/goal_src/engine/ui/text-h.gc +++ b/goal_src/engine/ui/text-h.gc @@ -191,13 +191,16 @@ (misty-daxter-hit-lurkers-not-mines #x27f) (sidekick-speech-hint-crate-darkeco1 #x281) + (sidekick-speech-crate-steel-break1 #x283) (sidekick-speech-hint-crate-iron #x284) (sidekick-speech-hint-crate-steel #x285) + (beach-collectors-unblocked #x288) + (jungleb-eco-vents-opened #x289) (misty-stopped-lurkers-at-silo #x28a) (misty-stopped-balloon-lurkers #x28b) - (jungleb-eco-vents-opened #x289) + (sidekick-speech-crate-steel-break2 #x28e) (sidekick-speech-hint-crate-darkeco2 #x28f) @@ -216,13 +219,10 @@ (misty-teetertotter-bonk-dax-tutorial #x2a4) (sidekick-hint-misty-get-red-eco #x2a5) - (red-eco-tutorial #x2a6) - (daxter-blue-eco-plat-tutorial #x2a7) (fish? #x2a9) - (misty-bone-bridge-hint #x2aa) (beach-grottopole-increment #x2af) diff --git a/goal_src/game.gp b/goal_src/game.gp index dca8cbd872..24e04e9217 100644 --- a/goal_src/game.gp +++ b/goal_src/game.gp @@ -1920,7 +1920,7 @@ ;; Custom or Modified Code (goal-src "pc/pckernel-h.gc" "dma-disasm") (goal-src "pc/pckernel.gc" "settings") -(goal-src "pc/subtitle.gc" "text") +(goal-src "pc/subtitle.gc" "text" "pckernel" "hint-control" "loader-h" "gsound" "ambient") (goal-src "pc/progress-pc.gc" "progress" "pckernel") diff --git a/goal_src/pc/subtitle.gc b/goal_src/pc/subtitle.gc index 9e25e81533..c5b37f37ea 100644 --- a/goal_src/pc/subtitle.gc +++ b/goal_src/pc/subtitle.gc @@ -5,8 +5,8 @@ Code for subtitles for the PC port. A PC actor pool is provided, and the subtitle process lives there. It automatically detects the currently playing cutscene and plays the subtitles for it on channel 0. - Channel 1 and 2 are reserved for ambient sounds, which cannot be auto-detected, so the ambient-control needs to - notify the subtitle process manually (TODO: verify this!) + The other two channels are for hints, first checked automatically by name, then by text ID. + There is a hack in ambient.gc to store the name of the last ambient hint vag played to aid in this. Similarly to the generic text file, only one subtitles text file is loaded at once, stored in a specific heap. @@ -23,6 +23,7 @@ (defconstant PC_SUBTITLE_FILE_SIZE (* 64 1024)) ;; 64K heap for subtitles. adjust later if necessary. (defconstant PC_SUBTITLE_FILE_NAME "subtit") +(defconstant PC_SUBTITLE_STR_ADJUST 17) (defglobalconstant PC_SUBTITLE_DEBUG #f) @@ -39,7 +40,7 @@ ;; enum for the subtitle channels, no more than 2 bytes! (defenum pc-subtitle-channel :type int16 - (invalid -1) (movie 0) (ambient 1) (hint 2)) + (invalid -1) (movie 0) (hint 1) (hint-named 2)) (defconstant SUBTITLE_CHANNEL_COUNT 3) (defenum pc-subtitle-flags @@ -71,10 +72,10 @@ ;; now we store a way to identify and lookup the subtitles. - ;; the game-text-id if this is for a hint - (id game-text-id :offset 8) ;; the name of the spool-anim (name string :offset 8) + ;; the game-text-id if this is for a hint + (id game-text-id :offset 12) ;; the 8-character name for an ambient or hint (hash uint64 :offset 8) @@ -94,6 +95,7 @@ (:methods (get-scene-by-name (_type_ pc-subtitle-channel string) subtitle-text) + (get-scene-by-text-id (_type_ pc-subtitle-channel game-text-id) subtitle-text) ) ) @@ -122,9 +124,9 @@ (define *SUBTITLE-bank* (new 'static 'subtitle-bank :scale 0.49 - :width 0.85 - :height 0.8 - :lines 3.0 + :width 0.87 + :height 0.82 + :lines 2.0 )) ;; the subtitle process! it lives on the PC actor pool and awaits for incoming subtitle messages, or a movie @@ -135,6 +137,7 @@ ( spool-name string) (old-spool-name string) + (text-id game-text-id) (cur-channel pc-subtitle-channel) (want-subtitle subtitle-keyframe) ;; the subtitle we want to display @@ -174,6 +177,10 @@ (defmethod get-scene-by-name subtitle-text-info ((obj subtitle-text-info) (kind pc-subtitle-channel) (name string)) "get a subtitle scene info with the corresponding name. #f = none found" + ;; invalid kind so return invalid scene. + (if (or (not name) (= kind (pc-subtitle-channel invalid))) + (return (the subtitle-text #f))) + (dotimes (i (-> obj length)) ;; name and kind matches, return that! (when (and (= kind (-> obj data i kind)) (string= (-> obj data i name) name)) @@ -183,6 +190,22 @@ (the subtitle-text #f)) +(defmethod get-scene-by-text-id subtitle-text-info ((obj subtitle-text-info) (kind pc-subtitle-channel) (id game-text-id)) + "get a subtitle scene info with the corresponding name. #f = none found" + + ;; invalid kind so return invalid scene. + (if (= kind (pc-subtitle-channel invalid)) + (return (the subtitle-text #f))) + + (dotimes (i (-> obj length)) + ;; name and kind matches, return that! + (when (and (= kind (-> obj data i kind)) (= (-> obj data i id) id)) + (return (-> obj data i)) + ) + ) + + (the subtitle-text #f)) + (defun load-subtitle-text-info ((txt-name string) (curr-text symbol) (heap kheap)) "load a subtitles text file onto a heap. txt-name = language-agnostic file name @@ -505,9 +528,13 @@ "can a subtitle be displayed right now?" (and (-> *pc-settings* subtitles?) ;; subtitles enabled (or *debug-segment* (= *master-mode* 'game)) ;; current mode is game, OR we are just debugging + (not *progress-process*) ;; no progress open ) ) +(defun subtitle-str-adjust ((pos int)) + (if (< pos 0) -1 (/ pos PC_SUBTITLE_STR_ADJUST))) + (defstate subtitle-process (subtitle) @@ -535,49 +562,85 @@ (set! (-> self cur-channel) (pc-subtitle-channel invalid)) ;; check what kind of subtitles are running - (when (and (movie?) (-> *art-control* spool-lock) (-> *art-control* active-stream)) - ;; there's a cutscene happening and an active spool with a valid owner. - (set! (-> self spool-name) (-> *art-control* active-stream)) - (set! (-> self cur-channel) (pc-subtitle-channel movie)) - (with-proc ((handle->process (-> *art-control* spool-lock))) - (format *stdcon* "movie spool detected~%current spool frame is ~D~%" (the int (ja-aframe-num 0))) - ) + (cond + ((and (movie?) (-> *art-control* spool-lock) (-> *art-control* active-stream)) + ;; there's a cutscene happening and an active spool with a valid owner. + (set! (-> self spool-name) (-> *art-control* active-stream)) + (set! (-> self cur-channel) (pc-subtitle-channel movie)) + (with-proc ((handle->process (-> *art-control* spool-lock))) + (format *stdcon* "movie spool detected:~%~3L~A~0L~%current spool frame is ~3L~D~0L~%" + (-> *art-control* active-stream) (the int (ja-aframe-num 0))) + ) + ) + (*hint-semaphore* + ;; there's a hint playing + (set! (-> self spool-name) (-> *hint-semaphore* 0 sound-to-play)) + (unless (-> self spool-name) + (set! (-> self spool-name) *level-hint-spool-name*)) + (set! (-> self text-id) (-> *hint-semaphore* 0 text-id-to-display)) + (set! (-> self cur-channel) (if (-> self spool-name) + (pc-subtitle-channel hint-named) + (pc-subtitle-channel hint))) + (format *stdcon* "hint detected!~%~3L~A~0L/~3L#x~X~0L~%current str pos is ~D (~3L~D~0L)~%" + (-> self spool-name) (-> self text-id) + (current-str-pos (-> *hint-semaphore* 0 sound-id)) + (subtitle-str-adjust (current-str-pos (-> *hint-semaphore* 0 sound-id)))) + ) ) ;; do subtitles - (case (-> self cur-channel) - (((pc-subtitle-channel movie)) - ;; cutscenes, check if user toggled subtitles - (if (and (= 'game *master-mode*) (cpad-pressed? 0 square)) - (not! (-> *pc-settings* subtitles?))) - - (when (subtitle?) - ;; subtitles on! get a subtitle info that matches our current cutscene, and find at what point we're in. - (let ((scene (get-scene-by-name *subtitle-text* (-> self cur-channel) (-> self spool-name)))) - (when scene - ;; got a scene! get closest subtitle now. - (let ((pos 0) - (keyframe (the subtitle-keyframe #f))) - ;; get frame num - (with-proc ((handle->process (-> *art-control* spool-lock))) - (set! pos (the int (ja-aframe-num 0))) - ) - ;; find closest keyframe - (dotimes (i (-> scene length)) - (when (>= pos (-> scene keyframes i frame)) - (set! keyframe (-> scene keyframes i))) - ) - ;; and save it! - (set! (-> self want-subtitle) keyframe) - ) + + ;; get a subtitle info that matches our current status + (let ((keyframe (the subtitle-keyframe #f))) + (case (-> self cur-channel) + (((pc-subtitle-channel movie)) + ;; cutscenes. get our cutscene. + (awhen (get-scene-by-name *subtitle-text* (-> self cur-channel) (-> self spool-name)) + + ;; find out position in the scene. + (let ((pos 0)) + ;; get frame num + (with-proc ((handle->process (-> *art-control* spool-lock))) + (set! pos (the int (ja-aframe-num 0))) + ) + ;; find closest keyframe + (dotimes (i (-> it length)) + (when (>= pos (-> it keyframes i frame)) + (set! keyframe (-> it keyframes i))) + ) ) ) ;; keep this for later (set! (-> self old-spool-name) (-> self spool-name)) ) + (((pc-subtitle-channel hint) (pc-subtitle-channel hint-named)) + ;; hint! find it. or else. + (awhen (if (= (-> self cur-channel) (pc-subtitle-channel hint-named)) + (get-scene-by-name *subtitle-text* (-> self cur-channel) (-> self spool-name)) + (get-scene-by-text-id *subtitle-text* (-> self cur-channel) (-> self text-id)) + ) + + (let ((pos (subtitle-str-adjust (current-str-pos (-> *hint-semaphore* 0 sound-id))))) + ;; find closest keyframe + (dotimes (i (-> it length)) + (when (>= pos (-> it keyframes i frame)) + (set! keyframe (-> it keyframes i))) + ) + ) + ) + ) ) - ) + + ;; save whatever subtitle we got. + (set! (-> self want-subtitle) keyframe)) + + ;; during a cutscene, check if user toggled subtitles + (if (and (= (pc-subtitle-channel movie) (-> self cur-channel)) + (= 'game *master-mode*) + (-> self want-subtitle) + (cpad-pressed? 0 square)) + (not! (-> *pc-settings* subtitles?))) (when *debug-segment* (when (and (cpad-hold? 0 l3) (cpad-pressed? 0 start)) @@ -598,8 +661,9 @@ (set-height! (-> self font) (the int (* (-> *SUBTITLE-bank* lines) 11))) (set-scale! (-> self font) (-> *SUBTITLE-bank* scale)) - (when (-> self want-subtitle) + (when (and (-> self want-subtitle) (subtitle?)) ;; we got a valid subtitle! render it. + (hide-bottom-hud) (print-game-subtitle (subtitle-format self (-> self want-subtitle)) (-> self font) #f 128 22) (#when PC_SUBTITLE_DEBUG (draw-debug-text-box (-> self font)) diff --git a/goalc/data_compiler/game_text_common.cpp b/goalc/data_compiler/game_text_common.cpp index 1c939473f8..812cc354d9 100644 --- a/goalc/data_compiler/game_text_common.cpp +++ b/goalc/data_compiler/game_text_common.cpp @@ -237,12 +237,36 @@ void parse_subtitle(const goos::Object& data, GameTextVersion text_ver, GameSubt }); } - else if (head.is_string()) { + else if (head.is_string() || head.is_int()) { if (banks.size() == 0) { - throw std::runtime_error("At least one language must be set before defining entries."); + throw std::runtime_error("At least one language must be set before defining scenes."); } - GameSubtitleSceneInfo scene(head.as_string()->data); - for_each_in_list(cdr(obj), [&](const goos::Object& entry) { + auto kind = SubtitleSceneKind::Movie; + int id = 0; + auto entries = cdr(obj); + if (head.is_int()) { + kind = SubtitleSceneKind::Hint; + } else if (car(entries).is_symbol()) { + const auto& parm = car(entries).as_symbol()->name; + if (parm == ":hint") { + entries = cdr(entries); + id = car(entries).as_int(); + kind = SubtitleSceneKind::HintNamed; + } else { + throw std::runtime_error("Unknown parameter for subtitle scene"); + } + entries = cdr(entries); + } + + GameSubtitleSceneInfo scene(kind); + if (kind == SubtitleSceneKind::Movie || kind == SubtitleSceneKind::HintNamed) { + scene.set_name(head.as_string()->data); + } else if (kind == SubtitleSceneKind::Hint) { + id = head.as_int(); + } + scene.set_id(id); + + for_each_in_list(entries, [&](const goos::Object& entry) { if (entry.is_pair()) { // expected formats: // (time ) @@ -271,8 +295,12 @@ void parse_subtitle(const goos::Object& data, GameTextVersion text_ver, GameSubt throw std::runtime_error( "Invalid object in subtitle entry, expecting actual line string after speaker"); } else if (arg.is_symbol()) { - if (arg.as_symbol()->name == ":offscreen") { + if (scene.kind() == SubtitleSceneKind::Movie && + arg.as_symbol()->name == ":offscreen") { offscreen = true; + } else { + throw std::runtime_error( + fmt::format("Unknown parameter {} in subtitle", arg.as_symbol()->name)); } } }); @@ -287,7 +315,6 @@ void parse_subtitle(const goos::Object& data, GameTextVersion text_ver, GameSubt if (!bank->scene_exists(scene.name())) { bank->add_scene(scene); } else { - // this should copy the data, so it's safe to delete the new one afterwards. auto& old_scene = bank->scene_by_name(scene.name()); old_scene.from_other_scene(scene); } @@ -320,15 +347,19 @@ void compile_subtitle(GameSubtitleDB& db) { std::queue array_link_sources; // now add all the scene infos for (auto& [name, scene] : bank->scenes()) { - gen.add_word(0 | + gen.add_word((u16)scene.kind() | (scene.lines().size() << 16)); // kind (lower 16 bits), length (upper 16 bits) array_link_sources.push(gen.words()); gen.add_word(0); // keyframes (linked later) - gen.add_ref_to_string_in_pool(scene.name()); // name - - gen.add_word(0); // pad (string is 4 bytes but we have 8) + if (scene.kind() == SubtitleSceneKind::Movie || + scene.kind() == SubtitleSceneKind::HintNamed) { + gen.add_ref_to_string_in_pool(scene.name()); // name + } else if (scene.kind() == SubtitleSceneKind::Hint) { + gen.add_word(0); // nothing + } + gen.add_word(scene.id()); } // now add all the scene *data!* (keyframes) for (auto& [name, scene] : bank->scenes()) { diff --git a/goalc/data_compiler/game_text_common.h b/goalc/data_compiler/game_text_common.h index ed11474a31..24f528ced6 100644 --- a/goalc/data_compiler/game_text_common.h +++ b/goalc/data_compiler/game_text_common.h @@ -66,11 +66,9 @@ class GameTextDB { * The subtitle scene info (accessed through the scene name) contains all lines and their timestamps * and other settings. */ +enum class SubtitleSceneKind { Invalid = -1, Movie = 0, Hint = 1, HintNamed = 2 }; class GameSubtitleSceneInfo { public: - GameSubtitleSceneInfo() {} - GameSubtitleSceneInfo(std::string name) : m_name(name) {} - struct SubtitleLine { SubtitleLine(int frame, std::string line, std::string speaker, bool offscreen) : frame(frame), line(line), speaker(speaker), offscreen(offscreen) {} @@ -81,12 +79,22 @@ class GameSubtitleSceneInfo { bool offscreen; }; + GameSubtitleSceneInfo() {} + GameSubtitleSceneInfo(SubtitleSceneKind kind) : m_kind(kind) {} + const std::string& name() const { return m_name; } const std::vector& lines() const { return m_lines; } + int id() const { return m_id; } + SubtitleSceneKind kind() const { return m_kind; } + void clear_lines() { m_lines.clear(); } + void set_name(const std::string& new_name) { m_name = new_name; } + void set_id(int new_id) { m_id = new_id; } void from_other_scene(GameSubtitleSceneInfo& scene) { m_name = scene.name(); m_lines = scene.lines(); + m_kind = scene.kind(); + m_id = scene.id(); } void add_line(int frame, std::string line, std::string speaker, bool offscreen) { @@ -95,7 +103,9 @@ class GameSubtitleSceneInfo { private: std::string m_name; + int m_id; std::vector m_lines; + SubtitleSceneKind m_kind; }; /*! diff --git a/test/decompiler/reference/engine/ambient/ambient_REF.gc b/test/decompiler/reference/engine/ambient/ambient_REF.gc index 5eca687627..112bc03f17 100644 --- a/test/decompiler/reference/engine/ambient/ambient_REF.gc +++ b/test/decompiler/reference/engine/ambient/ambient_REF.gc @@ -695,7 +695,7 @@ *temp-string* (add-debug-text-3d #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) *temp-string* (-> arg0 bsphere) (font-color orange-red) @@ -1183,7 +1183,7 @@ (when *display-ambient-sound-marks* (add-debug-text-3d #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (symbol->string (res-lump-struct obj 'effect-name symbol :time 0.0)) gp-0 (font-color white) @@ -1211,7 +1211,7 @@ (when (and (nonzero? a1-7) *common-text*) (add-debug-text-3d #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (lookup-text! *common-text* (the-as game-text-id a1-7) #f) gp-0 (font-color white) @@ -1277,7 +1277,7 @@ ) (add-debug-text-3d #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (res-lump-struct obj 'name string) gp-0 (font-color white) @@ -1285,7 +1285,7 @@ ) (add-debug-text-3d #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (symbol->string s5-0) gp-0 (font-color white) diff --git a/test/decompiler/reference/engine/camera/cam-layout_REF.gc b/test/decompiler/reference/engine/camera/cam-layout_REF.gc index 094c80c371..58f4dc76d0 100644 --- a/test/decompiler/reference/engine/camera/cam-layout_REF.gc +++ b/test/decompiler/reference/engine/camera/cam-layout_REF.gc @@ -263,7 +263,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-0 (the-as (pointer dma-tag) a3-4) ) diff --git a/test/decompiler/reference/engine/camera/cam-states_REF.gc b/test/decompiler/reference/engine/camera/cam-states_REF.gc index d3417d2e15..59f9336524 100644 --- a/test/decompiler/reference/engine/camera/cam-states_REF.gc +++ b/test/decompiler/reference/engine/camera/cam-states_REF.gc @@ -1392,7 +1392,7 @@ (let ((t1-0 #x40000080)) (add-debug-flat-triangle #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (the-as vector (-> gp-0 0)) (-> gp-0 0 vertex 1) (-> gp-0 0 vertex 2) diff --git a/test/decompiler/reference/engine/camera/cam-update_REF.gc b/test/decompiler/reference/engine/camera/cam-update_REF.gc index 8ab8eefb9c..0a994a3250 100644 --- a/test/decompiler/reference/engine/camera/cam-update_REF.gc +++ b/test/decompiler/reference/engine/camera/cam-update_REF.gc @@ -299,7 +299,7 @@ (when *display-level-spheres* (add-debug-sphere #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> s5-1 info bsphere) (-> s5-1 info bsphere w) (new 'static 'rgba :r #xff :a #x80) diff --git a/test/decompiler/reference/engine/camera/pov-camera-h_REF.gc b/test/decompiler/reference/engine/camera/pov-camera-h_REF.gc index e3c29f5e56..2650d5558c 100644 --- a/test/decompiler/reference/engine/camera/pov-camera-h_REF.gc +++ b/test/decompiler/reference/engine/camera/pov-camera-h_REF.gc @@ -9,7 +9,7 @@ (notify-handle handle :offset-assert 192) (anim-name string :offset-assert 200) (command-list pair :offset-assert 204) - (mask-to-clear uint32 :offset-assert 208) + (mask-to-clear process-mask :offset-assert 208) (music-volume-movie float :offset-assert 212) (sfx-volume-movie float :offset-assert 216) ) diff --git a/test/decompiler/reference/engine/camera/pov-camera_REF.gc b/test/decompiler/reference/engine/camera/pov-camera_REF.gc index 44d3e8e561..bfb66f2e1e 100644 --- a/test/decompiler/reference/engine/camera/pov-camera_REF.gc +++ b/test/decompiler/reference/engine/camera/pov-camera_REF.gc @@ -304,14 +304,14 @@ ((= (-> arg2 type) spool-anim) ) ) - (set! (-> self mask-to-clear) (the-as uint #x4a0800)) + (set! (-> self mask-to-clear) (process-mask movie enemy platform projectile)) (set! (-> self event-hook) (lambda :behavior pov-camera ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (let ((v1-0 arg2)) (the-as object (cond ((= v1-0 'mask) (let ((v0-0 (the-as number (-> arg3 param 0)))) - (set! (-> self mask-to-clear) (the-as uint v0-0)) + (set! (-> self mask-to-clear) (the-as process-mask v0-0)) v0-0 ) ) diff --git a/test/decompiler/reference/engine/collide/collide-mesh_REF.gc b/test/decompiler/reference/engine/collide/collide-mesh_REF.gc index d2fb22962f..6f3b1fdffa 100644 --- a/test/decompiler/reference/engine/collide/collide-mesh_REF.gc +++ b/test/decompiler/reference/engine/collide/collide-mesh_REF.gc @@ -72,7 +72,7 @@ (.svf (&-> a2-1 quad) vf1) (.svf (&-> a3-0 quad) vf2) (.svf (&-> t0-0 quad) vf3) - (add-debug-flat-triangle #t (bucket-id debug-draw1) a2-1 a3-0 t0-0 t1-0) + (add-debug-flat-triangle #t (bucket-id debug-no-zbuf) a2-1 a3-0 t0-0 t1-0) ) ) (set! s5-0 (-> (the-as (inline-array collide-mesh-tri) s5-0) 1)) @@ -445,7 +445,3 @@ ) ) ) - - - - diff --git a/test/decompiler/reference/engine/collide/main-collide_REF.gc b/test/decompiler/reference/engine/collide/main-collide_REF.gc index 445c408522..d560e1dba7 100644 --- a/test/decompiler/reference/engine/collide/main-collide_REF.gc +++ b/test/decompiler/reference/engine/collide/main-collide_REF.gc @@ -212,11 +212,7 @@ (nop!) (let ((a2-0 (new-stack-vector0))) (.svf (&-> a2-0 quad) vf9) - (add-debug-sphere #t (bucket-id debug-draw0) a2-0 a3-0 (new 'static 'rgba :r #x80 :g #x80 :b #x80 :a #x80)) + (add-debug-sphere #t (bucket-id debug) a2-0 a3-0 (new 'static 'rgba :r #x80 :g #x80 :b #x80 :a #x80)) ) ) ) - - - - diff --git a/test/decompiler/reference/engine/debug/anim-tester_REF.gc b/test/decompiler/reference/engine/debug/anim-tester_REF.gc index c4f632bd54..21d3ac3b47 100644 --- a/test/decompiler/reference/engine/debug/anim-tester_REF.gc +++ b/test/decompiler/reference/engine/debug/anim-tester_REF.gc @@ -242,7 +242,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s5-3 (the-as (pointer dma-tag) a3-6) ) @@ -371,7 +371,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s5-6 (the-as (pointer dma-tag) a3-12) ) @@ -1081,7 +1081,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-0 (the-as (pointer dma-tag) a3-2) ) @@ -1178,7 +1178,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s4-0 (the-as (pointer dma-tag) a3-2) ) @@ -1253,7 +1253,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s5-2 (the-as (pointer dma-tag) a3-4) ) @@ -1307,7 +1307,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s4-0 (the-as (pointer dma-tag) a3-2) ) @@ -1426,7 +1426,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s5-1 (the-as (pointer dma-tag) a3-4) ) @@ -1484,7 +1484,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s4-0 (the-as (pointer dma-tag) a3-2) ) @@ -1598,7 +1598,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s5-1 (the-as (pointer dma-tag) a3-4) ) @@ -1784,7 +1784,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s1-0 (the-as (pointer dma-tag) a3-4) ) @@ -1835,7 +1835,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s1-1 (the-as (pointer dma-tag) a3-8) ) @@ -1929,7 +1929,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) (the-as pointer s4-1) (the-as (pointer dma-tag) a3-15) ) @@ -2226,7 +2226,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-2 (the-as (pointer dma-tag) a3-17) ) @@ -2257,7 +2257,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-3 (the-as (pointer dma-tag) a3-21) ) @@ -2317,7 +2317,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-1 (the-as (pointer dma-tag) a3-1) ) @@ -2359,7 +2359,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-3 (the-as (pointer dma-tag) a3-3) ) @@ -2402,7 +2402,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-4 (the-as (pointer dma-tag) a3-5) ) @@ -2433,7 +2433,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-5 (the-as (pointer dma-tag) a3-7) ) @@ -2499,7 +2499,7 @@ (debug-print-channels (-> self skel) (the-as symbol *stdcon*)) (add-debug-x #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self root trans) (new 'static 'rgba :r #xff :g #xff :b #xff :a #x80) ) diff --git a/test/decompiler/reference/engine/debug/debug_REF.gc b/test/decompiler/reference/engine/debug/debug_REF.gc index e79dedefe5..879a9863e7 100644 --- a/test/decompiler/reference/engine/debug/debug_REF.gc +++ b/test/decompiler/reference/engine/debug/debug_REF.gc @@ -1276,7 +1276,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s4-0 (the-as (pointer dma-tag) a3-1) ) @@ -1410,7 +1410,7 @@ (if (!= (+ s5-1 1) (-> arg0 h-first)) (add-debug-line #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> arg0 points s5-1) (-> arg0 points (+ s5-1 1)) (new 'static 'rgba :r #x80 :g #xc0 :b #x80 :a #x80) diff --git a/test/decompiler/reference/engine/debug/menu_REF.gc b/test/decompiler/reference/engine/debug/menu_REF.gc index 10862eae61..59c1e1f9e5 100644 --- a/test/decompiler/reference/engine/debug/menu_REF.gc +++ b/test/decompiler/reference/engine/debug/menu_REF.gc @@ -877,7 +877,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) s4-0 (the-as (pointer dma-tag) a3-1) ) @@ -927,7 +927,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) s5-0 (the-as (pointer dma-tag) a3-1) ) @@ -978,7 +978,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) s5-0 (the-as (pointer dma-tag) a3-1) ) @@ -1048,7 +1048,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) s4-0 (the-as (pointer dma-tag) a3-1) ) @@ -1119,7 +1119,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) s1-0 (the-as (pointer dma-tag) a3-2) ) @@ -1157,7 +1157,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) sv-32 (the-as (pointer dma-tag) a3-3) ) diff --git a/test/decompiler/reference/engine/debug/part-tester_REF.gc b/test/decompiler/reference/engine/debug/part-tester_REF.gc index 74c9e316c2..daa70d3d34 100644 --- a/test/decompiler/reference/engine/debug/part-tester_REF.gc +++ b/test/decompiler/reference/engine/debug/part-tester_REF.gc @@ -59,7 +59,7 @@ ) (add-debug-x #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self root trans) (the-as rgba (new 'static 'rgba :r #xff :g #xff :b #xff :a #x80)) ) diff --git a/test/decompiler/reference/engine/draw/drawable_REF.gc b/test/decompiler/reference/engine/draw/drawable_REF.gc index 330beb78f1..6f5e89b8f2 100644 --- a/test/decompiler/reference/engine/draw/drawable_REF.gc +++ b/test/decompiler/reference/engine/draw/drawable_REF.gc @@ -157,12 +157,19 @@ (when (sphere-cull (-> arg0 bsphere)) (add-debug-sphere #t - (bucket-id debug-draw0) + (bucket-id debug) (-> arg0 bsphere) (-> arg0 bsphere w) (new 'static 'rgba :r #x80 :a #x80) ) - (add-debug-text-3d #t (bucket-id debug-draw1) arg1 (-> arg0 bsphere) (font-color white) (the-as vector2h #f)) + (add-debug-text-3d + #t + (bucket-id debug-no-zbuf) + arg1 + (-> arg0 bsphere) + (font-color white) + (the-as vector2h #f) + ) ) ) ) @@ -708,12 +715,7 @@ ) ) (if *display-lights* - (add-debug-lights - #t - (bucket-id debug-draw0) - (the-as (inline-array light) (-> s3-0 light-group)) - (-> arg1 origin) - ) + (add-debug-lights #t (bucket-id debug) (the-as (inline-array light) (-> s3-0 light-group)) (-> arg1 origin)) ) (let ((at-0 *math-camera*)) (.lvf vf16 (&-> at-0 plane 0 quad)) @@ -1533,7 +1535,7 @@ (set! (-> new-frame bucket-group) (dma-buffer-add-buckets (-> new-frame calc-buf) 69)) ) (debug-init-buffer - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (new 'static 'gs-zbuf :zbp #x1c0 :psm (gs-psm ct24) :zmsk #x1) (new 'static 'gs-test :zte #x1 :ztst (gs-ztest always)) ) diff --git a/test/decompiler/reference/engine/draw/process-drawable_REF.gc b/test/decompiler/reference/engine/draw/process-drawable_REF.gc index 8f6d47ab8f..df3a15fd77 100644 --- a/test/decompiler/reference/engine/draw/process-drawable_REF.gc +++ b/test/decompiler/reference/engine/draw/process-drawable_REF.gc @@ -381,7 +381,7 @@ (defun draw-joint-spheres ((arg0 process-drawable)) (dotimes (s5-0 (-> arg0 node-list length)) (let ((a2-0 (vector<-cspace! (new-stack-vector0) (-> arg0 node-list data s5-0)))) - (add-debug-sphere #t (bucket-id debug-draw0) a2-0 819.2 (new 'static 'rgba :g #xff :a #x40)) + (add-debug-sphere #t (bucket-id debug) a2-0 819.2 (new 'static 'rgba :g #xff :a #x40)) ) ) #f diff --git a/test/decompiler/reference/engine/entity/entity_REF.gc b/test/decompiler/reference/engine/entity/entity_REF.gc index 06e300f06c..989503c4ad 100644 --- a/test/decompiler/reference/engine/entity/entity_REF.gc +++ b/test/decompiler/reference/engine/entity/entity_REF.gc @@ -841,7 +841,7 @@ (let ((s1-1 (the-as process-drawable (-> s0-0 extra process)))) (add-debug-x #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> s1-1 root trans) (new 'static 'rgba :r #x80 :g #xff :b #x80 :a #x80) ) @@ -857,7 +857,7 @@ ) (add-debug-text-3d #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (symbol->string (-> s1-1 state name)) (-> s1-1 root trans) (font-color white) @@ -889,7 +889,7 @@ (if (and (the-as structure v0-10) (= (-> v0-10 type) symbol)) (add-debug-text-3d #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (symbol->string v0-10) (-> s1-1 root trans) (font-color white) @@ -900,11 +900,11 @@ ) ) ((or (= arg0 'full) (-> s0-0 extra process)) - (add-debug-x #t (bucket-id debug-draw1) s1-0 (the-as rgba (if (-> s0-0 extra process) - (the-as uint #x8080ff80) - (the-as uint #x800000ff) - ) - ) + (add-debug-x #t (bucket-id debug-no-zbuf) s1-0 (the-as rgba (if (-> s0-0 extra process) + (the-as uint #x8080ff80) + (the-as uint #x800000ff) + ) + ) ) (set! sv-192 add-debug-text-3d) (set! sv-208 #t) @@ -961,13 +961,13 @@ (when (and (type-type? (-> s0-3 type) process-drawable) (nonzero? (-> (the-as process-drawable s0-3) draw))) (add-debug-x #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> (the-as process-drawable s0-3) root trans) (new 'static 'rgba :r #xff :g #xff :b #xff :a #x80) ) (add-debug-sphere #t - (bucket-id debug-draw0) + (bucket-id debug) (vector+! (new 'stack-no-clear 'vector) (-> (the-as process-drawable s0-3) draw origin) @@ -1001,15 +1001,15 @@ (s4-2 (-> (the-as process-drawable s5-2) root trans)) ) (when s3-2 - (add-debug-x #t (bucket-id debug-draw1) s4-2 (the-as rgba (if (-> s3-2 extra process) - (the-as uint #x8080ff80) - (the-as uint #x800000ff) - ) - ) + (add-debug-x #t (bucket-id debug-no-zbuf) s4-2 (the-as rgba (if (-> s3-2 extra process) + (the-as uint #x8080ff80) + (the-as uint #x800000ff) + ) + ) ) (add-debug-text-3d #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (res-lump-struct s3-2 'name string) s4-2 (the-as font-color (if (logtest? (-> s3-2 extra perm status) (entity-perm-status bit-0 bit-1)) @@ -1021,7 +1021,7 @@ ) (add-debug-text-3d #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (symbol->string (-> (the-as process-drawable s5-2) state name)) s4-2 (font-color white) @@ -1049,7 +1049,7 @@ ) (add-debug-sphere #t - (bucket-id debug-draw0) + (bucket-id debug) (vector+! (new 'stack-no-clear 'vector) (-> (the-as process-drawable s5-2) draw origin) @@ -1069,7 +1069,7 @@ (if v0-35 (add-debug-box #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (the-as vector (&+ v0-35 0)) (the-as vector (&+ v0-35 16)) (the-as rgba (if (is-object-visible? (-> s5-3 extra level) a1-31) @@ -1165,7 +1165,7 @@ (countdown (s2-4 (-> s3-4 length)) (add-debug-box #t - (bucket-id debug-draw0) + (bucket-id debug) (the-as vector (-> s3-4 data s2-4)) (the-as vector (+ (the-as uint (-> s3-4 data 0 max)) (* s2-4 32))) (the-as rgba (if (zero? (-> s4-4 index)) diff --git a/test/decompiler/reference/engine/game/game-info_REF.gc b/test/decompiler/reference/engine/game/game-info_REF.gc index 69fbef0f4b..1d5c53ee7e 100644 --- a/test/decompiler/reference/engine/game/game-info_REF.gc +++ b/test/decompiler/reference/engine/game/game-info_REF.gc @@ -11,8 +11,8 @@ ) ) ) - (add-debug-text-sphere #t (bucket-id debug-draw1) (-> obj trans) 819.2 (symbol->string (-> obj name)) s5-0) - (add-debug-vector #t (bucket-id debug-draw1) (-> obj trans) (-> obj normal) (meters 2.0) s5-0) + (add-debug-text-sphere #t (bucket-id debug-no-zbuf) (-> obj trans) 819.2 (symbol->string (-> obj name)) s5-0) + (add-debug-vector #t (bucket-id debug-no-zbuf) (-> obj trans) (-> obj normal) (meters 2.0) s5-0) ) 0 (none) @@ -734,10 +734,10 @@ ;; INFO: Return type mismatch int vs none. ;; Used lq/sq (defmethod debug-draw! continue-point ((obj continue-point)) - (add-debug-x #t (bucket-id debug-draw1) (-> obj trans) (new 'static 'rgba :r #xff :a #x80)) + (add-debug-x #t (bucket-id debug-no-zbuf) (-> obj trans) (new 'static 'rgba :r #xff :a #x80)) (add-debug-text-3d #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> obj name) (-> obj trans) (font-color white) @@ -746,7 +746,7 @@ (let ((a3-2 (vector-z-quaternion! (new-stack-vector0) (-> obj quat)))) (add-debug-vector #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> obj trans) a3-2 (meters 2.0) diff --git a/test/decompiler/reference/engine/game/generic-obs-h_REF.gc b/test/decompiler/reference/engine/game/generic-obs-h_REF.gc index a7ed5cd29b..198df89ed9 100644 --- a/test/decompiler/reference/engine/game/generic-obs-h_REF.gc +++ b/test/decompiler/reference/engine/game/generic-obs-h_REF.gc @@ -134,9 +134,9 @@ (grab-target handle :offset 120) (grab-event symbol :offset-assert 128) (release-event symbol :offset-assert 132) - (old-global-mask uint32 :offset-assert 136) - (old-self-mask uint32 :offset-assert 140) - (old-parent-mask uint32 :offset-assert 144) + (old-global-mask process-mask :offset-assert 136) + (old-self-mask process-mask :offset-assert 140) + (old-parent-mask process-mask :offset-assert 144) (look-at-target handle :offset-assert 152) (pov-target handle :offset-assert 160) (work-process handle :offset-assert 168) @@ -146,7 +146,7 @@ (userdata basic :offset-assert 196) (message basic :offset-assert 200) (border-value basic :offset-assert 204) - (mask-to-clear uint32 :offset-assert 208) + (mask-to-clear process-mask :offset-assert 208) (script pair :offset-assert 212) (script-line pair :offset-assert 216) (script-func (function none) :offset-assert 220) @@ -288,17 +288,17 @@ ;; definition of type othercam (deftype othercam (process) - ((hand handle :offset-assert 112) - (old-global-mask uint32 :offset-assert 120) - (mask-to-clear uint32 :offset-assert 124) - (cam-joint-index int32 :offset-assert 128) - (old-pos vector :inline :offset-assert 144) - (old-mat-z vector :inline :offset-assert 160) - (had-valid-frame basic :offset-assert 176) - (border-value basic :offset-assert 180) - (die? symbol :offset-assert 184) - (survive-anim-end? symbol :offset-assert 188) - (spooling? symbol :offset-assert 192) + ((hand handle :offset-assert 112) + (old-global-mask process-mask :offset-assert 120) + (mask-to-clear process-mask :offset-assert 124) + (cam-joint-index int32 :offset-assert 128) + (old-pos vector :inline :offset-assert 144) + (old-mat-z vector :inline :offset-assert 160) + (had-valid-frame basic :offset-assert 176) + (border-value basic :offset-assert 180) + (die? symbol :offset-assert 184) + (survive-anim-end? symbol :offset-assert 188) + (spooling? symbol :offset-assert 192) ) :heap-base #x60 :method-count-assert 14 diff --git a/test/decompiler/reference/engine/game/generic-obs_REF.gc b/test/decompiler/reference/engine/game/generic-obs_REF.gc index 2054c63bac..a299617fdb 100644 --- a/test/decompiler/reference/engine/game/generic-obs_REF.gc +++ b/test/decompiler/reference/engine/game/generic-obs_REF.gc @@ -1223,7 +1223,7 @@ ) ((= v1-0 'mask) (set! v0-0 (-> arg3 param 0)) - (set! (-> self mask-to-clear) v0-0) + (set! (-> self mask-to-clear) (the-as process-mask v0-0)) v0-0 ) ((= v1-0 'border) @@ -1283,7 +1283,7 @@ (defbehavior camera-tracker-init camera-tracker ((arg0 object)) (stack-size-set! (-> self main-thread) 512) (logclear! (-> self mask) (process-mask actor-pause movie enemy platform projectile)) - (set! (-> self mask-to-clear) (the-as uint #x4a0800)) + (set! (-> self mask-to-clear) (process-mask movie enemy platform projectile)) (set! (-> self grab-target) (the-as handle #f)) (set! (-> self grab-event) 'grab) (set! (-> self release-event) 'end-mode) diff --git a/test/decompiler/reference/engine/game/main_REF.gc b/test/decompiler/reference/engine/game/main_REF.gc index b6a0bc64a0..39d4320923 100644 --- a/test/decompiler/reference/engine/game/main_REF.gc +++ b/test/decompiler/reference/engine/game/main_REF.gc @@ -25,7 +25,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) gp-0 (the-as (pointer dma-tag) a3-2) ) @@ -62,7 +62,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) sprite-dma-data (the-as (pointer dma-tag) a3-1) ) @@ -265,7 +265,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) gp-0 (the-as (pointer dma-tag) a3-1) ) @@ -878,7 +878,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) dma-start (the-as (pointer dma-tag) a3-9) ) @@ -1271,7 +1271,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) s4-3 (the-as (pointer dma-tag) a3-6) ) @@ -1320,7 +1320,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s4-4 (the-as (pointer dma-tag) a3-9) ) diff --git a/test/decompiler/reference/engine/game/task/process-taskable_REF.gc b/test/decompiler/reference/engine/game/task/process-taskable_REF.gc index b8fa020658..060ee414a3 100644 --- a/test/decompiler/reference/engine/game/task/process-taskable_REF.gc +++ b/test/decompiler/reference/engine/game/task/process-taskable_REF.gc @@ -88,7 +88,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s5-0 (the-as (pointer dma-tag) a3-4) ) @@ -117,7 +117,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s5-1 (the-as (pointer dma-tag) a3-7) ) @@ -1356,7 +1356,7 @@ ) (('mask) (set! v0-0 (-> arg3 param 0)) - (set! (-> self mask-to-clear) (the-as uint v0-0)) + (set! (-> self mask-to-clear) (the-as process-mask v0-0)) v0-0 ) ) @@ -1478,7 +1478,7 @@ (set! (-> self border-value) #f) (set! (-> self die?) #f) (set! (-> self survive-anim-end?) arg2) - (set! (-> self mask-to-clear) (the-as uint #x4a0800)) + (set! (-> self mask-to-clear) (process-mask movie enemy platform projectile)) (set! (-> self event-hook) (-> othercam-running event)) (go othercam-running) 0 diff --git a/test/decompiler/reference/engine/geometry/vol_REF.gc b/test/decompiler/reference/engine/geometry/vol_REF.gc index e1c8992617..b51228f5e8 100644 --- a/test/decompiler/reference/engine/geometry/vol_REF.gc +++ b/test/decompiler/reference/engine/geometry/vol_REF.gc @@ -191,7 +191,7 @@ (dotimes (s3-0 (/ (-> obj point-count) 2)) (add-debug-line #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (the-as vector s4-0) (the-as vector (&-> s4-0 4)) (the-as rgba s5-0) diff --git a/test/decompiler/reference/engine/gfx/ripple_REF.gc b/test/decompiler/reference/engine/gfx/ripple_REF.gc index d6dd9e535f..66da0a07ca 100644 --- a/test/decompiler/reference/engine/gfx/ripple_REF.gc +++ b/test/decompiler/reference/engine/gfx/ripple_REF.gc @@ -144,7 +144,7 @@ ) (set! (-> s5-0 w) 0.0) (vector+! s5-0 s5-0 (-> arg0 root trans)) - (add-debug-sphere #t (bucket-id debug-draw0) s5-0 2048.0 (new 'static 'rgba :r #xff :g #xff :a #x80)) + (add-debug-sphere #t (bucket-id debug) s5-0 2048.0 (new 'static 'rgba :r #xff :g #xff :a #x80)) ) (none) ) diff --git a/test/decompiler/reference/engine/gfx/tfrag/tfrag-methods_REF.gc b/test/decompiler/reference/engine/gfx/tfrag/tfrag-methods_REF.gc index 2f47ddb2be..ec4f991765 100644 --- a/test/decompiler/reference/engine/gfx/tfrag/tfrag-methods_REF.gc +++ b/test/decompiler/reference/engine/gfx/tfrag/tfrag-methods_REF.gc @@ -11,7 +11,7 @@ (dotimes (s3-0 (/ (-> s4-0 length) 2)) (add-debug-line #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> s4-0 data (* s3-0 2)) (-> s4-0 data (+ (* s3-0 2) 1)) (new 'static 'rgba :r #xff :g #xff :b #xff :a #x80) diff --git a/test/decompiler/reference/engine/level/load-boundary_REF.gc b/test/decompiler/reference/engine/level/load-boundary_REF.gc index b5b75d2057..e4df254011 100644 --- a/test/decompiler/reference/engine/level/load-boundary_REF.gc +++ b/test/decompiler/reference/engine/level/load-boundary_REF.gc @@ -418,7 +418,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-0 (the-as (pointer dma-tag) a3-2) ) @@ -494,10 +494,10 @@ (let ((s2-0 (new 'stack-no-clear 'vector))) (set! (-> s2-0 quad) (-> s5-0 data (-> gp-0 vertex) quad)) (set! (-> s2-0 y) (-> s5-0 top-plane)) - (add-debug-sphere #t (bucket-id debug-draw1) s2-0 8192.0 (new 'static 'rgba :a #x80)) + (add-debug-sphere #t (bucket-id debug-no-zbuf) s2-0 8192.0 (new 'static 'rgba :a #x80)) (when (zero? (logand (-> s5-0 flags) (load-boundary-flags closed))) (set! (-> s2-0 y) (-> s5-0 bot-plane)) - (add-debug-sphere #t (bucket-id debug-draw1) s2-0 8192.0 (new 'static 'rgba :a #x80)) + (add-debug-sphere #t (bucket-id debug-no-zbuf) s2-0 8192.0 (new 'static 'rgba :a #x80)) ) ) ) diff --git a/test/decompiler/reference/engine/nav/navigate_REF.gc b/test/decompiler/reference/engine/nav/navigate_REF.gc index cf55cf20f8..3f06085620 100644 --- a/test/decompiler/reference/engine/nav/navigate_REF.gc +++ b/test/decompiler/reference/engine/nav/navigate_REF.gc @@ -236,7 +236,7 @@ ) (add-debug-line #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (vector+! gp-0 s5-0 (the-as vector (-> s2-0 (-> arg0 vertex 0)))) (vector+! s4-0 s5-0 (the-as vector (-> s2-0 (-> arg0 vertex 1)))) arg1 @@ -245,7 +245,7 @@ ) (add-debug-line #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (vector+! gp-0 s5-0 (the-as vector (-> s2-0 (-> arg0 vertex 1)))) (vector+! s4-0 s5-0 (the-as vector (-> s2-0 (-> arg0 vertex 2)))) arg1 @@ -254,7 +254,7 @@ ) (add-debug-line #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (vector+! gp-0 s5-0 (the-as vector (-> s2-0 (-> arg0 vertex 2)))) (vector+! s4-0 s5-0 (the-as vector (-> s2-0 (-> arg0 vertex 0)))) arg1 @@ -1748,18 +1748,18 @@ (set! (-> s5-0 debug-time) (the-as uint (-> *display* actual-frame-counter))) (add-debug-sphere (logtest? (-> obj flags) (nav-control-flags navcf1)) - (bucket-id debug-draw0) + (bucket-id debug) (-> s5-0 bounds) (-> s5-0 bounds w) (new 'static 'rgba :r #xff :g #xff :a #x20) ) - (add-debug-vector #t (bucket-id debug-draw1) (-> s5-0 origin) *x-vector* (meters 1.0) *color-red*) - (add-debug-vector #t (bucket-id debug-draw1) (-> s5-0 origin) *z-vector* (meters 1.0) *color-blue*) + (add-debug-vector #t (bucket-id debug-no-zbuf) (-> s5-0 origin) *x-vector* (meters 1.0) *color-red*) + (add-debug-vector #t (bucket-id debug-no-zbuf) (-> s5-0 origin) *z-vector* (meters 1.0) *color-blue*) (when (logtest? (-> obj flags) (nav-control-flags navcf2)) (dotimes (s3-0 (-> s5-0 vertex-count)) (add-debug-x #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (vector+! s4-0 (-> s5-0 origin) (the-as vector (-> s5-0 vertex s3-0))) *color-green* ) @@ -1795,9 +1795,9 @@ (set! (-> s0-0 x) (- (-> a0-15 x) (-> v1-20 x))) (set! (-> s0-0 y) (+ (-> a0-15 y) (-> v1-20 y))) (set! (-> s0-0 z) (+ (-> a0-15 z) (-> v1-20 z))) - (add-debug-line #t (bucket-id debug-draw1) sv-192 s2-0 (the-as rgba sv-208) #f (the-as rgba -1)) - (add-debug-line #t (bucket-id debug-draw1) s2-0 s1-0 (the-as rgba sv-208) #f (the-as rgba -1)) - (add-debug-line #t (bucket-id debug-draw1) s1-0 s0-0 (the-as rgba sv-208) #f (the-as rgba -1)) + (add-debug-line #t (bucket-id debug-no-zbuf) sv-192 s2-0 (the-as rgba sv-208) #f (the-as rgba -1)) + (add-debug-line #t (bucket-id debug-no-zbuf) s2-0 s1-0 (the-as rgba sv-208) #f (the-as rgba -1)) + (add-debug-line #t (bucket-id debug-no-zbuf) s1-0 s0-0 (the-as rgba sv-208) #f (the-as rgba -1)) (let ((t9-7 add-debug-line) (a0-19 #t) (a1-13 68) @@ -1873,7 +1873,7 @@ (when (logtest? (-> obj flags) (nav-control-flags navcf7)) (dotimes (s3-3 (the-as int (-> s5-0 static-sphere-count))) (let ((s2-2 (-> s5-0 static-sphere s3-3))) - (add-debug-sphere #t (bucket-id debug-draw0) (the-as vector s2-2) (-> s2-2 trans w) *color-blue*) + (add-debug-sphere #t (bucket-id debug) (the-as vector s2-2) (-> s2-2 trans w) *color-blue*) (let ((s1-2 add-debug-text-3d) (s0-2 #t) ) @@ -1911,7 +1911,7 @@ ) (add-debug-line #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (vector+! a2-22 v1-80 (the-as vector (-> obj portal 0))) (vector+! a3-13 v1-80 (the-as vector (-> obj portal 1))) (new 'static 'rgba :r #xff :g #x80 :b #x40 :a #x80) @@ -1922,7 +1922,7 @@ ) (add-debug-vector #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> obj shape trans) (-> obj travel) (meters 0.00024414062) @@ -1930,7 +1930,7 @@ ) (add-debug-vector #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (vector+! (new 'stack-no-clear 'vector) (-> obj shape trans) (new 'static 'vector :y 4096.0 :w 1.0)) (-> obj old-travel) (meters 0.00024414062) @@ -1938,7 +1938,7 @@ ) (add-debug-x #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (vector+! (new 'stack-no-clear 'vector) (-> obj shape trans) (-> obj travel)) (new 'static 'rgba :r #xff :g #xff :b #xff :a #x80) ) @@ -1946,7 +1946,7 @@ (when (logtest? (-> obj flags) (nav-control-flags navcf7)) (add-debug-sphere #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (the-as vector (-> obj shape root-prim prim-core)) (-> obj shape nav-radius) (new 'static 'rgba :g #xff :b #xff :a #x20) @@ -1956,7 +1956,7 @@ (vector+! s4-0 (-> s5-0 origin) (the-as vector (&-> v1-95 x))) (add-debug-sphere #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) s4-0 (- (-> v1-95 w) (-> obj shape nav-radius)) (new 'static 'rgba :g #xff :b #xff :a #x20) diff --git a/test/decompiler/reference/engine/nav/path_REF.gc b/test/decompiler/reference/engine/nav/path_REF.gc index 50a6f7e52d..502a980024 100644 --- a/test/decompiler/reference/engine/nav/path_REF.gc +++ b/test/decompiler/reference/engine/nav/path_REF.gc @@ -31,7 +31,7 @@ (if (and (logtest? (-> obj flags) (path-control-flag draw-line)) (< s5-1 (+ (-> obj curve num-cverts) -1))) (add-debug-line #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) s4-1 (-> obj cverts (+ s5-1 1)) (new 'static 'rgba :r #xff :g #x80 :a #x80) @@ -40,7 +40,7 @@ ) ) (if (logtest? (-> obj flags) (path-control-flag draw-point)) - (add-debug-x #t (bucket-id debug-draw1) s4-1 (new 'static 'rgba :r #xff :a #x80)) + (add-debug-x #t (bucket-id debug-no-zbuf) s4-1 (new 'static 'rgba :r #xff :a #x80)) ) (when (logtest? (-> obj flags) (path-control-flag draw-text)) (let ((s3-1 add-debug-text-3d) @@ -308,7 +308,7 @@ (if (and (logtest? (-> obj flags) (path-control-flag draw-line)) (> (-> obj curve num-cverts) 0)) (add-debug-curve2 #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (the-as curve (&-> obj cverts)) (new 'static 'rgba :r #xff :g #x80 :a #x80) #f @@ -317,7 +317,7 @@ (dotimes (s5-1 (-> obj curve num-cverts)) (let ((s4-1 (-> obj cverts s5-1))) (if (logtest? (-> obj flags) (path-control-flag draw-point)) - (add-debug-x #t (bucket-id debug-draw1) s4-1 (new 'static 'rgba :r #xff :a #x80)) + (add-debug-x #t (bucket-id debug-no-zbuf) s4-1 (new 'static 'rgba :r #xff :a #x80)) ) (when (logtest? (-> obj flags) (path-control-flag draw-text)) (let ((s3-1 add-debug-text-3d) diff --git a/test/decompiler/reference/engine/physics/trajectory_REF.gc b/test/decompiler/reference/engine/physics/trajectory_REF.gc index c92a12838c..9ec801bf4e 100644 --- a/test/decompiler/reference/engine/physics/trajectory_REF.gc +++ b/test/decompiler/reference/engine/physics/trajectory_REF.gc @@ -99,7 +99,7 @@ ) (add-debug-line #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) prev-pos pos (new 'static 'rgba :r #xff :a #x80) diff --git a/test/decompiler/reference/engine/sparticle/sparticle-launcher_REF.gc b/test/decompiler/reference/engine/sparticle/sparticle-launcher_REF.gc index d4d67e2776..7ae64adac6 100644 --- a/test/decompiler/reference/engine/sparticle/sparticle-launcher_REF.gc +++ b/test/decompiler/reference/engine/sparticle/sparticle-launcher_REF.gc @@ -1025,13 +1025,7 @@ (let ((gp-1 (vector+! (new 'stack-no-clear 'vector) arg0 (the-as vector (-> v1-0 bounds))))) (set! (-> gp-1 w) f0-0) (if (and *display-actor-vis* (or (not *display-actor-anim*) (name= *display-actor-anim* (-> obj proc name)))) - (add-debug-sphere - *display-actor-vis* - (bucket-id debug-draw0) - gp-1 - (-> gp-1 w) - (new 'static 'rgba :g #xff :a #x80) - ) + (add-debug-sphere *display-actor-vis* (bucket-id debug) gp-1 (-> gp-1 w) (new 'static 'rgba :g #xff :a #x80)) ) (sphere-in-view-frustum? (the-as sphere gp-1)) ) diff --git a/test/decompiler/reference/engine/target/joint-mod-h_REF.gc b/test/decompiler/reference/engine/target/joint-mod-h_REF.gc index b01bc96353..8528058592 100644 --- a/test/decompiler/reference/engine/target/joint-mod-h_REF.gc +++ b/test/decompiler/reference/engine/target/joint-mod-h_REF.gc @@ -66,7 +66,7 @@ ;; definition (debug) for function joint-mod-debug-draw ;; INFO: Return type mismatch int vs none. (defun-debug joint-mod-debug-draw ((mod joint-mod)) - (add-debug-matrix #t (bucket-id debug-draw1) (-> mod joint bone transform)) + (add-debug-matrix #t (bucket-id debug-no-zbuf) (-> mod joint bone transform)) 0 (none) ) @@ -381,7 +381,7 @@ (if (and (= (-> gp-0 process type) target) (!= (-> gp-0 blend) 0.0)) (add-debug-text-sphere *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> gp-0 target) 819.2 "look" @@ -486,7 +486,7 @@ (if (and (= (-> gp-0 process type) target) (!= (-> gp-0 blend) 0.0)) (add-debug-text-sphere *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> gp-0 target) 819.2 "look" diff --git a/test/decompiler/reference/engine/target/logic-target_REF.gc b/test/decompiler/reference/engine/target/logic-target_REF.gc index 773460b8cc..c742e7d50a 100644 --- a/test/decompiler/reference/engine/target/logic-target_REF.gc +++ b/test/decompiler/reference/engine/target/logic-target_REF.gc @@ -93,7 +93,7 @@ (let ((s2-0 (-> arg0 history-data (logand (+ (-> arg0 unknown-halfword00) s4-0) 127)))) (add-debug-line (logtest? s5-0 2) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> v1-19 trans) (-> s2-0 trans) (the-as rgba (+ #xffff00 (shl s4-0 24))) @@ -102,7 +102,7 @@ ) (add-debug-vector (logtest? s5-0 4) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> s2-0 trans) (-> s2-0 transv) (meters 0.000024414063) @@ -111,7 +111,7 @@ (when (zero? (logand (-> s2-0 status) 256)) (add-debug-line (logtest? s5-0 1) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> s1-0 intersect) (-> s2-0 intersect) (the-as rgba (+ #xffffff (shl s4-0 24))) @@ -124,7 +124,7 @@ ) (add-debug-vector (logtest? s5-0 32) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> s2-0 intersect) (-> s2-0 surface-normal) (meters 1.0) @@ -132,7 +132,7 @@ ) (add-debug-vector (logtest? s5-0 16) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> s2-0 intersect) (-> s2-0 local-normal) (meters 1.0) @@ -141,7 +141,7 @@ ) (add-debug-vector (logtest? s5-0 8) - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> s2-0 trans) (-> s2-0 transv-out) (meters 0.000024414063) @@ -651,7 +651,7 @@ (vector+! gp-1 gp-1 (-> self control trans)) (add-debug-text-sphere *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) gp-1 819.2 "target" @@ -829,7 +829,7 @@ (vector+! gp-1 gp-1 (-> self control trans)) (add-debug-text-sphere *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) gp-1 819.2 "ltransv" @@ -840,7 +840,7 @@ (vector+! gp-1 gp-1 (-> self control trans)) (add-debug-text-sphere *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) gp-1 819.2 "btransv" @@ -961,7 +961,7 @@ ) (add-debug-vector *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self control trans) gp-0 (meters 2.0) @@ -969,7 +969,7 @@ ) (add-debug-vector *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self control trans) s5-0 (meters 2.0) @@ -978,7 +978,7 @@ ) (add-debug-vector *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self control trans) (-> self control unknown-matrix01 vector 2) (meters 2.0) @@ -1232,7 +1232,7 @@ ) (add-debug-vector *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self control trans) (-> self control ground-poly-normal) (meters 2.0) @@ -1240,7 +1240,7 @@ ) (add-debug-vector *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self control trans) (-> self control local-normal) (meters 2.0) @@ -1248,7 +1248,7 @@ ) (add-debug-vector *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self control trans) (-> self control unknown-dynamics00 gravity-normal) (meters 2.5) @@ -1256,7 +1256,7 @@ ) (add-debug-vector *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self control trans) (-> self control dynam gravity-normal) (meters 3.0) @@ -1387,7 +1387,7 @@ (when *display-edge-collision-marks* (add-debug-vector #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> (the-as swingpole s4-0) root trans) (the-as vector (&-> s4-0 stack 16)) (meters 3.0) @@ -1395,21 +1395,21 @@ ) (add-debug-sphere #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> (the-as swingpole s4-0) root trans) (-> (the-as swingpole s4-0) range) (new 'static 'rgba :r #xff :g #xff :a #x80) ) (add-debug-sphere #t - (bucket-id debug-draw0) + (bucket-id debug) (-> self control unknown-vector90) 819.2 (new 'static 'rgba :r #xff :a #x80) ) - (add-debug-sphere #t (bucket-id debug-draw1) s3-0 819.2 (new 'static 'rgba :g #xff :a #x80)) - (add-debug-sphere #t (bucket-id debug-draw1) s2-0 819.2 (new 'static 'rgba :g #xff :b #x40 :a #x80)) - (add-debug-sphere #t (bucket-id debug-draw1) s5-0 819.2 (new 'static 'rgba :b #xff :a #x80)) + (add-debug-sphere #t (bucket-id debug-no-zbuf) s3-0 819.2 (new 'static 'rgba :g #xff :a #x80)) + (add-debug-sphere #t (bucket-id debug-no-zbuf) s2-0 819.2 (new 'static 'rgba :g #xff :b #x40 :a #x80)) + (add-debug-sphere #t (bucket-id debug-no-zbuf) s5-0 819.2 (new 'static 'rgba :b #xff :a #x80)) ) ) (let ((s4-2 (vector-! (new-stack-vector0) s5-0 (-> self control unknown-vector90)))) diff --git a/test/decompiler/reference/engine/target/sidekick_REF.gc b/test/decompiler/reference/engine/target/sidekick_REF.gc index 313b95d8fa..1a35242b1d 100644 --- a/test/decompiler/reference/engine/target/sidekick_REF.gc +++ b/test/decompiler/reference/engine/target/sidekick_REF.gc @@ -173,21 +173,21 @@ (debug-print-channels (-> self skel) (the-as symbol *stdcon*)) (add-debug-sphere *display-sidekick-stats* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self parent-override 0 control unknown-cspace10 parent bone transform vector 3) 409.6 (new 'static 'rgba :g #xff :a #x80) ) (add-debug-sphere *display-sidekick-stats* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self node-list data 3 bone transform vector 3) 409.6 (new 'static 'rgba :r #xff :g #xff :a #x80) ) (add-debug-sphere *display-sidekick-stats* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self draw origin) 409.6 (new 'static 'rgba :r #xff :g #x80 :a #x80) diff --git a/test/decompiler/reference/engine/target/target-util_REF.gc b/test/decompiler/reference/engine/target/target-util_REF.gc index 4bbea07c94..88c9eb5b44 100644 --- a/test/decompiler/reference/engine/target/target-util_REF.gc +++ b/test/decompiler/reference/engine/target/target-util_REF.gc @@ -1299,7 +1299,7 @@ ((logtest? (-> gp-0 state-flags) 1024) (add-debug-sphere *display-camera-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> gp-0 alt-cam-pos) 819.2 (new 'static 'rgba :r #xff :a #x80) @@ -1309,7 +1309,7 @@ ((logtest? #x20000 (-> gp-0 state-flags)) (add-debug-sphere *display-camera-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> gp-0 alt-cam-pos) 819.2 (new 'static 'rgba :r #xff :a #x80) @@ -1322,7 +1322,7 @@ (set! (-> (the-as vector s5-0) y) (fmax (-> (the-as vector s5-0) y) (-> gp-0 alt-cam-pos y))) (add-debug-sphere *display-camera-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (the-as vector s5-0) 819.2 (new 'static 'rgba :r #xff :a #x80) @@ -1333,7 +1333,7 @@ (else (add-debug-sphere *display-camera-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (the-as vector (&-> (-> gp-0 control) unknown-qword00)) 819.2 (new 'static 'rgba :r #xff :a #x80) diff --git a/test/decompiler/reference/engine/ui/hud-classes_REF.gc b/test/decompiler/reference/engine/ui/hud-classes_REF.gc index bd0a1d035e..e07d1ad421 100644 --- a/test/decompiler/reference/engine/ui/hud-classes_REF.gc +++ b/test/decompiler/reference/engine/ui/hud-classes_REF.gc @@ -181,7 +181,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-0 (the-as (pointer dma-tag) a3-7) ) @@ -619,7 +619,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s4-1 (the-as (pointer dma-tag) a3-12) ) @@ -864,7 +864,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-0 (the-as (pointer dma-tag) a3-7) ) @@ -1307,7 +1307,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-0 (the-as (pointer dma-tag) a3-7) ) @@ -1619,7 +1619,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-0 (the-as (pointer dma-tag) a3-7) ) diff --git a/test/decompiler/reference/engine/ui/progress/progress-draw_REF.gc b/test/decompiler/reference/engine/ui/progress/progress-draw_REF.gc index de02532bef..ae827af4cc 100644 --- a/test/decompiler/reference/engine/ui/progress/progress-draw_REF.gc +++ b/test/decompiler/reference/engine/ui/progress/progress-draw_REF.gc @@ -2045,7 +2045,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s4-0 (the-as (pointer dma-tag) a3-4) ) @@ -2154,7 +2154,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s4-4 (the-as (pointer dma-tag) a3-9) ) diff --git a/test/decompiler/reference/engine/ui/progress/progress_REF.gc b/test/decompiler/reference/engine/ui/progress/progress_REF.gc index bad5a971c3..4e13924def 100644 --- a/test/decompiler/reference/engine/ui/progress/progress_REF.gc +++ b/test/decompiler/reference/engine/ui/progress/progress_REF.gc @@ -2624,7 +2624,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-0 (the-as (pointer dma-tag) a3-4) ) @@ -2646,7 +2646,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-1 (the-as (pointer dma-tag) a3-6) ) @@ -2668,7 +2668,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-2 (the-as (pointer dma-tag) a3-8) ) @@ -2690,7 +2690,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-3 (the-as (pointer dma-tag) a3-10) ) diff --git a/test/decompiler/reference/engine/ui/text_REF.gc b/test/decompiler/reference/engine/ui/text_REF.gc index 283a948276..53c27f079e 100644 --- a/test/decompiler/reference/engine/ui/text_REF.gc +++ b/test/decompiler/reference/engine/ui/text_REF.gc @@ -243,16 +243,16 @@ (set-vector! s5-0 128 128 128 128) (add-debug-line2d #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (the-as vector (-> gp-0 vector)) (-> gp-0 vector 1) (the-as vector s5-0) ) - (add-debug-line2d #t (bucket-id debug-draw1) (-> gp-0 vector 1) (-> gp-0 vector 2) (the-as vector s5-0)) - (add-debug-line2d #t (bucket-id debug-draw1) (-> gp-0 vector 2) (-> gp-0 vector 3) (the-as vector s5-0)) + (add-debug-line2d #t (bucket-id debug-no-zbuf) (-> gp-0 vector 1) (-> gp-0 vector 2) (the-as vector s5-0)) + (add-debug-line2d #t (bucket-id debug-no-zbuf) (-> gp-0 vector 2) (-> gp-0 vector 3) (the-as vector s5-0)) (add-debug-line2d #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> gp-0 vector 3) (the-as vector (-> gp-0 vector)) (the-as vector s5-0) @@ -522,7 +522,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) s2-1 (the-as (pointer dma-tag) a3-3) ) diff --git a/test/decompiler/reference/levels/common/ropebridge_REF.gc b/test/decompiler/reference/levels/common/ropebridge_REF.gc index 246acc7165..3aa2df9b28 100644 --- a/test/decompiler/reference/levels/common/ropebridge_REF.gc +++ b/test/decompiler/reference/levels/common/ropebridge_REF.gc @@ -934,7 +934,7 @@ ) (countdown (s3-0 (-> obj tuning num-spring-points)) (vector-matrix*! s4-0 (-> s5-0 local-pos) gp-0) - (add-debug-sphere #t (bucket-id debug-draw0) s4-0 2048.0 (new 'static 'rgba :r #xff :g #xff :b #xff :a #x40)) + (add-debug-sphere #t (bucket-id debug) s4-0 2048.0 (new 'static 'rgba :r #xff :g #xff :b #xff :a #x40)) (&+! s5-0 48) ) ) diff --git a/test/decompiler/reference/levels/jungle/fisher_REF.gc b/test/decompiler/reference/levels/jungle/fisher_REF.gc index a2c7941bc1..7994410cac 100644 --- a/test/decompiler/reference/levels/jungle/fisher_REF.gc +++ b/test/decompiler/reference/levels/jungle/fisher_REF.gc @@ -1554,7 +1554,7 @@ ) (dma-bucket-insert-tag (-> *display* frames (-> *display* on-screen) frame bucket-group) - (bucket-id debug-draw0) + (bucket-id debug) gp-0 (the-as (pointer dma-tag) a3-1) ) diff --git a/test/decompiler/reference/levels/misty/mistycannon_REF.gc b/test/decompiler/reference/levels/misty/mistycannon_REF.gc index ca1fbfc9fa..5cfe64f04d 100644 --- a/test/decompiler/reference/levels/misty/mistycannon_REF.gc +++ b/test/decompiler/reference/levels/misty/mistycannon_REF.gc @@ -1936,7 +1936,7 @@ (if (nonzero? gp-0) (debug-percent-bar #t - (bucket-id debug-draw0) + (bucket-id debug) 192 160 (* 0.0033333334 (the float gp-0)) diff --git a/test/decompiler/reference/levels/ogre/ogreboss_REF.gc b/test/decompiler/reference/levels/ogre/ogreboss_REF.gc index f2b8c11002..ae4d5bf769 100644 --- a/test/decompiler/reference/levels/ogre/ogreboss_REF.gc +++ b/test/decompiler/reference/levels/ogre/ogreboss_REF.gc @@ -322,7 +322,7 @@ ) (add-debug-vector #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) s4-1 s3-0 (meters 0.00024414062) diff --git a/test/decompiler/reference/levels/racer_common/target-racer_REF.gc b/test/decompiler/reference/levels/racer_common/target-racer_REF.gc index edf60f2b8d..87bc1a8a13 100644 --- a/test/decompiler/reference/levels/racer_common/target-racer_REF.gc +++ b/test/decompiler/reference/levels/racer_common/target-racer_REF.gc @@ -203,7 +203,7 @@ (let ((f30-4 (* (deg-diff f30-3 0.0) (-> self racer slide-grip-mult)))) (add-debug-vector *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self control trans) (-> self control transv) (meters 0.000061035156) @@ -230,7 +230,7 @@ (vector-float*! gp-1 gp-1 0.5) (add-debug-vector *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self control trans) gp-1 (meters 0.00024414062) @@ -239,7 +239,7 @@ (vector+! gp-1 gp-1 (-> self control trans)) (add-debug-text-sphere *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) gp-1 819.2 "ltransv" @@ -250,7 +250,7 @@ (vector+! gp-1 gp-1 (-> self control trans)) (add-debug-text-sphere *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) gp-1 819.2 "nose" @@ -374,7 +374,7 @@ (+! (-> a2-1 y) (-> self racer cushion-bob)) (add-debug-sphere *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) a2-1 819.2 (new 'static 'rgba :r #xff :b #xff :a #x80) diff --git a/test/decompiler/reference/levels/sunken/target-tube_REF.gc b/test/decompiler/reference/levels/sunken/target-tube_REF.gc index 65fd7623d1..ca020148ce 100644 --- a/test/decompiler/reference/levels/sunken/target-tube_REF.gc +++ b/test/decompiler/reference/levels/sunken/target-tube_REF.gc @@ -212,7 +212,7 @@ (vector-flatten! s4-1 s4-1 (-> self control local-normal)) (add-debug-vector *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self control trans) s4-1 (meters 0.00024414062) @@ -280,7 +280,7 @@ (vector-flatten! s3-1 s3-1 (-> self control local-normal)) (add-debug-vector *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self control trans) s3-1 (meters 2.0) @@ -293,7 +293,7 @@ (vector-flatten! s4-2 s4-2 (-> self control local-normal)) (add-debug-vector *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self control trans) s4-2 (meters 2.0) @@ -330,7 +330,7 @@ (vector-float*! gp-1 gp-1 0.5) (add-debug-vector *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> self control trans) gp-1 (meters 0.00024414062) @@ -339,7 +339,7 @@ (vector+! gp-1 gp-1 (-> self control trans)) (add-debug-text-sphere *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) gp-1 819.2 "ltransv" @@ -350,7 +350,7 @@ (vector+! gp-1 gp-1 (-> self control trans)) (add-debug-text-sphere *display-target-marks* - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) gp-1 819.2 "nose" diff --git a/test/decompiler/reference/levels/swamp/swamp-rat-nest_REF.gc b/test/decompiler/reference/levels/swamp/swamp-rat-nest_REF.gc index b04b1721cb..db980df3cf 100644 --- a/test/decompiler/reference/levels/swamp/swamp-rat-nest_REF.gc +++ b/test/decompiler/reference/levels/swamp/swamp-rat-nest_REF.gc @@ -761,7 +761,7 @@ (let* ((a0-0 (-> self spawn-joint-array gp-0)) (a2-0 (-> self node-list data a0-0 bone transform)) ) - (add-debug-matrix #t (bucket-id debug-draw1) a2-0) + (add-debug-matrix #t (bucket-id debug-no-zbuf) a2-0) ) ) #f diff --git a/test/decompiler/reference/levels/village1/fishermans-boat_REF.gc b/test/decompiler/reference/levels/village1/fishermans-boat_REF.gc index 7bdcba49f4..6c32329184 100644 --- a/test/decompiler/reference/levels/village1/fishermans-boat_REF.gc +++ b/test/decompiler/reference/levels/village1/fishermans-boat_REF.gc @@ -138,7 +138,7 @@ (set! (-> s3-0 w) 1.0) (add-debug-line #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) s4-0 s3-0 (new 'static 'rgba :r #xff :g #xff :a #x80) @@ -147,7 +147,7 @@ ) (add-debug-vector #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) s4-0 s5-0 (meters 0.00024414062) @@ -509,14 +509,14 @@ (debug-draw (-> obj path)) (add-debug-sphere #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> obj dest-circle) (-> obj dest-circle w) (new 'static 'rgba :g #xff :a #x80) ) (add-debug-x #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (-> obj target-point) (new 'static 'rgba :r #xff :g #xff :b #xff :a #x80) ) @@ -955,14 +955,14 @@ (dummy-16 (-> self controller)) (add-debug-sphere #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (the-as vector (-> self boat-path)) 614400.0 (new 'static 'rgba :b #xff :a #x80) ) (add-debug-sphere #t - (bucket-id debug-draw1) + (bucket-id debug-no-zbuf) (the-as vector (&-> self stack 848)) 409600.0 (new 'static 'rgba :b #xff :a #x80)