178 px := 0; |
178 px := 0; |
179 py := 0; |
179 py := 0; |
180 FillLandCircleLineFT := 0; |
180 FillLandCircleLineFT := 0; |
181 case fill of |
181 case fill of |
182 backgroundPixel: |
182 backgroundPixel: |
183 for i:= fromPix to toPix do |
183 for i:= fromPix to toPix do |
184 begin |
184 begin |
185 calculatePixelsCoordinates(i, y, px, py); |
185 calculatePixelsCoordinates(i, y, px, py); |
186 inc(FillLandCircleLineFT, drawPixelBG(i, y, px, py)); |
186 inc(FillLandCircleLineFT, drawPixelBG(i, y, px, py)); |
187 end; |
187 end; |
188 ebcPixel: |
188 ebcPixel: |
189 for i:= fromPix to toPix do |
189 for i:= fromPix to toPix do |
190 begin |
190 begin |
191 calculatePixelsCoordinates(i, y, px, py); |
191 calculatePixelsCoordinates(i, y, px, py); |
192 drawPixelEBC(i, y, px, py); |
192 drawPixelEBC(i, y, px, py); |
193 end; |
193 end; |
194 nullPixel: |
194 nullPixel: |
195 for i:= fromPix to toPix do |
195 for i:= fromPix to toPix do |
196 begin |
196 begin |
197 calculatePixelsCoordinates(i, y, px, py); |
197 calculatePixelsCoordinates(i, y, px, py); |
198 if ((Land[y, i] and lfIndestructible) = 0) and (not disableLandBack or (Land[y, i] > 255)) then |
198 if ((Land[y, i] and lfIndestructible) = 0) and (not disableLandBack or (Land[y, i] > 255)) then |
199 LandPixels[py, px]:= 0 |
199 LandPixels[py, px]:= 0 |
200 end; |
200 end; |
201 icePixel: |
201 icePixel: |
202 for i:= fromPix to toPix do |
202 for i:= fromPix to toPix do |
203 begin |
203 begin |
204 calculatePixelsCoordinates(i, y, px, py); |
204 calculatePixelsCoordinates(i, y, px, py); |
205 DrawPixelIce(i, y, px, py); |
205 DrawPixelIce(i, y, px, py); |
206 end; |
206 end; |
207 setNotCurrentMask: |
207 setNotCurrentMask: |
208 for i:= fromPix to toPix do |
208 for i:= fromPix to toPix do |
209 begin |
209 begin |
210 Land[y, i]:= Land[y, i] and lfNotCurrentMask; |
210 Land[y, i]:= Land[y, i] and lfNotCurrentMask; |
211 end; |
211 end; |
212 changePixelSetNotCurrent: |
212 changePixelSetNotCurrent: |
213 for i:= fromPix to toPix do |
213 for i:= fromPix to toPix do |
214 begin |
214 begin |
215 if Land[y, i] and lfObjMask > 0 then |
215 if Land[y, i] and lfObjMask > 0 then |
216 Land[y, i]:= (Land[y, i] and lfNotObjMask) or ((Land[y, i] and lfObjMask) - 1); |
216 Land[y, i]:= (Land[y, i] and lfNotObjMask) or ((Land[y, i] and lfObjMask) - 1); |
217 end; |
217 end; |
218 setCurrentHog: |
218 setCurrentHog: |
219 for i:= fromPix to toPix do |
219 for i:= fromPix to toPix do |
220 begin |
220 begin |
221 Land[y, i]:= Land[y, i] or lfCurrentHog |
221 Land[y, i]:= Land[y, i] or lfCurrentHog |
222 end; |
222 end; |
223 changePixelNotSetNotCurrent: |
223 changePixelNotSetNotCurrent: |
224 for i:= fromPix to toPix do |
224 for i:= fromPix to toPix do |
225 begin |
225 begin |
226 if Land[y, i] and lfObjMask < lfObjMask then |
226 if Land[y, i] and lfObjMask < lfObjMask then |
227 Land[y, i]:= (Land[y, i] and lfNotObjMask) or ((Land[y, i] and lfObjMask) + 1) |
227 Land[y, i]:= (Land[y, i] and lfNotObjMask) or ((Land[y, i] and lfObjMask) + 1) |
228 end; |
228 end; |
229 end; |
229 end; |
230 end; |
230 end; |
231 |
231 |
232 function FillLandCircleSegmentFT(x, y, dx, dy: LongInt; fill : fillType): Longword; inline; |
232 function FillLandCircleSegmentFT(x, y, dx, dy: LongInt; fill : fillType): Longword; inline; |
233 begin |
233 begin |