-
+
{steam.currentUser()?.personaName || 'CS工具箱'}
diff --git a/src/store/tool.ts b/src/store/tool.ts
index 3148eac..aa8f03e 100644
--- a/src/store/tool.ts
+++ b/src/store/tool.ts
@@ -2,15 +2,42 @@ import { store } from "@tauri-store/valtio"
import { useSnapshot } from "valtio"
import { DEFAULT_STORE_CONFIG } from "./config"
+interface LaunchOption {
+ option: string
+ name: string
+}
+
+export interface VideoSetting {
+ width: number; // 分辨率宽度
+ height: number; // 分辨率高度
+ fullscreen: string; // 全屏
+ vsync: string; // 垂直同步
+ enhanceCharacterContrast: string; // 增强角色对比度
+ cmaa2AntiAliasing: string; // CMAA2抗锯齿
+ msaaAntiAliasing: string; // 多重采样抗锯齿
+ globalShadowQuality: string; // 全局阴影效果
+ dynamicShadows: string; // 动态阴影
+ modelTextureDetail: string; // 模型/贴图细节
+ textureFilteringMode: string; // 贴图过滤模式
+ lightShadowDetail: string; // 光影细节
+ particleDetail: string; // 粒子细节
+ ambientOcclusion: string; // 环境光遮蔽
+ hdr: string; // 高动态范围
+ fidelityFxSuperResolution: string; // Fidelity FX 超级分辨率
+}
const defaultValue = {
launchOptions: [
- "-novid -high -freq 144 -fullscreen",
- "-novid -high -w 1920 -h 1080 -freq 144 -sw -noborder",
- "-novid -high -freq 144 -fullscreen -allow_third_party_software",
- ] as string[],
+ { option: "-novid -high -freq 144 -fullscreen", name: "" },
+ { option: "-novid -high -w 1920 -h 1080 -freq 144 -sw -noborder", name: "" },
+ { option: "-novid -high -freq 144 -fullscreen -allow_third_party_software", name: "" },
+ ] as LaunchOption[],
launchIndex: 0,
powerPlan: 0,
+ videoSetting: {
+ width: 1920,
+ height: 1080
+ } as VideoSetting,
}
export const toolStore = store(
@@ -30,12 +57,13 @@ export const useToolStore = () => {
setLaunchOptions,
setLaunchIndex,
setPowerPlan,
+ setVideoSetting,
addLaunchOption,
resetToolStore,
}
}
-const setLaunchOption = (option: string, index: number) => {
+const setLaunchOption = (option: LaunchOption, index: number) => {
toolStore.state.launchOptions = [
...toolStore.state.launchOptions.slice(0, index),
option,
@@ -43,7 +71,7 @@ const setLaunchOption = (option: string, index: number) => {
]
}
-const setLaunchOptions = (options: string[]) => {
+const setLaunchOptions = (options: LaunchOption[]) => {
toolStore.state.launchOptions = options
}
@@ -55,7 +83,11 @@ const setPowerPlan = (plan: number) => {
toolStore.state.powerPlan = plan
}
-const addLaunchOption = (option: string) => {
+const setVideoSetting = (setting: VideoSetting) => {
+ toolStore.state.videoSetting = setting
+}
+
+const addLaunchOption = (option: LaunchOption) => {
// 限制最高10个
if (toolStore.state.launchOptions.length >= 10) {
return
@@ -67,4 +99,5 @@ const resetToolStore = () => {
setLaunchOptions(defaultValue.launchOptions)
setLaunchIndex(defaultValue.launchIndex)
setPowerPlan(defaultValue.powerPlan)
+ setVideoSetting(defaultValue.videoSetting)
}