hedgewars/uLand.pas
changeset 15010 5d8068ee16fc
parent 14418 0281b80d366c
child 15139 adf6f9be8113
equal deleted inserted replaced
15009:d45c41b223cf 15010:5d8068ee16fc
   283 end;
   283 end;
   284 
   284 
   285 
   285 
   286 procedure GenDrawnMap;
   286 procedure GenDrawnMap;
   287 begin
   287 begin
       
   288     if (cFeatureSize <= 6) then
       
   289         MaxHedgehogs:= 6 + (cFeatureSize-1) * 2
       
   290     else if (cFeatureSize < 11) then
       
   291         MaxHedgehogs:= 16 + (cFeatureSize-6) * 4
       
   292     else if (cFeatureSize = 11) then
       
   293         MaxHedgehogs:= 48
       
   294     else if (cFeatureSize = 12) then
       
   295         MaxHedgehogs:= 64
       
   296     else
       
   297         MaxHedgehogs:= cMaxHHs;
       
   298 
       
   299     if GameType = gmtLandPreview then
       
   300         cFeatureSize:= 3;
   288     ResizeLand((4096 * max(min(cFeatureSize,24),3)) div 12, (2048 * max(min(cFeatureSize,24),3)) div 12);
   301     ResizeLand((4096 * max(min(cFeatureSize,24),3)) div 12, (2048 * max(min(cFeatureSize,24),3)) div 12);
   289     uLandPainted.Draw;
   302     uLandPainted.Draw;
   290 
   303 
   291     MaxHedgehogs:= 64;
       
   292     hasGirders:= true;
   304     hasGirders:= true;
   293     playHeight:= LAND_HEIGHT;
   305     playHeight:= LAND_HEIGHT;
   294     playWidth:= LAND_WIDTH;
   306     playWidth:= LAND_WIDTH;
   295     leftX:= ((LAND_WIDTH - playWidth) div 2);
   307     leftX:= ((LAND_WIDTH - playWidth) div 2);
   296     rightX:= (playWidth + ((LAND_WIDTH - playWidth) div 2)) - 1;
   308     rightX:= (playWidth + ((LAND_WIDTH - playWidth) div 2)) - 1;
   884     WriteLnToConsole('Generating preview...');
   896     WriteLnToConsole('Generating preview...');
   885     case cMapGen of
   897     case cMapGen of
   886         mgRandom: GenTemplated(EdgeTemplates[SelectTemplate]);
   898         mgRandom: GenTemplated(EdgeTemplates[SelectTemplate]);
   887         mgMaze: begin ResizeLand(4096,2048); GenMaze; end;
   899         mgMaze: begin ResizeLand(4096,2048); GenMaze; end;
   888         mgPerlin: begin ResizeLand(4096,2048); GenPerlin; end;
   900         mgPerlin: begin ResizeLand(4096,2048); GenPerlin; end;
   889         mgDrawn: begin cFeatureSize:= 3;GenDrawnMap; end;
   901         mgDrawn: begin GenDrawnMap; end;
   890         mgForts: MakeFortsPreview();
   902         mgForts: MakeFortsPreview();
   891     else
   903     else
   892         OutError('Unknown mapgen', true);
   904         OutError('Unknown mapgen', true);
   893     end;
   905     end;
   894 
   906 
   943     WriteLnToConsole('Generating preview...');
   955     WriteLnToConsole('Generating preview...');
   944     case cMapGen of
   956     case cMapGen of
   945         mgRandom: GenTemplated(EdgeTemplates[SelectTemplate]);
   957         mgRandom: GenTemplated(EdgeTemplates[SelectTemplate]);
   946         mgMaze: begin ResizeLand(4096,2048); GenMaze; end;
   958         mgMaze: begin ResizeLand(4096,2048); GenMaze; end;
   947         mgPerlin: begin ResizeLand(4096,2048); GenPerlin; end;
   959         mgPerlin: begin ResizeLand(4096,2048); GenPerlin; end;
   948         mgDrawn: begin cFeatureSize:= 3;GenDrawnMap; end;
   960         mgDrawn: begin GenDrawnMap; end;
   949         mgForts: MakeFortsPreview;
   961         mgForts: MakeFortsPreview;
   950     else
   962     else
   951         OutError('Unknown mapgen', true);
   963         OutError('Unknown mapgen', true);
   952     end;
   964     end;
   953 
   965