DaleStan wrote:And all default industries allow terraforming.
I know that TTDP behaves like this, but I do not like this behaviour. Property 0D 'land shape flags' is 0x10 by default for all tiles except the bank. This disallows construction of the industries on non-flat land. Why should autoslope be allowed to change the slope to a slope, where the industry cannot be build on?
Alternatively I suggest a new entry in indtile prop. 12 'special flags', that restricts the cases the autoslope callback has to handle:
0x00: Do not check property 0D, but disallow steep slopes. (looks like current TTDP behaviour)
0x02: Check property 0D (independent of callback 2F usage). This implies denying of steep slopes.
0x04: Do not check property 0D, allow steep slopes.
0x06: Do not check property 0D, allow everything, even changing the maximal tile height.
By the way: I would really like to know the vinegrower, who allows me to raise his vineyard by 25 meters.
DaleStan wrote:take 7B as a global variable, akin to vars 10/18, that provides parameterized information, relative to the current feature, callback
I like this one. During the autoslope-callback variable 7B+x would then be 'land info of nearby tiles after terraforming'.
I would suggest, that varaction type 89/9A decides if the position is given relative to the calling industry tile or relative to the industry origin.
DaleStan wrote:I think x and y offset of the tile whose north corner is being modified, and direction of that modification (up/down) should be enough
That is not enough. The autoslope callback is called for every industrytile that is involved into the terraforming. In one terraforming operation multiple corners can change, but the callback is only called once for the final slope.
OTOH is x and y offset relative to the industry origin needed? Or is it enough, that the callback can be adjusted for every industrytile ID.
This would be a candidate for variables 10/18.