scene configuration, neko opacity & scale

This commit is contained in:
2026-03-24 22:52:49 +08:00
parent 4093b0eb0c
commit 75ab799a7f
19 changed files with 427 additions and 34 deletions

View File

@@ -1,8 +1,9 @@
use crate::{
lock_r,
models::app_data::UserData,
models::{app_data::UserData, app_state::{AppState, NekoPosition}},
services::{
app_data::{init_app_data_scoped, AppDataRefreshScope},
app_state,
friends,
presence_modules::models::ModuleMetadata,
sprite,
@@ -45,3 +46,27 @@ pub fn get_friend_active_doll_sprites_base64() -> Result<friends::FriendActiveDo
friends::sync_active_doll_sprites_from_app_data();
Ok(friends::get_active_doll_sprites_snapshot())
}
#[tauri::command]
#[specta::specta]
pub fn get_app_state() -> Result<AppState, String> {
Ok(app_state::get_snapshot())
}
#[tauri::command]
#[specta::specta]
pub fn set_scene_setup_nekos_position(nekos_position: Option<NekoPosition>) {
app_state::set_scene_setup_nekos_position(nekos_position);
}
#[tauri::command]
#[specta::specta]
pub fn set_scene_setup_nekos_opacity(nekos_opacity: f32) {
app_state::set_scene_setup_nekos_opacity(nekos_opacity);
}
#[tauri::command]
#[specta::specta]
pub fn set_scene_setup_nekos_scale(nekos_scale: f32) {
app_state::set_scene_setup_nekos_scale(nekos_scale);
}