void VolumeDown(void) { if (FXVolume() >= 8) { SetFXVolume(FXVolume() - 8); PlaySound(SND_SWITCH, 0, 255); } }
void VolumeUp() { if (FXVolume() < 64) { SetFXVolume(FXVolume() + 8); PlaySound(SND_SWITCH, 0, 255); } }
void SaveConfig(void) { FILE *f; debug(D_NORMAL, "begin\n"); f = fopen(GetConfigFilePath("options.cnf"), "w"); if (f) { fprintf(f, "%d %d %d %d %d %d %d %d %d\n", gOptions.displayFPS, gOptions.displayTime, gOptions.playersHurt, gOptions.copyMode, gOptions.brightness, gOptions.swapButtonsJoy1, gOptions.swapButtonsJoy2, gOptions.xSplit, gOptions.ySplit); fprintf(f, "%d\n%d %d %d %d %d %d\n", gPlayer1Data.controls, gPlayer1Data.keys[0], gPlayer1Data.keys[1], gPlayer1Data.keys[2], gPlayer1Data.keys[3], gPlayer1Data.keys[4], gPlayer1Data.keys[5]); fprintf(f, "%d\n%d %d %d %d %d %d\n", gPlayer2Data.controls, gPlayer2Data.keys[0], gPlayer2Data.keys[1], gPlayer2Data.keys[2], gPlayer2Data.keys[3], gPlayer2Data.keys[4], gPlayer2Data.keys[5]); fprintf(f, "%d\n", gOptions.mapKey); fprintf(f, "%d %d %d %d\n", FXVolume(), MusicVolume(), FXChannels(), MinMusicChannels()); fprintf(f, "%d\n", 0); // DynamicInterrupts fprintf(f, "%s\n", ModuleDirectory()); fprintf(f, "%u\n", gCampaign.seed); fprintf(f, "%d %d\n", gOptions.difficulty, gOptions.slowmotion); fprintf(f, "%d\n", gOptions.density); fprintf(f, "%d\n", gOptions.npcHp); fprintf(f, "%d\n", gOptions.playerHp); fprintf(f, "%dx%d:%d:%d\n", Gfx_GetHint(HINT_WIDTH), Gfx_GetHint(HINT_HEIGHT), Gfx_GetHint(HINT_FULLSCREEN), Gfx_GetHint(HINT_SCALEFACTOR) ); fclose(f); debug(D_NORMAL, "saved config\n"); } return; }
int SelectVolume(int cmd) { static int index = 0; char s[10]; int x, y; if (cmd == CMD_ESC) return MODE_MAIN; if (AnyButton(cmd) && index == VOLUME_COUNT - 1) return MODE_MAIN; if (Left(cmd)) { switch (index) { case 0: if (FXVolume() > 8) SetFXVolume(FXVolume() - 8); break; case 1: if (MusicVolume() > 8) SetMusicVolume(MusicVolume() - 8); break; case 2: if (FXChannels() > 2) SetFXChannels(FXChannels() - 2); break; case 3: break; } PlaySound(SND_SWITCH, 0, 255); } else if (Right(cmd)) { switch (index) { case 0: if (FXVolume() < 64) SetFXVolume(FXVolume() + 8); break; case 1: if (MusicVolume() < 64) SetMusicVolume(MusicVolume() + 8); break; case 2: if (FXChannels() < 8) SetFXChannels(FXChannels() + 2); break; case 3: break; } PlaySound(SND_SWITCH, 0, 255); } else if (Up(cmd)) { index--; if (index < 0) index = VOLUME_COUNT - 1; PlaySound(SND_SWITCH, 0, 255); } else if (Down(cmd)) { index++; if (index >= VOLUME_COUNT) index = 0; PlaySound(SND_SWITCH, 0, 255); } TextStringSpecial("Configure Sound:", TEXT_XCENTER | TEXT_TOP, 0, (SCREEN_WIDTH / 12)); x = CenterX(MenuWidth(volumeMenu, VOLUME_COUNT)); y = CenterY(MenuHeight(volumeMenu, VOLUME_COUNT)); DisplayMenuAt(x - 20, y, volumeMenu, VOLUME_COUNT, index); x += MenuWidth(volumeMenu, VOLUME_COUNT); x += 10; sprintf(s, "%d", FXVolume() / 8); TextStringAt(x, y, s); sprintf(s, "%d", MusicVolume() / 8); TextStringAt(x, y + TextHeight(), s); sprintf(s, "%d", FXChannels()); TextStringAt(x, y + 2 * TextHeight(), s); TextStringAt(x, y + 3 * TextHeight(), "No"); return MODE_VOLUME; }