# HG changeset patch # User nikin # Date 1300580671 14400 # Node ID e83d4552625f612d144e17df24fe84fa22264e36 # Parent ac1691d35cf29c2c61a780edc18572a7205b4bd9 percentage modifier for get away time diff -r ac1691d35cf2 -r e83d4552625f QTfrontend/ammoSchemeModel.cpp --- a/QTfrontend/ammoSchemeModel.cpp Sat Mar 19 19:41:59 2011 -0400 +++ b/QTfrontend/ammoSchemeModel.cpp Sat Mar 19 20:24:31 2011 -0400 @@ -62,6 +62,7 @@ << QVariant(47) // water rise amt 36 << QVariant(5) // health dec amt 37 << QVariant(100) // rope modfier 38 + << QVariant(100) // get away time 39 ; AmmoSchemeModel::AmmoSchemeModel(QObject* parent, const QString & fileName) : @@ -123,7 +124,8 @@ << "healthcaseamount" // 35 << "waterrise" // 36 << "healthdecrease" // 37 - << "ropepct" // 38 + << "ropepct" // 38 + << "getawaytime" // 39 ; QList proMode; @@ -166,7 +168,8 @@ << QVariant(25) // health case amt 35 << QVariant(47) // water rise amt 36 << QVariant(5) // health dec amt 37 - << QVariant(100) // rope modfier 38 + << QVariant(100) // rope modfier 38 + << QVariant(100) // get away time 39 ; QList shoppa; @@ -209,7 +212,8 @@ << QVariant(25) // health case amt 35 << QVariant(47) // water rise amt 36 << QVariant(5) // health dec amt 37 - << QVariant(100) // rope modfier 38 + << QVariant(100) // rope modfier 38 + << QVariant(100) // get away time 39 ; QList cleanslate; @@ -252,7 +256,8 @@ << QVariant(25) // health case amt 35 << QVariant(47) // water rise amt 36 << QVariant(5) // health dec amt 37 - << QVariant(100) // rope modfier 38 + << QVariant(100) // rope modfier 38 + << QVariant(100) // get away time 39 ; QList minefield; @@ -295,7 +300,8 @@ << QVariant(25) // health case amt 35 << QVariant(47) // water rise amt 36 << QVariant(5) // health dec amt 37 - << QVariant(100) // rope modfier 38 + << QVariant(100) // rope modfier 38 + << QVariant(100) // get away time 39 ; QList barrelmayhem; @@ -338,7 +344,8 @@ << QVariant(25) // health case amt 35 << QVariant(47) // water rise amt 36 << QVariant(5) // health dec amt 37 - << QVariant(100) // rope modfier 38 + << QVariant(100) // rope modfier 38 + << QVariant(100) // get away time 39 ; QList tunnelhogs; @@ -381,7 +388,8 @@ << QVariant(25) // health case amt 35 << QVariant(47) // water rise amt 36 << QVariant(5) // health dec amt 37 - << QVariant(100) // rope modfier 38 + << QVariant(100) // rope modfier 38 + << QVariant(100) // get away time 39 ; QList forts; @@ -424,7 +432,8 @@ << QVariant(25) // health case amt 35 << QVariant(47) // water rise amt 36 << QVariant(5) // health dec amt 37 - << QVariant(100) // rope modfier 38 + << QVariant(100) // rope modfier 38 + << QVariant(100) // get away time 39 ; QList timeless; @@ -467,7 +476,8 @@ << QVariant(30) // health case amt 35 << QVariant(0) // water rise amt 36 << QVariant(0) // health dec amt 37 - << QVariant(100) // rope modfier 38 + << QVariant(100) // rope modfier 38 + << QVariant(100) // get away time 39 ; QList thinkingportals; @@ -510,7 +520,8 @@ << QVariant(25) // health case amt 35 << QVariant(47) // water rise amt 36 << QVariant(5) // health dec amt 37 - << QVariant(100) // rope modfier 38 + << QVariant(100) // rope modfier 38 + << QVariant(100) // get away time 39 ; QList kingmode; @@ -553,7 +564,8 @@ << QVariant(25) // health case amt 35 << QVariant(47) // water rise amt 36 << QVariant(5) // health dec amt 37 - << QVariant(100) // rope modfier 38 + << QVariant(100) // rope modfier 38 + << QVariant(100) // get away time 39 ; @@ -759,4 +771,4 @@ netScheme[i] = QVariant(cfg[i]); reset(); -} +} diff -r ac1691d35cf2 -r e83d4552625f QTfrontend/gamecfgwidget.cpp --- a/QTfrontend/gamecfgwidget.cpp Sat Mar 19 19:41:59 2011 -0400 +++ b/QTfrontend/gamecfgwidget.cpp Sat Mar 19 20:24:31 2011 -0400 @@ -242,6 +242,7 @@ bcfg << QString("e$waterrise %1").arg(schemeData(36).toInt()).toUtf8(); bcfg << QString("e$healthdec %1").arg(schemeData(37).toInt()).toUtf8(); bcfg << QString("e$ropepct %1").arg(schemeData(38).toInt()).toUtf8(); + bcfg << QString("e$getawaytime %1").arg(schemeData(39).toInt()).toUtf8(); bcfg << QString("e$template_filter %1").arg(pMapContainer->getTemplateFilter()).toUtf8(); bcfg << QString("e$mapgen %1").arg(mapgen).toUtf8(); diff -r ac1691d35cf2 -r e83d4552625f QTfrontend/pages.cpp --- a/QTfrontend/pages.cpp Sat Mar 19 19:41:59 2011 -0400 +++ b/QTfrontend/pages.cpp Sat Mar 19 20:24:31 2011 -0400 @@ -1868,7 +1868,6 @@ SB_MineDuds->setSingleStep(5); glBSLayout->addWidget(SB_MineDuds,12,2,1,1); - l = new QLabel(gbBasicSettings); l->setText(QLabel::tr("Explosives")); l->setWordWrap(true); @@ -1884,22 +1883,36 @@ glBSLayout->addWidget(SB_Explosives,13,2,1,1); l = new QLabel(gbBasicSettings); + l->setText(QLabel::tr("% Get Away Time")); + l->setWordWrap(true); + glBSLayout->addWidget(l,14,0,1,1); + l = new QLabel(gbBasicSettings); + l->setFixedSize(32,32); + l->setPixmap(QPixmap(":/res/iconTime.png")); + glBSLayout->addWidget(l,14,1,1,1); + SB_GetAwayTime = new QSpinBox(gbBasicSettings); + SB_GetAwayTime->setRange(0, 999); + SB_GetAwayTime->setValue(100); + SB_GetAwayTime->setSingleStep(25); + glBSLayout->addWidget(SB_GetAwayTime,14,2,1,1); + + l = new QLabel(gbBasicSettings); l->setText(QLabel::tr("Scheme Name:")); LE_name = new QLineEdit(this); - gl->addWidget(LE_name,14,1,1,5); - gl->addWidget(l,14,0,1,1); + gl->addWidget(LE_name,15,1,1,5); + gl->addWidget(l,15,0,1,1); mapper = new QDataWidgetMapper(this); - BtnBack = addButton(":/res/Exit.png", pageLayout, 15, 0, true); - BtnCopy = addButton(tr("Copy"), pageLayout, 15, 2); - BtnNew = addButton(tr("New"), pageLayout, 15, 3); - BtnDelete = addButton(tr("Delete"), pageLayout, 15, 4); + BtnBack = addButton(":/res/Exit.png", pageLayout, 16, 0, true); + BtnCopy = addButton(tr("Copy"), pageLayout, 16, 2); + BtnNew = addButton(tr("New"), pageLayout, 16, 3); + BtnDelete = addButton(tr("Delete"), pageLayout, 16, 4); selectScheme = new QComboBox(this); - pageLayout->addWidget(selectScheme, 15, 1); + pageLayout->addWidget(selectScheme, 16, 1); connect(BtnCopy, SIGNAL(clicked()), this, SLOT(copyRow())); connect(BtnNew, SIGNAL(clicked()), this, SLOT(newRow())); @@ -1952,6 +1965,7 @@ mapper->addMapping(SB_WaterRise, 36); mapper->addMapping(SB_HealthDecrease, 37); mapper->addMapping(SB_RopeModifier, 38); + mapper->addMapping(SB_GetAwayTime, 39); mapper->toFirst(); } diff -r ac1691d35cf2 -r e83d4552625f QTfrontend/pages.h --- a/QTfrontend/pages.h Sat Mar 19 19:41:59 2011 -0400 +++ b/QTfrontend/pages.h Sat Mar 19 20:24:31 2011 -0400 @@ -535,6 +535,7 @@ QSpinBox * SB_MineDuds; QSpinBox * SB_Explosives; QSpinBox * SB_RopeModifier; + QSpinBox * SB_GetAwayTime; QLineEdit * LE_name; QGroupBox * gbGameModes; diff -r ac1691d35cf2 -r e83d4552625f hedgewars/HHHandlers.inc --- a/hedgewars/HHHandlers.inc Sat Mar 19 19:41:59 2011 -0400 +++ b/hedgewars/HHHandlers.inc Sat Mar 19 20:24:31 2011 -0400 @@ -382,7 +382,7 @@ if ((Ammoz[a].Ammo.Propz and ammoprop_NoRoundEnd) = 0) and ((GameFlags and gfInfAttack) = 0) then begin if TagTurnTimeLeft = 0 then TagTurnTimeLeft:= TurnTimeLeft; - TurnTimeLeft:= Ammoz[a].TimeAfterTurn; + TurnTimeLeft:=round(Ammoz[a].TimeAfterTurn * (cGetAwayTime / 100)); end; if ((Ammoz[a].Ammo.Propz and ammoprop_NoRoundEnd) = 0) then State:= State or gstAttacked; if (Ammoz[a].Ammo.Propz and ammoprop_NoRoundEnd) <> 0 then ApplyAmmoChanges(CurrentHedgehog^) diff -r ac1691d35cf2 -r e83d4552625f hedgewars/uCommandHandlers.pas --- a/hedgewars/uCommandHandlers.pas Sat Mar 19 19:41:59 2011 -0400 +++ b/hedgewars/uCommandHandlers.pas Sat Mar 19 20:24:31 2011 -0400 @@ -602,6 +602,7 @@ RegisterVariable('healthdec', vtLongInt, @cHealthDecrease, false); RegisterVariable('damagepct',vtLongInt, @cDamagePercent , false); RegisterVariable('ropepct' , vtLongInt, @cRopePercent , false); + RegisterVariable('getawaytime' , vtLongInt, @cGetAwayTime , false); RegisterVariable('minedudpct',vtLongInt,@cMineDudPercent, false); RegisterVariable('minesnum', vtLongInt, @cLandMines , false); RegisterVariable('explosives',vtLongInt,@cExplosives , false); diff -r ac1691d35cf2 -r e83d4552625f hedgewars/uVariables.pas --- a/hedgewars/uVariables.pas Sat Mar 19 19:41:59 2011 -0400 +++ b/hedgewars/uVariables.pas Sat Mar 19 20:24:31 2011 -0400 @@ -74,6 +74,7 @@ cMapGen : LongInt; cMazeSize : LongInt; cRopePercent : LongWord; + cGetAwayTime : LongWord; cHedgehogTurnTime: Longword; cMinesTime : LongInt; @@ -2308,6 +2309,7 @@ cSuddenDTurns := 15; cDamagePercent := 100; cRopePercent := 100; + cGetAwayTime := 100; cMineDudPercent := 0; cTemplateFilter := 0; cMapGen := 0; // MAPGEN_REGULAR