Hello Jamespetts and everyone

I made a patch that allows multi tiles inner city building.
In current simutrans, the size of city buildings is limited to 1x1. As a result, buildings in a highly flourishing city are too thin. They are like pencils. So, I made this patch to make the scene of cities more realistic.
The city buildings are distributed like this. Of course, they are not
cur buildings!


size --
orange:1x1,
blue:1x2,
purple:2x2,
green:2x3,
yellow:3x3
The size of buildings that are newly built is still limited to 1x1. When renovating, multi tiles buildings become candidate. The newly constructed building is a small level 0 building, so I believe that the 1x1 limitation is not a problem. This limitation makes no change in cityrules.tab. When renovating, vacant ground and ground on which there is a building are used to place a new building.
There is no programmatic change in makeobj. Pak authors now can write other dimensions than 1x1 in the dat of city buildings! There is no side effect.
The testing of this patch is done with this addon set.
https://drive.google.com/open?id=15iPmxsLe7r_rOLfsBUrutwMhG5baQ2wYThis is minimum to conduct the test, so a building set that is well planned and that has more kind of multi tiles city buildings is needed to ensure the safety of this patch.
At present,
this rule is not implemented for multi tiles city buildings and comment outed. Test addon set that I use now is not enough to write and test this rule.
If you use multi tiles inner city buildings well, it is possible to make a whole new realistic city sight in simutrans. It's pak authors who should think how to use this feature.
I made a
pull request, so please review my code. Atom, the text editor I usually use, removed meaningless spaces in code. So I have to apologize that code difference became hard to understand.
~Discussion~
Under the elevated truck, the
passenger level of the building is restricted, but should the
height of the building be restricted?
https://github.com/teamhimeh/simutrans/blob/ex-MTICB/simcity.cc#L4412