# HG changeset patch # User unc0rr # Date 1399403795 -14400 # Node ID 8fa1ccfba752c19857acd086ba2f13e295ee72f3 # Parent bafca16868678c7b7b4eecb73b4c6e45ba1a16cb - Increase limits on number of mines and explosives in game scheme - Stop trying to place mines/explosives after 4 fails to place in row diff -r bafca1686867 -r 8fa1ccfba752 QTfrontend/model/ammoSchemeModel.cpp --- a/QTfrontend/model/ammoSchemeModel.cpp Wed Apr 30 15:26:50 2014 +0400 +++ b/QTfrontend/model/ammoSchemeModel.cpp Tue May 06 23:16:35 2014 +0400 @@ -309,7 +309,7 @@ << QVariant(15) // sudden death 29 << QVariant(0) // case prob 30 << QVariant(0) // mines time 31 - << QVariant(80) // mines number 32 + << QVariant(200) // mines number 32 << QVariant(0) // mine dud pct 33 << QVariant(0) // explosives 34 << QVariant(35) // health case pct 35 @@ -358,7 +358,7 @@ << QVariant(0) // mines time 31 << QVariant(0) // mines number 32 << QVariant(0) // mine dud pct 33 - << QVariant(80) // explosives 34 + << QVariant(200) // explosives 34 << QVariant(35) // health case pct 35 << QVariant(25) // health case amt 36 << QVariant(47) // water rise amt 37 diff -r bafca1686867 -r 8fa1ccfba752 QTfrontend/ui/page/pagescheme.cpp --- a/QTfrontend/ui/page/pagescheme.cpp Wed Apr 30 15:26:50 2014 +0400 +++ b/QTfrontend/ui/page/pagescheme.cpp Tue May 06 23:16:35 2014 +0400 @@ -335,7 +335,7 @@ l->setPixmap(QPixmap(":/res/iconMine.png")); // TODO: icon glBSLayout->addWidget(l,11,1,1,1); SB_Mines = new QSpinBox(gbBasicSettings); - SB_Mines->setRange(0, 80); + SB_Mines->setRange(0, 200); SB_Mines->setValue(0); SB_Mines->setSingleStep(5); glBSLayout->addWidget(SB_Mines,11,2,1,1); @@ -363,9 +363,9 @@ l->setPixmap(QPixmap(":/res/iconDamage.png")); glBSLayout->addWidget(l,13,1,1,1); SB_Explosives = new QSpinBox(gbBasicSettings); - SB_Explosives->setRange(0, 40); + SB_Explosives->setRange(0, 200); SB_Explosives->setValue(0); - SB_Explosives->setSingleStep(1); + SB_Explosives->setSingleStep(3); glBSLayout->addWidget(SB_Explosives,13,2,1,1); l = new QLabel(gbBasicSettings); diff -r bafca1686867 -r 8fa1ccfba752 hedgewars/uGears.pas --- a/hedgewars/uGears.pas Wed Apr 30 15:26:50 2014 +0400 +++ b/hedgewars/uGears.pas Tue May 06 23:16:35 2014 +0400 @@ -564,27 +564,39 @@ end; procedure AddMiscGears; -var p,i,j,rx, ry: Longword; +var p,i,j,rx, ry, unplaced: Longword; rdx, rdy: hwFloat; Gear: PGear; begin AddGear(0, 0, gtATStartGame, 0, _0, _0, 2000); i:= 0; -Gear:= PGear(1); -while (i < cLandMines) {and (Gear <> nil)} do // disable this check until better solution found +unplaced:= 0; +while (i < cLandMines) and (unplaced < 4) do begin Gear:= AddGear(0, 0, gtMine, 0, _0, _0, 0); FindPlace(Gear, false, 0, LAND_WIDTH); + + if Gear = nil then + inc(unplaced) + else + unplaced:= 0; + inc(i) end; i:= 0; -Gear:= PGear(1); -while (i < cExplosives){ and (Gear <> nil)} do +unplaced:= 0; +while (i < cExplosives) and (unplaced < 4) do begin Gear:= AddGear(0, 0, gtExplosives, 0, _0, _0, 0); FindPlace(Gear, false, 0, LAND_WIDTH); + + if Gear = nil then + inc(unplaced) + else + unplaced:= 0; + inc(i) end;