use tortuise::script::Operation; use crate::ScriptContext; impl ScriptContext<'_> { pub fn current_script_name(&self) -> String { puffin::profile_function!(); self.0.manifest.scripts[self.0.script_id].name().to_owned() } pub fn script_id(&self, name: &str) -> Option { puffin::profile_function!(); self.0.scripts.script_id_by_name(name) } pub fn activate_script(&mut self, name: &str) -> Option<()> { puffin::profile_function!(); let id = self.script_id(name)?; self.0.operation_queue.push(Operation::ActivateScript(id)); Some(()) } pub fn deactivate_script(&mut self, name: &str) -> Option<()> { puffin::profile_function!(); let id = self.script_id(name)?; self.0.operation_queue.push(Operation::DeactivateScript(id)); Some(()) } }