void GfxTransitions::doit(Common::Rect picRect) { const GfxTransitionTranslateEntry *translationEntry = _translationTable; _picRect = picRect; if (_translationTable) { // We need to translate the ID translationEntry = translateNumber(_number, _translationTable); if (translationEntry) { _number = translationEntry->newId; _blackoutFlag = translationEntry->blackoutFlag; } else { warning("Transitions: old ID %d not supported", _number); _number = SCI_TRANSITIONS_NONE; _blackoutFlag = false; } } if (_blackoutFlag) { // We need to find out what transition we are supposed to use for // blackout translationEntry = translateNumber(_number, blackoutTransitionIDs); if (translationEntry) { doTransition(translationEntry->newId, true); } else { warning("Transitions: ID %d not listed in blackoutTransitionIDs", _number); } } _palette->palVaryPrepareForTransition(); // Now we do the actual transition to the new screen doTransition(_number, false); if (picRect.bottom != _screen->getHeight()) { // TODO: this is a workaround for lsl6 not showing menubar when playing // There is some new code in the sierra sci in ShowPic that seems to do // something similar to this _screen->copyToScreen(); g_system->updateScreen(); } _screen->_picNotValid = 0; }
void GfxTransitions::doit(Common::Rect picRect) { const GfxTransitionTranslateEntry *translationEntry = _translationTable; _picRect = picRect; if (_translationTable) { // We need to translate the ID translationEntry = translateNumber(_number, _translationTable); if (translationEntry) { _number = translationEntry->newId; _blackoutFlag = translationEntry->blackoutFlag; } else { warning("Transitions: old ID %d not supported", _number); _number = SCI_TRANSITIONS_NONE; _blackoutFlag = false; } } if (_blackoutFlag) { // We need to find out what transition we are supposed to use for // blackout translationEntry = translateNumber(_number, blackoutTransitionIDs); if (translationEntry) { doTransition(translationEntry->newId, true); } else { warning("Transitions: ID %d not listed in blackoutTransitionIDs", _number); } } _palette->palVaryPrepareForTransition(); // Now we do the actual transition to the new screen doTransition(_number, false); _screen->_picNotValid = 0; }
int main(void) { char buffer[OPTION_BUF_SIZE + EXTRA_SPACES]; char buffer2[OPTION_BUF_SIZE + EXTRA_SPACES]; int optionStats[NUM_OPTION_STATS] = {0}; int loop = 1; int fibbInc = optionStats[1]; while(loop==1) { printf("\tMain Menu:\n"); printf("----------------------\n"); printf("1) Translating alphabetic number\n"); printf("2) Fibonacci numbers\n"); printf("3) Sort line\n"); printf("4) Find substrings\n"); printf("5) Bushfire spread simulation\n"); printf("6) Session summary\n"); printf("7) Exit\n"); printf("Select your option:\n"); fgets(buffer, MAX_OPTION_INPUT + EXTRA_SPACES, stdin); printf("\n\n\n"); switch(atoi(buffer)) { case 1: printf("Translating alphabetic numbers\n"); printf("------------------------------------\n"); printf("Enter in a letter:\n"); fgets(buffer, OPTION_BUF_SIZE + EXTRA_SPACES, stdin); translateNumber(&optionStats[0], buffer); break; case 2: printf("Fibonacci Numbers\n"); printf("-----------------------\n"); printf("Enter in a number: \n"); fgets(buffer, OPTION_BUF_SIZE + EXTRA_SPACES, stdin); printf("\n"); fibonacciNumbers(&fibbInc, atoi(buffer)); printf("\n"); break; case 3: printf("Sort Line\n"); printf("------------------\n"); printf("\n"); printf("Enter a string (1-40 characters): "); fgets(buffer, OPTION_BUF_SIZE + EXTRA_SPACES, stdin); printf("\n"); sortLine(&optionStats[2],buffer); break; case 4: printf("Find substring\n"); printf("--------------------------\n"); printf("\n"); printf("Enter in a string (1-20 characters): "); fgets(buffer, OPTION_BUF_SIZE + EXTRA_SPACES, stdin); printf("\n"); printf("Enter in a substring (1-20 characters): "); fgets(buffer2, OPTION_BUF_SIZE + EXTRA_SPACES, stdin); findSubstring(&optionStats[3],buffer,buffer2); break; case 7: exit(-1); break; } } system("PAUSE"); return EXIT_SUCCESS; }