#ifndef OPENMW_COMPONENTS_SETTINGS_CATEGORIES_GAME_H #define OPENMW_COMPONENTS_SETTINGS_CATEGORIES_GAME_H #include "components/settings/sanitizerimpl.hpp" #include "components/settings/settingvalue.hpp" #include #include #include #include #include #include namespace Settings { struct GameCategory { SettingValue mShowOwned{ "Game", "show owned", makeEnumSanitizerInt({ 0, 1, 2, 3 }) }; SettingValue mShowProjectileDamage{ "Game", "show projectile damage" }; SettingValue mShowMeleeInfo{ "Game", "show melee info" }; SettingValue mShowEnchantChance{ "Game", "show enchant chance" }; SettingValue mBestAttack{ "Game", "best attack" }; SettingValue mDifficulty{ "Game", "difficulty", makeClampSanitizerInt(-500, 500) }; SettingValue mActorsProcessingRange{ "Game", "actors processing range", makeClampSanitizerInt(3584, 7168) }; SettingValue mClassicReflectedAbsorbSpellsBehavior{ "Game", "classic reflected absorb spells behavior" }; SettingValue mClassicCalmSpellsBehavior{ "Game", "classic calm spells behavior" }; SettingValue mShowEffectDuration{ "Game", "show effect duration" }; SettingValue mPreventMerchantEquipping{ "Game", "prevent merchant equipping" }; SettingValue mEnchantedWeaponsAreMagical{ "Game", "enchanted weapons are magical" }; SettingValue mFollowersAttackOnSight{ "Game", "followers attack on sight" }; SettingValue mCanLootDuringDeathAnimation{ "Game", "can loot during death animation" }; SettingValue mRebalanceSoulGemValues{ "Game", "rebalance soul gem values" }; SettingValue mUseAdditionalAnimSources{ "Game", "use additional anim sources" }; SettingValue mBarterDispositionChangeIsPermanent{ "Game", "barter disposition change is permanent" }; SettingValue mStrengthInfluencesHandToHand{ "Game", "strength influences hand to hand", makeEnumSanitizerInt({ 0, 1, 2 }) }; SettingValue mWeaponSheathing{ "Game", "weapon sheathing" }; SettingValue mShieldSheathing{ "Game", "shield sheathing" }; SettingValue mOnlyAppropriateAmmunitionBypassesResistance{ "Game", "only appropriate ammunition bypasses resistance" }; SettingValue mUseMagicItemAnimations{ "Game", "use magic item animations" }; SettingValue mNormaliseRaceSpeed{ "Game", "normalise race speed" }; SettingValue mProjectilesEnchantMultiplier{ "Game", "projectiles enchant multiplier", makeClampSanitizerFloat(0, 1) }; SettingValue mUncappedDamageFatigue{ "Game", "uncapped damage fatigue" }; SettingValue mTurnToMovementDirection{ "Game", "turn to movement direction" }; SettingValue mSmoothMovement{ "Game", "smooth movement" }; SettingValue mSmoothMovementPlayerTurningDelay{ "Game", "smooth movement player turning delay", makeMaxSanitizerFloat(0.01f) }; SettingValue mNPCsAvoidCollisions{ "Game", "NPCs avoid collisions" }; SettingValue mNPCsGiveWay{ "Game", "NPCs give way" }; SettingValue mSwimUpwardCorrection{ "Game", "swim upward correction" }; SettingValue mSwimUpwardCoef{ "Game", "swim upward coef", makeClampSanitizerFloat(-1, 1) }; SettingValue mTrainersTrainingSkillsBasedOnBaseSkill{ "Game", "trainers training skills based on base skill" }; SettingValue mAlwaysAllowStealingFromKnockedOutActors{ "Game", "always allow stealing from knocked out actors" }; SettingValue mGraphicHerbalism{ "Game", "graphic herbalism" }; SettingValue mAllowActorsToFollowOverWaterSurface{ "Game", "allow actors to follow over water surface" }; SettingValue mDefaultActorPathfindHalfExtents{ "Game", "default actor pathfind half extents", makeMaxStrictSanitizerVec3f(osg::Vec3f(0, 0, 0)) }; SettingValue mDayNightSwitches{ "Game", "day night switches" }; SettingValue mUnarmedCreatureAttacksDamageArmor{ "Game", "unarmed creature attacks damage armor" }; SettingValue mActorCollisionShapeType{ "Game", "actor collision shape type", makeEnumSanitizerInt({ 0, 1, 2 }) }; }; } #endif