All coordinate values MUST HAVE own type/class. Not “tripoint” for all this omt (overmap terrain), om (overmap), sm (submap), abs. tile etc. Code of/for overmap is unreadable.
Yes it’s a problem, feel free to propose a nice way to implement it and a nice way to migrate the code to it a piece at a time.
Throwing around “MUST HAVE” with no associated solution isn’t particularly productive.
[quote=“Kevin Granade, post:2, topic:11328”]Yes it’s a problem, feel free to propose a nice way to implement it and a nice way to migrate the code to it a piece at a time.
Throwing around “MUST HAVE” with no associated solution isn’t particularly productive.[/quote]
Code plan:
- Own type for each coordinate (based by tripoint for example).
- Disable call methods with tripoint argument. Only with constructor or casting to correct type.
- Casts to any coord. type by methods like to_omt() to_sm() etc.
Refactoring plan:
- Edit headers
- Fix all compile errors
3. Enjoy bugs
It will not be very hard.
a nice way to migrate the code to it a piece at a time.In other words, if you submit a 2,000 line pull request to swap it over all at once, I'm going to close it without looking at it. You need a migration plan for something that big, not just an implementation plan.
I’m not trying to discourage you, that would be a very nice thing to have, I’m just trying to make clear how it needs to work.
I might also be a little cranky because I’m wrapping up hour #3 of code review and merge testing for dda this evening after 10 hrs of work. I couldn’t work in any time to work on my own code tonight.
No. Fists stage - writing types and conversion code. Next - rewriting methods. One method - one commit. I don’t think, there are methods who calls 500 times.