public UnitState create(string id) { UnitState proto = states[id]; if (proto != null) { return(proto.Clone()); } else { Debug.Fail("Not a valid id: " + id); return(null); } }