Ejemplo n.º 1
0
Archivo: iconf.cpp Proyecto: hebob/ivan
void ivanconfig::ContrastChanger(numberoption* O, long What)
{
  if(What < 0) What = 0;
  if(What > 200) What = 200;
  O->Value = What;
  CalculateContrastLuminance();
}
Ejemplo n.º 2
0
void ivanconfig::Initialize(const festring& UserName)
{
  configsystem::AddOption(&DefaultPetName);
  configsystem::AddOption(&WarnAboutDanger);
  configsystem::AddOption(&AutoDropLeftOvers);
  configsystem::AddOption(&UseAlternativeKeys);
  configsystem::SetConfigFileName(CONST_S(LOCAL_STATE_DIR "/config/") + UserName + ".ivanrc");
  configsystem::Load();
  CalculateContrastLuminance();
}
Ejemplo n.º 3
0
void ivanconfig::Initialize()
{
  configsystem::AddOption(&DefaultName);
  configsystem::AddOption(&DefaultPetName);
  configsystem::AddOption(&AutoSaveInterval);
  configsystem::AddOption(&Contrast);
  configsystem::AddOption(&WarnAboutDanger);
  configsystem::AddOption(&AutoDropLeftOvers);
  configsystem::AddOption(&LookZoom);
  configsystem::AddOption(&UseAlternativeKeys);
#ifndef __DJGPP__
  configsystem::AddOption(&FullScreenMode);
#endif
#if defined(WIN32) || defined(__DJGPP__)
  configsystem::SetConfigFileName("ivan.cfg");
#else
  configsystem::SetConfigFileName(festring(getenv("HOME")) + "/.ivan.conf");
#endif
  configsystem::Load();
  CalculateContrastLuminance();
}
Ejemplo n.º 4
0
Archivo: iconf.cpp Proyecto: hebob/ivan
void ivanconfig::Initialize()
{
  configsystem::AddOption(&DefaultName);
  configsystem::AddOption(&DefaultPetName);
  configsystem::AddOption(&AutoSaveInterval);
  configsystem::AddOption(&Contrast);
  configsystem::AddOption(&WarnAboutDanger);
  configsystem::AddOption(&AutoDropLeftOvers);
  configsystem::AddOption(&LookZoom);
  configsystem::AddOption(&DirectionKeyMap);
  configsystem::AddOption(&BeNice);
#ifndef __DJGPP__
  configsystem::AddOption(&FullScreenMode);
#endif
#if defined(WIN32) || defined(__DJGPP__)
  configsystem::SetConfigFileName(game::GetHomeDir() + "ivan.cfg");
#else
  configsystem::SetConfigFileName(game::GetHomeDir() + "ivan.conf");
#endif
  configsystem::Load();
  CalculateContrastLuminance();
}
Ejemplo n.º 5
0
void ivanconfig::Initialize()
{
  festring fsCategory;

  fsCategory="General Setup";
  configsystem::AddOption(fsCategory,&DefaultName);
  configsystem::AddOption(fsCategory,&FantasyNamePattern);
  configsystem::AddOption(fsCategory,&DefaultPetName);
  configsystem::AddOption(fsCategory,&AutoSaveInterval);
  configsystem::AddOption(fsCategory,&AltAdentureInfo);

  fsCategory="Gameplay Options";
  configsystem::AddOption(fsCategory,&BeNice);
  configsystem::AddOption(fsCategory,&HoldPosMaxDist);
  configsystem::AddOption(fsCategory,&MemorizeEquipmentMode);
  configsystem::AddOption(fsCategory,&WarnAboutDanger);
  configsystem::AddOption(fsCategory,&AutoDropLeftOvers);
  configsystem::AddOption(fsCategory,&SmartOpenCloseApply);
  configsystem::AddOption(fsCategory,&CenterOnPlayerAfterLook);
  configsystem::AddOption(fsCategory,&ShowGodInfo); //gameplay change in a sense that, to remember what each god is about may be a challenge on itself :)
  configsystem::AddOption(fsCategory,&ShowMapAtDetectMaterial);
  configsystem::AddOption(fsCategory,&GoOnStopMode);
  configsystem::AddOption(fsCategory,&WaitNeutralsMoveAway);
  configsystem::AddOption(fsCategory,&AllWeightIsRelevant);
  configsystem::AddOption(fsCategory,&ShowVolume);
  configsystem::AddOption(fsCategory,&EnhancedLights);
  configsystem::AddOption(fsCategory,&DistLimitMagicMushrooms);
  configsystem::AddOption(fsCategory,&AutoPickupThrownItems);

  fsCategory="Game Window";
  configsystem::AddOption(fsCategory,&Contrast);
  configsystem::AddOption(fsCategory,&WindowWidth);
  configsystem::AddOption(fsCategory,&WindowHeight);
#ifndef __DJGPP__
  configsystem::AddOption(fsCategory,&GraphicsScale);
  configsystem::AddOption(fsCategory,&FullScreenMode);
#endif

  fsCategory="Graphics";
#ifndef __DJGPP__
  configsystem::AddOption(fsCategory,&ScalingQuality);
#endif
  configsystem::AddOption(fsCategory,&LookZoom);
  configsystem::AddOption(fsCategory,&XBRZScale);
  configsystem::AddOption(fsCategory,&XBRZSquaresAroundPlayer);
  configsystem::AddOption(fsCategory,&SilhouetteScale);
  configsystem::AddOption(fsCategory,&AltSilhouette);
  configsystem::AddOption(fsCategory,&AltSilhouettePreventColorGlitch);
  configsystem::AddOption(fsCategory,&AltListItemPos);
  configsystem::AddOption(fsCategory,&AltListItemWidth);
  configsystem::AddOption(fsCategory,&StackListPageLength);
  configsystem::AddOption(fsCategory,&DungeonGfxScale);
  configsystem::AddOption(fsCategory,&FontGfx);
  configsystem::AddOption(fsCategory,&OutlinedGfx);
  configsystem::AddOption(fsCategory,&FrameSkip);
  configsystem::AddOption(fsCategory,&ShowItemsAtPlayerSquare);
  configsystem::AddOption(fsCategory,&RotateTimesPerSquare);
  configsystem::AddOption(fsCategory,&HitIndicator);
  configsystem::AddOption(fsCategory,&ShowMap);
  configsystem::AddOption(fsCategory,&TransparentMapLM);

  fsCategory="Sounds";
  configsystem::AddOption(fsCategory,&PlaySounds);
  configsystem::AddOption(fsCategory,&Volume);

  std::vector<std::string> DeviceNames;
  int NumDevices = audio::GetMIDIOutputDevices(DeviceNames);
  MIDIOutputDevice.Value = 0;
  if( NumDevices )
  {
     MIDIOutputDevice.Value = 1;
  }
  MIDIOutputDevice.CycleCount = NumDevices+1;

  configsystem::AddOption(fsCategory,&MIDIOutputDevice);

  fsCategory="Input and Interface";
  configsystem::AddOption(fsCategory,&DirectionKeyMap);
  configsystem::AddOption(fsCategory,&SaveGameSortMode);
  configsystem::AddOption(fsCategory,&ShowTurn);
  configsystem::AddOption(fsCategory,&ShowFullDungeonName);
  configsystem::AddOption(fsCategory,&SelectedBkgColor);
  configsystem::AddOption(fsCategory,&AllowMouseOnFelist);

  fsCategory="Advanced Options";
  configsystem::AddOption(fsCategory,&AllowImportOldSavegame);
  configsystem::AddOption(fsCategory,&HideWeirdHitAnimationsThatLookLikeMiss);

  /********************************
   * LOAD AND APPLY some SETTINGS *
   ********************************/
#if defined(WIN32) || defined(__DJGPP__)
  configsystem::SetConfigFileName(game::GetUserDataDir() + "ivan.cfg");
#else
  configsystem::SetConfigFileName(game::GetUserDataDir() + "ivan.conf");
#endif

  configsystem::Load();

  iStartingWindowWidth = WindowWidth.Value;
  iStartingWindowHeight = WindowHeight.Value;
  iStartingDungeonGfxScale = DungeonGfxScale.Value;
  iStartingFontGfx = FontGfx.Value;
  bStartingOutlinedGfx = OutlinedGfx.Value;

  CalculateContrastLuminance();
  audio::ChangeMIDIOutputDevice(MIDIOutputDevice.Value);
  audio::SetVolumeLevel(Volume.Value);

  //TODO re-use changer methods for above configs too to avoid duplicating the algo?
  FrameSkipChanger(NULL,FrameSkip.Value);
  StackListPageLengthChanger(NULL, StackListPageLength.Value);
  SaveGameSortModeChanger(NULL, SaveGameSortMode.Value);
  SelectedBkgColorChanger(NULL, SelectedBkgColor.Value);
  AllowMouseOnFelistChanger(NULL, AllowMouseOnFelist.Value);
}