equal
deleted
inserted
replaced
119 for i:= 0 to 255 do |
119 for i:= 0 to 255 do |
120 p[256 + i]:= p[i]; |
120 p[256 + i]:= p[i]; |
121 end; |
121 end; |
122 |
122 |
123 const detail = 150000; |
123 const detail = 150000; |
124 field = 3; |
|
125 df = detail * field; |
|
126 width = 4096; |
124 width = 4096; |
127 height = 2048; |
125 height = 2048; |
128 minY = 500; |
126 minY = 500; |
129 |
127 |
130 //bottomPlateHeight = 90; |
128 //bottomPlateHeight = 90; |
131 //bottomPlateMargin = 1200; |
129 //bottomPlateMargin = 1200; |
132 margin = 200; |
130 margin = 200; |
133 |
131 |
134 procedure GenPerlin; |
132 procedure GenPerlin; |
135 var y, x, {dy, }di, dj, r: LongInt; |
133 var y, x, {dy, }di, dj, df, r, param1, param2: LongInt; |
136 begin |
134 begin |
|
135 param1:= cTemplateFilter div 3; |
|
136 param2:= cTemplateFilter mod 3; |
|
137 |
|
138 df:= detail * (6 - param2 * 2); |
|
139 |
137 inoise_setup(); |
140 inoise_setup(); |
138 |
141 |
139 for y:= minY to pred(height) do |
142 for y:= minY to pred(height) do |
140 begin |
143 begin |
141 di:= df * y div height; |
144 di:= df * y div height; |
169 if r < 50 then Land[y, x]:= 0 else Land[y, x]:= lfObjMask; |
172 if r < 50 then Land[y, x]:= 0 else Land[y, x]:= lfObjMask; |
170 |
173 |
171 end; |
174 end; |
172 end; |
175 end; |
173 |
176 |
174 for x:= 0 to width do |
177 if param1 = 0 then |
175 if Land[height - 1, x] = lfObjMask then FillLand(x, height - 1, 0, lfBasic); |
178 begin |
176 //FillLand(0, minY, lfBasic, lfObjMask); |
179 for x:= 0 to width do |
|
180 if Land[height - 1, x] = lfObjMask then FillLand(x, height - 1, 0, lfBasic); |
177 |
181 |
178 // strip all lfObjMask pixels |
182 // strip all lfObjMask pixels |
179 for y:= minY to LAND_HEIGHT - 1 do |
183 for y:= minY to LAND_HEIGHT - 1 do |
180 for x:= 0 to LAND_WIDTH - 1 do |
184 for x:= 0 to LAND_WIDTH - 1 do |
181 if Land[y, x] = lfObjMask then |
185 if Land[y, x] = lfObjMask then |
182 Land[y, x]:= 0; |
186 Land[y, x]:= 0; |
|
187 end; |
183 |
188 |
184 leftX:= 0; |
189 leftX:= 0; |
185 rightX:= 4095; |
190 rightX:= 4095; |
186 topY:= 0; |
191 topY:= 0; |
187 hasBorder:= false; |
192 hasBorder:= false; |