diff --git a/server/src/construct.rs b/server/src/construct.rs index 80b4d7bb..f464d39c 100644 --- a/server/src/construct.rs +++ b/server/src/construct.rs @@ -271,8 +271,11 @@ impl Construct { self } - pub fn new_name(self, name: String) -> Construct { - self.named(&name) + pub fn new_name(self, name: String) -> Result { + if name.len() > 20 { + return Err(err_msg("20 character name maximum")); + } + Ok(self.named(&name)) } pub fn learn(mut self, s: Skill) -> Construct { diff --git a/server/src/mtx.rs b/server/src/mtx.rs index 3352d100..f32f9339 100644 --- a/server/src/mtx.rs +++ b/server/src/mtx.rs @@ -152,7 +152,7 @@ pub fn apply(tx: &mut Transaction, account: &Account, variant: MtxVariant, const account::debit(tx, account.id, cost)?; construct = match mtx.variant { - MtxVariant::Rename => construct.new_name(name), + MtxVariant::Rename => construct.new_name(name)?, _ => construct.new_img(), };