/* ScummVM - Graphic Adventure Engine * * ScummVM is the legal property of its developers, whose names * are too numerous to list here. Please refer to the COPYRIGHT * file distributed with this source distribution. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see 319 && _G(player_info).x < 413 && _G(player_info).y > 280 && _G(player_info).y < 305 && _G(player_info).facing > 2 && _G(player_info).facing < 7 && _G(flags)[V273] == 1) { if (_G(flags)[kStandingOnKibble]) { _G(flags)[kStandingOnKibble] = 1; } else { _G(flags)[kStandingOnKibble] = 1; intr_cancel_sentence(); _G(wilbur_should) = 14; kernel_trigger_dispatch_now(kCHANGE_WILBUR_ANIMATION); } } else { _G(flags)[kStandingOnKibble] = 0; } break; default: _G(kernel).continue_handling_trigger = true; break; } } void Room604::pre_parser() { _G(kernel).trigger_mode = KT_DAEMON; if (_G(flags)[kHampsterState] == 6006 && player_said("TUBE ")) { intr_cancel_sentence(); wilbur_speech("600w003"); } else if (player_said("RAY GUN", "WOOD SHAVINGS")) { _G(player).command_ready = false; if (_G(flags)[V274] == 0) { _G(wilbur_should) = 17; player_hotspot_walk_override(353, 313, 10, kCHANGE_WILBUR_ANIMATION); } } else if (player_said("WOOD SHAVINGS", "KIBBLE")) { _G(wilbur_should) = 10; player_hotspot_walk_override(308, 301, 10, kCHANGE_WILBUR_ANIMATION); } else if (player_said("RAY GUN", "GERBILS")) { _G(wilbur_should) = 8; player_hotspot_walk_override(286, 297, 10, kCHANGE_WILBUR_ANIMATION); } else if (player_said("KIBBLE", "FLOOR")) { if (_G(flags)[V273]) { _G(player).need_to_walk = false; _G(player).need_to_walk = false; wilbur_speech("600w008z"); } else { _G(wilbur_should) = 16; player_hotspot_walk_override(425, 303, 9, kCHANGE_WILBUR_ANIMATION); _G(player).command_ready = false; } return; } else { return; } _G(player).command_ready = false; } void Room604::parser() { _G(kernel).trigger_mode = KT_DAEMON; const bool rayGun = player_said("RAY GUN"); if (_G(walker).wilbur_said(SAID)) { // Already handled } else if (player_said("GEAR", "WOOD SHAVINGS")) { player_set_commands_allowed(false); if (_G(flags)[kHampsterState] == 6000) { _G(wilbur_should) = 9; wilbur_speech(_G(flags)[V248] ? "604w013" : "604w011", kCHANGE_WILBUR_ANIMATION); } else { _G(wilbur_should) = 13; wilbur_speech("604w005", kCHANGE_WILBUR_ANIMATION); } } else if (player_said("GEAR", "TUBE ") || player_said("CLIMB IN", "TUBE ")) { _G(flags)[V246] = 1; Section6::_state2 = 2; _G(wilbur_should) = 5; kernel_trigger_dispatch_now(kCHANGE_WILBUR_ANIMATION); } else if (player_said("GEAR", "TUBE") || player_said("CLIMB IN", "TUBE")) { _G(flags)[V246] = 1; Section6::_state2 = 0; _G(wilbur_should) = 4; kernel_trigger_dispatch_now(kCHANGE_WILBUR_ANIMATION); } else if (rayGun && player_said("APPLE CORE")) { wilbur_speech("604w029"); } else if (rayGun && player_said("ASHES")) { wilbur_speech("600w004"); } else if (rayGun && player_said("BOTTLE CAP")) { wilbur_speech("600w004"); } else if (player_said("LOOK AT", "WOOD SHAVINGS")) { if (_G(flags)[V248] == 0) { wilbur_speech("604w007"); } else if (_G(flags)[kHampsterState] == 6000) { wilbur_speech("604w008"); } else { wilbur_speech("604w005"); } } else { return; } _G(player).command_ready = false; } } // namespace Rooms } // namespace Burger } // namespace M4