Originally Posted by grim001
I see no reason to not use create, considering it is how people usually get an instance of a struct. It is not that confusing that you can't destroy instances because you get an error message if you try to.
Yeah, but that's a poor argument, the point is that people shouldn't ever try to do that. Obviously, someone always will, but it'll happen fewer times if the initializer doesn't have a name that implies a standard constructor.
The rest were my mistakes, I didn't notice that you were using a different unit for the arguments in that block and I thought for some reason that you were storing a reference to the target unit, it was late when I was reading this, sorry.