Update translation files, add "King Mode"
authornemo
Sun, 31 Jan 2010 16:20:53 +0000
changeset 2726 a84fc5113d01
parent 2725 89908847b155
child 2727 075f5c1ac4f7
Update translation files, add "King Mode"
QTfrontend/ammoSchemeModel.cpp
QTfrontend/gamecfgwidget.cpp
QTfrontend/hedgewars.qrc
QTfrontend/pages.cpp
QTfrontend/pages.h
QTfrontend/res/btnKing.png
hedgewars/CCHandlers.inc
hedgewars/GSHandlers.inc
hedgewars/uConsts.pas
hedgewars/uGears.pas
hedgewars/uMisc.pas
hedgewars/uTeams.pas
share/hedgewars/Data/Locale/hedgewars_bg.ts
share/hedgewars/Data/Locale/hedgewars_cs.ts
share/hedgewars/Data/Locale/hedgewars_de.ts
share/hedgewars/Data/Locale/hedgewars_en.ts
share/hedgewars/Data/Locale/hedgewars_es.ts
share/hedgewars/Data/Locale/hedgewars_fi.ts
share/hedgewars/Data/Locale/hedgewars_fr.ts
share/hedgewars/Data/Locale/hedgewars_it.ts
share/hedgewars/Data/Locale/hedgewars_ja.ts
share/hedgewars/Data/Locale/hedgewars_pl.qm
share/hedgewars/Data/Locale/hedgewars_pl.ts
share/hedgewars/Data/Locale/hedgewars_pt_BR.qm
share/hedgewars/Data/Locale/hedgewars_pt_BR.ts
share/hedgewars/Data/Locale/hedgewars_pt_PT.qm
share/hedgewars/Data/Locale/hedgewars_pt_PT.ts
share/hedgewars/Data/Locale/hedgewars_ru.ts
share/hedgewars/Data/Locale/hedgewars_sk.ts
share/hedgewars/Data/Locale/hedgewars_sv.ts
share/hedgewars/Data/Locale/hedgewars_tr_TR.ts
share/hedgewars/Data/Locale/hedgewars_uk.ts
share/hedgewars/Data/Locale/hedgewars_zh_CN.qm
share/hedgewars/Data/Locale/hedgewars_zh_CN.ts
share/hedgewars/Data/Locale/hedgewars_zh_TW.qm
share/hedgewars/Data/Locale/hedgewars_zh_TW.ts
--- a/QTfrontend/ammoSchemeModel.cpp	Sat Jan 30 18:23:42 2010 +0000
+++ b/QTfrontend/ammoSchemeModel.cpp	Sun Jan 31 16:20:53 2010 +0000
@@ -36,13 +36,14 @@
 		<< QVariant(false)         // karma          10
 		<< QVariant(false)         // artillery      11
 		<< QVariant(true)          // random order   12
-		<< QVariant(100)           // damage modfier 13
-		<< QVariant(45)            // turn time      14
-		<< QVariant(100)           // init health    15
-		<< QVariant(15)            // sudden death   16
-		<< QVariant(5)             // case prob      17
-		<< QVariant(3)             //  mines time    18
-		<< QVariant(4)             //  landadds      19
+		<< QVariant(false)         // king           13
+		<< QVariant(100)           // damage modfier 14
+		<< QVariant(45)            // turn time      15
+		<< QVariant(100)           // init health    16
+		<< QVariant(15)            // sudden death   17
+		<< QVariant(5)             // case prob      18
+		<< QVariant(3)             //  mines time    19
+		<< QVariant(4)             //  landadds      20
 		;
 
 AmmoSchemeModel::AmmoSchemeModel(QObject* parent, const QString & fileName) :
@@ -72,13 +73,14 @@
 		<< "karma"            // 10
 		<< "artillery"        // 11
 		<< "randomorder"      // 12
-		<< "damagefactor"     // 13
-		<< "turntime"         // 14
-		<< "health"           // 15
-		<< "suddendeath"      // 16
-		<< "caseprobability"  // 17
-		<< "minestime"        // 18
-		<< "landadds"         // 19
+		<< "king"             // 13
+		<< "damagefactor"     // 14
+		<< "turntime"         // 15
+		<< "health"           // 16
+		<< "suddendeath"      // 17
+		<< "caseprobability"  // 18
+		<< "minestime"        // 19
+		<< "landadds"         // 20
 		;
 
 	QList<QVariant> proMode;
@@ -96,13 +98,14 @@
 		<< QVariant(false)         // karma          10
 		<< QVariant(false)         // artillery      11
 		<< QVariant(true)          // random order   12
-		<< QVariant(100)           // damage modfier 13
-		<< QVariant(15)            // turn time      14
-		<< QVariant(100)           // init health    15
-		<< QVariant(15)            // sudden death   16
-		<< QVariant(0)             // case prob      17
-		<< QVariant(3)             //  mines time    18
-		<< QVariant(4)             //  landadds      19
+		<< QVariant(false)         // king           13
+		<< QVariant(100)           // damage modfier 14
+		<< QVariant(15)            // turn time      15
+		<< QVariant(100)           // init health    16
+		<< QVariant(15)            // sudden death   17
+		<< QVariant(0)             // case prob      18
+		<< QVariant(3)             //  mines time    19
+		<< QVariant(4)             //  landadds      20
 		;
 
 	QList<QVariant> shoppa;
@@ -120,13 +123,14 @@
 		<< QVariant(false)         // karma          10
 		<< QVariant(false)         // artillery      11
 		<< QVariant(true)          // random order   12
-		<< QVariant(100)           // damage modfier 13
-		<< QVariant(30)            // turn time      14
-		<< QVariant(100)           // init health    15
-		<< QVariant(50)            // sudden death   16
-		<< QVariant(1)             // case prob      17
-		<< QVariant(3)             //  mines time    18
-		<< QVariant(4)             //  landadds      19
+		<< QVariant(false)         // king           13
+		<< QVariant(100)           // damage modfier 14
+		<< QVariant(30)            // turn time      15
+		<< QVariant(100)           // init health    16
+		<< QVariant(50)            // sudden death   17
+		<< QVariant(1)             // case prob      18
+		<< QVariant(3)             //  mines time    19
+		<< QVariant(4)             //  landadds      20
 		;
 
 	QList<QVariant> basketball;
@@ -144,13 +148,14 @@
 		<< QVariant(false)         // karma          10
 		<< QVariant(false)         // artillery      11
 		<< QVariant(true)          // random order   12
-		<< QVariant(100)           // damage modfier 13
-		<< QVariant(30)            // turn time      14
-		<< QVariant(100)           // init health    15
-		<< QVariant(15)            // sudden death   16
-		<< QVariant(0)             // case prob      17
-		<< QVariant(3)             //  mines time    18
-		<< QVariant(4)             //  landadds      19
+		<< QVariant(false)         // king           13
+		<< QVariant(100)           // damage modfier 14
+		<< QVariant(30)            // turn time      15
+		<< QVariant(100)           // init health    16
+		<< QVariant(15)            // sudden death   17
+		<< QVariant(0)             // case prob      18
+		<< QVariant(3)             //  mines time    19
+		<< QVariant(4)             //  landadds      20
 		;
 
 	QList<QVariant> minefield;
@@ -168,13 +173,14 @@
 		<< QVariant(false)         // karma          10
 		<< QVariant(false)         // artillery      11
 		<< QVariant(true)          // random order   12
-		<< QVariant(150)           // damage modfier 13
-		<< QVariant(30)            // turn time      14
-		<< QVariant(50)            // init health    15
-		<< QVariant(15)            // sudden death   16
-		<< QVariant(0)             // case prob      17
-		<< QVariant(0)             //  mines time    18
-		<< QVariant(50)            //  landadds      19
+		<< QVariant(false)         // king           13
+		<< QVariant(150)           // damage modfier 14
+		<< QVariant(30)            // turn time      15
+		<< QVariant(50)            // init health    16
+		<< QVariant(15)            // sudden death   17
+		<< QVariant(0)             // case prob      18
+		<< QVariant(0)             //  mines time    19
+		<< QVariant(50)            //  landadds      20
 		;
 
 	schemes.append(defaultScheme);
--- a/QTfrontend/gamecfgwidget.cpp	Sat Jan 30 18:23:42 2010 +0000
+++ b/QTfrontend/gamecfgwidget.cpp	Sun Jan 31 16:20:53 2010 +0000
@@ -115,13 +115,15 @@
 		result |= 0x800;
 	if (schemeData(12).toBool())
 		result |= 0x2000;
+	if (schemeData(13).toBool())
+		result |= 0x4000;
 
 	return result;
 }
 
 quint32 GameCFGWidget::getInitHealth() const
 {
-	return schemeData(15).toInt();
+	return schemeData(16).toInt();
 }
 
 QStringList GameCFGWidget::getFullConfig() const
@@ -129,12 +131,12 @@
 	QStringList sl;
 	sl.append("eseed " + pMapContainer->getCurrentSeed());
 	sl.append(QString("e$gmflags %1").arg(getGameFlags()));
-	sl.append(QString("e$damagepct %1").arg(schemeData(13).toInt()));
-	sl.append(QString("e$turntime %1").arg(schemeData(14).toInt() * 1000));
-	sl.append(QString("e$minestime %1").arg(schemeData(18).toInt() * 1000));
-	sl.append(QString("e$landadds %1").arg(schemeData(19).toInt()));
-	sl.append(QString("e$sd_turns %1").arg(schemeData(16).toInt()));
-	sl.append(QString("e$casefreq %1").arg(schemeData(17).toInt()));
+	sl.append(QString("e$damagepct %1").arg(schemeData(14).toInt()));
+	sl.append(QString("e$turntime %1").arg(schemeData(15).toInt() * 1000));
+	sl.append(QString("e$minestime %1").arg(schemeData(19).toInt() * 1000));
+	sl.append(QString("e$landadds %1").arg(schemeData(20).toInt()));
+	sl.append(QString("e$sd_turns %1").arg(schemeData(17).toInt()));
+	sl.append(QString("e$casefreq %1").arg(schemeData(18).toInt()));
 	sl.append(QString("e$template_filter %1").arg(pMapContainer->getTemplateFilter()));
 
 	QString currentMap = pMapContainer->getCurrentMap();
--- a/QTfrontend/hedgewars.qrc	Sat Jan 30 18:23:42 2010 +0000
+++ b/QTfrontend/hedgewars.qrc	Sun Jan 31 16:20:53 2010 +0000
@@ -57,6 +57,7 @@
     <file>res/btnKarma.png</file>
     <file>res/btnArtillery.png</file>
     <file>res/btnRandomOrder.png</file>
+    <file>res/btnKing.png</file>
     <file>res/iconBox.png</file>
     <file>res/iconHealth.png</file>
     <file>res/iconSuddenDeath.png</file>
--- a/QTfrontend/pages.cpp	Sat Jan 30 18:23:42 2010 +0000
+++ b/QTfrontend/pages.cpp	Sun Jan 31 16:20:53 2010 +0000
@@ -1054,6 +1054,11 @@
     TBW_randomorder->setToolTip(tr("Order of play is random instead of in room order."));
 	glGMLayout->addWidget(TBW_randomorder,2,3,1,1);
 
+	TBW_king = new ToggleButtonWidget(gbGameModes, ":/res/btnKing.png");
+	TBW_king->setText(ToggleButtonWidget::tr("King"));
+    TBW_king->setToolTip(tr("Play with a King. If he dies, your side dies."));
+	glGMLayout->addWidget(TBW_king,3,0,1,1);
+
 	// Right
 	QLabel * l;
 
@@ -1202,13 +1207,14 @@
 	mapper->addMapping(TBW_karma->button(), 10);
 	mapper->addMapping(TBW_artillery->button(), 11);
 	mapper->addMapping(TBW_randomorder->button(), 12);
-	mapper->addMapping(SB_DamageModifier, 13);
-	mapper->addMapping(SB_TurnTime, 14);
-	mapper->addMapping(SB_InitHealth, 15);
-	mapper->addMapping(SB_SuddenDeath, 16);
-	mapper->addMapping(SB_CaseProb, 17);
-	mapper->addMapping(SB_MinesTime, 18);
-	mapper->addMapping(SB_Mines, 19);
+	mapper->addMapping(TBW_king->button(), 13);
+	mapper->addMapping(SB_DamageModifier, 14);
+	mapper->addMapping(SB_TurnTime, 15);
+	mapper->addMapping(SB_InitHealth, 16);
+	mapper->addMapping(SB_SuddenDeath, 17);
+	mapper->addMapping(SB_CaseProb, 18);
+	mapper->addMapping(SB_MinesTime, 19);
+	mapper->addMapping(SB_Mines, 20);
 
 	mapper->toFirst();
 }
--- a/QTfrontend/pages.h	Sat Jan 30 18:23:42 2010 +0000
+++ b/QTfrontend/pages.h	Sun Jan 31 16:20:53 2010 +0000
@@ -434,6 +434,7 @@
 	ToggleButtonWidget * TBW_karma;
 	ToggleButtonWidget * TBW_artillery;
 	ToggleButtonWidget * TBW_randomorder;
+	ToggleButtonWidget * TBW_king;
 
 	QSpinBox * SB_DamageModifier;
 	QSpinBox * SB_TurnTime;
Binary file QTfrontend/res/btnKing.png has changed
--- a/hedgewars/CCHandlers.inc	Sat Jan 30 18:23:42 2010 +0000
+++ b/hedgewars/CCHandlers.inc	Sun Jan 31 16:20:53 2010 +0000
@@ -149,10 +149,13 @@
 begin
 if (not isDeveloperMode) or (CurrentTeam = nil) then exit;
 with CurrentTeam^ do
-	if s = '' then
-		CurrentHedgehog^.Hat:= 'NoHat'
-	else
-		CurrentHedgehog^.Hat:= s
+    begin
+    if not CurrentHedgehog^.King then
+       if (s = '') or (((GameFlags and gfKing) <> 0) and (s = 'crown')) then
+           CurrentHedgehog^.Hat:= 'NoHat'
+       else
+           CurrentHedgehog^.Hat:= s
+    end;
 end;
 
 procedure chSetHHCoords(var x: shortstring);
--- a/hedgewars/GSHandlers.inc	Sat Jan 30 18:23:42 2010 +0000
+++ b/hedgewars/GSHandlers.inc	Sun Jan 31 16:20:53 2010 +0000
@@ -98,7 +98,7 @@
 	else
 		PlaySound(sndOw1, false, PHedgehog(Gear^.Hedgehog)^.Team^.voicepack);
 
-	dmg:= modifyDamage(1 + hwRound((hwAbs(Gear^.dY) - _0_4) * 70));
+	dmg:= ModifyDamage(1 + hwRound((hwAbs(Gear^.dY) - _0_4) * 70), Gear);
     ApplyDamage(Gear, dmg);
 	end
 end;
--- a/hedgewars/uConsts.pas	Sat Jan 30 18:23:42 2010 +0000
+++ b/hedgewars/uConsts.pas	Sun Jan 31 16:20:53 2010 +0000
@@ -300,6 +300,7 @@
 	gfArtillery    = $00000800;
 	gfOneClanMode  = $00001000;
 	gfRandomOrder  = $00002000;
+	gfKing         = $00004000;
 
 	gstDrowning       = $00000001;
 	gstHHDriven       = $00000002;
--- a/hedgewars/uGears.pas	Sat Jan 30 18:23:42 2010 +0000
+++ b/hedgewars/uGears.pas	Sun Jan 31 16:20:53 2010 +0000
@@ -84,6 +84,7 @@
 procedure AssignHHCoords;
 procedure InsertGearToList(Gear: PGear);
 procedure RemoveGearFromList(Gear: PGear);
+function ModifyDamage(dmg: Longword; Gear: PGear): Longword;
 
 implementation
 uses uWorld, uMisc, uStore, uConsole, uSound, uTeams, uRandom, uCollisions, uLand, uIO, uLandGraphics,
@@ -423,7 +424,7 @@
 
 procedure DeleteGear(Gear: PGear);
 var team: PTeam;
-	t: Longword;
+	t,i: Longword;
 begin
 DeleteCI(Gear);
 
@@ -454,6 +455,10 @@
 		if CurrentHedgehog^.Gear = Gear then
 			FreeActionsList; // to avoid ThinkThread on drawned gear
 
+        if PHedgehog(Gear^.Hedgehog)^.King then
+            for i:= 0 to Pred(team^.Clan^.TeamsNumber) do
+                TeamGoneEffect(team^.Clan^.Teams[i]^);
+
 		PHedgehog(Gear^.Hedgehog)^.Gear:= nil;
 		inc(KilledHHs);
 		RecountTeamHealth(team)
@@ -716,7 +721,7 @@
                      end;
 
                   if (Gear <> nil) then
-                     if (GameFlags and gfInvulnerable) = 0 then
+                     if ((GameFlags and gfInvulnerable) = 0) and (not King or (TotalRounds >= 0))  then // King is protected for one round
                         Gear^.Invulnerable:= false;
                   end;
 end;
@@ -1612,7 +1617,7 @@
 	if (dmg > 1) and
 		((Gear^.State and gstNoDamage) = 0) then
 		begin
-		dmg:= modifyDamage(min(dmg div 2, Radius));
+		dmg:= ModifyDamage(min(dmg div 2, Radius), Gear);
 		case Gear^.Kind of
 			gtHedgehog,
 				gtMine,
@@ -1662,7 +1667,7 @@
 t:= GearsList;
 while t <> nil do
 	begin
-	dmg:= modifyDamage(min(Gear^.Radius + t^.Radius - hwRound(Distance(Gear^.X - t^.X, Gear^.Y - t^.Y)), 25));
+	dmg:= ModifyDamage(min(Gear^.Radius + t^.Radius - hwRound(Distance(Gear^.X - t^.X, Gear^.Y - t^.Y)), 25), Gear);
 	if dmg > 0 then
 	case t^.Kind of
 		gtHedgehog,
@@ -1694,18 +1699,17 @@
 procedure AmmoShove(Ammo: PGear; Damage, Power: LongInt);
 var t: PGearArray;
     Gear: PGear;
-    i: LongInt;
+    i, tmpDmg: LongInt;
 begin
 t:= CheckGearsCollision(Ammo);
 i:= t^.Count;
 
-Damage:= modifyDamage(Damage);
-
 if (Ammo^.Kind = gtFlame) and (i > 0) then Ammo^.Health:= 0;
 while i > 0 do
 	begin
 	dec(i);
 	Gear:= t^.ar[i];
+    tmpDmg:= ModifyDamage(Damage, Gear);
 	if (Gear^.State and gstNoDamage) = 0 then
 		begin
 		if (Gear^.Kind = gtHedgehog) and (Ammo^.State and gsttmpFlag <> 0) and (Ammo^.Kind = gtShover) then Gear^.FlightTime:= 1;
@@ -1717,7 +1721,7 @@
 			gtCase: begin
 					if (Ammo^.Kind = gtDrill) then begin Ammo^.Timer:= 0; exit; end;
                     if (not Gear^.Invulnerable) then
-                        ApplyDamage(Gear, Damage)
+                        ApplyDamage(Gear, tmpDmg)
                     else
                         Gear^.State:= Gear^.State or gstWinner;
 
@@ -2044,6 +2048,18 @@
 	end
 end;
 
+function ModifyDamage(dmg: Longword; Gear: PGear): Longword;
+begin
+(* Invulnerability cannot be placed in here due to still needing kicks
+   Not without a new damage machine.
+   King check should be in here instead of ApplyDamage since Tiy wants them kicked less
+*)
+if (PHedgehog(Gear^.Hedgehog) <> nil) and (PHedgehog(Gear^.Hedgehog)^.King) then
+   ModifyDamage:= hwRound(_0_01 * cDamageModifier * dmg * cDamagePercent * _0_5)
+else
+   ModifyDamage:= hwRound(_0_01 * cDamageModifier * dmg * cDamagePercent)
+end;
+
 procedure init_uGears;
 begin
 	CurAmmoGear:= nil;
--- a/hedgewars/uMisc.pas	Sat Jan 30 18:23:42 2010 +0000
+++ b/hedgewars/uMisc.pas	Sun Jan 31 16:20:53 2010 +0000
@@ -150,7 +150,6 @@
 function  DecodeBase64(s: shortstring): shortstring;
 function  doSurfaceConversion(tmpsurf: PSDL_Surface): PSDL_Surface;
 function  endian(independent: LongWord): LongWord;
-function  modifyDamage(dmg: Longword): Longword;
 {$IFDEF DEBUGFILE}
 procedure AddFileLog(s: shortstring);
 function  RectToStr(Rect: TSDL_Rect): shortstring;
@@ -527,11 +526,6 @@
 end;
 {$ENDIF}
 
-function modifyDamage(dmg: Longword): Longword;
-begin
-ModifyDamage:= hwRound(_0_01 * cDamageModifier * dmg * cDamagePercent)
-end;
-
 {$IFDEF DEBUGFILE}
 procedure AddFileLog(s: shortstring);
 begin
--- a/hedgewars/uTeams.pas	Sat Jan 30 18:23:42 2010 +0000
+++ b/hedgewars/uTeams.pas	Sun Jan 31 16:20:53 2010 +0000
@@ -52,6 +52,7 @@
 			HatVisibility: GLfloat;
 			stats: TStatistics;
 			Hat: String;
+            King: boolean;  // Flag for a bunch of hedgehog attributes
 			end;
 
 	TTeam = record
@@ -194,7 +195,7 @@
 			CurrentTeam:= Teams[CurrTeam];
 			with CurrentTeam^ do
 				begin
-				PrevHH:= CurrHedgehog mod HedgehogsNumber; // prevent infinite loop when CurrHedgehog = 7, but HedgehogsNumber < 8 (team is destroyed before its first turn
+				PrevHH:= CurrHedgehog mod HedgehogsNumber; // prevent infinite loop when CurrHedgehog = 7, but HedgehogsNumber < 8 (team is destroyed before its first turn)
 				repeat
 					CurrHedgehog:= Succ(CurrHedgehog) mod HedgehogsNumber;
 				until (Hedgehogs[CurrHedgehog].Gear <> nil) or (CurrHedgehog = PrevHH)
@@ -301,6 +302,20 @@
 var i, t: LongInt;
     th: LongInt;
 begin
+
+// Some initial King buffs
+if (GameFlags and gfKing) <> 0 then
+   for i:= 0 to Pred(ClansCount) do 
+      begin
+      with ClansArray[i]^.Teams[0]^.Hedgehogs[0] do
+         begin
+         King:= true;
+         Hat:= 'crown';
+         Gear^.Health:= hwRound(int2hwFloat(Gear^.Health)*_1_5);
+         Gear^.Invulnerable:= true
+         end
+      end;
+
 for t:= 0 to Pred(TeamsCount) do
    with TeamsArray[t]^ do
       begin
@@ -312,6 +327,7 @@
              inc(th, Hedgehogs[i].Gear^.Health);
       if th > MaxTeamHealth then MaxTeamHealth:= th;
       end;
+
 RecountAllTeamsHealth
 end;
 
--- a/share/hedgewars/Data/Locale/hedgewars_bg.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_bg.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -490,6 +490,14 @@
         <source>Delete</source>
         <translation type="unfinished">Изтриване</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -551,6 +559,10 @@
         <source>Info</source>
         <translation>Информация</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1002,6 +1014,14 @@
         <source>Artillery</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_cs.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_cs.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -495,6 +495,14 @@
         <source>Seconds</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -556,6 +564,10 @@
         <source>Ban</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1007,6 +1019,14 @@
         <source>Add Mines</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_de.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_de.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -496,6 +496,14 @@
         <source>All hogs have a personal forcefield</source>
         <translation>Alle Igel haben ein eigenes Schutzschild</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -557,6 +565,10 @@
         <source>Ban</source>
         <translation>Verbannen</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1008,6 +1020,14 @@
         <source>Add Mines</source>
         <translation>Minen hinzufügen</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_en.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_en.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -493,6 +493,14 @@
         <source>Delete</source>
         <translation>Delete</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -554,6 +562,10 @@
         <source>Ban</source>
         <translation>Ban</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1005,6 +1017,14 @@
         <source>Add Mines</source>
         <translation>Add Mines</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_es.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_es.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -495,6 +495,14 @@
         <source>All hogs have a personal forcefield</source>
         <translation>Todos los erizos tienen un campo de fuerza personal</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -556,6 +564,10 @@
         <source>Ban</source>
         <translation>Banear</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1007,6 +1019,14 @@
         <source>Add Mines</source>
         <translation>Añadir minas</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_fi.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_fi.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -495,6 +495,14 @@
         <source>Delete</source>
         <translation>Poista</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -556,6 +564,10 @@
         <source>Ban</source>
         <translation>Anna porttikielto</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1007,6 +1019,14 @@
         <source>Add Mines</source>
         <translation>Lisää miinat</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_fr.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_fr.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -495,6 +495,14 @@
         <source>All hogs have a personal forcefield</source>
         <translation>Tous les hérissons ont un champ de force personnel</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -556,6 +564,10 @@
         <source>Ban</source>
         <translation>Bannir</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1007,6 +1019,14 @@
         <source>Add Mines</source>
         <translation>Ajouter des Mines</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_it.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_it.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -495,6 +495,14 @@
         <source>All hogs have a personal forcefield</source>
         <translation>Tutti i ricci hanno un personale campo di forza</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -556,6 +564,10 @@
         <source>Ban</source>
         <translation>Ban</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1007,6 +1019,14 @@
         <source>Add Mines</source>
         <translation>Aggiungi mine</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_ja.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_ja.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -485,6 +485,14 @@
         <source>Delete</source>
         <translation type="unfinished">削除</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -546,6 +554,10 @@
         <source>Ban</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -997,6 +1009,14 @@
         <source>Add Mines</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
Binary file share/hedgewars/Data/Locale/hedgewars_pl.qm has changed
--- a/share/hedgewars/Data/Locale/hedgewars_pl.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_pl.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -500,6 +500,14 @@
         <source>Seconds</source>
         <translation type="unfinished">Sekundy</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -561,6 +569,10 @@
         <source>Ban</source>
         <translation>Zbanuj</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1012,6 +1024,14 @@
         <source>Add Mines</source>
         <translation>Dodaj miny</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
@@ -1343,7 +1363,7 @@
     </message>
     <message>
         <source>Delete</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished">Usuń</translation>
     </message>
     <message>
         <source>Numpad 0</source>
Binary file share/hedgewars/Data/Locale/hedgewars_pt_BR.qm has changed
--- a/share/hedgewars/Data/Locale/hedgewars_pt_BR.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_pt_BR.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -490,6 +490,14 @@
         <source>All hogs have a personal forcefield</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -551,6 +559,10 @@
         <source>Ban</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1002,6 +1014,14 @@
         <source>Add Mines</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
Binary file share/hedgewars/Data/Locale/hedgewars_pt_PT.qm has changed
--- a/share/hedgewars/Data/Locale/hedgewars_pt_PT.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_pt_PT.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -495,6 +495,14 @@
         <source>Delete</source>
         <translation>Eliminar</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -556,6 +564,10 @@
         <source>Start</source>
         <translation>Iniciar</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1007,6 +1019,14 @@
         <source>Artillery</source>
         <translation>Artilharia</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_ru.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_ru.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -500,6 +500,14 @@
         <source>All hogs have a personal forcefield</source>
         <translation>Каждый ёжик в защитном поле</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -561,6 +569,10 @@
         <source>Ban</source>
         <translation>Заблокировать</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1012,6 +1024,14 @@
         <source>Add Mines</source>
         <translation>Добавить мины</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_sk.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_sk.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -495,6 +495,14 @@
         <source>All hogs have a personal forcefield</source>
         <translation>Všetci ježkovia majú osobné silové pole</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -556,6 +564,10 @@
         <source>Ban</source>
         <translation>Zakázať</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1007,6 +1019,14 @@
         <source>Add Mines</source>
         <translation>Pridať míny</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_sv.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_sv.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -490,6 +490,14 @@
         <source>All hogs have a personal forcefield</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -551,6 +559,10 @@
         <source>Ban</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1002,6 +1014,14 @@
         <source>Add Mines</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_tr_TR.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_tr_TR.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -485,6 +485,14 @@
         <source>Delete</source>
         <translation>Sil</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -546,6 +554,10 @@
         <source>Ban</source>
         <translation>Yasakla</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -997,6 +1009,14 @@
         <source>Add Mines</source>
         <translation>Mayın Ekle</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_uk.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_uk.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -500,6 +500,14 @@
         <source>All hogs have a personal forcefield</source>
         <translation type="unfinished">Всі їжаки мають невразливість</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -561,6 +569,10 @@
         <source>Ban</source>
         <translation type="unfinished">Забанити</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1012,6 +1024,14 @@
         <source>Add Mines</source>
         <translation type="unfinished">Додати міни</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
Binary file share/hedgewars/Data/Locale/hedgewars_zh_CN.qm has changed
--- a/share/hedgewars/Data/Locale/hedgewars_zh_CN.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_zh_CN.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -490,6 +490,14 @@
         <source>Seconds</source>
         <translation>秒钟</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -551,6 +559,10 @@
         <source>Ban</source>
         <translation>屏蔽</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1002,6 +1014,14 @@
         <source>Artillery</source>
         <translation>射术</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
Binary file share/hedgewars/Data/Locale/hedgewars_zh_TW.qm has changed
--- a/share/hedgewars/Data/Locale/hedgewars_zh_TW.ts	Sat Jan 30 18:23:42 2010 +0000
+++ b/share/hedgewars/Data/Locale/hedgewars_zh_TW.ts	Sun Jan 31 16:20:53 2010 +0000
@@ -490,6 +490,14 @@
         <source>All hogs have a personal forcefield</source>
         <translation>每個刺蝟都有一個力場</translation>
     </message>
+    <message>
+        <source>Order of play is random instead of in room order.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play with a King. If he dies, your side dies.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -551,6 +559,10 @@
         <source>Ban</source>
         <translation>遮罩</translation>
     </message>
+    <message>
+        <source>Follow</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QCheckBox</name>
@@ -1002,6 +1014,14 @@
         <source>Add Mines</source>
         <translation>佈置地雷</translation>
     </message>
+    <message>
+        <source>Random Order</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>King</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>