[Scummvm-git-logs] scummvm master -> a1ad38b479dae988f8c1f386fe364ec962f8433f
dreammaster
noreply at scummvm.org
Tue May 26 02:50:26 UTC 2026
This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
72b05ea749 MADS: DRAGONSPHERE: Cleanups for room 118
f33a2d1d19 MADS: DRAGONSPHERE: Cleanup for room 110
a1ad38b479 MADS: DRAGONSPHERE: Fix crash exiting castle
Commit: 72b05ea749fff43f9d58d38fe66de0d3c4c29ebc
https://github.com/scummvm/scummvm/commit/72b05ea749fff43f9d58d38fe66de0d3c4c29ebc
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2026-05-26T12:50:17+10:00
Commit Message:
MADS: DRAGONSPHERE: Cleanups for room 118
Changed paths:
engines/mads/madsv2/dragonsphere/rooms/room118.cpp
diff --git a/engines/mads/madsv2/dragonsphere/rooms/room118.cpp b/engines/mads/madsv2/dragonsphere/rooms/room118.cpp
index 7c2b94e6cfa..c9ccd9a6871 100644
--- a/engines/mads/madsv2/dragonsphere/rooms/room118.cpp
+++ b/engines/mads/madsv2/dragonsphere/rooms/room118.cpp
@@ -131,32 +131,32 @@ static void room_118_parser() {
goto handled;
}
- if (player_parse(3, 0) || player_parse(30, 0)) {
- if (player_parse(171, 0)) { text_show(11802); goto handled; }
- if (player_parse(157, 0)) { text_show(11803); goto handled; }
- if (player_parse(161, 0)) { text_show(11804); goto handled; }
- if (player_parse(160, 0)) { text_show(11806); goto handled; }
- if (player_parse(159, 0)) { text_show(11807); goto handled; }
- if (player_parse(24, 0)) { text_show(11809); goto handled; }
- if (player_parse(164, 0)) { text_show(11810); goto handled; }
- if (player_parse(180, 0)) { text_show(11811); goto handled; }
- if (player_parse(272, 0)) { text_show(11812); goto handled; }
+ if (player_said_1(look) || player_said_1(look_at)) {
+ if (player_said_1(courtyard)) { text_show(11802); goto handled; }
+ if (player_said_1(castle_gate)) { text_show(11803); goto handled; }
+ if (player_said_1(haystack)) { text_show(11804); goto handled; }
+ if (player_said_1(barrels)) { text_show(11806); goto handled; }
+ if (player_said_1(barrel)) { text_show(11807); goto handled; }
+ if (player_said_1(window)) { text_show(11809); goto handled; }
+ if (player_said_1(gate_to_throne_room)) { text_show(11810); goto handled; }
+ if (player_said_1(battlement)) { text_show(11811); goto handled; }
+ if (player_said_1(guard)) { text_show(11812); goto handled; }
}
- if (player_parse(8, 272, 0)) {
+ if (player_said_2(talk_to, guard)) {
text_show(11813);
goto handled;
}
- if (player_parse(6, 0)) {
- if (player_parse(160, 0) || player_parse(159, 0)) {
+ if (player_said_1(open)) {
+ if (player_said_1(barrels) || player_said_1(barrel)) {
text_show(11808);
goto handled;
}
}
- if (player_parse(6, 0) || player_parse(10, 0) || player_parse(162, 0)) {
- if (player_parse(161, 0)) {
+ if (player_said_1(open) || player_said_1(pull) || player_said_1(root_through)) {
+ if (player_said_1(haystack)) {
text_show(11805);
goto handled;
}
Commit: f33a2d1d19d35020d988f94403beb87ce2a16106
https://github.com/scummvm/scummvm/commit/f33a2d1d19d35020d988f94403beb87ce2a16106
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2026-05-26T12:50:17+10:00
Commit Message:
MADS: DRAGONSPHERE: Cleanup for room 110
Changed paths:
engines/mads/madsv2/dragonsphere/rooms/room110.cpp
diff --git a/engines/mads/madsv2/dragonsphere/rooms/room110.cpp b/engines/mads/madsv2/dragonsphere/rooms/room110.cpp
index fab538e75fe..9c07d58a970 100644
--- a/engines/mads/madsv2/dragonsphere/rooms/room110.cpp
+++ b/engines/mads/madsv2/dragonsphere/rooms/room110.cpp
@@ -108,7 +108,6 @@ static Scratch scratch;
#define fx_pid_in_well 2 /* rm110b0 */
#define fx_reach_fruit 3 /* kgrh_9 */
-
/* ======================== Triggers ========================= */
#define ROOM_110_GOT_FRUIT 70
@@ -223,14 +222,6 @@ static Scratch scratch;
/* hand on chin: 74 - 90 */
/* */
-/* conversations */
-/* conv008.con */
-/* conv014.con */
-/* conv009.con */
-/* conv006.con */
-/* conv007.con */
-/* conv010.con */
-
#define CONV_FAERIE 8
#define CONV_SLATHAN 14
#define CONV_SOPTUS 9
@@ -687,8 +678,6 @@ static void room_110_init() {
global[invoked_from_111] = false;
- /* kernel_timing_trigger (10, MUSIC); */
-
section_1_music();
}
@@ -700,13 +689,10 @@ static void handle_animation_guard_king() {
guard_king_reset_frame = -1;
switch (local->guard_king_frame) {
-
case 1: /* end of freeze */
case 11: /* end of talk */
case 17: /* end of talk */
-
switch (local->guard_king_action) {
-
case CONV7_SHUT_UP:
guard_king_reset_frame = 0;
break;
@@ -748,7 +734,6 @@ static void handle_animation_guard_pid() {
guard_pid_reset_frame = -1;
switch (local->guard_pid_frame) {
-
case 29:
global_speech_go(7); /* hurl */
break;
@@ -1068,7 +1053,7 @@ static void room_110_merchant_random_moves() {
}
}
}
- } /* gotta love them braces! */
+ }
}
static void room_110_merchant_noone_talking() {
@@ -1574,7 +1559,6 @@ static void room_110_daemon() {
local->new_action[2] = CONV9_LOOK_AT_KING;
conv_release();
}
-
break;
case 54:
@@ -1620,12 +1604,8 @@ static void room_110_daemon() {
case 74:
/* end of turn to face merchant, must stand facing in */
-
- /* if ((local->new_action[2] == CONV9_BOW_TURN_TO_MERCHANT) || */
- /* (local->new_action[2] == CONV9_TALK_TURN_TO_MERCHANT)) { */
local->new_action[2] = CONV9_STAND_FACE_IN;
reset_frame[2] = 0;
- /* } */
break;
}
@@ -1745,7 +1725,6 @@ static void room_110_daemon() {
}
-
if (reset_frame[3] >= 0) {
if (reset_frame[3] != kernel_anim[aa[3]].frame) {
kernel_reset_animation(aa[3], reset_frame[3]);
@@ -1757,7 +1736,6 @@ static void room_110_daemon() {
/* obtaining fruit from the merchant */
if (kernel.trigger == ROOM_110_GOT_FRUIT) {
- /* sound_queue (N_PickUpObject006);*/
sound_play(N_TakeObjectSnd);
inter_give_to_player(fruit);
object_examine(fruit, 807, 0);
@@ -1853,16 +1831,14 @@ static void handle_conv_guard_pid() {
local->guard_pid_talk_count = 0;
}
-
-void handle_conv_guard_heal() {
+static void handle_conv_guard_heal() {
if (player_verb == conv012_gash_b_b) {
player.x = 100;
new_room = 112;
}
}
-
-void room_110_check_score() {
+static void room_110_check_score() {
switch (global[talked_to_status]) {
case TALKED_TO_NONE:
@@ -2026,7 +2002,7 @@ void room_110_check_score() {
}
}
-void handle_conv_faerie() {
+static void handle_conv_faerie() {
if ((player_verb == conv008_query_wish) ||
(player_verb == conv008_query_humans) ||
(player_verb == conv008_query_where) ||
@@ -2069,7 +2045,7 @@ void handle_conv_faerie() {
}
}
-void handle_conv_slathan() {
+static void handle_conv_slathan() {
if (player_verb == conv014_heehee_only) {
switch (kernel.trigger) {
case 0:
@@ -2128,8 +2104,7 @@ void handle_conv_slathan() {
}
}
-
-void handle_conv_soptus() {
+static void handle_conv_soptus() {
/* trigger 1 will not go into effect until conv is released in daemon */
if (player_verb == conv009_hello1a_only) {
switch (kernel.trigger) {
@@ -2199,7 +2174,7 @@ void handle_conv_soptus() {
}
}
-void handle_conv_merchant() {
+static void handle_conv_merchant() {
if (player_verb == conv006_wares_greeting) {
switch (kernel.trigger) {
case 0:
@@ -2260,8 +2235,7 @@ void handle_conv_merchant() {
}
}
-
-void room_110_pre_parser() {
+static void room_110_pre_parser() {
if (kernel.trigger == ROOM_110_GO_TO_120) {
player_cancel_command();
local->activate_timer = false;
@@ -2335,7 +2309,6 @@ void room_110_pre_parser() {
player_cancel_command();
} else if (player.need_to_walk) {
-
if (player_said_1(walk_down)) {
conv_reset(CONV_GUARD_PID);
player.commands_allowed = false;
Commit: a1ad38b479dae988f8c1f386fe364ec962f8433f
https://github.com/scummvm/scummvm/commit/a1ad38b479dae988f8c1f386fe364ec962f8433f
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2026-05-26T12:50:17+10:00
Commit Message:
MADS: DRAGONSPHERE: Fix crash exiting castle
Dragonsphere doesn't actually use interface anim files, though
some of the earlier rooms have them.. maybe dummy ones before
they changed kernel_room_startup to dispense with the need for
them entirely. Also the kernel_set_interface_mode was changed
so that it always reloads the plain interface background when
called, whereas previous games only reloaded the background
when the mode changed.
Changed paths:
engines/mads/madsv2/core/kernel.cpp
diff --git a/engines/mads/madsv2/core/kernel.cpp b/engines/mads/madsv2/core/kernel.cpp
index 3ebb60eed69..717e3390f4b 100644
--- a/engines/mads/madsv2/core/kernel.cpp
+++ b/engines/mads/madsv2/core/kernel.cpp
@@ -685,19 +685,25 @@ int kernel_room_startup(int newRoom, int initial_variant, const char *interface,
goto done;
}
- kernel_load_vocab();
-
pal_activate_shadow(&kernel_shadow_inter);
- load_flags = ANIM_LOAD_BACKGROUND | ANIM_INTERFACE;
- if (kernel.translating)
- load_flags |= ANIM_LOAD_TRANSLATE;
- inter_anim = (AnimInterPtr)anim_load(interface, &scr_inter_orig, nullptr, nullptr,
- nullptr, nullptr, nullptr, nullptr, nullptr, load_flags);
- if (!inter_anim) goto done;
-
- if (!inter_anim->font) {
- mem_free(inter_anim);
+
+ if (g_engine->getGameID() == GType_Dragonsphere) {
inter_anim = nullptr;
+
+ } else {
+ kernel_load_vocab();
+
+ load_flags = ANIM_LOAD_BACKGROUND | ANIM_INTERFACE;
+ if (kernel.translating)
+ load_flags |= ANIM_LOAD_TRANSLATE;
+ inter_anim = (AnimInterPtr)anim_load(interface, &scr_inter_orig, nullptr, nullptr,
+ nullptr, nullptr, nullptr, nullptr, nullptr, load_flags);
+ if (!inter_anim) goto done;
+
+ if (!inter_anim->font) {
+ mem_free(inter_anim);
+ inter_anim = nullptr;
+ }
}
// Set up interface background screen
@@ -2766,7 +2772,7 @@ done:
}
void kernel_set_interface_mode(int mode) {
- if (mode != inter_input_mode) {
+ if (mode != inter_input_mode || g_engine->getGameID() == GType_Dragonsphere) {
char fname[80];
Common::strcpy_s(fname, kernel.interface);
char *dot = strchr(fname, '.');
More information about the Scummvm-git-logs
mailing list