void BSpit::xblabbookprevpage(const ArgumentArray &args) { // Get the page variable uint32 &page = _vm->_vars["blabpage"]; // Keep turning pages while the mouse is pressed while (keepTurningPages()) { // Check for the first page if (page == 1) return; // Update the page number page--; pageTurn(kRivenTransitionWipeRight); _vm->getCard()->drawPicture(page); if (page == 14) { labBookDrawDomeCombination(); } _vm->doFrame(); waitForPageTurnSound(); } }
void ASpit::xatrapbookopen(const ArgumentArray &args) { // Open the trap book _vm->_vars["atrap"] = 1; pageTurn(kRivenTransitionWipeLeft); _vm->getCard()->enter(false); }
void ASpit::xatrapbookclose(const ArgumentArray &args) { // Close the trap book _vm->_vars["atrap"] = 0; pageTurn(kRivenTransitionWipeRight); // Stop the flyby movie to prevent a glitch where the book does not actually // close because the movie continues to draw over the closed book picture. // This glitch also happened in the original engine with transitions disabled. RivenVideo *flyby = _vm->_video->getSlot(1); flyby->close(); _vm->getCard()->enter(false); }
void OSpit::xogehnbooknextpage(const ArgumentArray &args) { // Get the page variable uint32 &page = _vm->_vars["ogehnpage"]; // Keep turning pages while the mouse is pressed while (keepTurningPages()) { // Check for the last page if (page == 13) return; // Update the page number page++; pageTurn(kRivenTransitionWipeLeft); _vm->getCard()->drawPicture(page); _vm->doFrame(); waitForPageTurnSound(); } }
void ASpit::xaatrusbooknextpage(const ArgumentArray &args) { // Get the page variable uint32 &page = _vm->_vars["aatrusbook"]; // Keep turning pages while the mouse is pressed bool firstPageTurn = true; while ((mouseIsDown() || firstPageTurn) && !_vm->hasGameEnded()) { // Check for the last page if (((_vm->getFeatures() & GF_DEMO) && page == 6) || page == 10) return; if (!pageTurn(kRivenTransitionWipeLeft)) { return; } // Update the page number page++; firstPageTurn = false; _vm->getCard()->drawPicture(page); _vm->doFrame(); } }
void ASpit::xaatrusbookprevpage(const ArgumentArray &args) { // Get the page variable uint32 &page = _vm->_vars["aatrusbook"]; // Keep turning pages while the mouse is pressed bool firstPageTurn = true; while (mouseIsDown() || firstPageTurn) { // Check for the first page if (page == 1) return; if (!pageTurn(kRivenTransitionWipeRight)) { return; } // Update the page number page--; firstPageTurn = false; _vm->getCard()->drawPicture(page); _vm->doFrame(); } }
void ASpit::xacathbooknextpage(const ArgumentArray &args) { // Get the variable uint32 &page = _vm->_vars["acathbook"]; // Keep turning pages while the mouse is pressed bool firstPageTurn = true; while ((mouseIsDown() || firstPageTurn) && !_vm->hasGameEnded()) { // Check for the last page if (page == 49) return; if (!pageTurn(kRivenTransitionWipeUp)) { return; } // Update the page number page++; firstPageTurn = false; cathBookDrawPage(page); _vm->doFrame(); } }
void YunClient::prePage() { pageTurn(-1); }
void YunClient::nextPage() { pageTurn(1); }