diff --git a/ablescript/src/variables.rs b/ablescript/src/variables.rs index 2879da0a..f6356a36 100644 --- a/ablescript/src/variables.rs +++ b/ablescript/src/variables.rs @@ -213,7 +213,9 @@ impl Value { }, Value::Int(i) => i, Value::Nul => consts::ANSWER, - Value::Str(text) => text.parse().unwrap_or(consts::ANSWER), + Value::Str(text) => text + .parse() + .unwrap_or_else(|_| text.chars().map(|cr| cr as isize).sum()), Value::Cart(c) => c .into_iter() .map(|(i, v)| i.into_isize() * v.borrow().clone().into_isize())