merge hedgeroid
authorXeli
Fri, 16 Sep 2011 18:17:16 +0200
branchhedgeroid
changeset 5932 5164d17b6374
parent 5828 667fb58d7f18 (current diff)
parent 5930 89f5f5d3fdec (diff)
child 5934 9f05a0f43003
merge
hedgewars/hwengine.pas
hedgewars/uFloat.pas
hedgewars/uGearsRender.pas
hedgewars/uLand.pas
hedgewars/uScript.pas
hedgewars/uSound.pas
hedgewars/uStore.pas
hedgewars/uUtils.pas
hedgewars/uVariables.pas
hedgewars/uWorld.pas
share/hedgewars/Data/Graphics/Hats/sf_Guilie.png
share/hedgewars/Data/Graphics/Hats/sf_Honda.png
share/hedgewars/Data/Graphics/Hats/sf_Ryu.png
share/hedgewars/Data/Scripts/Multiplayer/GaudyRacer.cfg
share/hedgewars/Data/Scripts/Multiplayer/GaudyRacer.lua
--- a/.hgtags	Fri Sep 16 17:36:05 2011 +0200
+++ b/.hgtags	Fri Sep 16 18:17:16 2011 +0200
@@ -42,3 +42,5 @@
 0000000000000000000000000000000000000000 0.9.9
 fee68e3a303998fdfcc69f74775dc84a36f587fb 0.9.9.1
 0000000000000000000000000000000000000000 0.9.9.1
+718f98a9df122d73f3ba9add4d1654865199de31 Hedgewars-iOS-1.3
+cba92708277b6d0aeabfff2b878845b7d848bdcd Hedgewars-iOS-1.3.1
--- a/ChangeLog.txt	Fri Sep 16 17:36:05 2011 +0200
+++ b/ChangeLog.txt	Fri Sep 16 18:17:16 2011 +0200
@@ -2,19 +2,27 @@
 * bugfixes
 
 0.9.15 -> ???:
- + New modes: The Specialists, Space Invasion
+ + Stereoscopic rendering
  + Installing content (anything under Data/ - maps, sounds, and any such stuff) to user profile allows custom adding/overriding of any Data/ content
- + Sudden Death art
+ + Screen for downloadable content
+ + Allow up to 8 teams in a game
+ + New gameplay modes/styles: Racer, The Specialists, Tumbler, Space Invasion
  + New Weapon/Utility: Land Spray Gun
+ + New Utility: Time Box
  + New Game mode: Tag team
+ + New Game option for map bottom border
+ + New Theme: Golf
+ + Many new hats
+ + Sudden Death art
  + Get away time modifier (in %)
- + Allow up to 8 teams in a game
  + Shoppa scheme by default resets ammo
  + Shots are on a tenth of a second delay instead of a 1 and a quarter second delay (fast deagle/portal fire)
  + Defective mines explode if they take enough damage
  + Rope head can attach to hogs/crates/barrels again (rope still passes through them)
  + Control of grenade bounce
  + Drill Strike bombs don't explode when leaving ground, but after a (customizable!) timer
+ + Hammer impacts mines/barrels
+ + Seduction is an Area-of-Effect attack now
  + Ukranian localization of Default voice. support for localized voices
  + Theme cleanup, including the new theme config file change
  + Improvements in scoring and tracking damage
@@ -22,14 +30,20 @@
  + Mudball does not end turn
  + Indicator for height of plane when using napalm
  + Land smoothing (looks less pixelated on generation and damage)
- + Improved lua script support (e.g. possibility to change hats)
+ + Improved lua script support (e.g. set per-hog ammo, place girders, spawn fake crates, switch hogs, change hats)
  + The names of the ShoppaKingTournament winners are now written on the Trophies in the ShoppaKing and TrophyRace maps!
+ + Allow window resizes during game
+ + Improved fullscreen capabilities
+ + Additional/new sounds (mine impact, sine gun, etc)
+ + Victory/flawless victory sounds
+ * Voices don't overlap (was needed more due to faster game actions due to shortened delays)
  * Prevent portaling to impossible locations better
  * Snow accumulates more smoothly
  * Rope should be less sticky now
+ * Rope shouldn't be able to get Hogs stuck on walls anymore
  * Fix for last portal shot always being yellow
  * More accurate napalm strike drop location
- * AI fixes
+ * AI fixes (heh, yeah right)
  * Fixed locales, such as korean
  * Code refactoring
  * Various bug/leak fixes
@@ -40,6 +54,7 @@
  + Improved nick sorting in lobby and rooms. (not case-sensitive, letters first, friend @ top, ignored @ bottom)
  + Display player count in lobby
  + Lobby: Player names of online players can be clicked in chat directly so that you don't have to find them in the player list
+ + Room names can be changed by the room admin without recreating the room
  * Fix invisible icons in popup menus
  * Various fixes and adjustments
 
--- a/QTfrontend/CMakeLists.txt	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/CMakeLists.txt	Fri Sep 16 18:17:16 2011 +0200
@@ -12,6 +12,16 @@
 find_package(Qt4 REQUIRED)
 include(${QT_USE_FILE})
 
+# Check if we need zlib
+check_library_exists(${QT_QTCORE_LIBRARY} inflateInit2_ ${QT_LIBRARY_DIR} QT_PROVIDES_ZLIB_FUNCTIONS)
+
+if(NOT QT_PROVIDES_ZLIB_FUNCTIONS)
+    find_package(ZLIB REQUIRED)
+
+    set(HW_LINK_LIBS ${ZLIB_LIBRARIES} ${HW_LINK_LIBS})
+endif()
+
+
 # Configure for SDL
 find_package(SDL REQUIRED)
 find_package(SDL_mixer REQUIRED)
@@ -216,7 +226,7 @@
 
 if(APPLE)
     set(hwfr_src ${hwfr_src} InstallController.cpp CocoaInitializer.mm M3Panel.mm M3InstallController.m NSWorkspace_RBAdditions.m)
-    set(HW_LINK_LIBS IOKit)
+    set(HW_LINK_LIBS IOKit ${HW_LINK_LIBS})
 
     if(NOT NOAUTOUPDATE)
         find_package(Sparkle)
--- a/QTfrontend/binds.cpp	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/binds.cpp	Fri Sep 16 18:17:16 2011 +0200
@@ -62,9 +62,7 @@
     {"confirm", "y",    QT_TRANSLATE_NOOP("binds", "confirmation"), NULL, NULL},
     {"+voldown",    "9",    QT_TRANSLATE_NOOP("binds", "volume down"),  NULL, QT_TRANSLATE_NOOP("binds (descriptions)", "Modify the game's volume while playing:")},
     {"+volup",  "0",    QT_TRANSLATE_NOOP("binds", "volume up"),    NULL, NULL},
-#ifndef _WIN32
     {"fullscr", "f12",  QT_TRANSLATE_NOOP("binds", "change mode"),  NULL, QT_TRANSLATE_NOOP("binds (descriptions)", "Toggle fullscreen mode:")},
-#endif
     {"capture", "c",    QT_TRANSLATE_NOOP("binds", "capture"),  NULL, QT_TRANSLATE_NOOP("binds (descriptions)", "Take a screenshot:")},
     {"rotmask", "delete",   QT_TRANSLATE_NOOP("binds", "hedgehogs\ninfo"),  NULL, QT_TRANSLATE_NOOP("binds (descriptions)", "Toggle labels above hedgehogs:")}
 };
--- a/QTfrontend/binds.h	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/binds.h	Fri Sep 16 18:17:16 2011 +0200
@@ -21,11 +21,7 @@
 
 #include <QString>
 
-#ifdef _WIN32
-#define BINDS_NUMBER 43
-#else
 #define BINDS_NUMBER 44
-#endif
 
 struct BindAction
 {
--- a/QTfrontend/drawmapscene.cpp	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/drawmapscene.cpp	Fri Sep 16 18:17:16 2011 +0200
@@ -108,11 +108,32 @@
 
         emit pathChanged();
     }
+    else if(oldItems.size())
+    {
+        while(oldItems.size())
+            addItem(oldItems.takeFirst());
+        paths = oldPaths;
+
+        emit pathChanged();
+    }
 }
 
 void DrawMapScene::clearMap()
 {
-    clear();
+    // don't clear if already cleared
+    if(!items().size())
+        return;
+
+    oldItems.clear();
+
+    // do this since clear() would _destroy_ all items
+    while(items().size()) {
+        oldItems.push_front(items().first());
+        removeItem(items().first());
+    }
+
+    oldPaths = paths;
+
     paths.clear();
 
     emit pathChanged();
@@ -146,6 +167,8 @@
 
 void DrawMapScene::decode(QByteArray data)
 {
+    oldItems.clear();
+    oldPaths.clear();
     clear();
     paths.clear();
 
--- a/QTfrontend/drawmapscene.h	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/drawmapscene.h	Fri Sep 16 18:17:16 2011 +0200
@@ -48,6 +48,8 @@
     QBrush m_brush;
     QGraphicsPathItem  * m_currPath;
     Paths paths;
+    Paths oldPaths;
+    QList<QGraphicsItem *> oldItems;
 
     virtual void mouseMoveEvent(QGraphicsSceneMouseEvent * mouseEvent);
     virtual void mousePressEvent(QGraphicsSceneMouseEvent * mouseEvent);
--- a/QTfrontend/game.cpp	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/game.cpp	Fri Sep 16 18:17:16 2011 +0200
@@ -53,8 +53,13 @@
 void HWGame::onClientDisconnect()
 {
     switch (gameType) {
-        case gtDemo: 
-            if (gameState == gsInterrupted || gameState == gsHalted) emit HaveRecord(false, demo);
+        case gtSave:
+            if (gameState == gsInterrupted || gameState == gsHalted)
+                emit HaveRecord(false, demo);
+            else if (gameState == gsFinished)
+                 emit HaveRecord(true, demo);
+            break;
+        case gtDemo:
             break;
         case gtNet:
             emit HaveRecord(true, demo);
@@ -188,6 +193,7 @@
                     SendQuickConfig();
                     break;
                 }
+                case gtSave:
                 case gtDemo: break;
                 case gtNet: {
                     SendNetConfig();
@@ -321,9 +327,9 @@
     TeamCount++;
 }
 
-void HWGame::PlayDemo(const QString & demofilename)
+void HWGame::PlayDemo(const QString & demofilename, bool isSave)
 {
-    gameType = gtDemo;
+    gameType = isSave ? gtSave : gtDemo;
     QFile demofile(demofilename);
     if (!demofile.open(QIODevice::ReadOnly))
     {
--- a/QTfrontend/game.h	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/game.h	Fri Sep 16 18:17:16 2011 +0200
@@ -48,7 +48,7 @@
     HWGame(GameUIConfig * config, GameCFGWidget * gamecfg, QString ammo, TeamSelWidget* pTeamSelWidget = 0);
     virtual ~HWGame();
     void AddTeam(const QString & team);
-    void PlayDemo(const QString & demofilename);
+    void PlayDemo(const QString & demofilename, bool isSave);
     void StartLocal();
     void StartQuick();
     void StartNet();
@@ -84,6 +84,7 @@
         gtNet      = 4,
         gtTraining = 5,
         gtCampaign = 6,
+        gtSave     = 7,
     };
     char msgbuf[MAXMSGCHARS];
     QString teams[5];
--- a/QTfrontend/gamecfgwidget.cpp	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/gamecfgwidget.cpp	Fri Sep 16 18:17:16 2011 +0200
@@ -49,9 +49,7 @@
 
     QGridLayout *GBoxOptionsLayout = new QGridLayout(GBoxOptions);
 
-    QLabel *titleLabel = new QLabel(QLabel::tr("Game Options"), GBoxOptions);
-    titleLabel->setMargin(7);    // TODO: make the text larger/richer!!!!
-    GBoxOptionsLayout->addWidget(titleLabel, 0, 0, 1, 0, Qt::AlignHCenter);
+    GBoxOptions->setTitle(tr("Game Options"));
     GBoxOptionsLayout->addWidget(new QLabel(QLabel::tr("Style"), GBoxOptions), 1, 0);
 
     Scripts = new QComboBox(GBoxOptions);
--- a/QTfrontend/hwform.cpp	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/hwform.cpp	Fri Sep 16 18:17:16 2011 +0200
@@ -93,7 +93,7 @@
 bool frontendEffects = true;
 QString playerHash;
 
-HWForm::HWForm(QWidget *parent)
+HWForm::HWForm(QWidget *parent, QString styleSheet)
   : QMainWindow(parent), pnetserver(0), pRegisterServer(0), editedTeam(0), hwnet(0)
 {
 #ifdef USE_XFIRE
@@ -104,6 +104,7 @@
     frontendEffects = gameSettings->value("frontend/effects", true).toBool();
     playerHash = QString(QCryptographicHash::hash(gameSettings->value("net/nick","").toString().toLatin1(), QCryptographicHash::Md5).toHex());
 
+    this->setStyleSheet(styleSheet);
     ui.setupUi(this);
     setMinimumSize(760, 580);
     //setFocusPolicy(Qt::StrongFocus);
@@ -168,7 +169,7 @@
     connect(ui.pageEditTeam->BtnTeamSave, SIGNAL(clicked()), this, SLOT(TeamSave()));
     connect(ui.pageEditTeam->BtnTeamDiscard, SIGNAL(clicked()), this, SLOT(TeamDiscard()));
 
-    connect(ui.pageEditTeam->signalMapper, SIGNAL(mapped(const int &)), this, SLOT(RandomName(const int &)));
+    connect(ui.pageEditTeam->signalMapper2, SIGNAL(mapped(const int &)), this, SLOT(RandomName(const int &)));
     connect(ui.pageEditTeam->randTeamButton, SIGNAL(clicked()), this, SLOT(RandomNames()));
 
     connect(ui.pageMultiplayer->BtnBack, SIGNAL(clicked()), this, SLOT(GoBack()));
@@ -638,7 +639,7 @@
 
 void HWForm::NewTeam()
 {
-    editedTeam = new HWTeam("unnamed");
+    editedTeam = new HWTeam(QLineEdit::tr("unnamed"));
     editedTeam->SetToPage(this);
     GoToPage(ID_PAGE_SETUP_TEAM);
 }
@@ -730,7 +731,7 @@
         return;
     }
     CreateGame(0, 0, 0);
-    game->PlayDemo(curritem->data(Qt::UserRole).toString());
+    game->PlayDemo(curritem->data(Qt::UserRole).toString(), ui.pagePlayDemo->isSave());
 }
 
 void HWForm::PlayDemoQuick(const QString & demofilename)
@@ -739,7 +740,7 @@
     GoBack(); //needed to cleanly disconnect from netgame
     GoToPage(ID_PAGE_MAIN);
     CreateGame(0, 0, 0);
-    game->PlayDemo(demofilename);
+    game->PlayDemo(demofilename, false);
 }
 
 void HWForm::NetConnectServer(const QString & host, quint16 port)
--- a/QTfrontend/hwform.h	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/hwform.h	Fri Sep 16 18:17:16 2011 +0200
@@ -52,7 +52,7 @@
     Q_OBJECT
 
 public:
-    HWForm(QWidget *parent = 0);
+    HWForm(QWidget *parent = 0, QString styleSheet = "");
     Ui_HWForm ui;
     SDLInteraction sdli;
     GameUIConfig * config;
--- a/QTfrontend/main.cpp	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/main.cpp	Fri Sep 16 18:17:16 2011 +0200
@@ -96,8 +96,8 @@
 
     Q_INIT_RESOURCE(hedgewars);
 
-    qApp->setStyleSheet
-        (QString(
+    QString styleSheetFromHell =
+        QString(
             "HWForm,QDialog{"
                 "background-image: url(\":/res/Background.png\");"
                 "background-position: bottom center;"
@@ -251,6 +251,8 @@
                 "subcontrol-origin: margin;"
                 "subcontrol-position: top left;"
                 "text-align: left;"
+                "left: 15px;"
+                "top: -4px;"
                 "}"
 
             "QCheckBox::indicator:checked{"
@@ -315,8 +317,7 @@
                 "background-color: #ffcc00;"
                 "width: 8px;"
             "}"
-            )
-        );
+            );
 
     bindir->cd("bin"); // workaround over NSIS installer
 
@@ -484,7 +485,7 @@
     CocoaInitializer initializer;
 #endif
 
-    app.form = new HWForm();
+    app.form = new HWForm(NULL,styleSheetFromHell);
 
     app.form->show();
     return app.exec();
--- a/QTfrontend/newnetclient.cpp	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/newnetclient.cpp	Fri Sep 16 18:17:16 2011 +0200
@@ -496,17 +496,6 @@
         emit AskForRunGame();
         return;
     }
-    
-    if (lst[0] == "BYE") {
-        if (lst[1] == "Authentication failed")
-        {
-            // Set the password blank if case the user tries to join and enter his password again
-            config->setValue("net/passwordlength", 0);
-            config->setNetPasswordLength(0);
-        }
-        // return early so the user won't get an unknown error message dialog (the user already gets a server connection is lost one)
-        return;
-    }
 
     if (lst[0] == "ASKPASSWORD") {
         bool ok = false;
@@ -625,6 +614,12 @@
             qWarning("Net: Bad BYE message");
             return;
         }
+        if (lst[1] == "Authentication failed")
+        {
+            // Set the password blank if case the user tries to join and enter his password again
+            config->setValue("net/passwordlength", 0);
+            config->setNetPasswordLength(0);
+        }
         emit showMessage(HWNewNet::tr("Quit reason: ") + lst[1]);
         return;
     }
--- a/QTfrontend/pagedrawmap.cpp	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/pagedrawmap.cpp	Fri Sep 16 18:17:16 2011 +0200
@@ -45,7 +45,7 @@
 
 void PageDrawMap::load()
 {
-    QString fileName = QFileDialog::getOpenFileName(this, tr("Load drawn map"), ".", tr("Drawn Maps (*.hwmap);;All files (*.*)"));
+    QString fileName = QFileDialog::getOpenFileName(NULL, tr("Load drawn map"), ".", tr("Drawn Maps") + " (*.hwmap);;" + tr("All files") + " (*)");
 
     if(!fileName.isEmpty())
         drawMapWidget->load(fileName);
@@ -53,7 +53,7 @@
 
 void PageDrawMap::save()
 {
-    QString fileName = QFileDialog::getSaveFileName(this, tr("Save drawn map"), ".", tr("Drawn Maps (*.hwmap);;All files (*.*)"));
+    QString fileName = QFileDialog::getSaveFileName(NULL, tr("Save drawn map"), ".", tr("Drawn Maps") + " (*.hwmap);;" + tr("All files") + " (*)");
 
     if(!fileName.isEmpty())
         drawMapWidget->save(fileName);
--- a/QTfrontend/pageeditteam.cpp	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/pageeditteam.cpp	Fri Sep 16 18:17:16 2011 +0200
@@ -64,7 +64,10 @@
     GBoxHedgehogs->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
     QGridLayout * GBHLayout = new QGridLayout(GBoxHedgehogs);
 
-    signalMapper = new QSignalMapper(this);
+    signalMapper1 = new QSignalMapper(this);
+    signalMapper2 = new QSignalMapper(this);
+
+    connect(signalMapper1, SIGNAL(mapped(int)), this, SLOT(fixHHname(int)));
 
     HatsModel * hatsModel = new HatsModel(GBoxHedgehogs);
     for(int i = 0; i < 8; i++)
@@ -82,11 +85,13 @@
         HHNameEdit[i]->setMinimumWidth(120);
         GBHLayout->addWidget(HHNameEdit[i], i, 1);
 
+        connect(HHNameEdit[i], SIGNAL(editingFinished()), signalMapper1, SLOT(map()));
+            signalMapper1->setMapping(HHNameEdit[i], i);
+
         randButton[i] = addButton(":/res/dice.png", GBHLayout, i, 3, true);
 
-        connect(randButton[i], SIGNAL(clicked()), signalMapper, SLOT(map()));
-            signalMapper->setMapping(randButton[i], i);
-
+        connect(randButton[i], SIGNAL(clicked()), signalMapper2, SLOT(map()));
+            signalMapper2->setMapping(randButton[i], i);
     }
 
     randTeamButton = addButton(QPushButton::tr("Random Team"), GBHLayout, 9, false);
@@ -342,6 +347,14 @@
     }
 }
 
+void PageEditTeam::fixHHname(int idx)
+{
+    HHNameEdit[idx]->setText(HHNameEdit[idx]->text().trimmed());
+
+    if (HHNameEdit[idx]->text().isEmpty())
+        HHNameEdit[idx]->setText(QLineEdit::tr("hedgehog %1").arg(idx+1));
+}
+
 void PageEditTeam::CBFort_activated(const QString & fortname)
 {
     QFile tmp;
@@ -358,10 +371,8 @@
     mySdli->SDLMusicInit();
     
     tmpdir.cd(cfgdir->absolutePath());
-    tmpdir.cd("Data/Sounds/voices");
-    tmpdir.cd(CBVoicepack->currentText());
-    
-    if (!tmpdir.exists()) {
+    if (!tmpdir.cd("Data/Sounds/voices/"+CBVoicepack->currentText()))
+    {
         tmpdir.cd(datadir->absolutePath());
         tmpdir.cd("Sounds/voices");
         tmpdir.cd(CBVoicepack->currentText());
--- a/QTfrontend/pageeditteam.h	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/pageeditteam.h	Fri Sep 16 18:17:16 2011 +0200
@@ -31,7 +31,8 @@
 
 public:
     PageEditTeam(QWidget* parent, SDLInteraction * sdli);
-    QSignalMapper* signalMapper;
+    QSignalMapper* signalMapper1;
+    QSignalMapper* signalMapper2;
     QGroupBox *GBoxHedgehogs;
     QGroupBox *GBoxTeam;
     QGroupBox *GBoxFort;
@@ -61,6 +62,7 @@
 
 private slots:
     void testSound();
+    void fixHHname(int idx);
 };
 
 #endif
--- a/QTfrontend/pagegamestats.cpp	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/pagegamestats.cpp	Fri Sep 16 18:17:16 2011 +0200
@@ -43,14 +43,16 @@
     pageLayout->setSpacing(20);
     pageLayout->setColumnStretch(0, 1);
     pageLayout->setColumnStretch(1, 1);
+    pageLayout->setContentsMargins(7, 7, 7, 0);
+
+    BtnSave = addButton(":/res/Save.png", pageLayout, 3, 2, true);
+    BtnSave->setStyleSheet("QPushButton{margin: 12px 0px 12px 0px;}");
+    connect(BtnSave, SIGNAL(clicked()), this, SIGNAL(saveDemoRequested()));
 
     BtnBack = addButton(":/res/Exit.png", pageLayout, 3, 0, true);
-    BtnBack->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
-
-    BtnSave = addButton(":/res/Save.png", pageLayout, 3, 2, true);
-    BtnSave->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
-    BtnSave->setStyleSheet("QPushButton{margin: 12px 0px 12px 0px;}");
-    connect(BtnSave, SIGNAL(clicked()), this, SIGNAL(saveDemoRequested()));
+    BtnBack->setFixedHeight(BtnSave->height());
+    BtnBack->setFixedWidth(BtnBack->width()+2);
+    BtnBack->setStyleSheet("QPushButton{margin: 22px 0 9px 2px;}");
 
     QGroupBox * gb = new QGroupBox(this);
     QVBoxLayout * gbl = new QVBoxLayout;
--- a/QTfrontend/pageoptions.cpp	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/pageoptions.cpp	Fri Sep 16 18:17:16 2011 +0200
@@ -295,11 +295,12 @@
             CBResolution = new QComboBox(AGGroupBox);
             GBAreslayout->addWidget(CBResolution);
             GBAlayout->addLayout(GBAreslayout);
+            connect(CBResolution, SIGNAL(currentIndexChanged(int)), this, SLOT(setResolution(int)));
 
             CBFullscreen = new QCheckBox(AGGroupBox);
             CBFullscreen->setText(QCheckBox::tr("Fullscreen"));
             GBAlayout->addWidget(CBFullscreen);
-            connect(CBFullscreen, SIGNAL(stateChanged(int)), this, SLOT(setFullscreen(void)));
+            connect(CBFullscreen, SIGNAL(stateChanged(int)), this, SLOT(setFullscreen(int)));
 
             QLabel * quality = new QLabel(AGGroupBox);
             quality->setText(QLabel::tr("Quality"));
@@ -313,6 +314,8 @@
             SLQuality->setFixedWidth(150);
             GBAqualayout->addWidget(SLQuality);
             GBAlayout->addLayout(GBAqualayout);
+            connect(SLQuality, SIGNAL(valueChanged(int)), this, SLOT(setQuality(int)));
+
             QLabel * stereo = new QLabel(AGGroupBox);
             stereo->setText(QLabel::tr("Stereo rendering"));
             GBAstereolayout->addWidget(stereo);
@@ -402,33 +405,50 @@
     BtnBack->setFixedHeight(BtnSaveOptions->height());
     BtnBack->setFixedWidth(BtnBack->width()+2);
     BtnBack->setStyleSheet("QPushButton{margin: 22px 0 9px 2px;}");
+
+    previousQuality = this->SLQuality->value();
+    previousResolutionIndex = this->CBResolution->currentIndex();
+    previousFullscreenValue = this->CBFullscreen->isChecked();
 }
 
 void PageOptions::forceFullscreen(int index)
 {
+    bool forced = (index == 7 || index == 8 || index == 9);
+
     if (index != 0) {
-        previousFullscreenValue = this->CBFullscreen->isChecked();
-        this->CBFullscreen->setChecked(true);
-        this->CBFullscreen->setEnabled(false);
-        previousQuality = this->SLQuality->value();
         this->SLQuality->setValue(this->SLQuality->maximum());
         this->SLQuality->setEnabled(false);
+        this->CBFullscreen->setEnabled(!forced);
+        this->CBFullscreen->setChecked(forced ? true : previousFullscreenValue);
+        this->CBResolution->setCurrentIndex(forced ? 0 : previousResolutionIndex);
     } else {
-        this->CBFullscreen->setChecked(previousFullscreenValue);
+        this->SLQuality->setEnabled(true);
         this->CBFullscreen->setEnabled(true);
         this->SLQuality->setValue(previousQuality);
-        this->SLQuality->setEnabled(true);
+        this->CBFullscreen->setChecked(previousFullscreenValue);
+        this->CBResolution->setCurrentIndex(previousResolutionIndex);
     }
 }
 
-void PageOptions::setFullscreen(void)
+void PageOptions::setQuality(int value)
+{
+    int index = this->CBStereoMode->currentIndex();
+    if (index == 0)
+        previousQuality = this->SLQuality->value();
+}
+
+void PageOptions::setFullscreen(int state)
 {
-    int tmp = this->CBResolution->currentIndex();
-    if (this->CBFullscreen->isChecked())
-        this->CBResolution->setCurrentIndex(0);
-    else
-        this->CBResolution->setCurrentIndex(previousResolutionIndex);
-    previousResolutionIndex = tmp;
+    int index = this->CBStereoMode->currentIndex();
+    if (index != 7 && index != 8 && index != 9)
+        previousFullscreenValue = this->CBFullscreen->isChecked();
+}
+
+void PageOptions::setResolution(int state)
+{
+    int index = this->CBStereoMode->currentIndex();
+    if (index != 7 && index != 8 && index != 9)
+        previousResolutionIndex = this->CBResolution->currentIndex();
 }
 
 void PageOptions::trimNetNick()
--- a/QTfrontend/pageoptions.h	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/pageoptions.h	Fri Sep 16 18:17:16 2011 +0200
@@ -84,7 +84,9 @@
 
 private slots:
     void forceFullscreen(int index);
-    void setFullscreen(void);
+    void setFullscreen(int state);
+    void setResolution(int state);
+    void setQuality(int value);
     void trimNetNick();
 };
 
--- a/QTfrontend/pageplayrecord.cpp	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/pageplayrecord.cpp	Fri Sep 16 18:17:16 2011 +0200
@@ -150,3 +150,8 @@
     else
         FillFromDir(recType);
 }
+
+bool PagePlayDemo::isSave()
+{
+    return recType == RT_Save;
+}
--- a/QTfrontend/pageplayrecord.h	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/pageplayrecord.h	Fri Sep 16 18:17:16 2011 +0200
@@ -39,6 +39,7 @@
     PagePlayDemo(QWidget* parent = 0);
 
     void FillFromDir(RecordType rectype);
+    bool isSave();
 
     QPushButton *BtnBack;
     QPushButton *BtnPlayDemo;
--- a/QTfrontend/team.cpp	Fri Sep 16 17:36:05 2011 +0200
+++ b/QTfrontend/team.cpp	Fri Sep 16 18:17:16 2011 +0200
@@ -38,7 +38,7 @@
     OldTeamName = TeamName;
     for (int i = 0; i < 8; i++)
     {
-        Hedgehogs[i].Name.sprintf("hedgehog %d", i);
+        Hedgehogs[i].Name = (QLineEdit::tr("hedgehog %1").arg(i+1));
         Hedgehogs[i].Hat = "NoHat";
     }
     Grave = "Statue";
@@ -125,7 +125,7 @@
     for(int i = 0; i < 8; i++)
     {
         QString hh = QString("Hedgehog%1/").arg(i);
-        Hedgehogs[i].Name = teamfile.value(hh + "Name", QString("hedgehog %1").arg(i)).toString();
+        Hedgehogs[i].Name = teamfile.value(hh + "Name", QString("hedgehog %1").arg(i+1)).toString();
         Hedgehogs[i].Hat = teamfile.value(hh + "Hat", "NoHat").toString();
         Hedgehogs[i].Rounds = teamfile.value(hh + "Rounds", 0).toInt();
         Hedgehogs[i].Kills = teamfile.value(hh + "Kills", 0).toInt();
--- a/gameServer/Utils.hs	Fri Sep 16 17:36:05 2011 +0200
+++ b/gameServer/Utils.hs	Fri Sep 16 18:17:16 2011 +0200
@@ -103,6 +103,8 @@
             , (35, "0.9.14.1")
             , (37, "0.9.15")
             , (38, "0.9.16-dev")
+            , (39, "0.9.16")
+            , (40, "0.9.17-dev")
             ]
 
 askFromConsole :: B.ByteString -> IO B.ByteString
--- a/hedgewars/CMakeLists.txt	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/CMakeLists.txt	Fri Sep 16 18:17:16 2011 +0200
@@ -183,6 +183,8 @@
 
 
 add_custom_target(${engine_output_name} ALL DEPENDS "${EXECUTABLE_OUTPUT_PATH}/${engine_output_name}${CMAKE_EXECUTABLE_SUFFIX}")
+add_custom_target(ENGINECLEAN COMMAND ${CMAKE_BUILD_TOOL} "clean" "${PROJECT_BINARY_DIR}" "${hedgewars_SOURCE_DIR}/hedgewars")
+add_dependencies(${engine_output_name} ENGINECLEAN)
 
 install(PROGRAMS "${EXECUTABLE_OUTPUT_PATH}/${engine_output_name}${CMAKE_EXECUTABLE_SUFFIX}" DESTINATION ${target_dir})
 
--- a/hedgewars/GSHandlers.inc	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/GSHandlers.inc	Fri Sep 16 18:17:16 2011 +0200
@@ -512,18 +512,52 @@
     i, gX, gY: LongInt;
     dX, dY: hwFloat;
     Fire: PGear;
+    smoke, glass: PVisualGear;
 begin
     AllInactive := false;
 
     doStepFallingGear(Gear);
     CalcRotationDirAngle(Gear);
 
+    // let's add some smoke depending on speed
+    i:= max(32,152 - hwRound(Distance(Gear^.dX,Gear^.dY)*120))+random(10);
+    if (GameTicks mod i) = 0 then
+        begin
+        // adjust angle to match the texture
+        if Gear^.dX.isNegative then i:= 130 else i:= 50;
+        smoke:= AddVisualGear(hwRound(Gear^.X)-round(cos((Gear^.DirAngle+i) * pi / 180)*20), hwRound(Gear^.Y)-round(sin((Gear^.DirAngle+i) * pi / 180)*20), vgtSmoke);
+        if smoke <> nil then smoke^.Scale:= 0.75;
+        end;
+
     if (Gear^.State and gstCollision) <> 0 then
     begin
         PlaySound(sndMolotov);
         gX := hwRound(Gear^.X);
         gY := hwRound(Gear^.Y);
-        //doMakeExplosion(hwRound(Gear^.X), hwRound(Gear^.Y), 5, EXPLAutoSound);
+        for i:= 0 to 4 do
+            begin
+            (*glass:= AddVisualGear(gx+random(7)-3, gy+random(5)-2, vgtEgg);
+            if glass <> nil then
+                begin
+                glass^.Frame:= 2;
+                glass^.Tint:= $41B83ED0 - i * $10081000;
+                glass^.dX:= 1/(10*(random(11)-5));
+                glass^.dY:= -1/(random(4)+5);
+                end;*)
+            glass:= AddVisualGear(gx+random(7)-3, gy+random(7)-3, vgtStraightShot);
+            if glass <> nil then 
+                with glass^ do
+                    begin
+                    Frame:= 2;
+                    Tint:= $41B83ED0 - i * $10081000;
+                    Angle:= random * 360;
+                    dx:= 0.0000001;
+                    dy:= 0;
+                    if random(2) = 0 then dx := -dx;
+                    FrameTicks:= 750;
+                    State:= ord(sprEgg)
+                    end;
+            end;
         for i:= 0 to 24 do
         begin
             dX := AngleCos(i * 2) * ((_0_15*(i div 5))) * (GetRandom + _1);
@@ -959,6 +993,44 @@
 end;
 
 ////////////////////////////////////////////////////////////////////////////////
+procedure spawnBulletTrail(Bullet: PGear);
+var oX, oY: hwFloat;
+    VGear: PVisualGear;
+begin
+    if Bullet^.PortalCounter = 0 then
+        begin
+        ox:= CurrentHedgehog^.Gear^.X + Int2hwFloat(GetLaunchX(CurrentHedgehog^.CurAmmoType, hwSign(CurrentHedgehog^.Gear^.dX), CurrentHedgehog^.Gear^.Angle));
+        oy:= CurrentHedgehog^.Gear^.Y + Int2hwFloat(GetLaunchY(CurrentHedgehog^.CurAmmoType, CurrentHedgehog^.Gear^.Angle));
+        end
+    else
+        begin
+        ox:= Bullet^.Elasticity;
+        oy:= Bullet^.Friction;
+        end;
+
+        // Bullet trail
+        VGear := AddVisualGear(hwRound(ox), hwRound(oy), vgtLineTrail);
+        if VGear <> nil then
+            begin
+            VGear^.X:= hwFloat2Float(ox);
+            VGear^.Y:= hwFloat2Float(oy);
+            VGear^.dX:= hwFloat2Float(Bullet^.X);
+            VGear^.dY:= hwFloat2Float(Bullet^.Y);
+
+            // reached edge of land. assume infinite beam. Extend it way out past camera
+            if (hwRound(Bullet^.X) and LAND_WIDTH_MASK <> 0)
+                or (hwRound(Bullet^.Y) and LAND_HEIGHT_MASK <> 0) then
+                    // only extend if not under water
+                    if hwRound(Bullet^.Y) < cWaterLine then
+                        begin
+                        VGear^.dX := VGear^.dX + LAND_WIDTH * (VGear^.dX - VGear^.X);
+                        VGear^.dY := VGear^.dY + LAND_WIDTH * (VGear^.dY - VGear^.Y);
+                        end;
+
+            VGear^.Timer := 200;
+            end;
+end;
+
 procedure doStepBulletWork(Gear: PGear);
 var 
     i, x, y: LongWord;
@@ -977,6 +1049,19 @@
         y := hwRound(Gear^.Y);
         if ((y and LAND_HEIGHT_MASK) = 0) and ((x and LAND_WIDTH_MASK) = 0)
            and (Land[y, x] <> 0) then inc(Gear^.Damage);
+        // let's interrupt before a collision to give portals a chance to catch the bullet
+        if (Gear^.Damage = 1) and (Gear^.Tag = 0) and (Land[y, x] > 255) then
+        begin
+            Gear^.Tag := 1;
+            Gear^.Damage := 0;
+            Gear^.X := Gear^.X - Gear^.dX;
+            Gear^.Y := Gear^.Y - Gear^.dY;
+            CheckGearDrowning(Gear);
+            break;
+        end
+        else
+            Gear^.Tag := 0;
+
         if Gear^.Damage > 5 then
             if Gear^.AmmoType = amDEagle then
                 AmmoShove(Gear, 7, 20)
@@ -1022,31 +1107,7 @@
             end;
         end;
        
-        if Gear^.PortalCounter = 0 then
-            begin 
-            // Bullet trail
-            VGear := AddVisualGear(
-                hwround(CurrentHedgehog^.Gear^.X) + GetLaunchX(CurrentHedgehog^.CurAmmoType, hwSign(CurrentHedgehog^.Gear^.dX), CurrentHedgehog^.Gear^.Angle), 
-                hwround(CurrentHedgehog^.Gear^.Y) + GetLaunchY(CurrentHedgehog^.CurAmmoType, CurrentHedgehog^.Gear^.Angle),
-                vgtLineTrail
-            );
-            if VGear <> nil then
-                begin
-                // http://mantis.freepascal.org/view.php?id=17714 hits again
-                VGear^.dX := Gear^.X.QWordValue / SignAs(_1,_1).QWordValue;
-                VGear^.dY := Gear^.Y.QWordValue / SignAs(_1,_1).QWordValue;
-                
-                // reached edge of land. assume infinite beam. Extend it way out past camera
-                if (hwRound(Gear^.X) and LAND_WIDTH_MASK <> 0) 
-                    or (hwRound(Gear^.Y) and LAND_HEIGHT_MASK <> 0) then
-                    begin
-                    VGear^.dX := VGear^.dX + (CurrentHedgehog^.Gear^.dX * LAND_WIDTH).QWordValue / SignAs(_1,_1).QWordValue;
-                    VGear^.dY := VGear^.dY + (CurrentHedgehog^.Gear^.dY * LAND_WIDTH).QWordValue / SignAs(_1,_1).QWordValue;
-                    end;
-                
-                VGear^.Timer := 200;
-                end
-            end;
+        spawnBulletTrail(Gear);
         Gear^.doStep := @doStepShotIdle
     end;
 end;
@@ -1054,9 +1115,9 @@
 procedure doStepDEagleShot(Gear: PGear);
 begin
     PlaySound(sndGun);
-    // add 2 initial steps to avoid problem with ammoshove related to calculation of radius + 1 radius as gear widths
-    Gear^.X := Gear^.X + Gear^.dX * 2;
-    Gear^.Y := Gear^.Y + Gear^.dY * 2;
+    // add 3 initial steps to avoid problem with ammoshove related to calculation of radius + 1 radius as gear widths, and also just plain old weird angles
+    Gear^.X := Gear^.X + Gear^.dX * 3;
+    Gear^.Y := Gear^.Y + Gear^.dY * 3;
     Gear^.doStep := @doStepBulletWork
 end;
 
@@ -1090,9 +1151,9 @@
         Gear^.dX := SignAs(AngleSin(HHGear^.Angle), HHGear^.dX) * _0_5;
         Gear^.dY := -AngleCos(HHGear^.Angle) * _0_5;
         PlaySound(sndGun);
-        // add an initial step to avoid problem with ammoshove related to calculation of radius + 1 radius as gear widths
-        Gear^.X := Gear^.X + Gear^.dX;  
-        Gear^.Y := Gear^.Y + Gear^.dY;
+        // add 3 initial steps to avoid problem with ammoshove related to calculation of radius + 1 radius as gear widths, and also just weird angles
+        Gear^.X := Gear^.X + Gear^.dX * 3;  
+        Gear^.Y := Gear^.Y + Gear^.dY * 3;
         Gear^.doStep := @doStepBulletWork;
     end
     else
@@ -1405,7 +1466,7 @@
 var 
     HHGear: PGear;
     len, tx, ty, nx, ny, ropeDx, ropeDy, mdX, mdY: hwFloat;
-    lx, ly: LongInt;
+    lx, ly, cd: LongInt;
     haveCollision,
     haveDivided: boolean;
 
@@ -1446,16 +1507,30 @@
     else
         if (Gear^.Message and gmRight <> 0) then HHGear^.dX := HHGear^.dX + _0_0002;
 
-    if not TestCollisionYwithGear(HHGear, 1) then
-        begin
-        HHGear^.dY := HHGear^.dY + cGravity;
-        if (GameFlags and gfMoreWind) <> 0 then HHGear^.dX := HHGear^.dX + cWindSpeed / HHGear^.Density;
-        end;
-
     // vector between hedgehog and rope attaching point
     ropeDx := HHGear^.X - Gear^.X;
     ropeDy := HHGear^.Y - Gear^.Y;
 
+    if not TestCollisionYwithGear(HHGear, 1) then
+        begin
+
+        // depending on the rope vector we know which X-side to check for collision
+        // in order to find out if the hog can still be moved by gravity
+        if ropeDx.isNegative = RopeDy.IsNegative then
+            cd:= -1
+        else
+            cd:= 1;
+
+        // apply gravity if there is no obstacle
+        if not TestCollisionXwithGear(HHGear, cd) then
+            HHGear^.dY := HHGear^.dY + cGravity;
+
+        if (GameFlags and gfMoreWind) <> 0 then
+            // apply wind if there's no obstacle
+            if not TestCollisionXwithGear(HHGear, hwSign(cWindSpeed)) then
+                HHGear^.dX := HHGear^.dX + cWindSpeed / HHGear^.Density;
+        end;
+
     mdX := ropeDx + HHGear^.dX;
     mdY := ropeDy + HHGear^.dY;
     len := _1 / Distance(mdX, mdY);
@@ -2651,7 +2726,7 @@
         repeat
             CurrentTeam^.CurrHedgehog := Succ(CurrentTeam^.CurrHedgehog) mod (CurrentTeam^.
                                          HedgehogsNumber);
-        until (CurrentTeam^.Hedgehogs[CurrentTeam^.CurrHedgehog].Gear <> nil);
+        until (CurrentTeam^.Hedgehogs[CurrentTeam^.CurrHedgehog].Gear <> nil) and (CurrentTeam^.Hedgehogs[CurrentTeam^.CurrHedgehog].Gear^.Damage = 0);
 
         CurrentHedgehog := @CurrentTeam^.Hedgehogs[CurrentTeam^.CurrHedgehog];
 
@@ -2722,8 +2797,12 @@
 var 
     i: LongWord;
     HHGear: PGear;
+    sparkles: PVisualGear;
+    hasWishes: boolean;
 begin
     AllInactive := false;
+    hasWishes:= ((Gear^.Message and (gmPrecise or gmSwitch)) = (gmPrecise or gmSwitch));
+    if hasWishes then Gear^.AdvBounce:= 1;
 
     HHGear := Gear^.Hedgehog^.Gear;
     HHGear^.State := HHGear^.State or gstNoDamage;
@@ -2731,9 +2810,19 @@
 
     Gear^.X := HHGear^.X;
     Gear^.Y := HHGear^.Y;
+    if (GameTicks mod 2 = 0) and hasWishes then
+        begin
+        sparkles:= AddVisualGear(hwRound(Gear^.X), hwRound(Gear^.Y), vgtDust, 1);
+        if sparkles <> nil then 
+            begin
+            sparkles^.Tint:= ((random(210)+45) shl 24) or ((random(210)+45) shl 16) or ((random(210)+45) shl 8) or $FF;
+            sparkles^.Angle:= random * 360;
+            end
+        end;
 
     i := 2;
     repeat
+        
         Gear^.X := Gear^.X + HHGear^.dX;
         Gear^.Y := Gear^.Y + HHGear^.dY;
         HHGear^.X := Gear^.X;
@@ -2750,7 +2839,13 @@
     inc(upd);
     if upd > 3 then
     begin
-        if Gear^.Health < 1500 then Gear^.Pos := 2;
+        if Gear^.Health < 1500 then
+        begin
+            if Gear^.AdvBounce <> 0 then
+                Gear^.Pos := 3
+            else
+                Gear^.Pos := 2;
+        end;
 
         AmmoShove(Gear, 30, 40);
 
@@ -2767,6 +2862,21 @@
     if Gear^.Health < Gear^.Damage then
     begin
         doMakeExplosion(hwRound(Gear^.X), hwRound(Gear^.Y), 30, Gear^.Hedgehog, EXPLAutoSound);
+        for i:= 0 to 31 do
+            begin
+            sparkles:= AddVisualGear(hwRound(Gear^.X), hwRound(Gear^.Y), vgtStraightShot);
+            if sparkles <> nil then
+                with sparkles^ do
+                    begin
+                    Tint:= ((random(210)+45) shl 24) or ((random(210)+45) shl 16) or ((random(210)+45) shl 8) or $FF;
+                    Angle:= random * 360;
+                    dx:= 0.001 * (random(200));
+                    dy:= 0.001 * (random(200));
+                    if random(2) = 0 then dx := -dx;
+                    if random(2) = 0 then dy := -dy;
+                    FrameTicks:= random(400) + 250
+                    end;
+            end;
         AfterAttack;
         DeleteGear(Gear);
         DeleteGear(HHGear);
@@ -2783,11 +2893,11 @@
     AllInactive := false;
     dec(Gear^.Timer);
     if Gear^.Timer = 0 then
-    begin
+        begin
         Gear^.Pos := 1;
         PlaySound(sndKamikaze, Gear^.Hedgehog^.Team^.voicepack);
         Gear^.doStep := @doStepKamikazeWork
-    end
+        end
 end;
 
 procedure doStepKamikaze(Gear: PGear);
@@ -3912,12 +4022,20 @@
                 continue;
         end;
 
+        // draw bullet trail
+        if isbullet then
+            spawnBulletTrail(iterator);
+
         // calc gear offset in portal vector direction
         ox := (iterator^.X - Gear^.X);
         oy := (iterator^.Y - Gear^.Y);
         poffs:= (Gear^.dX * ox + Gear^.dY * oy);
 
-        if poffs < _0 then
+        if not isBullet and poffs.isNegative then
+            continue;
+
+        // only port bullets close to the portal
+        if isBullet and not (hwAbs(poffs) < _3) then
             continue;
 
         //
@@ -3945,8 +4063,11 @@
         // calc gear offset in portal normal vector direction
         noffs:= (nx * ox + ny * oy);
 
+        if isBullet and (hwRound(hwAbs(noffs)) >= Gear^.Radius) then
+            continue;
+
         // avoid gravity related loops of not really moving gear
-        if not iscake and (Gear^.dY.isNegative) and (conPortal^.dY.isNegative)
+        if not (iscake or isbullet) and (Gear^.dY.isNegative) and (conPortal^.dY.isNegative)
             and ((iterator^.dX.QWordValue + iterator^.dY.QWordValue) < _0_08.QWordValue)
             and (iterator^.PortalCounter > 0) then
              continue;
@@ -4061,6 +4182,13 @@
         if not isbullet and (iterator^.Kind <> gtFlake) then
             FollowGear := iterator;
 
+        // store X/Y values of exit for net bullet trail
+        if isbullet then
+        begin
+            iterator^.Elasticity:= iterator^.X;
+            iterator^.Friction  := iterator^.Y;
+        end;
+
         // This jiggles gears, to ensure a portal connection just placed under a gear takes effect.
         iterator:= GearsList;
         while iterator <> nil do
@@ -4122,7 +4250,7 @@
     begin
         Gear^.State := Gear^.State or gstCollision;
         Gear^.State := Gear^.State and not gstMoving;
-        if not calcSlopeTangent(Gear, x, y, tx, ty, 255)
+        if not CalcSlopeTangent(Gear, x, y, tx, ty, 255)
            or (DistanceI(tx,ty) < _12) then // reject shots at too irregular terrain
         begin
             loadNewPortalBall(Gear, true);
--- a/hedgewars/HHHandlers.inc	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/HHHandlers.inc	Fri Sep 16 18:17:16 2011 +0200
@@ -53,7 +53,6 @@
     HHGear^.Message:= HHGear^.Message and not gmSlot;
     ammoidx:= 0;
     if ((HHGear^.State and (gstAttacking or gstAttacked)) <> 0) or
-       (TargetPoint.X <> NoPointX) or
        ((MultiShootAttacks > 0) and ((Ammoz[CurAmmoType].Ammo.Propz and ammoprop_NoRoundEnd) = 0)) or
        ((HHGear^.State and gstHHDriven) = 0) then exit;
     ChangeAmmo:= true;
@@ -775,6 +774,11 @@
    begin
    if (Gear^.dY.isNegative) and TestCollisionYKick(Gear, -1) then Gear^.dY:= _0;
    Gear^.State:= Gear^.State or gstMoving;
+   if (CurrentHedgehog^.Gear = Gear)
+        and (hwSqr(Gear^.dX) + hwSqr(Gear^.dY) > _0_003) then 
+        begin
+        FollowGear:= Gear;
+        end;
    if isUnderwater then Gear^.dY:= Gear^.dY + cGravity / _2
    else
        begin
@@ -1012,7 +1016,7 @@
 
 ////////////////////////////////////////////////////////////////////////////////
 procedure doStepHedgehogFree(Gear: PGear);
-var prevState,i: Longword;
+var prevState: Longword;
 begin
 prevState:= Gear^.State;
 
@@ -1034,7 +1038,7 @@
         PrvInactive:= false;
         AllInactive:= false;
 
-        if not Gear^.Hedgehog^.Team^.hasGone then
+        if (Gear^.State and gstHHGone) = 0 then
             begin
             Gear^.Hedgehog^.Effects[hePoisoned] := false;
             if Gear^.Hedgehog^.Effects[heResurrectable] then begin
@@ -1048,21 +1052,8 @@
             end
         else
             begin
-            Gear^.State:= Gear^.State or gstHHGone;
             Gear^.doStep:= @doStepHedgehogGone;
 
-            with Gear^.Hedgehog^.Team^ do
-                for i:= 0 to cMaxHHIndex do
-                    if Hedgehogs[i].GearHidden <> nil then
-                        begin
-                        RestoreHog(@Hedgehogs[i]);
-                        if Hedgehogs[i].Gear <> nil then 
-                            begin
-                            Hedgehogs[i].Gear^.State:= Gear^.State or gstHHGone;
-                            Hedgehogs[i].Gear^.doStep:= @doStepHedgehogGone
-                            end
-                        end;
-
             // Gone message
             AddCaption(Format(GetEventString(eidGone), Gear^.Hedgehog^.Name), cWhiteColor, capgrpMessage);
             end
@@ -1103,7 +1094,9 @@
 else
     begin
     with Gear^.Hedgehog^ do
-        if Team^.hasGone then TeamGoneEffect(Team^);
-    doStepHedgehogDriven(Gear)
+        if Team^.hasGone then 
+            TeamGoneEffect(Team^)
+        else
+            doStepHedgehogDriven(Gear)
     end;
 end;
--- a/hedgewars/VGSHandlers.inc	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/VGSHandlers.inc	Fri Sep 16 18:17:16 2011 +0200
@@ -174,7 +174,10 @@
 if Gear^.FrameTicks <= Steps then
     DeleteVisualGear(Gear)
 else
-    dec(Gear^.FrameTicks, Steps)
+    dec(Gear^.FrameTicks, Steps);
+
+if Gear^.FrameTicks < $FF then
+   Gear^.Tint:= (Gear^.Tint and $FFFFFF00) or Gear^.FrameTicks
 end;
 
 ////////////////////////////////////////////////////////////////////////////////
@@ -587,23 +590,15 @@
 
 ////////////////////////////////////////////////////////////////////////////////
 procedure doStepBigExplosionWork(Gear: PVisualGear; Steps: Longword);
-//var maxMovement: LongInt;
+var maxMovement: LongInt;
 begin
 
 inc(Gear^.Timer, Steps);
-(*
-FIXME - This block desyncs due to the way WorldDx is important for various things network related.
-One possible solution is, instead of using WorldDx, to use straight gl/SDL calls to jitter the screen a bit.
-
-// a comment by unC0Rr: instead of changing WorldDx shake cursor coordinates, that should be safe
-// ... seems to still desync, and I tried banning when targetting too
-
 if (Gear^.Timer and 5) = 0 then
     begin
     maxMovement := max(1, 13 - ((Gear^.Timer * 15) div 250));
     ShakeCamera(maxMovement);
     end;
-*)
 
 if Gear^.Timer > 250 then DeleteVisualGear(Gear);
 end;
@@ -613,9 +608,9 @@
     gX,gY: LongInt;
     vg: PVisualGear;
 begin
-ScreenFade:= sfFromWhite;
-ScreenFadeValue:= 250;
-ScreenFadeSpeed:= 5;
+//ScreenFade:= sfFromWhite;
+//ScreenFadeValue:= round(60 * zoom * zoom);
+//ScreenFadeSpeed:= 5;
 gX:= round(Gear^.X);
 gY:= round(Gear^.Y);
 AddVisualGear(gX, gY, vgtSmokeRing);
--- a/hedgewars/hwengine.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/hwengine.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -112,10 +112,18 @@
     if flagMakeCapture then
     begin
         flagMakeCapture:= false;
+        {$IFNDEF IPHONEOS}
         s:= 'hw_' + FormatDateTime('YYYY-MM-DD_HH-mm-ss', Now()) + inttostr(GameTicks);
-        WriteLnToConsole('Saving ' + s + '...');
+
         playSound(sndShutter);
-        {$IFNDEF IPHONEOS}MakeScreenshot(s);{$ENDIF}
+        if not MakeScreenshot(s) then
+        begin
+            WriteLnToConsole('Screenshot failed.');
+            AddChatString(#5 + 'screen capture failed (lack of memory or write permissions)');
+        end
+        else
+            WriteLnToConsole('Screenshot saved: ' + s);
+        {$ENDIF}
     end;
 end;
 
@@ -208,6 +216,7 @@
 
             ParseCommand('fullscr '+intToStr(LongInt(cFullScreen)), true);
             WriteLnToConsole('window resize: ' + IntToStr(cScreenWidth) + ' x ' + IntToStr(cScreenHeight));
+            ScriptOnScreenResize();
             InitCameraBorders()
             end;
 
--- a/hedgewars/uAIMisc.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uAIMisc.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -112,7 +112,7 @@
             end;
 
 if e > f then friendlyfactor:= 300 + (e - f) * 30
-else friendlyfactor:= max(30, 300 - f * 80 div e)
+else friendlyfactor:= max(30, 300 - f * 80 div max(1,e))
 end;
 
 procedure FillBonuses(isAfterAttack: boolean; filter: TGearsType);
--- a/hedgewars/uCollisions.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uCollisions.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -50,7 +50,8 @@
 function  TestCollisionXwithXYShift(Gear: PGear; ShiftX: hwFloat; ShiftY: LongInt; Dir: LongInt; withGear: boolean = true): boolean;
 function  TestCollisionYwithXYShift(Gear: PGear; ShiftX, ShiftY: LongInt; Dir: LongInt; withGear: boolean = true): boolean;
 
-function  calcSlopeTangent(Gear: PGear; collisionX, collisionY: LongInt; var outDeltaX, outDeltaY: LongInt; TestWord: LongWord): Boolean;
+function  TestRectancleForObstacle(x1, y1, x2, y2: LongInt; landOnly: boolean): boolean;
+function  CalcSlopeTangent(Gear: PGear; collisionX, collisionY: LongInt; var outDeltaX, outDeltaY: LongInt; TestWord: LongWord): Boolean;
 
 implementation
 uses uConsts, uLandGraphics, uVariables, uDebug, uGears;
@@ -349,8 +350,42 @@
 Gear^.Y:= Gear^.Y - int2hwFloat(ShiftY)
 end;
 
+function TestRectancleForObstacle(x1, y1, x2, y2: LongInt; landOnly: boolean): boolean;
+var x, y: LongInt;
+    TestWord: LongWord;
+begin
+if landOnly then
+    TestWord:= 255
+else
+    TestWord:= 0;
 
-function calcSlopeTangent(Gear: PGear; collisionX, collisionY: LongInt; var outDeltaX, outDeltaY: LongInt; TestWord: LongWord): boolean;
+if x1 > x2 then
+begin
+    x  := x1;
+    x1 := x2;
+    x2 := x;
+end;
+
+if y1 > y2 then
+begin
+    y  := y1;
+    y1 := y2;
+    y2 := y;
+end;
+
+if (hasBorder and ((y1 < 0) or (x1 < 0) or (x2 > LAND_WIDTH))) then
+    exit(true);
+
+for y := y1 to y2 do
+    for x := x1 to x2 do
+        if ((y and LAND_HEIGHT_MASK) = 0) and ((x and LAND_WIDTH_MASK) = 0)
+          and (Land[y, x] > TestWord) then
+            exit(true);
+
+TestRectancleForObstacle:= false
+end;
+
+function CalcSlopeTangent(Gear: PGear; collisionX, collisionY: LongInt; var outDeltaX, outDeltaY: LongInt; TestWord: LongWord): boolean;
 var ldx, ldy, rdx, rdy: LongInt;
     i, j, mx, my, li, ri, jfr, jto, tmpo : ShortInt;
     tmpx, tmpy: LongWord;
--- a/hedgewars/uGears.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uGears.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -603,6 +603,7 @@
 else if Gear^.Kind = gtHedgehog then
     if (CurAmmoGear <> nil) and (CurrentHedgehog^.Gear = Gear) then
         begin
+        AttackBar:= 0;
         Gear^.Message:= gmDestroy;
         CurAmmoGear^.Message:= gmDestroy;
         exit
@@ -620,6 +621,7 @@
         team:= Gear^.Hedgehog^.Team;
         if CurrentHedgehog^.Gear = Gear then
             begin
+            AttackBar:= 0;
             FreeActionsList; // to avoid ThinkThread on drawned gear
             if ((Ammoz[CurrentHedgehog^.CurAmmoType].Ammo.Propz and ammoprop_NoRoundEnd) <> 0) and (CurrentHedgehog^.MultiShootAttacks > 0) then OnUsedAmmo(CurrentHedgehog^);
             end;
@@ -1655,6 +1657,7 @@
 procedure ResurrectHedgehog(gear: PGear);
 var tempTeam : PTeam;
 begin
+    AttackBar:= 0;
     gear^.dX := _0;
     gear^.dY := _0;
     gear^.Damage := 0;
--- a/hedgewars/uGearsRender.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uGearsRender.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -888,7 +888,10 @@
           gtGrenade: DrawRotated(sprBomb, x, y, 0, Gear^.DirAngle);
       gtSnowball: DrawRotated(sprSnowball, x, y, 0, Gear^.DirAngle);
        gtGasBomb: DrawRotated(sprCheese, x, y, 0, Gear^.DirAngle);
-       gtMolotov: DrawRotated(sprMolotov, x, y, 0, Gear^.DirAngle);
+                  
+       gtMolotov: if (Gear^.State and gstDrowning) = 0 then
+                       DrawRotatedF(sprMolotov, x, y, (RealTicks div 125) mod 8, hwSign(Gear^.dX), Gear^.DirAngle * hwSign(Gear^.dX))
+                  else DrawSprite(sprMolotov, x, y, 8);
 
        gtRCPlane: begin
                   if (Gear^.Tag = -1) then
--- a/hedgewars/uLand.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uLand.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -1229,7 +1229,7 @@
 end;
 
 procedure DrawBottomBorder; // broken out from other borders for doing a floor-only map, or possibly updating bottom during SD
-var x, y, w, c: Longword;
+var x, w, c: Longword;
 begin
 for w:= 0 to 23 do
     for x:= leftX to rightX do
--- a/hedgewars/uLandGraphics.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uLandGraphics.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -29,7 +29,7 @@
 
 function  addBgColor(OldColor, NewColor: LongWord): LongWord;
 function  SweepDirty: boolean;
-function  Despeckle(X, Y: LongInt; gfxOnly: boolean): LongWord;
+function  Despeckle(X, Y: LongInt): Boolean;
 procedure Smooth(X, Y: LongInt);
 function  CheckLandValue(X, Y: LongInt; LandFlag: Word): boolean;
 function  DrawExplosion(X, Y, Radius: LongInt): Longword;
@@ -528,8 +528,11 @@
        (((Land[ty, tx] and lfBasic) <> 0) or
        ((Land[ty, tx] and lfObject) <> 0)) then
         begin
-        Land[ty, tx]:= Land[ty, tx] or lfDamaged;
-        if despeckle then LandDirty[ty div 32, tx div 32]:= 1;
+        if despeckle then 
+            begin
+            Land[ty, tx]:= Land[ty, tx] or lfDamaged;
+            LandDirty[ty div 32, tx div 32]:= 1
+            end;
         if (cReducedQuality and rqBlurryLand) = 0 then
             LandPixels[ty, tx]:= cExplosionBorderColor
         else LandPixels[ty div 2, tx div 2]:= cExplosionBorderColor
@@ -721,8 +724,7 @@
 UpdateLandTexture(x, w, y, h)
 end;
 
-// was experimenting with applying as damage occurred.
-function Despeckle(X, Y: LongInt; gfxOnly: boolean): LongWord;
+function Despeckle(X, Y: LongInt): boolean;
 var nx, ny, i, j, c, xx, yy: LongInt;
     pixelsweep: boolean;
 begin
@@ -737,8 +739,7 @@
    yy:= Y div 2;
    end;
 pixelsweep:= ((Land[Y, X] and $FF00) = 0) and (LandPixels[yy, xx] <> 0);
-if not pixelsweep and gfxOnly then exit(0);
-if ((Land[Y, X] > 255) and ((Land[Y, X] and lfIndestructible) = 0)) or pixelsweep then
+if (((Land[Y, X] and lfDamaged) <> 0) and ((Land[Y, X] and lfIndestructible) = 0)) or pixelsweep then
     begin
     c:= 0;
     for i:= -1 to 1 do
@@ -761,8 +762,8 @@
                     else if Land[ny, nx] > 255 then inc(c);
                     end
                 end;
-    if (c < 2) or
-       ((c < 4) and (((Land[Y, X] and lfDamaged) <> 0) or pixelsweep)) then
+
+    if c < 4 then // 0-3 neighbours
         begin
         if ((Land[Y, X] and lfBasic) <> 0) and not disableLandBack then
             LandPixels[yy, xx]:= LandBackPixel(X, Y)
@@ -770,11 +771,10 @@
             LandPixels[yy, xx]:= 0;
 
         Land[Y, X]:= 0;
-        if not pixelsweep then exit(1)
-        else exit(2)
+        if not pixelsweep then exit(true);
         end;
     end;
-Despeckle:= 0
+Despeckle:= false
 end;
 
 procedure Smooth(X, Y: LongInt);
@@ -827,8 +827,8 @@
 end;
 
 function SweepDirty: boolean;
-var x, y, xx, yy, ty, tx, d: LongInt;
-    bRes, updateBlock, resweepCol, resweepGfx, gfxOnly, recheck, firstpass: boolean;
+var x, y, xx, yy, ty, tx: LongInt;
+    bRes, updateBlock, resweep, recheck: boolean;
 begin
 bRes:= false;
 reCheck:= true;
@@ -840,65 +840,67 @@
         begin
         for x:= 0 to LAND_WIDTH div 32 - 1 do
             begin
-            if LandDirty[y, x] <> 0 then
+            if LandDirty[y, x] = 1 then
                 begin
                 updateBlock:= false;
-                resweepCol:= true;
-                resweepGfx:= true;
-                firstpass:= true;
+                resweep:= true;
                 ty:= y * 32;
                 tx:= x * 32;
-                while(resweepCol or resweepGfx) do
+                while(resweep) do
                     begin
-                    gfxOnly:= resweepGfx and not resweepCol;
-                    resweepCol:= false;
-                    resweepGfx:= false;
+                    resweep:= false;
                     for yy:= ty to ty + 31 do
                         for xx:= tx to tx + 31 do
-                            begin
-                            d:= Despeckle(xx, yy, gfxOnly);
-                            if d <> 0 then
+                            if Despeckle(xx, yy) then
                                 begin
                                 bRes:= true;
                                 updateBlock:= true;
-                                if d = 1 then resweepCol:= true
-                                else resweepGfx:= true;
-                                if d = 1 then
-                                    if (yy = ty) and (y > 0) then
-                                        begin
-                                        LandDirty[y-1, x]:= 1;
-                                        recheck:= true;
-                                        end
-                                    else if (yy = ty+31) and (y < LAND_HEIGHT div 32 - 1) then
-                                        begin
-                                        LandDirty[y+1, x]:= 1;
-                                        recheck:= true;
-                                        end;
-                                    if (xx = tx) and (x > 0) then
-                                        begin
-                                        LandDirty[y, x-1]:= 1;
-                                        recheck:= true;
-                                        end
-                                    else if (xx = tx+31) and (x < LAND_WIDTH div 32 - 1) then
-                                        begin
-                                        LandDirty[y, x+1]:= 1;
-                                        recheck:= true;
-                                        end
+                                resweep:= true;
+                                if (yy = ty) and (y > 0) then
+                                    begin
+                                    LandDirty[y-1, x]:= 1;
+                                    recheck:= true;
+                                    end
+                                else if (yy = ty+31) and (y < LAND_HEIGHT div 32 - 1) then
+                                    begin
+                                    LandDirty[y+1, x]:= 1;
+                                    recheck:= true;
+                                    end;
+                                if (xx = tx) and (x > 0) then
+                                    begin
+                                    LandDirty[y, x-1]:= 1;
+                                    recheck:= true;
+                                    end
+                                else if (xx = tx+31) and (x < LAND_WIDTH div 32 - 1) then
+                                    begin
+                                    LandDirty[y, x+1]:= 1;
+                                    recheck:= true;
+                                    end
                                 end;
-                            if firstpass then Smooth(xx,yy);
-                            end;
-                    firstpass:= false
                     end;
                 if updateBlock then UpdateLandTexture(tx, 32, ty, 32);
-                LandDirty[y, x]:= 0;
+                LandDirty[y, x]:= 2;
                 end;
             end;
         end;
      end;
 
+for y:= 0 to LAND_HEIGHT div 32 - 1 do
+    for x:= 0 to LAND_WIDTH div 32 - 1 do
+        if LandDirty[y, x] <> 0 then
+            begin
+            LandDirty[y, x]:= 0;
+            ty:= y * 32;
+            tx:= x * 32;
+            for yy:= ty to ty + 31 do
+                for xx:= tx to tx + 31 do
+                    Smooth(xx,yy)
+            end;
+
 SweepDirty:= bRes;
 end;
 
+
 // Return true if outside of land or not the value tested, used right now for some X/Y movement that does not use normal hedgehog movement in GSHandlers.inc
 function CheckLandValue(X, Y: LongInt; LandFlag: Word): boolean;
 begin
--- a/hedgewars/uLandObjects.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uLandObjects.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -373,7 +373,7 @@
     f: textfile;
     i: LongInt;
     ii, t: Longword;
-    c1, c2: TSDL_Color;
+    c2: TSDL_Color;
 
     procedure CheckRect(Width, Height, x, y, w, h: LongWord);
     begin
--- a/hedgewars/uMisc.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uMisc.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -25,14 +25,14 @@
 
 procedure movecursor(dx, dy: LongInt);
 function  doSurfaceConversion(tmpsurf: PSDL_Surface): PSDL_Surface;
-procedure MakeScreenshot(filename: shortstring);
+function  MakeScreenshot(filename: shortstring): boolean;
 function  GetTeamStatString(p: PTeam): shortstring;
 
 procedure initModule;
 procedure freeModule;
 
 implementation
-uses typinfo, sysutils, uVariables;
+uses typinfo, sysutils, uVariables, uUtils;
 
 procedure movecursor(dx, dy: LongInt);
 var x, y: LongInt;
@@ -45,10 +45,11 @@
 SDL_WarpMouse(x, y);
 end;
 
-
-procedure MakeScreenshot(filename: shortstring);
-var p: Pointer;
-    size: Longword;
+// captures and saves the screen. returns true on success.
+function MakeScreenshot(filename: shortstring): Boolean;
+var success: boolean;
+    p: Pointer;
+    size: QWord;
     f: file;
     // Windows Bitmap Header
     head: array[0..53] of Byte = (
@@ -74,9 +75,16 @@
 ScreenFadeValue:= sfMax;
 ScreenFadeSpeed:= 5;
 
-size:= cScreenWidth * cScreenHeight * 3;
+size:= toPowerOf2(cScreenWidth) * toPowerOf2(cScreenHeight) * 3;
 p:= GetMem(size);
 
+// memory could not be allocated
+if p = nil then
+begin
+    AddFileLog('Error: Could not allocate memory for screenshot.');
+    exit(false);
+end;
+
 // update header information and file name
 
 filename:= UserPathPrefix + '/Screenshots/' + filename + '.bmp';
@@ -102,7 +110,7 @@
 //glReadBuffer(GL_FRONT);
 glReadPixels(0, 0, cScreenWidth, cScreenHeight, GL_BGR, GL_UNSIGNED_BYTE, p);
 
-{$I-}
+{$IOCHECKS OFF}
 Assign(f, filename);
 Rewrite(f, 1);
 if IOResult = 0 then
@@ -110,10 +118,18 @@
     BlockWrite(f, head, sizeof(head));
     BlockWrite(f, p^, size);
     Close(f);
+    success:= true;
+    end
+else
+    begin
+    AddFileLog('Error: Could not write to ' + filename);
+    success:= false;
     end;
-{$I+}
+{$IOCHECKS ON}
 
-FreeMem(p)
+FreeMem(p, size);
+
+MakeScreenshot:= success;
 end;
 
 // http://www.idevgames.com/forums/thread-5602-post-21860.html#pid21860
--- a/hedgewars/uScript.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uScript.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -36,6 +36,7 @@
 
 procedure ScriptLoad(name : shortstring);
 procedure ScriptOnGameInit;
+procedure ScriptOnScreenResize();
 
 procedure ScriptCall(fname : shortstring);
 function ScriptCall(fname : shortstring; par1: LongInt) : LongInt;
@@ -1505,6 +1506,29 @@
         lua_pushinteger(L, ord(CurrentHedgehog^.CurAmmoType));
     lc_getcurammotype := 1;
 end;
+
+// boolean TestRectForObstacle(x1, y1, x2, y2, landOnly)
+function lc_testrectforobstacle(L : Plua_State) : LongInt; Cdecl;
+var rtn: Boolean;
+begin
+    if lua_gettop(L) <> 5 then
+        begin
+        LuaError('Lua: Wrong number of parameters passed to TestRectForObstacle!');
+        lua_pushnil(L); // return value on stack (nil)
+        end
+    else
+        begin
+        rtn:= TestRectancleForObstacle(
+                    lua_tointeger(L, 1),
+                    lua_tointeger(L, 2),
+                    lua_tointeger(L, 3),
+                    lua_tointeger(L, 4),
+                    lua_toboolean(L, 5)
+                    );
+        lua_pushboolean(L, rtn);
+        end;
+    lc_testrectforobstacle:= 1
+end;
 ///////////////////
 
 procedure ScriptPrintStack;
@@ -1627,6 +1651,16 @@
 ScriptSetInteger('TeamsCount', TeamsCount)
 end;
 
+
+// Update values of screen dimensions and allow script to react to resolution change
+procedure ScriptOnScreenResize();
+begin
+ScriptSetInteger('ScreenHeight', cScreenHeight);
+ScriptSetInteger('ScreenWidth', cScreenWidth);
+ScriptCall('onScreenResize');
+end;
+
+
 procedure ScriptLoad(name : shortstring);
 var ret : LongInt;
       s : shortstring;
@@ -1820,7 +1854,6 @@
 // import some variables
 ScriptSetInteger('LAND_WIDTH', LAND_WIDTH);
 ScriptSetInteger('LAND_HEIGHT', LAND_HEIGHT);
-
 ScriptSetString('L', cLocale);
 
 // import game flags
@@ -1994,6 +2027,7 @@
 lua_register(luaState, 'SetHogHat', @lc_sethoghat);
 lua_register(luaState, 'PlaceGirder', @lc_placegirder);
 lua_register(luaState, 'GetCurAmmoType', @lc_getcurammotype);
+lua_register(luaState, 'TestRectForObstacle', @lc_testrectforobstacle);
 
 
 ScriptClearStack; // just to be sure stack is empty
--- a/hedgewars/uSound.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uSound.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -290,10 +290,12 @@
 procedure AddVoice(snd: TSound; voicepack: PVoicepack);
 var i : LongInt;
 begin
-    if (not isSoundEnabled) or fastUntilLag then exit;
+    if (not isSoundEnabled) or fastUntilLag or ((LastVoice.snd = snd) and  (LastVoice.voicepack = voicepack)) then exit;
     i:= 0;
     while (i<8) and (VoiceList[i].snd <> sndNone) do inc(i);
 
+    // skip playing same sound for same hog twice
+    if (i>0) and (VoiceList[i-1].snd = snd) and (VoiceList[i-1].voicepack = voicepack) then exit;
     VoiceList[i].snd:= snd;
     VoiceList[i].voicepack:= voicepack;
 end;
--- a/hedgewars/uStore.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uStore.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -982,6 +982,7 @@
         end
     else
         begin
+        SetScale(cDefaultZoomLevel);
 {$IF DEFINED(DARWIN) OR DEFINED(WIN32)}
         reinit:= true;
 {$ENDIF}
@@ -991,7 +992,13 @@
         end;
 
     // these attributes must be set up before creating the sdl window
+{$IFNDEF WIN32}
+(* On a large number of testers machines, SDL default to software rendering when opengl attributes were set.
+   These attributes were "set" after CreateWindow in .15, which probably did nothing.
+   IMO we should rely on the gl_config defaults from SDL, and use SDL_GL_GetAttribute to possibly post warnings if any
+   bad values are set.  *)
     SetupOpenGLAttributes();
+{$ENDIF}
 {$IFDEF SDL13}
     // these values in x and y make the window appear in the center
     x:= SDL_WINDOWPOS_CENTERED_MASK;
--- a/hedgewars/uTeams.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uTeams.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -234,7 +234,7 @@
 
 ApplyAmmoChanges(CurrentHedgehog^);
 
-if not CurrentTeam^.ExtDriven then SetBinds(CurrentTeam^.Binds);
+if (not CurrentTeam^.ExtDriven) and (CurrentHedgehog^.BotLevel = 0) then SetBinds(CurrentTeam^.Binds);
 
 bShowFinger:= true;
 
@@ -427,11 +427,17 @@
 with Team do
     for i:= 0 to cMaxHHIndex do
         with Hedgehogs[i] do
+            begin
+            if Hedgehogs[i].GearHidden <> nil then
+                RestoreHog(@Hedgehogs[i]);
+
             if Gear <> nil then
                 begin
                 Gear^.Invulnerable:= false;
-                Gear^.Damage:= Gear^.Health
+                Gear^.Damage:= Gear^.Health;
+                Gear^.State:= Gear^.State or gstHHGone
                 end
+            end
 end;
 
 procedure chAddHH(var id: shortstring);
@@ -518,7 +524,7 @@
 end;
 
 procedure chTeamGone(var s:shortstring);
-var t, i: LongInt;
+var t: LongInt;
 begin
 t:= 0;
 while (t < cMaxTeams)
--- a/hedgewars/uUtils.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uUtils.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -342,20 +342,7 @@
     {$IFDEF ANDROID} Assign(f,pathPrefix + '/' + cLogfileBase + '.log'); {$ENDIF}
     Rewrite(f);
 {$ELSE}
-    if (ParamStr(1) <> '') and (ParamStr(2) <> '') then
-        if (ParamCount <> 3) and (ParamCount <> cDefaultParamNum) then
-        begin
-            i:= 0;
-            while(i < 7) do
-            begin
-                assign(f, ExtractFileDir(ParamStr(2)) + '/' + cLogfileBase + inttostr(i) + '.log');
-                rewrite(f);
-                if IOResult = 0 then break;
-                inc(i)
-            end;
-            if i = 7 then f:= stderr; // if everything fails, write to stderr
-        end
-        else
+    if (UserPathPrefix <> '') then
         begin
             i:= 0;
             while(i < 7) do
--- a/hedgewars/uVariables.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uVariables.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -405,7 +405,7 @@
             (FileName:  'TurnsLeft'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprTurnsLeft
             (FileName: 'amKamikaze'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
-            Width: 256; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprKamikaze
+            Width: 128; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprKamikaze
             (FileName:     'amWhip'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
             Width: 128; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprWhip
             (FileName:     'Kowtow'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
@@ -493,7 +493,7 @@
             (FileName:  'amMolotov'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
             Width: 32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),//sprHandMolotov
             (FileName:  'Molotov'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
-            Width: 16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprMolotov
+            Width: 32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprMolotov
             (FileName: 'Smoke'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
             Width:  22; Height: 22; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHighest; getDimensions: false; getImageDimensions: true),// sprSmoke
             (FileName: 'SmokeWhite'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
--- a/hedgewars/uVisualGears.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uVisualGears.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -321,6 +321,7 @@
                 end;
 vgtSmoothWindBar: Tag:= hwRound(cWindSpeed * 72 / cMaxWindSpeed);
  vgtStraightShot: begin
+                Angle:= 0;
                 Scale:= 1.0;
                 dx:= 0.001 * random(45);
                 dy:= 0.001 * (random(20) + 25);
@@ -596,7 +597,7 @@
                                end;
                vgtStraightShot: begin 
                                 if Gear^.dX < 0 then i:= -1 else i:= 1;
-                                DrawTextureF(SpritesData[TSprite(Gear^.State)].Texture, Gear^.Scale, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Frame, i, SpritesData[TSprite(Gear^.State)].Width, SpritesData[TSprite(Gear^.State)].Height);
+                                DrawRotatedTextureF(SpritesData[TSprite(Gear^.State)].Texture, Gear^.Scale, 0, 0, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Frame, i, SpritesData[TSprite(Gear^.State)].Width, SpritesData[TSprite(Gear^.State)].Height, Gear^.Angle);
                                 end;
            end;
            if (cReducedQuality and rqAntiBoom) = 0 then
@@ -649,14 +650,7 @@
                                    end;
                                DrawRotatedF(sprFeather, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Frame, 1, Gear^.Angle);
                              end;
-                   vgtEgg: begin
-                           if Gear^.FrameTicks < $FF then
-                               begin
-                                   Tint($FF, $FF, $FF, Gear^.FrameTicks);
-                                   tinted:= true
-                               end;
-                           DrawRotatedF(sprEgg, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Frame, 1, Gear^.Angle);
-                           end;
+                   vgtEgg: DrawRotatedF(sprEgg, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Frame, 1, Gear^.Angle);
                    vgtBeeTrace: begin
                                 if Gear^.FrameTicks < $FF then
                                     Tint($FF, $FF, $FF, Gear^.FrameTicks div 2)
--- a/hedgewars/uWorld.pas	Fri Sep 16 17:36:05 2011 +0200
+++ b/hedgewars/uWorld.pas	Fri Sep 16 18:17:16 2011 +0200
@@ -1184,16 +1184,16 @@
 end;
 
 procedure MoveCamera;
-var EdgesDist, wdy, shs: LongInt;
+var EdgesDist, wdy, shs,z: LongInt;
     PrevSentPointTime: LongWord = 0;
 begin
 {$IFNDEF MOBILE}
 if (not (CurrentTeam^.ExtDriven and isCursorVisible and not bShowAmmoMenu)) and cHasFocus and (GameState <> gsConfirm) then
     uCursor.updatePosition();
 {$ENDIF}
-
+z:= round(200/zoom);
 if (not PlacingHogs) and (FollowGear <> nil) and (not isCursorVisible) and (not fastUntilLag) then
-    if (not autoCameraOn) or (abs(CursorPoint.X - prevPoint.X) + abs(CursorPoint.Y - prevpoint.Y) > 4) then
+    if (not autoCameraOn) or ((abs(CursorPoint.X - prevPoint.X) + abs(CursorPoint.Y - prevpoint.Y)) > 4) then
     begin
         FollowGear:= nil;
         prevPoint:= CursorPoint;
@@ -1201,8 +1201,8 @@
     end
     else
     begin
-        CursorPoint.X:= (prevPoint.X * 7 + hwRound(FollowGear^.X) + hwSign(FollowGear^.dX) * 100 + WorldDx) div 8;
-        CursorPoint.Y:= (prevPoint.Y * 7 + cScreenHeight - (hwRound(FollowGear^.Y) + WorldDy)) div 8;
+        CursorPoint.X:= (prevPoint.X * 7 + hwRound(FollowGear^.X) + hwSign(FollowGear^.dX) * z + WorldDx) div 8;
+        CursorPoint.Y:= (prevPoint.Y * 7 + cScreenHeight - (hwRound(FollowGear^.Y)+ hwSign(FollowGear^.dY) * z + WorldDy)) div 8;
     end;
 
 wdy:= trunc(cScreenHeight / cScaleFactor) + cScreenHeight div 2 - cWaterLine - cVisibleWater;
@@ -1321,11 +1321,11 @@
 procedure ShakeCamera(amount: LongWord);
 begin
     if isCursorVisible then exit;
-    amount:= Max(1, amount);
-    //WorldDx:= WorldDx - amount + LongInt(getRandom(1 + amount * 2));
-    //WorldDy:= WorldDy - amount + LongInt(getRandom(1 + amount * 2));
-    CursorPoint.X:= CursorPoint.X - amount + LongInt(getRandom(1 + amount * 2));
-    CursorPoint.Y:= CursorPoint.Y - amount + LongInt(getRandom(1 + amount * 2))
+    amount:= Max(1, round(amount*zoom/2));
+    WorldDx:= WorldDx - amount + LongInt(random(1 + amount * 2));
+    WorldDy:= WorldDy - amount + LongInt(random(1 + amount * 2));
+    //CursorPoint.X:= CursorPoint.X - amount + LongInt(random(1 + amount * 2));
+    //CursorPoint.Y:= CursorPoint.Y - amount + LongInt(random(1 + amount * 2))
 end;
 
 
--- a/project_files/HedgewarsMobile/Classes/GameInterfaceBridge.m	Fri Sep 16 17:36:05 2011 +0200
+++ b/project_files/HedgewarsMobile/Classes/GameInterfaceBridge.m	Fri Sep 16 18:17:16 2011 +0200
@@ -78,8 +78,8 @@
         height = (int) screenBounds.size.width;
     }
 
-    NSString *horizontalSize = [[NSString alloc] initWithFormat:@"%d", width];
-    NSString *verticalSize = [[NSString alloc] initWithFormat:@"%d", height];
+    NSString *horizontalSize = [[NSString alloc] initWithFormat:@"%d", width * (int)getScreenScale()];
+    NSString *verticalSize = [[NSString alloc] initWithFormat:@"%d", height * (int)getScreenScale()];
     NSString *rotation = [[NSString alloc] initWithString:@"0"];
 
     NSString *modelId = getModelType();
@@ -88,7 +88,7 @@
         tmpQuality = 0x00000001 | 0x00000002 | 0x00000008 | 0x00000040;                 // rqLowRes | rqBlurryLand | rqSimpleRope | rqKillFlakes
     else if ([modelId hasPrefix:@"iPhone2"] || [modelId hasPrefix:@"iPod3"])                                    // = iPhone 3GS or iPod Touch 3G
         tmpQuality = 0x00000002 | 0x00000040;                                           // rqBlurryLand | rqKillFlakes
-    else if ([modelId hasPrefix:@"iPad1"] || [modelId hasPrefix:@"iPod4"])                    // = iPad 1G or iPod Touch 4G
+    else if ([modelId hasPrefix:@"iPad1"] || [modelId hasPrefix:@"iPod4"])                                      // = iPad 1G or iPod Touch 4G
         tmpQuality = 0x00000002;                                                        // rqBlurryLand
     else                                                                                                        // = everything else
         tmpQuality = 0;                                                                 // full quality
--- a/project_files/HedgewarsMobile/Classes/InGameMenuViewController.m	Fri Sep 16 17:36:05 2011 +0200
+++ b/project_files/HedgewarsMobile/Classes/InGameMenuViewController.m	Fri Sep 16 18:17:16 2011 +0200
@@ -45,7 +45,7 @@
     NSArray *array = [[NSArray alloc] initWithObjects:
                       NSLocalizedString(@"Show Help", @""),
                       NSLocalizedString(@"Tag", @""),
-                      NSLocalizedString(@"Snapshot",@""),
+//                      NSLocalizedString(@"Snapshot",@""),
                       NSLocalizedString(@"End Game", @""),
                       nil];
     self.menuList = array;
@@ -117,7 +117,8 @@
 }
 
 -(NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
-    return 4;
+    return 3;
+//    return 4;
 }
 
 -(UITableViewCell *)tableView:(UITableView *)aTableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
@@ -151,6 +152,7 @@
 
             break;
         case 2:
+/*
             alert = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Going to take a screenshot",@"")
                                                message:NSLocalizedString(@"The game snapshot will be placed in your Photo Album and it will be taken as soon as the pause menu is dismissed",@"")
                                               delegate:nil
@@ -162,6 +164,7 @@
 
             break;
         case 3:
+*/
             actionSheet = [[UIActionSheet alloc] initWithTitle:NSLocalizedString(@"Are you reeeeeally sure?", @"")
                                                       delegate:self
                                              cancelButtonTitle:NSLocalizedString(@"Well, maybe not...", @"")
--- a/project_files/HedgewarsMobile/Info.plist	Fri Sep 16 17:36:05 2011 +0200
+++ b/project_files/HedgewarsMobile/Info.plist	Fri Sep 16 18:17:16 2011 +0200
@@ -28,7 +28,7 @@
 	<key>CFBundleSignature</key>
 	<string>????</string>
 	<key>CFBundleVersion</key>
-	<string>1.2.3</string>
+	<string>1.3.1</string>
 	<key>LSRequiresIPhoneOS</key>
 	<true/>
 	<key>UILaunchImageFile~ipad</key>
Binary file share/hedgewars/Data/Graphics/Hats/Reserved/a1ed4756b565d13aaecb1f2b1a556570alwayss.png has changed
Binary file share/hedgewars/Data/Graphics/Hats/Reserved/e587f6146ebfbdefdc028c591643f220alwayss.png has changed
Binary file share/hedgewars/Data/Graphics/Hats/TeamHeadband.png has changed
Binary file share/hedgewars/Data/Graphics/Hats/TeamSoldier.png has changed
Binary file share/hedgewars/Data/Graphics/Hats/cyclops.png has changed
Binary file share/hedgewars/Data/Graphics/Hats/sf_Guilie.png has changed
Binary file share/hedgewars/Data/Graphics/Hats/sf_Honda.png has changed
Binary file share/hedgewars/Data/Graphics/Hats/sf_Ryu.png has changed
Binary file share/hedgewars/Data/Graphics/Hats/sf_guile.png has changed
Binary file share/hedgewars/Data/Graphics/Hats/sf_honda.png has changed
Binary file share/hedgewars/Data/Graphics/Hats/sf_ryu.png has changed
Binary file share/hedgewars/Data/Graphics/Hedgehog/amKamikaze.png has changed
Binary file share/hedgewars/Data/Graphics/Molotov.png has changed
--- a/share/hedgewars/Data/Locale/cs.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/cs.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -3,12 +3,19 @@
       ["!!!"] = "!!!",
       ["..."] = "...",
       ["Accuracy Bonus!"] = "Bonus za přesnost!",
+--      ["Achievement Unlocked"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
       ["a Hedgewars mini-game"] = "Hedgewars mini-hra", -- Space_Invasion, The_Specialists
       ["Aiming Practice"] = "Trénink přesnosti", --Bazooka, Shotgun, SniperRifle
+      ["Ammo Depleted!"] = "Munice vyčerpána!",
+--      ["ammo extended!"] = "",
+--      ["Ammo is reset at the end of your turn."] = "",
+      ["Ammo Maniac!"] = "Muniční maniak!",
       ["Ammo"] = "Munice",
-      ["Ammo Depleted!"] = "Munice vyčerpána!",
-      ["Ammo Maniac!"] = "Muniční maniak!",
       ["Available points remaining: "] = "Zbývá bodů:",
+--      ["[Backspace]"] = "",
+--      ["Bamboo Thicket"] = "",
+--      ["Barrel Eater!"] = "",
+--      ["Barrel Launcher"] = "",
       ["Bat balls at your enemies and|push them into the sea!"] = "Odpal míčky na své nepřátele|a odstrč je do vody!",
       ["Bat your opponents through the|baskets and out of the map!"] = "Odpal protivníky skrz|koše a pryč z mapy!",
       ["Bazooka Training"] = "Trénink s bazukou",
@@ -19,8 +26,10 @@
       ["BOOM!"] = "BUM!",
       ["Boss defeated!"] = "Velitel poražen!",
       ["Boss Slayer!"] = "Velitel zabit!",
+--      ["Build a track and race."] = "",
       ["CAPTURE THE FLAG"] = "ZAJMI VLAJKU",
       ["Careless"] = "Neopatrný",
+--      ["Change Weapon"] = "",
       ["Clumsy"] = "Nešikovný",
       ["Codename: Teamwork"] = "Krycí jméno: Týmová práce",
       ["Complete the track as fast as you can!"] = "Dokonči trasu tak rychle, jak můžeš!",
@@ -28,12 +37,14 @@
       ["Congratulations! You've eliminated all targets|within the allowed time frame."] = "Gratuluji! Eliminoval jsi všechny cíle|během stanoveného limitu", --Bazooka, Shotgun, SniperRifle
       ["Control pillars to score points."] = "Obsaď všechny sloupy, abys dostal body.",
       ["Cybernetic Empire"] = "Kybernetická říše",
+      ["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "ZATRACENĚ, ZELENÁČI! VYPADNI Z MOJI HLAVY!",
       ["DAMMIT, ROOKIE!"] = "ZATRACENĚ, ZELENÁČI!",
-      ["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "ZATRACENĚ, ZELENÁČI! VYPADNI Z MOJI HLAVY!",
       ["Dangerous Ducklings"] = "Nebezpečná káčátka",
       ["Deadweight"] = "Mrtvá váha",
+--      ["Demolition is fun!"] = "",
       ["Depleted Kamikaze!"] = "Vyčerpaný sebevrah!",
       ["Destroy invaders to score points."] = "Znič nájezdníky k získání bodů.",
+--      ["Double Kill!"] = "",
       ["Drone Hunter!"] = "Lovec trubců!",
       ["Drowner"] = "Utopenec",
       ["Each turn you get 1-3 random weapons"] = "Každý tah dostaneš 1-3 náhodné zbraně",
@@ -42,8 +53,11 @@
       ["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "Znič všechny cíle, než ti vyprší čas.|Na tuto misi máš neomezeně munice.", --Bazooka, Shotgun, SniperRifle
       ["Eliminate Poison before the time runs out"] = "Odstraň Otravu, než vyprší čas.",
       ["Eliminate the Blue Team"] = "Znič modrý tým",
+--      ["Eliminate the enemy before the time runs out"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Eliminate the enemy hogs to win."] = "",
       ["Eliminate the enemy specialists."] = "Zabij nepřátelské specialisty",
       ["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "- Znič Jednotku 3378 |- Slabý odpor musí přežít",
+--      ["Energetic Engineer"] = "",
       ["Enjoy the swim..."] = "Užij si plavání...",
       ["[Enter]"] = "[Enter]",
       ["Fastest lap: "] = "Nejrychlejší kolo: ",
@@ -53,6 +67,9 @@
       ["Flag respawned!"] = "Vlajka obnovena!",
       ["Flag returned!"] = "Vlajka navrácena!",
       ["Flags, and their home base will be placed where each team ends their first turn."] = "Vlajky a domovské základny budou umístěny tam, kde každý tým skončí svůj první tah.",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+--      ["fuel extended!"] = "",
       ["GAME BEGUN!!!"] = "HRA ZAČALA!!!",
       ["Game Modifiers: "] = "Herní modifikátory: ",
       ["GAME OVER!"] = "KONEC HRY!",
@@ -62,11 +79,15 @@
       ["GO! GO! GO!"] = "Běž! Běž! Běž!",
       ["Good birdy......"] = "Hodný ptáček......",
       ["Good luck out there!"] = "Hodně štěstí tam venku!",
+--      ["Good so far!"] = "",
+--      ["Good to go!"] = "",
       ["GOTCHA!"] = "Mám tě!",
+--      ["Grab Mines/Explosives"] = "",
       ["Hahahaha!"] = "Hahahaha!",
       ["Haha, now THAT would be something!"] = "Haha, tak TOHLE bude něco!",
+      [" Hapless Hogs left!"] = "Nešťastný ježek odešel!",
       ["Hapless Hogs"] = "Nešťastný ježek",
-      [" Hapless Hogs left!"] = "Nešťastný ježek odešel!",
+--      ["Health crates extend your time."] = "",
       ["Heavy"] = "Těžký",
       ["Hedgewars-Basketball"] = "Hedgewars-Basketbal",
       ["Hedgewars-Knockball"] = "Hedgewars=Vybíjená",
@@ -80,19 +101,28 @@
       ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "To je dobře, že NÁHLÁ SMRT je 99 tahů vzdálená...",
       ["Jumping is disabled"] = "Skákání je vypnuto",
       ["Kamikaze Expert!"] = "Expert na sebevraždy!",
+--      ["Keep it up!"] = "",
+--      ["Killing spree!"] = "",
       ["KILLS"] = "ÚLOVKY",
+--      ["Last Target!"] = "",
       ["[Left Shift]"] = "[Levý shift]",
       ["Listen up, maggot!!"] = "Poslouchej, bídný červe!!",
+--      ["Lively Lifeguard"] = "",
+--      ["Mine Deployer"] = "",
+--      ["Mine Eater!"] = "",
       ["|- Mines Time:"] = "|- Časovač min:", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
       ["MISSION FAILED"] = "MISE NEÚSPĚŠNÁ", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
+      ["MISSION SUCCESSFUL"] = "MISE ÚSPĚŠNÁ", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
       ["MISSION SUCCESS"] = "MISE ÚSPĚŠNÁ",
-      ["MISSION SUCCESSFUL"] = "MISE ÚSPĚŠNÁ", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
       ["Movement: [Up], [Down], [Left], [Right]"] = "Pohyb: [nahoru], [dolu], [vlevo], [vpravo]",
       ["Multi-shot!"] = "Vícenásobná rána!",
       ["Nameless Heroes"] = "Bezejmenní hrdinové",
+--      ["New Barrels Per Turn"] = "",
       ["NEW CLAN RECORD: "] = "NOVÝ KLANOVÝ REKORD: ",
       ["NEW fastest lap: "] = "NOVÉ nejrychlejší kolo: ",
+--      ["New Mines Per Turn"] = "",
       ["NEW RACE RECORD: "] = "NOVÝ TRAŤOVÝ REKORD: ",
+--      ["Newton's Hammock"] = "",
       ["NOT ENOUGH WAYPOINTS"] = "NEDOSTATEK NAVIGAČNÍCH BODŮ",
       ["Not So Friendly Match"] = "Ne moc přátelský zápas", -- Basketball, Knockball
       ["Oh no! Just try again!"] = "Ale ne! Prostě to zkus znovu!", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
@@ -100,23 +130,28 @@
       ["Operation Diver"] = "Operace potápěč",
       ["Opposing Team: "] = "Protivníkův tým: ",
       ["Pathetic Hog #%d"] = "Žalostný ježek #%d",
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
       ["Per-Hog Ammo"] = "Individuální munice",
       ["Place more waypoints using [ENTER]"] = "Umísti více navigačních bodů pomocí klávesy [enter]",
+--      ["Place more waypoints using the 'Air Attack' weapon."] = "",
       ["points"] = "body", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
       ["Poison"] = "Otrava",
       ["Power Remaining"] = "Zbývající energie",
+--      ["Prepare yourself"] = "",
       ["Press [Precise] to skip intro"] = "Stiskni [přesnost] pro přeskočení",
       ["Race complexity limit reached."] = "Dosažen limit složitosti závodu.",
+--      ["RACER"] = "",
       [" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = " - Dones nepřátelskou vlajku do své základny k získání bodů | - První tým se třemi ukořistěními vítězí | - Můžeš bodovat, pokud je tvá vlajka v základně | - Ježci pustí vlajku, pokud jsou zabiti, nebo utopeni | - Upuštěná vlajka může být navrácena, nebo opět zajmuta | - Ježci jsou po smrti oživeni",
+--      ["Round Limit:"] = "",
       ["Round Limit"] = "Limit kol",
+--      ["Rounds Complete: "] = "",
       ["Rounds Complete"] = "Dokončených kol",
       ["RULES OF THE GAME [Press ESC to view]"] = "PRAVIDLA HRY [Stiskni ESC pro prohlédnutí]",
-      ["s|"] = "s|",
       ["Save as many hapless hogs as possible!"] = "Zachraň tolik nešťastných ježků, kolik jen můžeš!",
       ["SCORE"] = "SKÓRE",
       ["sec"] = "vt.", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
       ["See ya!"] = "Uvidíme se!",
-      ["s"] = "s", -- GaudyRacer, Space_Invasion
+--      ["selected!"] = "",
       ["Shield boosted! +30 power"] = "Štít posílen! +30 energie",
       ["Shield Depleted"] = "Štít vyčerpán",
       ["Shield is fully recharged!"] = "Štít je plně dobit",
@@ -127,7 +162,7 @@
       ["Shield Seeker!"] = "Hledač štítů!",
       ["Shotgun Team"] = "Brokovnicový tým",
       ["Shotgun Training"] = "Trénink s brokovnicí",
-      ["Shots Left: "] = "Zbývá střel: ", -- GaudyRacer, Tumbler
+--      ["shots remaining."] = "",
       ["Silly"] = "Hloupý",
       ["Sinky"] = "Propadlý",
       ["%s is out and Team %d|scored a penalty!| |Score:"] = "%s je venku a tým %d|má penaltu!| |Skóre:", -- Basketball, Knockball
@@ -136,6 +171,8 @@
       ["Sniperz"] = "Snajpři",
       ["Sponge"] = "Mycí houba",
       ["Spooky Tree"] = "Strašidelný strom",
+      ["s|"] = "s|",
+      ["s"] = "s", -- GaudyRacer, Space_Invasion
       ["STATUS UPDATE"] = "AKTUALIZACE STAVU", -- GaudyRacer, Space_Invasion
       ["Switched to "] = "Přepnut na ",
       ["Team %d: "] = "Tým %d: ",
@@ -146,26 +183,33 @@
       ["The flag will respawn next round."] = "Vlajka se obnoví příští kolo.",
       ["The Nameless One"] = "Bezejmenný",
       ["THE SPECIALISTS"] = "SPECIALISTÉ",
+--      ["This one's tricky."] = "",
       ["This rain is really something..."] = "Tenhle déšť je opravdu něco...",
       ["TIME: "] = "ČAS: ",
       ["Timed Kamikaze!"] = "Časovaná sebevražda!",
       ["Time Extended!"] = "Čas prodloužen!",
-      ["Time Left: "] = "Zbývá času: ",
+--      ["Time Extension"] = "",
       ["Toggle Shield"] = "Přepnout štít",
       ["Toxic Team"] = "Jedovatý tým", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
       ["TRACK COMPLETED"] = "TRASA KOMPLETNÍ",
-      ["Track Time: "] = "Čas na trati: ",
+--      ["TRACK FAILED!"] = "",
       ["TrophyRace"] = "Závod o trofej",
       ["T_T"] = "T_T",
+--      ["Tumbling Time Extended!"] = "",
       ["Turn Time"] = "Čas kola",
+--      ["Unit"] = "",
       ["Unit 3378"] = "Jednotka 3378",
+--      ["Unit 835"] = "",
       ["Unlimited Attacks"] = "Neomezeně útoků",
+--      ["Unstoppable!"] = "",
       ["User Challenge"] = "Výzva",
       ["Use your rope to get from start to finish as fast as you can!"] = "Použij lano a dostaň se ze startu do cíle, jak nejrychleji umíš!",
-      ["v.06"] = "v.06",
       ["Victory for the "] = "Vítězství pro ", -- CTF_Blizzard, Capture_the_Flag
       ["Waypoint placed."] = "Navigační bod umístěn.",
+--      ["Way-Points Remaining"] = "",
       ["Weapons Reset"] = "Zbraně obnoveny",
+--      ["Well done."] = "",
+--      ["Will this ever end?"] = "",
       ["WINNING TIME: "] = "VÍTĚZNÝ ČAS: ",
       ["You'd almost swear the water was rising!"] = "Přísahal bys, že voda stoupá!",
       ["You have SCORED!!"] = "SKÓROVAL jsi!!",
--- a/share/hedgewars/Data/Locale/de.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/de.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -2,132 +2,170 @@
 --      [":("] = "",
 --      ["!!!"] = "",
 --      ["..."] = "",
---      ["Accuracy Bonus!"] = "",
---      ["a Hedgewars mini-game"] = "", -- Space_Invasion, The_Specialists
+    ["Accuracy Bonus!"] = "Präzisions-Bonus!",
+--      ["Achievement Unlocked"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
+	["a Hedgewars mini-game"] = "ein Hedgewars Mini-Spiel", -- Space_Invasion, The_Specialists
 	["Aiming Practice"] = "Zielübung", --Bazooka, Shotgun, SniperRifle
---      ["Ammo"] = "",
---      ["Ammo Depleted!"] = "",
---      ["Ammo Maniac!"] = "",
---      ["Available points remaining: "] = "",
+	["Ammo Depleted!"] = "Munition erschöpft!",
+--      ["ammo extended!"] = "",
+	["Ammo is reset at the end of your turn."] = "Munition wird am Ende des Spielzuges zurückgesetzt.",
+	["Ammo Maniac!"] = "Munitionsverrückter!",
+	["Ammo"] = "Munition",
+	["Available points remaining: "] = "Verfügbare Punkte verbleibend:",
+--      ["[Backspace]"] = "",
+--      ["Bamboo Thicket"] = "",
+	["Barrel Eater!"] = "Fassfresser!",
+	["Barrel Launcher"] = "Fasswerfer",
 	["Bat balls at your enemies and|push them into the sea!"] = "Schlage Bälle auf deine Widersacher|und lass sie ins Meer fallen!",
 	["Bat your opponents through the|baskets and out of the map!"] = "Schlage deine Widersacher durch|die Körbe und aus der Karte hinaus!",
 	["Bazooka Training"] = "Bazooka-Training",
---	["Best laps per team: "] = "",
---      ["Best Team Times: "] = "",
---      ["Bloody Rookies"] = "", -- 01#Boot_Camp, User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree
---      ["Boom!"] = "",
---      ["BOOM!"] = "",
---      ["Boss defeated!"] = "",
---      ["Boss Slayer!"] = "",
---      ["CAPTURE THE FLAG"] = "",
---      ["Careless"] = "",
---      ["Clumsy"] = "",
---      ["Codename: Teamwork"] = "",
---      ["Complete the track as fast as you can!"] = "",
---      ["Congratulations!"] = "",
+	["Best laps per team: "] = "Beste Rundenzeiten pro Team: ",
+	["Best Team Times: "] = "Besten Team-Zeiten: ",
+	["Bloody Rookies"] = "Blutige Anfänger", -- 01#Boot_Camp, User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree
+	["Boom!"] = "Bumm!",
+	["BOOM!"] = "KABUMM!",
+	["Boss defeated!"] = "Boss wurde besiegt!",
+	["Boss Slayer!"] = "Boss-Töter!",
+--      ["Build a track and race."] = "",
+	["CAPTURE THE FLAG"] = "EROBERE DIE FAHNE",
+	["Careless"] = "Achtlos",
+	["Change Weapon"] = "Waffenwechsel",
+	["Clumsy"] = "Ungeschickt",
+	["Codename: Teamwork"] = "Code-Name: Teamwork",
+	["Complete the track as fast as you can!"] = "Durchlaufe die Strecke so schnell du kannst!",
+	["Congratulations!"] = "Gratulation!",
 	["Congratulations! You've eliminated all targets|within the allowed time frame."] = "Gratulation! Du hast alle Ziele innerhalb der|verfügbaren Zeit ausgeschaltet.", --Bazooka, Shotgun, SniperRifle
---      ["Control pillars to score points."] = "",
---      ["Cybernetic Empire"] = "",
---      ["DAMMIT, ROOKIE!"] = "",
---      ["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "",
+	["Control pillars to score points."] = "Kontrolliere die Säulen um Punkte zu erhalten.",
+	["Cybernetic Empire"] = "Kybernetisches Imperium",
+	["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "VERDAMMT, REKRUT! RUNTER VON MEINEM KOPF!",
+	["DAMMIT, ROOKIE!"] = "VERDAMMT, REKRUT!",
 --      ["Dangerous Ducklings"] = "",
---      ["Deadweight"] = "",
---      ["Depleted Kamikaze!"] = "",
---      ["Destroy invaders to score points."] = "",
+	["Deadweight"] = "Leergewicht",
+	["Demolition is fun!"] = "Zerstörung macht Spaß!",
+	["Depleted Kamikaze!"] = "Munitionsloses Kamikaze!",
+	["Destroy invaders to score points."] = "Zerstöre die Angreifer um Punkte zu erhalten.",
+--      ["Double Kill!"] = "",
 --      ["Drone Hunter!"] = "",
 --      ["Drowner"] = "",
---      ["Each turn you get 1-3 random weapons"] = "",
---      ["Each turn you get one random weapon"] = "",
---      ["Eliminate all enemies"] = "",
+	["Each turn you get 1-3 random weapons"] = "Du bekommst jede Runde 1-3 zufällig gewählte Waffen",
+	["Each turn you get one random weapon"] = "Du bekommst jede Runde eine zufällig gewählte Waffe.",
+	["Eliminate all enemies"] = "Vernichte alle Gegner",
 	["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "Eliminiere alle Ziele bevor die Zeit ausläuft.|Du hast in dieser Mission unbegrenzte Munition.", --Bazooka, Shotgun, SniperRifle
 --      ["Eliminate Poison before the time runs out"] = "",
---      ["Eliminate the Blue Team"] = "",
+	["Eliminate the Blue Team"] = "Lösche das Blaue Team aus",
+--      ["Eliminate the enemy before the time runs out"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Eliminate the enemy hogs to win."] = "",
 --      ["Eliminate the enemy specialists."] = "",
---      ["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "",
---      ["Enjoy the swim..."] = "",
+	["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "- Vernichte Einheit 3378 |  Kraftloser Widerstand muss überleben",
+--      ["Energetic Engineer"] = "",
+	["Enjoy the swim..."] = "Viel Spaß beim Schwimmen...",
 --      ["[Enter]"] = "",
---	["Fastest lap: "] = "",
---      ["Feeble Resistance"] = "",
---      ["Fire"] = "",
---      ["Flag captured!"] = "",
---      ["Flag respawned!"] = "",
---      ["Flag returned!"] = "",
---      ["Flags, and their home base will be placed where each team ends their first turn."] = "",
---      ["GAME BEGUN!!!"] = "",
+	["Fastest lap: "] = "Schnellste Runde: ",
+	["Feeble Resistance"] = "Kraftloser Widerstand",
+	["Fire"] = "Feuer",
+	["Flag captured!"] = "Fahne erobert!",
+	["Flag respawned!"] = "Fahne wieder erschienen!",
+	["Flag returned!"] = "Fahne zurückgebracht!",
+	["Flags, and their home base will be placed where each team ends their first turn."] = "Fahnen und deren Heimatstandort werden dort plaziert wo jedes Team deren ersten Zug beendet.",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+	["fuel extended!"] = "Treibstoff aus!",
+	["GAME BEGUN!!!"] = "SPIEL GESTARTET!!!",
 --      ["Game Modifiers: "] = "",
---      ["GAME OVER!"] = "",
---      ["Game Started!"] = "",
---      ["Get on over there and take him out!"] = "",
---      ["Goal"] = "",
---      ["GO! GO! GO!"] = "",
---      ["Good birdy......"] = "",
---      ["Good luck out there!"] = "",
---      ["GOTCHA!"] = "",
+	["GAME OVER!"] = "SPIEL ZU ENDE!",
+	["Game Started!"] = "Spiel Gestartet!]",
+	["Get on over there and take him out!"] = "Mach, dass du hinüber kommst und schalte ihn aus!",
+	["Goal"] = "Ziel",
+	["GO! GO! GO!"] = "Bewegung, Bewegung, Bewegung!",
+	["Good birdy......"] = "Braver Vogel......",
+	["Good luck out there!"] = "Viel Glück da draußen!",
+	["Good so far!"] = "Gut soweit!",
+	["Good to go!"] = "Startklar!",
+	["GOTCHA!"] = "ERWISCHT!",
+	["Grab Mines/Explosives"] = "Sammle Minen/Fässer",
 --      ["Hahahaha!"] = "",
---      ["Haha, now THAT would be something!"] = "",
---      ["Hapless Hogs"] = "",
---      [" Hapless Hogs left!"] = "",
+	["Haha, now THAT would be something!"] = "Haha, na DAS wär ja was!",
+	["Hapless Hogs"] = "Glücklose Igel",
+	[" Hapless Hogs left!"] = " Glücklose Igel verbleibend!",
+	["Health crates extend your time."] = "Medipacks verlängern deine Zeit.",
 --      ["Heavy"] = "",
 	["Hedgewars-Basketball"] = "Hedgewars-Basketball",
 	["Hedgewars-Knockball"] = "Hedgewars-Knockball",
---      ["Heh, it's not that bad."] = "",
+	["Heh, it's not that bad."] = "Hehe, so schlimm ist es nicht.",
 --      ["Hit Combo!"] = "",
 --      ["Hmmm..."] = "",
---      ["Hooray!"] = "",
+	["Hooray!"] = "Hurra!",
 	["Hunter"] = "Jäger", --Bazooka, Shotgun, SniperRifle
---      ["Instructor"] = "", -- 01#Boot_Camp, User_Mission_-_Dangerous_Ducklings
---      ["invaders destroyed"] = "",
---      ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "",
---      ["Jumping is disabled"] = "",
---      ["Kamikaze Expert!"] = "",
+	["Instructor"] = "Ausbilder", -- 01#Boot_Camp, User_Mission_-_Dangerous_Ducklings
+	["invaders destroyed"] = "Angreifer zerstört",
+	["It's a good thing SUDDEN DEATH is 99 turns away..."] = "Gut, dass SUDDEN DEATH noch 99 Runden entfernt ist...",
+	["Jumping is disabled"] = "Sprünge sind deaktiviert!",
+	["Kamikaze Expert!"] = "Kamikazeexperte!",
+	["Keep it up!"] = "Weiter so!",
+	["Killing spree!"] = "Blutrausch!",
 --      ["KILLS"] = "",
+	["Last Target!"] = "Letzte Zielscheibe!",
 --      ["[Left Shift]"] = "",
---      ["Listen up, maggot!!"] = "",
---      ["|- Mines Time:"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
---      ["MISSION FAILED"] = "", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
---      ["MISSION SUCCESS"] = "",
---      ["MISSION SUCCESSFUL"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
---      ["Movement: [Up], [Down], [Left], [Right]"] = "",
+	["Listen up, maggot!!"] = "Aufgepasst, du Made!!",
+--      ["Lively Lifeguard"] = "",
+	["Mine Deployer"] = "Minenleger",
+	["Mine Eater!"] = "Minenfresser!",
+	["|- Mines Time:"] = "| - Minenzündzeit: ", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
+	["MISSION FAILED"] = "MISSION GESCHEITERT", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
+	["MISSION SUCCESSFUL"] = "MISSION ERFOLGREICH", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
+	["MISSION SUCCESS"] = "MISSIONSERFOLG",
+	["Movement: [Up], [Down], [Left], [Right]"] = "Bewegung: [Hoch], [Runter], [Links], [Rechts]",
 --      ["Multi-shot!"] = "",
---      ["Nameless Heroes"] = "",
---      ["NEW CLAN RECORD: "] = "",
---	["NEW fastest lap: "] = "",
---      ["NEW RACE RECORD: "] = "",
---      ["NOT ENOUGH WAYPOINTS"] = "",
+	["Munition!"] = "Munition erschöpft!",
+	["Nameless Heroes"] = "Namenlose Helden",
+	["New Barrels Per Turn"] = "Neue Fässer jede Runde",
+	["NEW CLAN RECORD: "] = "NEUER KLAN-REKORD",
+	["NEW fastest lap: "] = "NEUE schnellste Runde: ",
+	["New Mines Per Turn"] = "Neue Minen jede Runde",
+	["NEW RACE RECORD: "] = "NEUER RENNREKORD: ",
+--      ["Newton's Hammock"] = "",
+	["NOT ENOUGH WAYPOINTS"] = "NICHT GENUG WEGPUNKTE",
 	["Not So Friendly Match"] = "Kein-so-Freundschaftsspiel", -- Basketball, Knockball
 --      ["Oh no! Just try again!"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 	["Oh no! Time's up! Just try again."] = "Oh nein! Die Zeit ist um! Versuche es nochmal.", --Bazooka, Shotgun, SniperRifle
 --      ["Operation Diver"] = "",
---      ["Opposing Team: "] = "",
+	["Opposing Team: "] = "Gegnerisches Team: ",
 --      ["Pathetic Hog #%d"] = "",
---      ["Per-Hog Ammo"] = "",
---      ["Place more waypoints using [ENTER]"] = "",
---      ["points"] = "", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
---      ["Poison"] = "",
---      ["Power Remaining"] = "",
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+	["Per-Hog Ammo"] = "Munition pro Igel",
+	["Place more waypoints using [ENTER]"] = "Setze mehr Wegpunkte durch Drücken von [ENTER]",
+--      ["Place more waypoints using the 'Air Attack' weapon."] = "",
+	["points"] = "Punkte", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
+	["Poison"] = "Gift",
+	["Power Remaining"] = "Verbleibende Energie",
+	["Prepare yourself"] = "Mach dich bereit",
 --      ["Press [Precise] to skip intro"] = "",
---      ["Race complexity limit reached."] = "",
+	["Race complexity limit reached."] = "Rennkomplexitätslimit erreicht.",
+--      ["RACER"] = "",
 --      [" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = "",
---      ["Round Limit"] = "",
---      ["Rounds Complete"] = "",
---      ["RULES OF THE GAME [Press ESC to view]"] = "",
+--      ["Round Limit:"] = "",
+	["Round Limit"] = "Rundenbegrenzung",
+--      ["Rounds Complete: "] = "",
+	["Rounds Complete"] = "Runden Gespielt",
+	["RULES OF THE GAME [Press ESC to view]"] = "SPIEL REGELN (Drücke ESC zum Anzeigen)",
 --      ["s|"] = "",
---      ["Save as many hapless hogs as possible!"] = "",
+	["Save as many hapless hogs as possible!"] = "Rette so viele glücklose Igel als möglich!",
 --      ["SCORE"] = "",
 --      ["sec"] = "", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
---      ["See ya!"] = "",
+	["See ya!"] = "Mach's gut!",
+	["selected!"] = "ausgewählt!",
 --      ["s"] = "", -- GaudyRacer, Space_Invasion
---      ["Shield boosted! +30 power"] = "",
---      ["Shield Depleted"] = "",
---      ["Shield is fully recharged!"] = "",
---      ["Shield Master!"] = "",
---      ["Shield Miser!"] = "",
---      ["Shield OFF:"] = "",
---      ["Shield ON:"] = "",
---      ["Shield Seeker!"] = "",
-	["Shotgun Team"] = "Entrenamiento con escopeta",
+	["Shield boosted! +30 power"] = "Schild verstärkt! +30 Energie",
+	["Shield Depleted"] = "Schild aufgebraucht!",
+	["Shield is fully recharged!"] = "Schild vollständig aufgeladen!",
+	["Shield Master!"] = "Schildmeister!",
+	["Shield Miser!"] = "Schildgieriger",
+	["Shield OFF:"] = "Schild AUS:",
+	["Shield ON:"] = "Schild AN:",
+	["Shield Seeker!"] = "Schildsucher!",
+	["Shotgun Team"] = "Schrotflinten-Team",
 	["Shotgun Training"] = "Schrotflinten-Training",
---      ["Shots Left: "] = "", -- GaudyRacer, Tumbler
+	["shots remaining."] = "Schüsse übrig",
 --      ["Silly"] = "",
 --      ["Sinky"] = "",
 	["%s is out and Team %d|scored a penalty!| |Score:"] = "%s ist draußen und Team %d|erhält eine Strafe!| |Punktestand:", -- Basketball, Knockball
@@ -141,36 +179,44 @@
 --	["Team %d: "] = "",
 --      ["Team Scores"] = "", -- Control, Space_Invasion
 --      ["That Sinking Feeling"] = "",
---      ["That was pointless."] = "",
---      ["The enemy is hiding out on yonder ducky!"] = "",
---      ["The flag will respawn next round."] = "",
---      ["The Nameless One"] = "",
---      ["THE SPECIALISTS"] = "",
---      ["This rain is really something..."] = "",
---      ["TIME: "] = "",
---      ["Timed Kamikaze!"] = "",
---      ["Time Extended!"] = "",
---      ["Time Left: "] = "",
---      ["Toggle Shield"] = "",
+	["That was pointless."] = "Das war sinnlos.",
+	["The enemy is hiding out on yonder ducky!"] = "Der Feind versteckt sich auf dem Entlein dort drüben!",
+	["The flag will respawn next round."] = "Die Fahne wird nächste Runde wieder auftauchen.",
+	["The Nameless One"] = "Der Namenlose",
+	["THE SPECIALISTS"] = "DIE SPEZIALISTEN",
+	["This one's tricky."] = "Der hier ist knifflig.",
+	["This rain is really something..."] = "Das nenne ich mal einen Regenschauer...",
+	["Timed Kamikaze!"] = "Pünktliches Kamikaze!",
+	["Time Extended!"] = "Zeit verlängert!",
+	["Time Extension"] = "Zeitverlängerung",
+	["Time Left: "] = "Verbleibende Zeit",
+	["TIME: "] = "ZEIT: ",
+	["Toggle Shield"] = "Schild ein/aus",
 --      ["Toxic Team"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["TRACK COMPLETED"] = "",
---      ["Track Time: "] = "",
+--      ["TRACK FAILED!"] = "",
 --	["TrophyRace"] = "",
 --      ["T_T"] = "",
---      ["Turn Time"] = "",
---      ["Unit 3378"] = "",
---      ["Unlimited Attacks"] = "",
+	["Tumbling Time Extended!"] = "Purzelzeit verlängert!",
+	["Turn Time"] = "Zeit pro Zug",
+	["Unit 3378"] = "Einheit 3378",
+	["Unit 835"] = "Einheit 3378",
+	["Unit"] = "Einheit",
+	["Unlimited Attacks"] = "Unbegrenzte Angriffe",
+	["Unstoppable!"] = "Unaufhaltbar!",
 --      ["User Challenge"] = "",
---	["Use your rope to get from start to finish as fast as you can!"] = "",
---      ["v.06"] = "",
---      ["Victory for the "] = "", -- CTF_Blizzard, Capture_the_Flag
---      ["Waypoint placed."] = "",
+	["Use your rope to get from start to finish as fast as you can!"] = "Nutze das Seil um von Start zu Ziel zu gelangen - so schnell du kannst!",
+	["Victory for the "] = "Sieg für ", -- CTF_Blizzard, Capture_the_Flag
+	["Waypoint placed."] = "Wegpunkt gesetzt",
+--      ["Way-Points Remaining"] = "",
 --      ["Weapons Reset"] = "",
---      ["WINNING TIME: "] = "",
---      ["You'd almost swear the water was rising!"] = "",
---      ["You have SCORED!!"] = "",
---      ["You saved"] = "",
---      ["You've failed. Try again."] = "",
---	["You've reached the goal!| |Time: "] = "",
+	["Well done."] = "Gut gemacht.",
+	["Will this ever end?"] = "Wird dies je enden?",
+	["WINNING TIME: "] = "SIEGESZEIT: ",
+	["You'd almost swear the water was rising!"] = "Man könnte fast schwören das Wasser würde steigen!",
+	["You have SCORED!!"] = "Du hast GEPUNKTET!",
+	["You saved"] = "Gerettet: ",
+	["You've failed. Try again."] = "Du bist gescheitert. Versuche es nochmal.",
+	["You've reached the goal!| |Time: "] = "Ziel erreicht!| |Zeit: ",
 	["'Zooka Team"] = "Die Knalltüten",
     }
--- a/share/hedgewars/Data/Locale/es.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/es.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -1,29 +1,38 @@
 locale = {
---      ["..."] = "",
+	["..."] = "...",
 	[":("] = ":(",
 	["!!!"] = "!!!",
---      ["Accuracy Bonus!"] = "",
---      ["a Hedgewars mini-game"] = "", -- Space_Invasion, The_Specialists
+	["Accuracy Bonus!"] = "¡Buena puntería!",
+	["Achievement Unlocked"] = "Logro conseguido", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
+	["a Hedgewars mini-game"] = "un minijuego de Hedgewars", -- Space_Invasion, The_Specialists
 	["Aiming Practice"] = "Practica tu puntería", --Bazooka, Shotgun, SniperRifle
---      ["Ammo"] = "",
---      ["Ammo Depleted!"] = "",
---      ["Ammo Maniac!"] = "",
---      ["Available points remaining: "] = "",
-	["Bat balls at your enemies and|push them into the sea!"] = "¡Batea pelotas hacia tus enemigos|y hazlos caer al agua!",
+	["Ammo"] = "Munición",
+	["Ammo Depleted!"] = "¡Munición agotada!",
+	["ammo extended!"] = "¡Munición aumentada!",
+	["Ammo is reset at the end of your turn."] = "",
+	["Ammo Maniac!"] = "¡Loco por la munición!",
+	["Available points remaining: "] = "Puntos restantes:",
+	["[Backspace]"] = "[Retroceso]",
+	["Bamboo Thicket"] = "Maraña de bambú",
+	["Barrel Eater!"] = "¡Tragabarriles!",
+	["Barrel Launcher"] = "Lanzador de barriles",
+	["Bat balls at your enemies and|push them into the sea!"] = "¡Batea pelotas contra tus enemigos|y hazlos caer al agua!",
 	["Bat your opponents through the|baskets and out of the map!"] = "¡Batea a tus enemigos fuera del campo de juego|a través de las canastas laterales!",
 	["Bazooka Training"] = "Entrenamiento con bazuca",
 	["Best laps per team: "] = "Mejores tiempos por equipo: ",
---      ["Best Team Times: "] = "",
+	["Best Team Times: "] = "Mejores tiempos del equipo: ",
 	["Bloody Rookies"] = "Reclutas", -- 01#Boot_Camp, User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree
---      ["Boom!"] = "",
---      ["BOOM!"] = "",
---      ["Boss defeated!"] = "",
---      ["Boss Slayer!"] = "",
+	["Boom!"] = "¡Bum!",
+	["BOOM!"] = "¡BUM!",
+	["Boss defeated!"] = "¡Jefe derrotado!",
+	["Boss Slayer!"] = "¡Matajefes!",
+	["Build a track and race."] = "Dibuja un recorrido y compite.",
 	["CAPTURE THE FLAG"] = "Capturar la bandera",
---      ["Careless"] = "",
---      ["Clumsy"] = "",
+	["Careless"] = "Descuidado",
+	["Change Weapon"] = "Cambiar arma",
+	["Clumsy"] = "Patoso",
 	["Codename: Teamwork"] = "Nombre en clave: Trabajo en equipo",
---      ["Complete the track as fast as you can!"] = "",
+	["Complete the track as fast as you can!"] = "¡Completa el recorrido lo más rápido que puedas!",
 	["Congratulations!"] = "¡Felicidades!",
 	["Congratulations! You've eliminated all targets|within the allowed time frame."] = "¡Felicidades! Has destruido todos los objectivos|dentro del tiempo establecido.", --Bazooka, Shotgun, SniperRifle
 	["Control pillars to score points."] = "Controla los pilares para anotar puntos.",
@@ -31,146 +40,180 @@
 	["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "¡MALDITA SEA, RECLUTA! ¡FUERA DE MI CABEZA!",
 	["DAMMIT, ROOKIE!"] = "¡MALDITA SEA, RECLUTA!",
 	["Dangerous Ducklings"] = "Patitos peligrosos",
---      ["Deadweight"] = "",
---      ["Depleted Kamikaze!"] = "",
---      ["Destroy invaders to score points."] = "",
---      ["Drone Hunter!"] = "",
---      ["Drowner"] = "",
---      ["Each turn you get 1-3 random weapons"] = "",
---      ["Each turn you get one random weapon"] = "",
+	["Deadweight"] = "Peso muerto",
+	["Demolition is fun!"] = "¡Destruir es divertido!",
+	["Depleted Kamikaze!"] = "¡No quedan más kamikazes!",
+	["Destroy invaders to score points."] = "Acaba con los invasores para conseguir puntos.",
+	["Double Kill!"] = "¡Dos por uno!",
+	["Drone Hunter!"] = "Matadrones",
+	["Drowner"] = "Ahogado",
+	["Each turn you get 1-3 random weapons"] = "Cada turno tendrás de 1 a 3 armas elegidas aleatoriamente",
+	["Each turn you get one random weapon"] = "Cada turno tendrás un arma elegida aleatoriamente",
 	["Eliminate all enemies"] = "Elimina a todos los enemigos",
 	["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "Destruye todos los objetivos antes de que se agote el tiempo.|La munición en esta misión es ilimitada.", --Bazooka, Shotgun, SniperRifle
 	["Eliminate Poison before the time runs out"] = "Acaba con los Tóxicos antes de que se agote el tiempo",
 	["Eliminate the Blue Team"] = "Elimina al Equipo azul",
---      ["Eliminate the enemy specialists."] = "",
-	["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "- Elimina a la Unidad 3378 |- Resustencia Fútil debe sobrevivir",
+	["Eliminate the enemy before the time runs out"] = "Acaba con el enemigo antes de que se agote el tiempo", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+	["Eliminate the enemy hogs to win."] = "Acaba con los erizos enemigos para ganar",
+	["Eliminate the enemy specialists."] = "Acaba con los Especialistas",
+	["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "- Elimina a la Unidad 3378 |- Resistencia Fútil debe sobrevivir",
+	["Energetic Engineer"] = "Ingeniero Eléctrico",
 	["Enjoy the swim..."] = "Disfruta del baño...",
---      ["[Enter]"] = "",
+	["[Enter]"] = "[Intro]",
 	["Fastest lap: "] = "Vuelta rápida: ",
 	["Feeble Resistance"] = "Resistencia Fútil",
---      ["Fire"] = "",
+	["Fire"] = "Fuego",
 	["Flag captured!"] = "¡Bandera capturada!",
 	["Flag respawned!"] = "¡Bandera restablecida!",
 	["Flag returned!"] = "¡Bandera recuperada!",
---      ["Flags, and their home base will be placed where each team ends their first turn."] = "",
---      ["GAME BEGUN!!!"] = "",
---      ["Game Modifiers: "] = "",
+	["Flags, and their home base will be placed where each team ends their first turn."] = "Las banderas y las bases se colocarán donde los equipos acaben su primer turno.",
+	["Flamer"] = "Incinerador",
+	["Friendly Fire!"] = "¡Fuego amigo!",
+	["fuel extended!"] = "¡Más combustible!",
+	["GAME BEGUN!!!"] = "¡EL JUEGO HA EMPEZADO!",
+	["Game Modifiers: "] = "Modificadores: ",
 	["GAME OVER!"] = "¡FIN DEL JUEGO!",
 	["Game Started!"] = "¡El juego ha empezado!",
 	["Get on over there and take him out!"] = "¡Ves allí y elimínalo!",
---      ["Goal"] = "",
+	["Goal"] = "Objetivo",
 	["GO! GO! GO!"] = "¡VAMOS! ¡VAMOS! ¡VAMOS!",
 	["Good birdy......"] = "Buen pajarito......",
 	["Good luck out there!"] = "¡Buena suerte!",
---      ["GOTCHA!"] = "",
---      ["Hahahaha!"] = "",
---      ["Haha, now THAT would be something!"] = "",
---      ["Hapless Hogs"] = "",
---      [" Hapless Hogs left!"] = "",
---      ["Heavy"] = "",
+	["Good so far!"] = "¡Vamos bien!",
+	["Good to go!"] = "¡Sigue!",
+	["GOTCHA!"] = "¡TE PILLÉ!",
+	["Grab Mines/Explosives"] = "Coge minas/explosivos",
+	["Hahahaha!"] = "¡Jajajaja!",
+	["Haha, now THAT would be something!"] = "¡Jajaja, eso SÍ que sería espectacular!",
+	["Hapless Hogs"] = "Pobres desgraciados",
+	[" Hapless Hogs left!"] = " pobres desgraciados restantes!",
+	["Health crates extend your time."] = "Los botiquines aumentan el tiempo disponible.",
+	["Heavy"] = "Pesado",
 	["Hedgewars-Basketball"] = "Hedgewars-Baloncesto",
 	["Hedgewars-Knockball"] = "Hedgewars-Knockball",
---      ["Heh, it's not that bad."] = "",
---      ["Hit Combo!"] = "",
+	["Heh, it's not that bad."] = "Jeje, no es para tanto.",
+	["Hit Combo!"] = "¡Combo!",
 	["Hmmm..."] = "Mmm...",
 	["Hooray!"] = "¡Hurra!",
 	["Hunter"] = "Artillero", --Bazooka, Shotgun, SniperRifle
 	["Instructor"] = "Instructor", -- 01#Boot_Camp, User_Mission_-_Dangerous_Ducklings
---      ["invaders destroyed"] = "",
---      ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "",
---      ["Jumping is disabled"] = "",
---      ["Kamikaze Expert!"] = "",
---      ["KILLS"] = "",
---      ["[Left Shift]"] = "",
+	["invaders destroyed"] = "invasores destruídos",
+	["It's a good thing SUDDEN DEATH is 99 turns away..."] = "Menos mal que aún quedan 99 turnos hasta la MUERTE SÚBITA...",
+	["Jumping is disabled"] = "No se puede saltar",
+	["Kamikaze Expert!"] = "¡Kamikaze experto!",
+	["Keep it up!"] = "¡Sigue así!",
+	["Killing spree!"] = "¡Frenesí asesino!",
+	["KILLS"] = "MUERTES",
+	["Last Target!"] = "¡Último objetivo!",
+	["[Left Shift]"] = "[Shift izquierdo]",
 	["Listen up, maggot!!"] = "¡Atento, escoria!",
---      ["|- Mines Time:"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
-	["MISSION FAILED"] = "MISIÓN FALLIDA", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
---      ["MISSION SUCCESS"] = "",
+	["Lively Lifeguard"] = "Salvavidas dicharachero",
+	["Mine Deployer"] = "Plantador de minas",
+	["Mine Eater!"] = "¡Tragaminas!",
+	["|- Mines Time:"] = "|- Retraso de las minas:", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
+	["MISSION FAILED"] = "MISIÓN FRACASADA", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
+	["MISSION SUCCESS"] = "MISIÓN COMPLETADA",
 	["MISSION SUCCESSFUL"] = "MISIÓN COMPLETADA", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
---      ["Movement: [Up], [Down], [Left], [Right]"] = "",
---      ["Multi-shot!"] = "",
---      ["Nameless Heroes"] = "",
---      ["NEW CLAN RECORD: "] = "",
+	["Movement: [Up], [Down], [Left], [Right]"] = "Movimiento: [Arriba], [Abajo], [Izquierda], [Derecha]",
+	["Multi-shot!"] = "¡Disparo múltiple!",
+	["Nameless Heroes"] = "Héroes anónimos",
+	["New Barrels Per Turn"] = "Barriles por turno",
+	["NEW CLAN RECORD: "] = "NUEVO RÉCORD PARA EL CLAN",
 	["NEW fastest lap: "] = "NUEVA vuelta rápida: ",
---      ["NEW RACE RECORD: "] = "",
---      ["NOT ENOUGH WAYPOINTS"] = "",
+	["New Mines Per Turn"] = "Minas por turno",
+	["NEW RACE RECORD: "] = "NUEVO RÉCORD PARA EL RECORRIDO: ",
+	["Newton's Hammock"] = "La hamaca de Newton",
+	["NOT ENOUGH WAYPOINTS"] = "NO HAY SUFICIENTES BALIZAS",
 	["Not So Friendly Match"] = "Partido no-tan-amistoso", -- Basketball, Knockball
 	["Oh no! Just try again!"] = "¡Oh, no! ¿Por qué no lo intentas de nuevo?", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 	["Oh no! Time's up! Just try again."] = "¡Oh, no, se te acabó el tiempo! ¿Por qué no lo intentas de nuevo?", --Bazooka, Shotgun, SniperRifle
 	["Operation Diver"] = "Buzo",
 	["Opposing Team: "] = "Equipo enemigo: ",
 	["Pathetic Hog #%d"] = "Erizo patético #%d",
---      ["Per-Hog Ammo"] = "",
---      ["Place more waypoints using [ENTER]"] = "",
---      ["points"] = "", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
+	["Pathetic Resistance"] = "Patética resistencia", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+	["Per-Hog Ammo"] = "Armamento individualizado",
+	["Place more waypoints using [ENTER]"] = "Coloca más balizas presionando [INTRO]",
+	["Place more waypoints using the 'Air Attack' weapon."] = "Coloca más balizas usando el 'Bombardeo aéreo'",
+	["points"] = "puntos", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
 	["Poison"] = "Veneno",
---      ["Power Remaining"] = "",
---      ["Press [Precise] to skip intro"] = "",
---      ["Race complexity limit reached."] = "",
+	["Power Remaining"] = "Energía restante",
+	["Prepare yourself"] = "Prepárate",
+	["Press [Precise] to skip intro"] = "Aprieta [Incrementar precisión] para saltar la intro",
+	["Race complexity limit reached."] = "Máximo de complejidad para el recorrido alcanzado.",
+	["RACER"] = "CORREDOR",
 	[" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = "- Vuelve a tu base con la bandera enemiga para anotar un punto | - El equipo que anote 3 puntos gana | - Sólo se puede anotar si tu propia bandera está en tu base | - Los erizos resucitan cuando mueren",
---      ["Round Limit"] = "",
---      ["Rounds Complete"] = "",
---      ["RULES OF THE GAME [Press ESC to view]"] = "",
+	["Round Limit:"] = "Límite de rondas:",
+	["Round Limit"] = "Límite de rondas",
+	["Rounds Complete: "] = "Rondas completadas: ",
+	["Rounds Complete"] = "Rondas completadas",
 	["RULES OF THE GAME [Press ESC to view]"] = "REGLAS DEL JUEGO (Presiona ESC para leerlas)",
---      ["s|"] = "",
---      ["Save as many hapless hogs as possible!"] = "",
---      ["SCORE"] = "",
---      ["sec"] = "", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
+	["s|"] = "s|",
+	["Save as many hapless hogs as possible!"] = "¡Salva a tantos pobres desgraciados como puedas!",
+	["SCORE"] = "PUNTUACIÓN",
+	["sec"] = "segundo", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
 	["See ya!"] = "¡Hasta otra!",
---      ["s"] = "", -- GaudyRacer, Space_Invasion
---      ["Shield boosted! +30 power"] = "",
---      ["Shield Depleted"] = "",
---      ["Shield is fully recharged!"] = "",
---      ["Shield Master!"] = "",
---      ["Shield Miser!"] = "",
---      ["Shield OFF:"] = "",
---      ["Shield ON:"] = "",
---      ["Shield Seeker!"] = "",
+	["selected!"] = "¡Seleccionado!",
+	["s"] = "s", -- GaudyRacer, Space_Invasion
+	["Shield boosted! +30 power"] = "¡Escudo mejorado! +30 puntos",
+	["Shield Depleted"] = "Escudo descargado",
+	["Shield is fully recharged!"] = "¡Escudo completamente cargado!",
+	["Shield Master!"] = "¡Experto del escudo!",
+	["Shield Miser!"] = "¡Novato con los escudos!",
+	["Shield OFF:"] = "Escudo desactivado:",
+	["Shield ON:"] = "Escudo activado:",
+	["Shield Seeker!"] = "¡A cubierto!",
 	["Shotgun Team"] = "Escopeteros",
 	["Shotgun Training"] = "Entrenamiento con escopeta",
---      ["Shots Left: "] = "", -- GaudyRacer, Tumbler
---      ["Silly"] = "",
---      ["Sinky"] = "",
+	["shots remaining."] = "disparos restantes.",
+	["Silly"] = "Idiota",
+	["Sinky"] = "Sumergible",
 	["%s is out and Team %d|scored a penalty!| |Score:"] = "¡%s cayó y Equipo %d|anotó una falta!| |Puntuación:", -- Basketball, Knockball
 	["%s is out and Team %d|scored a point!| |Score:"] = "¡%s cayó y Equipo %d|anotó un tanto!| |Puntuación:", -- Basketball, Knockball
 	["Sniper Training"] = "Entrenamiento con rifle francotirador",
 	["Sniperz"] = "Francotiradores",
---      ["Sponge"] = "",
+	["Sponge"] = "Esponja",
 	["Spooky Tree"] = "Árbol tenebroso",
---      ["STATUS UPDATE"] = "", -- GaudyRacer, Space_Invasion
---      ["Switched to "] = "",
+	["STATUS UPDATE"] = "ACTUALIZACIÓN DE ESTADO", -- GaudyRacer, Space_Invasion
+	["Switched to "] = "Cambiar a ",
 	["Team %d: "] = "Equipo %d",
---      ["Team Scores"] = "", -- Control, Space_Invasion
---      ["That Sinking Feeling"] = "",
---      ["That was pointless."] = "",
+	["Team Scores"] = "Puntuaciones", -- Control, Space_Invasion
+	["That Sinking Feeling"] = "Esa sensación de pesadez",
+	["That was pointless."] = "Eso era innecesario.",
 	["The enemy is hiding out on yonder ducky!"] = "¡El enemigo está escondido detrás del patito del fondo!",
---      ["The flag will respawn next round."] = "",
---      ["The Nameless One"] = "",
---      ["THE SPECIALISTS"] = "",
---      ["This rain is really something..."] = "",
---      ["TIME: "] = "",
---      ["Timed Kamikaze!"] = "",
---      ["Time Extended!"] = "",
---      ["Time Left: "] = "",
---      ["Toggle Shield"] = "",
+	["The flag will respawn next round."] = "La bandera reaparecerá en el próximo turno.",
+	["The Nameless One"] = "Anónimo",
+	["THE SPECIALISTS"] = "LOS ESPECIALISTAS",
+	["This one's tricky."] = "Esto va a ser complicado.",
+	["This rain is really something..."] = "Vaya que si llueve...",
+	["TIME: "] = "TIEMPO: ",
+	["Timed Kamikaze!"] = "¡Kamikaze de precisión!",
+	["Time Extended!"] = "¡Tiempo aumentado!",
+	["Time Extension"] = "¡Bonus de tiempo!",
+	["Toggle Shield"] = "Activad/desactivar escudo",
 	["Toxic Team"] = "Tóxicos", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
---      ["TRACK COMPLETED"] = "",
---      ["Track Time: "] = "",
+	["TRACK COMPLETED"] = "¡PISTA COMPLETADA!",
+	["TRACK FAILED!"] = "¡PISTA FRACASADA!",
 	["TrophyRace"] = "TrophyRace",
 	["T_T"] = "T_T",
---      ["Turn Time"] = "",
+	["Tumbling Time Extended!"] = "¡Tiempo de volteretas aumentado!",
+	["Turn Time"] = "Duración del turno",
+	["Unit"] = "Unidad",
 	["Unit 3378"] = "Unidad 3378",
---      ["Unlimited Attacks"] = "",
---      ["User Challenge"] = "",
+	["Unit 835"] = "Unidad 835",
+	["Unlimited Attacks"] = "Ataques ilimitados",
+	["Unstoppable!"] = "¡Imparable!",
+	["User Challenge"] = "Reto personal",
 	["Use your rope to get from start to finish as fast as you can!"] = "¡Usa tu cuerda para llegar a la salida lo más rápido que puedas!",
---      ["v.06"] = "",
-	["Victory for the "] = "La victoria es para", -- CTF_Blizzard, Capture_the_Flag
---      ["Waypoint placed."] = "",
---      ["Weapons Reset"] = "",
---      ["WINNING TIME: "] = "",
---      ["You'd almost swear the water was rising!"] = "",
+	["Victory for the "] = "La victoria es para ", -- CTF_Blizzard, Capture_the_Flag
+	["Waypoint placed."] = "Baliza colocada.",
+	["Way-Points Remaining"] = "Balizas restantes",
+	["Weapons Reset"] = "Armamento reiniciado",
+	["Well done."] = "Bien hecho.",
+	["Will this ever end?"] = "¿Es que nunca se va a terminar?",
+	["WINNING TIME: "] = "MEJOR TIEMPO: ",
+	["You'd almost swear the water was rising!"] = "¡Pero si podría jurar que está subiendo el nivel del mar!",
 	["You have SCORED!!"] = "¡Has anotado!",
---      ["You saved"] = "",
+	["You saved"] = "¡Has salvado",
 	["You've failed. Try again."] = "Has fracasado. Inténtalo de nuevo.",
 	["You've reached the goal!| |Time: "] = "¡Has llegado a la meta!| |Tiempo: ",
 	["'Zooka Team"] = "Bazuqueros",
--- a/share/hedgewars/Data/Locale/es.txt	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/es.txt	Fri Sep 16 18:17:16 2011 +0200
@@ -52,23 +52,33 @@
 00:48=Mazo
 00:49=Resurrección
 00:50=Bombardeo perforador aéreo
-00:51=Bola de tierra
+00:51=Bola de barro
+00:52=No hay arma seleccionada
+00:53=Cabina del tiempo
+00:54=Estructura
+00:55=Pistola de barro
 
 01:00=¡Luchad!
 01:01=Empate
 01:02=¡%1 venció!
 01:03=Volumen %1%
 01:04=Pausa
-01:05=¿Realmente deseas salir (Y / Esc)?
+01:05=¿Seguro que quieres salir (Y / Esc)?
 01:06=¡Muerte súbita!
 01:07=%1 restante
 01:08=Combustible
 01:09=Sincronizando...
-01:10=Activar esta herramienta no hará que tu turno acabe.
+01:10=Usar esta herramienta no hará que acabe tu turno.
 01:11=Esta herramienta o arma todavía no está disponible.
 01:12=¡Última ronda antes de la muerte súbita!
 01:13=¡%1 rondas hasta la muerte súbita!
 01:14=¡Prepárate, %1!
+01:15=mínimo
+01:16=bajo
+01:17=normal
+01:18=alto
+01:19=extremo
+01:20=Nivel de elasticidad: %1
 
 ; Eventos
 ; El erizo (%1) ha muerto
@@ -433,6 +443,11 @@
 03:48=Pablo clavó un clavito
 03:49=Hace exactamente lo que dice
 03:50=Para los amantes de los topos
+03:51=Me la encontré por el suelo
+03:52=SIN USAR
+03:53=Tipo 40
+03:54=Construye algo
+03:55=Herramienta
 
 ; Descripciones de armamento ( líneas delimitadas con | )
 04:00=Ataca a tus enemigos usando una sencilla granada.|Explotará una vez el temporizador llegue a cero.|1-5: ajustar temporizador.|Atacar: mantener presionado para lanzar más lejos.
@@ -485,6 +500,12 @@
 04:47=¡Dos bombas lapa, doble diversión!|Útiles para planear reacciones en cadena, atrincherarte...|¡o las dos cosas!.|Atacar: mantener presionado para lanzar más lejos (dos disparos).
 04:48=¿Por qué la gente siempre la toma con los topos?|¡Golpear erizos es aún más divertido!|Un buen mazazo puede reducir en un tercio la|vida de cualquier erizo y enterrarlo completamente.|Atacar: activar.
 04:49=¡Resucita a tus aliados!|Pero ten cuidado, también resucitarás a tus enemigos.|Atacar: mantener presionado para resucitar lentamente.|Arriba: acelerar resurrección.
+04:50=¿Alguien está oculto bajo tierra?|¡Desentiérralos con un bombardeo perforador!|El temporizador controla la profundidad a alcanzar.
+04:51=¿Qué hay más barato que el barro?|Un tiro gratis gracias a la bola de barro.|Hará que el enemigo salga volando|y escuece un poco si te entra en los ojos.
+04:52=SIN USAR
+04:53=Vive una trepidante aventura a través del|espacio y el tiempo mientras tus compañeros|siguen luchando en tu lugar.|Estate preparado para volver en cualquier momento,|o al llegar la Muerte súbita si te has quedado solo.|Aviso: no funciona durante la Muerte súbita,|si estás solo o si eres el rey.
+04:54=INCOMPLETO                                                                                                                                     
+04:55=Esparce un chorro de pegajoso barro.|Construye puentes, entierra enemigos o cierra túneles.|¡Ten especial cuidado de no mancharte!
 
 ; Game goal strings
 05:00=Modos de juego
@@ -508,3 +529,4 @@
 05:18=Sin límite de ataques por turno
 05:19=El arsenal se restaura al final de cada turno
 05:20=Los erizos no comparten arsenal
+05:21=Tag Team: los equipos del mismo clan se van turnando entre ellos.|Turno compartido: los equipos del mismo clan comparten la duración del turno.
--- a/share/hedgewars/Data/Locale/fr.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/fr.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -3,12 +3,19 @@
 --      ["!!!"] = "",
 --      ["..."] = "",
 --      ["Accuracy Bonus!"] = "",
+--      ["Achievement Unlocked"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
 --      ["a Hedgewars mini-game"] = "", -- Space_Invasion, The_Specialists
       ["Aiming Practice"] = "Entrainement de tir", --Bazooka, Shotgun, SniperRifle
 --      ["Ammo"] = "",
 --      ["Ammo Depleted!"] = "",
+--      ["ammo extended!"] = "",
+--      ["Ammo is reset at the end of your turn."] = "",
 --      ["Ammo Maniac!"] = "",
 --      ["Available points remaining: "] = "",
+--      ["[Backspace]"] = "",
+--      ["Bamboo Thicket"] = "",
+--      ["Barrel Eater!"] = "",
+--      ["Barrel Launcher"] = "",
       ["Bat balls at your enemies and|push them into the sea!"] = "Frappez vos ennemis à la batte|et envoyez-les à la mer !",
       ["Bat your opponents through the|baskets and out of the map!"] = "Frappez vos ennemis à la batte|, marquez des paniers ou envoyez-les à la mer !",
       ["Bazooka Training"] = "Entrainement au Bazooka",
@@ -19,8 +26,10 @@
 --      ["BOOM!"] = "",
 --      ["Boss defeated!"] = "",
 --      ["Boss Slayer!"] = "",
+--      ["Build a track and race."] = "",
       ["CAPTURE THE FLAG"] = "Capturez le drapeau !",
 --      ["Careless"] = "",
+--      ["Change Weapon"] = "",
 --      ["Clumsy"] = "",
       ["Codename: Teamwork"] = "Nom de code : Travail d'équipe",
 --      ["Complete the track as fast as you can!"] = "",
@@ -32,8 +41,10 @@
       ["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "Et merde, recrue ! Dégage de me tête !",
       ["Dangerous Ducklings"] = "Canetons dangereux",
 --      ["Deadweight"] = "",
+--      ["Demolition is fun!"] = "",
 --      ["Depleted Kamikaze!"] = "",
 --      ["Destroy invaders to score points."] = "",
+--      ["Double Kill!"] = "",
 --      ["Drone Hunter!"] = "",
 --      ["Drowner"] = "",
 --      ["Each turn you get 1-3 random weapons"] = "",
@@ -42,8 +53,11 @@
       ["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "Éliminez toutes les cibles avant d'être à cours de temps.|Vos munitions sont illimitées pour cette mission.", --Bazooka, Shotgun, SniperRifle
       ["Eliminate Poison before the time runs out"] = "Éliminez tout le Poison avant d'être à cours de temps.",
       ["Eliminate the Blue Team"] = "Éliminez l'équipe bleue",
+--      ["Eliminate the enemy before the time runs out"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Eliminate the enemy hogs to win."] = "",
 --      ["Eliminate the enemy specialists."] = "",
       ["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "Éliminez l'unité 3378|- Résistance Futile doit survivre",
+--      ["Energetic Engineer"] = "",
       ["Enjoy the swim..."] = "Profitez du bain ...",
 --      ["[Enter]"] = "",
       ["Fastest lap: "] = "Meilleur tour : ",
@@ -53,6 +67,9 @@
       ["Flag respawned!"] = "Drapeau réapparu",
       ["Flag returned!"] = "Drapeau récupéré",
 --      ["Flags, and their home base will be placed where each team ends their first turn."] = "",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+--      ["fuel extended!"] = "",
 --      ["GAME BEGUN!!!"] = "",
 --      ["Game Modifiers: "] = "",
       ["GAME OVER!"] = "Fin du jeu ! ",
@@ -62,11 +79,15 @@
 --      ["GO! GO! GO!"] = "",
       ["Good birdy......"] = "Gentil oiseau ...",
       ["Good luck out there!"] = "Bonne chance pour sortir d'ici",
+--      ["Good so far!"] = "",
+--      ["Good to go!"] = "",
 --      ["GOTCHA!"] = "",
+--      ["Grab Mines/Explosives"] = "",
 --      ["Hahahaha!"] = "",
 --      ["Haha, now THAT would be something!"] = "",
 --      ["Hapless Hogs"] = "",
 --      [" Hapless Hogs left!"] = "",
+--      ["Health crates extend your time."] = "",
 --      ["Heavy"] = "",
 --      ["Hedgewars-Basketball"] = "",
 --      ["Hedgewars-Knockball"] = "",
@@ -80,9 +101,15 @@
 --      ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "",
 --      ["Jumping is disabled"] = "",
 --      ["Kamikaze Expert!"] = "",
+--      ["Keep it up!"] = "",
+--      ["Killing spree!"] = "",
 --      ["KILLS"] = "",
+--      ["Last Target!"] = "",
 --      ["[Left Shift]"] = "",
       ["Listen up, maggot!!"] = "Écoutez, asticots",
+--      ["Lively Lifeguard"] = "",
+--      ["Mine Deployer"] = "",
+--      ["Mine Eater!"] = "",
 --      ["|- Mines Time:"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
       ["MISSION FAILED"] = "Mission échouée", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["MISSION SUCCESS"] = "",
@@ -90,9 +117,12 @@
 --      ["Movement: [Up], [Down], [Left], [Right]"] = "",
 --      ["Multi-shot!"] = "",
 --      ["Nameless Heroes"] = "",
+--      ["New Barrels Per Turn"] = "",
 --      ["NEW CLAN RECORD: "] = "",
       ["NEW fastest lap: "] = "Nouveau meilleur temps",
+--      ["New Mines Per Turn"] = "",
 --      ["NEW RACE RECORD: "] = "",
+--      ["Newton's Hammock"] = "",
 --      ["NOT ENOUGH WAYPOINTS"] = "",
       ["Not So Friendly Match"] = "Match pas si amical", -- Basketball, Knockball
       ["Oh no! Just try again!"] = "Eh non ! Essayez encore ! ", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
@@ -100,15 +130,21 @@
 --      ["Operation Diver"] = "",
       ["Opposing Team: "] = "Équipe opposée",
       ["Pathetic Hog #%d"] = "Hérisson pathétique #%d",
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
 --      ["Per-Hog Ammo"] = "",
 --      ["Place more waypoints using [ENTER]"] = "",
+--      ["Place more waypoints using the 'Air Attack' weapon."] = "",
       ["points"] = "points", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
       ["Poison"] = "Poison",
 --      ["Power Remaining"] = "",
+--      ["Prepare yourself"] = "",
 --      ["Press [Precise] to skip intro"] = "",
 --      ["Race complexity limit reached."] = "",
+--      ["RACER"] = "",
       [" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = "Ramenez le drapeau ennemi à votre base pour marquer | -La première équipe à 3 captures gagne | - Vous marquez uniquement si votre drapeau est dans votre base | - Les hérissons vont lâcher le drapeau s'ils sont tués ou noyés | - Les drapeaux lâchés peuvent être ramenés ou recapturés | - Les hérissons réapparaissent quand ils sont tués",
+--      ["Round Limit:"] = "",
 --      ["Round Limit"] = "",
+--      ["Rounds Complete: "] = "",
 --      ["Rounds Complete"] = "",
       ["RULES OF THE GAME [Press ESC to view]"] = "RÈGLES DU JEU | [Appuyez Échap pour voir]",
 --      ["s|"] = "",
@@ -116,6 +152,7 @@
 --      ["SCORE"] = "",
 --      ["sec"] = "", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
       ["See ya!"] = "Bye bye",
+--      ["selected!"] = "",
 --      ["s"] = "", -- GaudyRacer, Space_Invasion
 --      ["Shield boosted! +30 power"] = "",
 --      ["Shield Depleted"] = "",
@@ -127,7 +164,7 @@
 --      ["Shield Seeker!"] = "",
       ["Shotgun Team"] = "Équipe de choc",
       ["Shotgun Training"] = "Entrainement au fusil",
---      ["Shots Left: "] = "", -- GaudyRacer, Tumbler
+--      ["shots remaining."] = "",
 --      ["Silly"] = "",
 --      ["Sinky"] = "",
       ["%s is out and Team %d|scored a penalty!| |Score:"] = "%s est dehors et l'équipe %d| reçoit une pénalité ! | |Score : ", -- Basketball, Knockball
@@ -146,26 +183,33 @@
       ["The flag will respawn next round."] = "Le drapeau va réapparaitre au prochain tour",
 --      ["The Nameless One"] = "",
 --      ["THE SPECIALISTS"] = "",
+--      ["This one's tricky."] = "",
 --      ["This rain is really something..."] = "",
 --      ["TIME: "] = "",
 --      ["Timed Kamikaze!"] = "",
 --      ["Time Extended!"] = "",
---      ["Time Left: "] = "",
+--      ["Time Extension"] = "",
 --      ["Toggle Shield"] = "",
       ["Toxic Team"] = "Équipe toxique", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["TRACK COMPLETED"] = "",
---      ["Track Time: "] = "",
+--      ["TRACK FAILED!"] = "",
 --      ["TrophyRace"] = "",
 --      ["T_T"] = "",
+--      ["Tumbling Time Extended!"] = "",
 --      ["Turn Time"] = "",
+--      ["Unit"] = "",
       ["Unit 3378"] = "Unité 3378",
+--      ["Unit 835"] = "",
 --      ["Unlimited Attacks"] = "",
+--      ["Unstoppable!"] = "",
 --      ["User Challenge"] = "",
       ["Use your rope to get from start to finish as fast as you can!"] = "Utilisez votre Corde Ninja pour aller du début à la fin aussi vite que vous pouvez !",
---      ["v.06"] = "",
       ["Victory for the "] = "Victoire pour ", -- CTF_Blizzard, Capture_the_Flag
 --      ["Waypoint placed."] = "",
+--      ["Way-Points Remaining"] = "",
 --      ["Weapons Reset"] = "",
+--      ["Well done."] = "",
+--      ["Will this ever end?"] = "",
 --      ["WINNING TIME: "] = "",
 --      ["You'd almost swear the water was rising!"] = "",
       ["You have SCORED!!"] = "Vous avez marqué !",
--- a/share/hedgewars/Data/Locale/hedgewars_ar.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_ar.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -124,6 +124,14 @@
         <comment>File Types</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -377,11 +385,15 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
+        <source>Save drawn map</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Save drawn map</source>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -726,6 +738,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -1005,7 +1021,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>اضف اطار لا يمكن تدميره</translation>
+        <translation type="obsolete">اضف اطار لا يمكن تدميره</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1111,6 +1127,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>اضف اطار لا يمكن تدميره</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1635,6 +1659,10 @@
         <source>unnamed</source>
         <translation>غير مسمى</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1991,6 +2019,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_bg.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_bg.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -123,6 +123,14 @@
         <comment>File Types</comment>
         <translation>Файл със запазена игра на Hedgewars</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -362,12 +370,20 @@
     </message>
     <message>
         <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation>Начертани карти (*.hwmap);;Всички файлове (*.*)</translation>
+        <translation type="obsolete">Начертани карти (*.hwmap);;Всички файлове (*.*)</translation>
     </message>
     <message>
         <source>Save drawn map</source>
         <translation>Запазване на начертана карта</translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -700,6 +716,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -964,10 +984,6 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Add an indestructable border around the terrain</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <source>Lower gravity</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1067,6 +1083,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1591,6 +1615,10 @@
         <source>unnamed</source>
         <translation>Безименен</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1943,6 +1971,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_cs.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_cs.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -124,6 +124,14 @@
         <comment>File Types</comment>
         <translation>Hedgewars Save Soubor</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -363,12 +371,20 @@
     </message>
     <message>
         <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation>Nakreslené mapy (*.hwmap);;Všechny soubory (*.*)</translation>
+        <translation type="obsolete">Nakreslené mapy (*.hwmap);;Všechny soubory (*.*)</translation>
     </message>
     <message>
         <source>Save drawn map</source>
         <translation>Uložit nakreslenou mapu</translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -712,6 +728,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -988,7 +1008,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Přidá nezničitelnou hranici okolo terénu</translation>
+        <translation type="obsolete">Přidá nezničitelnou hranici okolo terénu</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1082,6 +1102,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Přidá nezničitelnou hranici okolo terénu</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1606,6 +1634,10 @@
         <source>unnamed</source>
         <translation>nepojmenovaný</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1958,6 +1990,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_de.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_de.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -123,6 +123,14 @@
         <comment>File Types</comment>
         <translation>Hedgewars gespeichertes Spiel</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -359,37 +367,41 @@
     </message>
     <message>
         <source>Cancel</source>
-        <translation type="unfinished">Abbrechen</translation>
+        <translation>Abbrechen</translation>
     </message>
 </context>
 <context>
     <name>PageDrawMap</name>
     <message>
         <source>Undo</source>
-        <translation type="unfinished"></translation>
+        <translation>Rückgängig</translation>
     </message>
     <message>
         <source>Clear</source>
-        <translation type="unfinished"></translation>
+        <translation>Löschen</translation>
     </message>
     <message>
         <source>Load</source>
-        <translation type="unfinished">Laden</translation>
+        <translation>Laden</translation>
     </message>
     <message>
         <source>Save</source>
-        <translation type="unfinished"></translation>
+        <translation>Sichern</translation>
     </message>
     <message>
         <source>Load drawn map</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation type="unfinished"></translation>
+        <translation>Gezeichnete Karte laden</translation>
     </message>
     <message>
         <source>Save drawn map</source>
+        <translation>Gezeichnete Karte sichern</translation>
+    </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -767,6 +779,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -1076,7 +1092,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Einfügen eines unzerstörbaren Kartenrand</translation>
+        <translation type="obsolete">Einfügen eines unzerstörbaren Kartenrand</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1150,6 +1166,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Einfügen eines unzerstörbaren Kartenrand</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1351,7 +1375,7 @@
     </message>
     <message>
         <source>hand drawn map...</source>
-        <translation type="unfinished"></translation>
+        <translation>Handgezeichnete Karte</translation>
     </message>
     <message>
         <source>Disabled</source>
@@ -1680,6 +1704,10 @@
         <source>unnamed</source>
         <translation>unbenannt</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation>Igel %1</translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -2036,6 +2064,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_en.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_en.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -123,6 +123,14 @@
         <comment>File Types</comment>
         <translation>Hedgewars Save File</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -379,11 +387,15 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
+        <source>Save drawn map</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Save drawn map</source>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -732,6 +744,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -1009,7 +1025,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Add an indestructable border around the terrain</translation>
+        <translation type="obsolete">Add an indestructable border around the terrain</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1115,6 +1131,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Add an indestructible border around the terrain</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1639,6 +1663,10 @@
         <source>unnamed</source>
         <translation>unnamed</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1995,6 +2023,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_es.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_es.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -16,15 +16,15 @@
     <name>DrawMapWidget</name>
     <message>
         <source>File error</source>
-        <translation type="unfinished"></translation>
+        <translation>Error de fichero</translation>
     </message>
     <message>
         <source>Cannot open file &apos;%1&apos; for writing</source>
-        <translation type="unfinished"></translation>
+        <translation>No se puede abrir el fichero &apos;%1&apos; en modo lectura</translation>
     </message>
     <message>
         <source>Cannot read file &apos;%1&apos;</source>
-        <translation type="unfinished"></translation>
+        <translation>No se puede leer &apos;%1&apos;</translation>
     </message>
 </context>
 <context>
@@ -127,6 +127,14 @@
         <comment>File Types</comment>
         <translation>Partida guardada de Hedgewars</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation>Nombre de la demo</translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation>Nombre de la demo:</translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -215,7 +223,7 @@
     </message>
     <message>
         <source>Set</source>
-        <translation type="unfinished">Establecer</translation>
+        <translation>Cambiar</translation>
     </message>
 </context>
 <context>
@@ -297,14 +305,17 @@
     </message>
     <message>
         <source>Nickname</source>
-        <translation type="unfinished">Nick</translation>
+        <translation>Nick</translation>
     </message>
     <message>
         <source>Some one already uses
  your nickname %1
 on the server.
 Please pick another nickname:</source>
-        <translation type="unfinished"></translation>
+        <translation>Ya hay alguien conectado
+como %1 en estos momentos
+en el servidor.
+Por favor, introduce otro nick:</translation>
     </message>
 </context>
 <context>
@@ -357,11 +368,11 @@
     <name>PageConnecting</name>
     <message>
         <source>Connecting...</source>
-        <translation>Conectando...</translation>
+        <translation>Estableciendo conexión...</translation>
     </message>
     <message>
         <source>Cancel</source>
-        <translation type="unfinished">Cancelar</translation>
+        <translation>Cancelar</translation>
     </message>
 </context>
 <context>
@@ -388,12 +399,20 @@
     </message>
     <message>
         <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation>Mapas dibujados a mano (*.hwmap);;Todos los ficheros (*.*)</translation>
+        <translation type="obsolete">Mapas dibujados a mano (*.hwmap);;Todos los ficheros (*.*)</translation>
     </message>
     <message>
         <source>Save drawn map</source>
         <translation>Guardar mapa</translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation>Mapas dibujados a mano</translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation>Todos los ficheros</translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -757,17 +776,21 @@
     <message>
         <source>The Windows version of Hedgewars supports Xfire. Make sure to add Hedgewars to its game list so your friends can see you playing.</source>
         <comment>Tips</comment>
-        <translation type="unfinished"></translation>
+        <translation>La versión de Hedgewars para Windows soporta Xfire. Recuerda agregar Hedgewars a tu lista de juegos para que tus amigos puedan saber cuándo estás jugando.</translation>
     </message>
     <message>
         <source>Use the Molotov or Flame Thrower to temporary keep hedgehogs from passing terrain such as tunnels or platforms.</source>
         <comment>Tips</comment>
-        <translation type="unfinished"></translation>
+        <translation>Puedes usar el cóctel molotov o el lanzallamas para evitar que erizos enemigos crucen túneles angostos o puentes.</translation>
     </message>
     <message>
         <source>The Homing Bee can be tricky to use. Its turn radius depends on its velocity, so try to not use full power.</source>
         <comment>Tips</comment>
-        <translation type="unfinished"></translation>
+        <translation>El abejorro puede ser complicado de usar. Su maniobrabilidad depende de su velocidad, así que intenta no lanzarlo a máxima potencia.</translation>
+    </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation>Contenido adicional</translation>
     </message>
 </context>
 <context>
@@ -796,15 +819,15 @@
     </message>
     <message>
         <source>Error</source>
-        <translation type="unfinished">Error</translation>
+        <translation>Error</translation>
     </message>
     <message>
         <source>Please enter room name</source>
-        <translation type="unfinished">Por favor, introduce un nombre para la sala</translation>
+        <translation>Por favor, introduce un nombre para la sala</translation>
     </message>
     <message>
         <source>OK</source>
-        <translation type="unfinished">OK</translation>
+        <translation>OK</translation>
     </message>
 </context>
 <context>
@@ -1024,8 +1047,8 @@
     </message>
     <message numerus="yes">
         <source>%1 players online</source>
-        <translation type="unfinished">
-            <numerusform></numerusform>
+        <translation>
+            <numerusform>%1 jugadores conectados</numerusform>
             <numerusform></numerusform>
         </translation>
     </message>
@@ -1078,7 +1101,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Añade un borde indestructible alrededor del campo de juego</translation>
+        <translation type="obsolete">Añade un borde indestructible alrededor del campo de juego</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1150,7 +1173,15 @@
     </message>
     <message>
         <source>Teams in each clan take successive turns sharing their turn time.</source>
-        <translation type="unfinished"></translation>
+        <translation>Los equipos del mismo clan alternan entre ellos compartiendo la duración de su turno.</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Añade un borde indestructible alrededor del campo de juego</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation>Añade un borde indestructible en la parta inferior</translation>
     </message>
 </context>
 <context>
@@ -1247,7 +1278,7 @@
     </message>
     <message>
         <source>Update</source>
-        <translation type="unfinished">Actualizar</translation>
+        <translation>Actualizar</translation>
     </message>
 </context>
 <context>
@@ -1389,67 +1420,67 @@
     </message>
     <message>
         <source>Disabled</source>
-        <translation type="unfinished"></translation>
+        <translation>Deshabilitado</translation>
     </message>
     <message>
         <source>Red/Cyan</source>
-        <translation type="unfinished"></translation>
+        <translation>Rojo/Cian</translation>
     </message>
     <message>
         <source>Cyan/Red</source>
-        <translation type="unfinished"></translation>
+        <translation>Cian/Rojo</translation>
     </message>
     <message>
         <source>Red/Blue</source>
-        <translation type="unfinished"></translation>
+        <translation>Rojo/Azul</translation>
     </message>
     <message>
         <source>Blue/Red</source>
-        <translation type="unfinished"></translation>
+        <translation>Azul/Rojo</translation>
     </message>
     <message>
         <source>Red/Green</source>
-        <translation type="unfinished"></translation>
+        <translation>Rojo/Verde</translation>
     </message>
     <message>
         <source>Green/Red</source>
-        <translation type="unfinished"></translation>
+        <translation>Verde/Rojo</translation>
     </message>
     <message>
         <source>Side-by-side</source>
-        <translation type="unfinished"></translation>
+        <translation>Izquierda-Derecha</translation>
     </message>
     <message>
         <source>Top-Bottom</source>
-        <translation type="unfinished"></translation>
+        <translation>Arriba-Abajo</translation>
     </message>
     <message>
         <source>Wiggle</source>
-        <translation type="unfinished"></translation>
+        <translation>Temblor</translation>
     </message>
     <message>
         <source>Red/Cyan grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Rojo/Cian en escala de grises</translation>
     </message>
     <message>
         <source>Cyan/Red grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Cian/Rojo en escala de grises</translation>
     </message>
     <message>
         <source>Red/Blue grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Rojo/Azul en escala de grises</translation>
     </message>
     <message>
         <source>Blue/Red grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Azul/Rojo en escala de grises</translation>
     </message>
     <message>
         <source>Red/Green grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Rojo/Verde en escala de grises</translation>
     </message>
     <message>
         <source>Green/Red grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Verde/Rojo en escala de grises</translation>
     </message>
 </context>
 <context>
@@ -1696,27 +1727,27 @@
     </message>
     <message>
         <source>Stereo rendering</source>
-        <translation type="unfinished"></translation>
+        <translation>Estereoscopía</translation>
     </message>
     <message>
         <source>Game Options</source>
-        <translation type="unfinished"></translation>
+        <translation>Opciones de juego</translation>
     </message>
     <message>
         <source>Style</source>
-        <translation type="unfinished"></translation>
+        <translation>Estilo</translation>
     </message>
     <message>
         <source>Scheme</source>
-        <translation type="unfinished"></translation>
+        <translation>Modo de juego</translation>
     </message>
     <message>
         <source>Password</source>
-        <translation type="unfinished">Contraseña</translation>
+        <translation>Contraseña</translation>
     </message>
     <message>
         <source>% Get Away Time</source>
-        <translation type="unfinished"></translation>
+        <translation>% duración de retirada</translation>
     </message>
 </context>
 <context>
@@ -1725,6 +1756,10 @@
         <source>unnamed</source>
         <translation>sin nombre</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation>erizo %1</translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1907,7 +1942,7 @@
     </message>
     <message>
         <source>more</source>
-        <translation type="unfinished"></translation>
+        <translation>más</translation>
     </message>
 </context>
 <context>
@@ -2083,7 +2118,11 @@
     </message>
     <message>
         <source>Tag Team</source>
-        <translation type="unfinished"></translation>
+        <translation>Tag team</translation>
+    </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation>Añadir borde inferior</translation>
     </message>
 </context>
 <context>
@@ -2126,39 +2165,39 @@
     </message>
     <message>
         <source>slot 1</source>
-        <translation>posición 1</translation>
+        <translation>fila 1</translation>
     </message>
     <message>
         <source>slot 2</source>
-        <translation>posición 2</translation>
+        <translation>fila 2</translation>
     </message>
     <message>
         <source>slot 3</source>
-        <translation>posición 3</translation>
+        <translation>fila 3</translation>
     </message>
     <message>
         <source>slot 4</source>
-        <translation>posición 4</translation>
+        <translation>fila 4</translation>
     </message>
     <message>
         <source>slot 5</source>
-        <translation>posición 5</translation>
+        <translation>fila 5</translation>
     </message>
     <message>
         <source>slot 6</source>
-        <translation>posición 6</translation>
+        <translation>fila 6</translation>
     </message>
     <message>
         <source>slot 7</source>
-        <translation>posición 7</translation>
+        <translation>fila 7</translation>
     </message>
     <message>
         <source>slot 8</source>
-        <translation>posición 8</translation>
+        <translation>fila 8</translation>
     </message>
     <message>
         <source>slot 9</source>
-        <translation>posición 9</translation>
+        <translation>fila 9</translation>
     </message>
     <message>
         <source>timer 1 sec</source>
--- a/share/hedgewars/Data/Locale/hedgewars_fi.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_fi.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -123,6 +123,14 @@
         <comment>File Types</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -379,11 +387,15 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
+        <source>Save drawn map</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Save drawn map</source>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -761,6 +773,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -1038,7 +1054,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Lisää tuhoutumattomat reunat kartan ympärille</translation>
+        <translation type="obsolete">Lisää tuhoutumattomat reunat kartan ympärille</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1144,6 +1160,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Lisää tuhoutumattomat reunat kartan ympärille</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1696,6 +1720,10 @@
         <source>unnamed</source>
         <translation>nimetön</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -2052,6 +2080,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_fr.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_fr.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -123,6 +123,14 @@
         <comment>File Types</comment>
         <translation>Fichier de sauvegarde d&apos;Hedgewars</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -380,12 +388,20 @@
     </message>
     <message>
         <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation>Cartes dessinées (*.hwmap);;Tous les fichiers (*.*)</translation>
+        <translation type="obsolete">Cartes dessinées (*.hwmap);;Tous les fichiers (*.*)</translation>
     </message>
     <message>
         <source>Save drawn map</source>
         <translation>Enregistrer une carte dessinée</translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -752,6 +768,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -1048,7 +1068,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Ajouter une bordure indestructible autour du terrain</translation>
+        <translation type="obsolete">Ajouter une bordure indestructible autour du terrain</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1122,6 +1142,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Ajouter une bordure indestructible autour du terrain</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1650,6 +1678,10 @@
         <source>unnamed</source>
         <translation>sans nom</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -2006,6 +2038,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_hu.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_hu.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -122,6 +122,14 @@
         <comment>File Types</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -375,11 +383,15 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
+        <source>Save drawn map</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Save drawn map</source>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -720,6 +732,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -993,7 +1009,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>A pálya köré egy elpusztíthatatlan keret felhúzása</translation>
+        <translation type="obsolete">A pálya köré egy elpusztíthatatlan keret felhúzása</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1099,6 +1115,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>A pálya köré egy elpusztíthatatlan keret felhúzása</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1629,6 +1653,10 @@
         <source>unnamed</source>
         <translation>névtelen</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1985,6 +2013,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_it.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_it.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -16,15 +16,15 @@
     <name>DrawMapWidget</name>
     <message>
         <source>File error</source>
-        <translation type="unfinished"></translation>
+        <translation>Errore file</translation>
     </message>
     <message>
         <source>Cannot open file &apos;%1&apos; for writing</source>
-        <translation type="unfinished"></translation>
+        <translation>Impossibile aprire il file &apos;%1&apos; in scrittura</translation>
     </message>
     <message>
         <source>Cannot read file &apos;%1&apos;</source>
-        <translation type="unfinished"></translation>
+        <translation>Impossibile leggere il file &apos;%1&apos;</translation>
     </message>
 </context>
 <context>
@@ -123,6 +123,14 @@
         <comment>File Types</comment>
         <translation>Salvataggio di Hedgewars</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation>Nome della demo</translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation>Nome della demo:</translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -293,14 +301,17 @@
     </message>
     <message>
         <source>Nickname</source>
-        <translation type="unfinished">Nickname</translation>
+        <translation>Nickname</translation>
     </message>
     <message>
         <source>Some one already uses
  your nickname %1
 on the server.
 Please pick another nickname:</source>
-        <translation type="unfinished"></translation>
+        <translation>Qualcun altro sta usando
+ il tuo nickname %1
+sul server.
+Per favore scelto un altro nickname:</translation>
     </message>
 </context>
 <context>
@@ -357,7 +368,7 @@
     </message>
     <message>
         <source>Cancel</source>
-        <translation type="unfinished">Annulla</translation>
+        <translation>Annulla</translation>
     </message>
 </context>
 <context>
@@ -384,12 +395,20 @@
     </message>
     <message>
         <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation>Mappe Disegnate (*.hwmap);;Tutti i file (*.*)</translation>
+        <translation type="obsolete">Mappe Disegnate (*.hwmap);;Tutti i file (*.*)</translation>
     </message>
     <message>
         <source>Save drawn map</source>
         <translation>Salva mappa disegnata</translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation>Mappe disegnate</translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation>Tutti i file</translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -604,7 +623,7 @@
     <message>
         <source>Connect one or more gamepads before starting the game to be able to assign their controls to your teams.</source>
         <comment>Tips</comment>
-        <translation type="unfinished"></translation>
+        <translation>Collega uno o più gamepad prima di iniziare il gioco per poterli assegnare alle tue squadra.</translation>
     </message>
     <message>
         <source>Create an account on %1 to keep others from using your most favourite nickname while playing on the official server.</source>
@@ -699,7 +718,7 @@
     <message>
         <source>You can find your Hedgewars configuration files under &quot;My Documents\Hedgewars&quot;. Create backups or take the files with you, but don&apos;t edit them by hand.</source>
         <comment>Tips</comment>
-        <translation type="unfinished"></translation>
+        <translation>Puoi trovare i tuoi file di configurazione Hedgewars in &quot;Documenti\Hedgewars&quot;. Crea delle copie di sicurezza o prendi i file con te, ma non modificarli a mano.</translation>
     </message>
     <message>
         <source>You&apos;re able to associate Hedgewars related files (savegames and demo recordings) with the game to launch them right from your favorite file or internet browser.</source>
@@ -739,7 +758,11 @@
     <message>
         <source>The Homing Bee can be tricky to use. Its turn radius depends on its velocity, so try to not use full power.</source>
         <comment>Tips</comment>
-        <translation type="unfinished"></translation>
+        <translation>L&apos;Ape a Ricerca può essere difficile da usare. Il suo raggio di curvatura dipende dalla sua velocità, quindi cerca di non usarla a piena potenza.</translation>
+    </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation>Contenuto scaricabile</translation>
     </message>
 </context>
 <context>
@@ -768,15 +791,15 @@
     </message>
     <message>
         <source>Error</source>
-        <translation type="unfinished">Errore</translation>
+        <translation>Errore</translation>
     </message>
     <message>
         <source>Please enter room name</source>
-        <translation type="unfinished">Inserisci il nome della stanza</translation>
+        <translation>Inserisci il nome della stanza</translation>
     </message>
     <message>
         <source>OK</source>
-        <translation type="unfinished">OK</translation>
+        <translation>OK</translation>
     </message>
 </context>
 <context>
@@ -996,9 +1019,9 @@
     </message>
     <message numerus="yes">
         <source>%1 players online</source>
-        <translation type="unfinished">
-            <numerusform></numerusform>
-            <numerusform></numerusform>
+        <translation>
+            <numerusform>1 giocatore online</numerusform>
+            <numerusform>%1 giocatori online</numerusform>
         </translation>
     </message>
 </context>
@@ -1050,7 +1073,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Aggiungi un bordo indistruttibile intorno al terreno</translation>
+        <translation type="obsolete">Aggiungi un bordo indistruttibile intorno al terreno</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1122,7 +1145,15 @@
     </message>
     <message>
         <source>Teams in each clan take successive turns sharing their turn time.</source>
-        <translation type="unfinished"></translation>
+        <translation>Le squadre di ogni clan possono avere turni consecutivi condividendo il tempo del loro turno.</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Aggiungi un bordo indistruttibile intorno al terreno</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation>Aggiungi un bordo indistruttibile lungo la parte inferiore</translation>
     </message>
 </context>
 <context>
@@ -1219,7 +1250,7 @@
     </message>
     <message>
         <source>Update</source>
-        <translation type="unfinished">Aggiorna</translation>
+        <translation>Aggiorna</translation>
     </message>
 </context>
 <context>
@@ -1357,39 +1388,39 @@
     </message>
     <message>
         <source>Side-by-side</source>
-        <translation type="unfinished"></translation>
+        <translation>Lato-a-lato</translation>
     </message>
     <message>
         <source>Top-Bottom</source>
-        <translation type="unfinished"></translation>
+        <translation>Dall'alto in basso</translation>
     </message>
     <message>
         <source>Wiggle</source>
-        <translation type="unfinished"></translation>
+        <translation>Movimento continuo</translation>
     </message>
     <message>
         <source>Red/Cyan grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Scala di grigio rosso/azzurro</translation>
     </message>
     <message>
         <source>Cyan/Red grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Scala di grigio azzurro/rosso</translation>
     </message>
     <message>
         <source>Red/Blue grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Scala di grigio rosso/blu</translation>
     </message>
     <message>
         <source>Blue/Red grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Scala di grigio blu/rosso</translation>
     </message>
     <message>
         <source>Red/Green grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Scala di grigio rosso/verde</translation>
     </message>
     <message>
         <source>Green/Red grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Scala di grigio verde/rosso</translation>
     </message>
 </context>
 <context>
@@ -1633,23 +1664,23 @@
     </message>
     <message>
         <source>Game Options</source>
-        <translation type="unfinished"></translation>
+        <translation>Opzioni di gioco</translation>
     </message>
     <message>
         <source>Style</source>
-        <translation type="unfinished"></translation>
+        <translation>Style</translation>
     </message>
     <message>
         <source>Scheme</source>
-        <translation type="unfinished"></translation>
+        <translation>Schema</translation>
     </message>
     <message>
         <source>Password</source>
-        <translation type="unfinished">Password</translation>
+        <translation>Password</translation>
     </message>
     <message>
         <source>% Get Away Time</source>
-        <translation type="unfinished"></translation>
+        <translation>% tempo regalo</translation>
     </message>
 </context>
 <context>
@@ -1658,6 +1689,10 @@
         <source>unnamed</source>
         <translation>senza nome</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation>riccio %1</translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -2012,7 +2047,11 @@
     </message>
     <message>
         <source>Tag Team</source>
-        <translation type="unfinished"></translation>
+        <translation>Squadre etichettate</translation>
+    </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation>Aggiungi bordo inferiore</translation>
     </message>
 </context>
 <context>
--- a/share/hedgewars/Data/Locale/hedgewars_ja.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_ja.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -122,6 +122,14 @@
         <comment>File Types</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -361,11 +369,15 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
+        <source>Save drawn map</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Save drawn map</source>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -694,6 +706,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -952,10 +968,6 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Add an indestructable border around the terrain</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <source>Lower gravity</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1055,6 +1067,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1575,6 +1595,10 @@
         <source>unnamed</source>
         <translation>無名</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1927,6 +1951,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_ko.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_ko.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -118,6 +118,14 @@
         <comment>File Types</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -353,13 +361,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <source>Save drawn map</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -682,6 +694,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -940,10 +956,6 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Add an indestructable border around the terrain</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <source>Lower gravity</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1043,6 +1055,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1555,6 +1575,10 @@
         <source>unnamed</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1897,6 +1921,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_lt.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_lt.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -4,12 +4,12 @@
 <context>
     <name>AmmoSchemeModel</name>
     <message>
-        <location filename="../../../../QTfrontend/ammoSchemeModel.cpp" line="660"/>
+        <location filename="../../../../QTfrontend/ammoSchemeModel.cpp" line="672"/>
         <source>new</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/ammoSchemeModel.cpp" line="666"/>
+        <location filename="../../../../QTfrontend/ammoSchemeModel.cpp" line="678"/>
         <source>copy of</source>
         <translation type="unfinished"></translation>
     </message>
@@ -68,12 +68,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/gamecfgwidget.cpp" line="299"/>
+        <location filename="../../../../QTfrontend/gamecfgwidget.cpp" line="301"/>
         <source>Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/gamecfgwidget.cpp" line="299"/>
+        <location filename="../../../../QTfrontend/gamecfgwidget.cpp" line="301"/>
         <source>Illegal ammo scheme</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81,22 +81,22 @@
 <context>
     <name>HWChatWidget</name>
     <message>
-        <location filename="../../../../QTfrontend/chatwidget.cpp" line="454"/>
+        <location filename="../../../../QTfrontend/chatwidget.cpp" line="453"/>
         <source>%1 *** %2 has been removed from your ignore list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/chatwidget.cpp" line="467"/>
+        <location filename="../../../../QTfrontend/chatwidget.cpp" line="466"/>
         <source>%1 *** %2 has been added to your ignore list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/chatwidget.cpp" line="483"/>
+        <location filename="../../../../QTfrontend/chatwidget.cpp" line="482"/>
         <source>%1 *** %2 has been removed from your friends list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/chatwidget.cpp" line="496"/>
+        <location filename="../../../../QTfrontend/chatwidget.cpp" line="495"/>
         <source>%1 *** %2 has been added to your friends list</source>
         <translation type="unfinished"></translation>
     </message>
@@ -104,59 +104,70 @@
 <context>
     <name>HWForm</name>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="391"/>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="393"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="401"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="403"/>
         <source>DefaultTeam</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="711"/>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="893"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="728"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="910"/>
         <source>Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="712"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="729"/>
         <source>Please select record from the list above</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="713"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="730"/>
         <source>OK</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="894"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="911"/>
         <source>Unable to start the server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="1067"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="1086"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="1323"/>
         <source>Cannot save record to file %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="1256"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="1275"/>
         <source>Hedgewars Demo File</source>
         <comment>File Types</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="1257"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="1276"/>
         <source>Hedgewars Save File</source>
         <comment>File Types</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="1315"/>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="1315"/>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
     <message>
-        <location filename="../../../../QTfrontend/game.cpp" line="311"/>
+        <location filename="../../../../QTfrontend/game.cpp" line="318"/>
         <source>en.txt</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../../QTfrontend/game.cpp" line="329"/>
+        <translation>lt.txt</translation>
+    </message>
+    <message>
+        <location filename="../../../../QTfrontend/game.cpp" line="336"/>
         <source>Cannot open demofile %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -164,87 +175,87 @@
 <context>
     <name>HWMapContainer</name>
     <message>
-        <location filename="../../../../QTfrontend/mapContainer.cpp" line="160"/>
+        <location filename="../../../../QTfrontend/mapContainer.cpp" line="158"/>
         <source>Map</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/mapContainer.cpp" line="163"/>
+        <location filename="../../../../QTfrontend/mapContainer.cpp" line="161"/>
         <source>Filter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../../../../QTfrontend/mapContainer.cpp" line="165"/>
+        <source>All</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../../QTfrontend/mapContainer.cpp" line="166"/>
+        <source>Small</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../../../../QTfrontend/mapContainer.cpp" line="167"/>
-        <source>All</source>
+        <source>Medium</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/mapContainer.cpp" line="168"/>
-        <source>Small</source>
+        <source>Large</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/mapContainer.cpp" line="169"/>
-        <source>Medium</source>
+        <source>Cavern</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/mapContainer.cpp" line="170"/>
-        <source>Large</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../../QTfrontend/mapContainer.cpp" line="171"/>
-        <source>Cavern</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../../QTfrontend/mapContainer.cpp" line="172"/>
         <source>Wacky</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/mapContainer.cpp" line="177"/>
+        <location filename="../../../../QTfrontend/mapContainer.cpp" line="175"/>
         <source>Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../../../../QTfrontend/mapContainer.cpp" line="179"/>
+        <source>Small tunnels</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../../QTfrontend/mapContainer.cpp" line="180"/>
+        <source>Medium tunnels</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../../../../QTfrontend/mapContainer.cpp" line="181"/>
-        <source>Small tunnels</source>
+        <source>Large tunnels</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/mapContainer.cpp" line="182"/>
-        <source>Medium tunnels</source>
+        <source>Small floating islands</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/mapContainer.cpp" line="183"/>
-        <source>Large tunnels</source>
+        <source>Medium floating islands</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/mapContainer.cpp" line="184"/>
-        <source>Small floating islands</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../../QTfrontend/mapContainer.cpp" line="185"/>
-        <source>Medium floating islands</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../../QTfrontend/mapContainer.cpp" line="186"/>
         <source>Large floating islands</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/mapContainer.cpp" line="196"/>
+        <location filename="../../../../QTfrontend/mapContainer.cpp" line="194"/>
         <source>Themes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/mapContainer.cpp" line="238"/>
+        <location filename="../../../../QTfrontend/mapContainer.cpp" line="236"/>
         <source>Seed</source>
         <translation type="unfinished"></translation>
     </message>
@@ -317,12 +328,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/newnetclient.cpp" line="519"/>
+        <location filename="../../../../QTfrontend/newnetclient.cpp" line="508"/>
         <source>Password</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/newnetclient.cpp" line="519"/>
+        <location filename="../../../../QTfrontend/newnetclient.cpp" line="508"/>
         <source>Your nickname %1 is
 registered on Hedgewars.org
 Please provide your password below
@@ -330,17 +341,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/newnetclient.cpp" line="628"/>
+        <location filename="../../../../QTfrontend/newnetclient.cpp" line="623"/>
         <source>Quit reason: </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/newnetclient.cpp" line="834"/>
+        <location filename="../../../../QTfrontend/newnetclient.cpp" line="829"/>
         <source>Nickname</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/newnetclient.cpp" line="834"/>
+        <location filename="../../../../QTfrontend/newnetclient.cpp" line="829"/>
         <source>Some one already uses
  your nickname %1
 on the server.
@@ -437,7 +448,13 @@
     <message>
         <location filename="../../../../QTfrontend/pagedrawmap.cpp" line="48"/>
         <location filename="../../../../QTfrontend/pagedrawmap.cpp" line="56"/>
-        <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../../QTfrontend/pagedrawmap.cpp" line="48"/>
+        <location filename="../../../../QTfrontend/pagedrawmap.cpp" line="56"/>
+        <source>All files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -462,27 +479,27 @@
 <context>
     <name>PageGameStats</name>
     <message>
-        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="57"/>
+        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="62"/>
         <source>Details</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="71"/>
+        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="76"/>
         <source>Health graph</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="88"/>
+        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="93"/>
         <source>Ranking</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="148"/>
+        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="153"/>
         <source>The best shot award was won by &lt;b&gt;%1&lt;/b&gt; with &lt;b&gt;%2&lt;/b&gt; pts.</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="155"/>
+        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="160"/>
         <source>The best killer is &lt;b&gt;%1&lt;/b&gt; with &lt;b&gt;%2&lt;/b&gt; kills in a turn.</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -491,7 +508,7 @@
         </translation>
     </message>
     <message numerus="yes">
-        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="161"/>
+        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="166"/>
         <source>A total of &lt;b&gt;%1&lt;/b&gt; hedgehog(s) were killed during this round.</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -500,7 +517,7 @@
         </translation>
     </message>
     <message numerus="yes">
-        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="222"/>
+        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="227"/>
         <source>(%1 kill)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -509,7 +526,7 @@
         </translation>
     </message>
     <message numerus="yes">
-        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="232"/>
+        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="237"/>
         <source>&lt;b&gt;%1&lt;/b&gt; thought it&apos;s good to shoot his own hedgehogs with &lt;b&gt;%2&lt;/b&gt; pts.</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -518,7 +535,7 @@
         </translation>
     </message>
     <message numerus="yes">
-        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="239"/>
+        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="244"/>
         <source>&lt;b&gt;%1&lt;/b&gt; killed &lt;b&gt;%2&lt;/b&gt; of his own hedgehogs.</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -527,7 +544,7 @@
         </translation>
     </message>
     <message numerus="yes">
-        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="246"/>
+        <location filename="../../../../QTfrontend/pagegamestats.cpp" line="251"/>
         <source>&lt;b&gt;%1&lt;/b&gt; was scared and skipped turn &lt;b&gt;%2&lt;/b&gt; times.</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -539,305 +556,310 @@
 <context>
     <name>PageMain</name>
     <message>
-        <location filename="../../../../QTfrontend/pagemain.cpp" line="46"/>
+        <location filename="../../../../QTfrontend/pagemain.cpp" line="47"/>
         <source>Local Game (Play a game on a single computer)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagemain.cpp" line="50"/>
+        <location filename="../../../../QTfrontend/pagemain.cpp" line="51"/>
         <source>Network Game (Play a game across a network)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagemain.cpp" line="61"/>
-        <source>Simply pick the same color as a friend to play together as a team. Each of you will still control his or her own hedgehogs but they&apos;ll win or lose together.</source>
-        <comment>Tips</comment>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../../QTfrontend/pagemain.cpp" line="62"/>
-        <source>Some weapons might do only low damage but they can be a lot more devastating in the right situation. Try to use the Desert Eagle to knock multiple hedgehogs into the water.</source>
-        <comment>Tips</comment>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../../QTfrontend/pagemain.cpp" line="63"/>
-        <source>If you&apos;re unsure what to do and don&apos;t want to waste ammo, skip one round. But don&apos;t let too much time pass as there will be Sudden Death!</source>
-        <comment>Tips</comment>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../../QTfrontend/pagemain.cpp" line="64"/>
-        <source>Want to save ropes? Release the rope in mid air and then shoot again. As long as you don&apos;t touch the ground you&apos;ll reuse your rope without wasting ammo!</source>
-        <comment>Tips</comment>
+        <location filename="../../../../QTfrontend/pagemain.cpp" line="54"/>
+        <source>Downloadable Content</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="65"/>
-        <source>If you&apos;d like to keep others from using your preferred nickname on the official server, register an account at http://www.hedgewars.org/.</source>
+        <source>Simply pick the same color as a friend to play together as a team. Each of you will still control his or her own hedgehogs but they&apos;ll win or lose together.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="66"/>
-        <source>You&apos;re bored of default gameplay? Try one of the missions - they&apos;ll offer different gameplay depending on the one you picked.</source>
+        <source>Some weapons might do only low damage but they can be a lot more devastating in the right situation. Try to use the Desert Eagle to knock multiple hedgehogs into the water.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="67"/>
-        <source>By default the game will always record the last game played as a demo. Select &apos;Local Game&apos; and pick the &apos;Demos&apos; button on the lower right corner to play or manage them.</source>
+        <source>If you&apos;re unsure what to do and don&apos;t want to waste ammo, skip one round. But don&apos;t let too much time pass as there will be Sudden Death!</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="68"/>
-        <source>Hedgewars is Open Source and Freeware we create in our spare time. If you&apos;ve got problems, ask on our forums but please don&apos;t expect 24/7 support!</source>
+        <source>Want to save ropes? Release the rope in mid air and then shoot again. As long as you don&apos;t touch the ground you&apos;ll reuse your rope without wasting ammo!</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="69"/>
-        <source>Hedgewars is Open Source and Freeware we create in our spare time. If you like it, help us with a small donation or contribute your own work!</source>
+        <source>If you&apos;d like to keep others from using your preferred nickname on the official server, register an account at http://www.hedgewars.org/.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="70"/>
-        <source>Hedgewars is Open Source and Freeware we create in our spare time. Share it with your family and friends as you like!</source>
+        <source>You&apos;re bored of default gameplay? Try one of the missions - they&apos;ll offer different gameplay depending on the one you picked.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="71"/>
-        <source>Hedgewars is Open Source and Freeware we create in our spare time. If someone sold you the game, you should try get a refund!</source>
+        <source>By default the game will always record the last game played as a demo. Select &apos;Local Game&apos; and pick the &apos;Demos&apos; button on the lower right corner to play or manage them.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="72"/>
-        <source>From time to time there will be official tournaments. Upcoming events will be announced at http://www.hedgewars.org/ some days in advance.</source>
+        <source>Hedgewars is Open Source and Freeware we create in our spare time. If you&apos;ve got problems, ask on our forums but please don&apos;t expect 24/7 support!</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="73"/>
-        <source>Hedgewars is available in many languages. If the translation in your language seems to be missing or outdated, feel free to contact us!</source>
+        <source>Hedgewars is Open Source and Freeware we create in our spare time. If you like it, help us with a small donation or contribute your own work!</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="74"/>
-        <source>Hedgewars can be run on lots of different operating systems including Microsoft Windows, Mac OS X and Linux.</source>
+        <source>Hedgewars is Open Source and Freeware we create in our spare time. Share it with your family and friends as you like!</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="75"/>
-        <source>Always remember you&apos;re able to set up your own games in local and network/online play. You&apos;re not restricted to the &apos;Simple Game&apos; option.</source>
+        <source>Hedgewars is Open Source and Freeware we create in our spare time. If someone sold you the game, you should try get a refund!</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="76"/>
-        <source>Connect one or more gamepads before starting the game to be able to assign their controls to your teams.</source>
+        <source>From time to time there will be official tournaments. Upcoming events will be announced at http://www.hedgewars.org/ some days in advance.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="77"/>
-        <source>Create an account on %1 to keep others from using your most favourite nickname while playing on the official server.</source>
+        <source>Hedgewars is available in many languages. If the translation in your language seems to be missing or outdated, feel free to contact us!</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="78"/>
-        <source>While playing you should give yourself a short break at least once an hour.</source>
+        <source>Hedgewars can be run on lots of different operating systems including Microsoft Windows, Mac OS X and Linux.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="79"/>
-        <source>If your graphics card isn&apos;t able to provide hardware accelerated OpenGL, try to enable the low quality mode to improve performance.</source>
+        <source>Always remember you&apos;re able to set up your own games in local and network/online play. You&apos;re not restricted to the &apos;Simple Game&apos; option.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="80"/>
-        <source>If your graphics card isn&apos;t able to provide hardware accelerated OpenGL, try to update the associated drivers.</source>
+        <source>Connect one or more gamepads before starting the game to be able to assign their controls to your teams.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="81"/>
-        <source>We&apos;re open to suggestions and constructive feedback. If you don&apos;t like something or got a great idea, let us know!</source>
+        <source>Create an account on %1 to keep others from using your most favourite nickname while playing on the official server.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="82"/>
-        <source>Especially while playing online be polite and always remember there might be some minors playing with or against you as well!</source>
+        <source>While playing you should give yourself a short break at least once an hour.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="83"/>
-        <source>Special game modes such as &apos;Vampirism&apos; or &apos;Karma&apos; allow you to develop completely new tactics. Try them in a custom game!</source>
+        <source>If your graphics card isn&apos;t able to provide hardware accelerated OpenGL, try to enable the low quality mode to improve performance.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="84"/>
-        <source>The Windows version of Hedgewars supports Xfire. Make sure to add Hedgewars to its game list so your friends can see you playing.</source>
+        <source>If your graphics card isn&apos;t able to provide hardware accelerated OpenGL, try to update the associated drivers.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="85"/>
-        <source>You should never install Hedgewars on computers you don&apos;t own (school, university, work, etc.). Please ask the responsible person instead!</source>
+        <source>We&apos;re open to suggestions and constructive feedback. If you don&apos;t like something or got a great idea, let us know!</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="86"/>
-        <source>Hedgewars can be perfect for short games during breaks. Just ensure you don&apos;t add too many hedgehogs or use an huge map. Reducing time and health might help as well.</source>
+        <source>Especially while playing online be polite and always remember there might be some minors playing with or against you as well!</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="87"/>
-        <source>No hedgehogs were harmed in making this game.</source>
+        <source>Special game modes such as &apos;Vampirism&apos; or &apos;Karma&apos; allow you to develop completely new tactics. Try them in a custom game!</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="88"/>
-        <source>There are three different jumps available. Tap [high jump] twice to do a very high/backwards jump.</source>
+        <source>The Windows version of Hedgewars supports Xfire. Make sure to add Hedgewars to its game list so your friends can see you playing.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="89"/>
-        <source>Afraid of falling off a cliff? Hold down [precise] to turn [left] or [right] without actually moving.</source>
+        <source>You should never install Hedgewars on computers you don&apos;t own (school, university, work, etc.). Please ask the responsible person instead!</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="90"/>
-        <source>Some weapons require special strategies or just lots of training, so don&apos;t give up on a particular tool if you miss an enemy once.</source>
+        <source>Hedgewars can be perfect for short games during breaks. Just ensure you don&apos;t add too many hedgehogs or use an huge map. Reducing time and health might help as well.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="91"/>
-        <source>Most weapons won&apos;t work once they touch the water. The Homing Bee as well as the Cake are exceptions to this.</source>
+        <source>No hedgehogs were harmed in making this game.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="92"/>
-        <source>The Old Limbuger only causes a small explosion. However the wind affected smelly cloud can poison lots of hogs at once.</source>
+        <source>There are three different jumps available. Tap [high jump] twice to do a very high/backwards jump.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="93"/>
-        <source>The Piano Strike is the most damaging air strike. You&apos;ll lose the hedgehog performing it, so there&apos;s a huge downside as well.</source>
+        <source>Afraid of falling off a cliff? Hold down [precise] to turn [left] or [right] without actually moving.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="94"/>
-        <source>The Homing Bee can be tricky to use. Its turn radius depends on its velocity, so try to not use full power.</source>
+        <source>Some weapons require special strategies or just lots of training, so don&apos;t give up on a particular tool if you miss an enemy once.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="95"/>
-        <source>Sticky Mines are a perfect tool to create small chain reactions knocking enemy hedgehogs into dire situations ... or water.</source>
+        <source>Most weapons won&apos;t work once they touch the water. The Homing Bee as well as the Cake are exceptions to this.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="96"/>
-        <source>The Hammer is most effective when used on bridges or girders. Hit hogs will just break through the ground.</source>
+        <source>The Old Limbuger only causes a small explosion. However the wind affected smelly cloud can poison lots of hogs at once.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="97"/>
-        <source>If you&apos;re stuck behind an enemy hedgehog, use the Hammer to free yourself without getting damaged by an explosion.</source>
+        <source>The Piano Strike is the most damaging air strike. You&apos;ll lose the hedgehog performing it, so there&apos;s a huge downside as well.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="98"/>
-        <source>The Cake&apos;s maximum walking distance depends on the ground it has to pass. Use [attack] to detonate it early.</source>
+        <source>The Homing Bee can be tricky to use. Its turn radius depends on its velocity, so try to not use full power.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="99"/>
-        <source>The Flame Thrower is a weapon but it can be used for tunnel digging as well.</source>
+        <source>Sticky Mines are a perfect tool to create small chain reactions knocking enemy hedgehogs into dire situations ... or water.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="100"/>
-        <source>Use the Molotov or Flame Thrower to temporary keep hedgehogs from passing terrain such as tunnels or platforms.</source>
+        <source>The Hammer is most effective when used on bridges or girders. Hit hogs will just break through the ground.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="101"/>
-        <source>Want to know who&apos;s behind the game? Click on the Hedgewars logo in the main menu to see the credits.</source>
+        <source>If you&apos;re stuck behind an enemy hedgehog, use the Hammer to free yourself without getting damaged by an explosion.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="102"/>
-        <source>Like Hedgewars? Become a fan on %1 or follow us on %2!</source>
+        <source>The Cake&apos;s maximum walking distance depends on the ground it has to pass. Use [attack] to detonate it early.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="103"/>
-        <source>Feel free to draw your own graves, hats, flags or even maps and themes! But note that you&apos;ll have to share them somewhere to use them online.</source>
+        <source>The Flame Thrower is a weapon but it can be used for tunnel digging as well.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="104"/>
-        <source>Really want to wear a specific hat? Donate to us and receive an exclusive hat of your choice!</source>
+        <source>Use the Molotov or Flame Thrower to temporary keep hedgehogs from passing terrain such as tunnels or platforms.</source>
+        <comment>Tips</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../../QTfrontend/pagemain.cpp" line="105"/>
+        <source>Want to know who&apos;s behind the game? Click on the Hedgewars logo in the main menu to see the credits.</source>
+        <comment>Tips</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../../QTfrontend/pagemain.cpp" line="106"/>
+        <source>Like Hedgewars? Become a fan on %1 or follow us on %2!</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="107"/>
-        <source>Keep your video card drivers up to date to avoid issues playing the game.</source>
+        <source>Feel free to draw your own graves, hats, flags or even maps and themes! But note that you&apos;ll have to share them somewhere to use them online.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagemain.cpp" line="110"/>
-        <source>You&apos;re able to associate Hedgewars related files (savegames and demo recordings) with the game to launch them right from your favorite file or internet browser.</source>
+        <location filename="../../../../QTfrontend/pagemain.cpp" line="108"/>
+        <source>Really want to wear a specific hat? Donate to us and receive an exclusive hat of your choice!</source>
+        <comment>Tips</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../../QTfrontend/pagemain.cpp" line="112"/>
+        <source>Keep your video card drivers up to date to avoid issues playing the game.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="113"/>
-        <source>You can find your Hedgewars configuration files under &quot;My Documents\Hedgewars&quot;. Create backups or take the files with you, but don&apos;t edit them by hand.</source>
+        <source>You&apos;re able to associate Hedgewars related files (savegames and demo recordings) with the game to launch them right from your favorite file or internet browser.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="115"/>
-        <source>You can find your Hedgewars configuration files under &quot;Library/Application Support/Hedgewars&quot; in your home directory. Create backups or take the files with you, but don&apos;t edit them by hand.</source>
+        <source>You can find your Hedgewars configuration files under &quot;My Documents\Hedgewars&quot;. Create backups or take the files with you, but don&apos;t edit them by hand.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagemain.cpp" line="117"/>
+        <source>You can find your Hedgewars configuration files under &quot;Library/Application Support/Hedgewars&quot; in your home directory. Create backups or take the files with you, but don&apos;t edit them by hand.</source>
+        <comment>Tips</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../../QTfrontend/pagemain.cpp" line="119"/>
         <source>You can find your Hedgewars configuration files under &quot;.hedgewars&quot; in your home directory. Create backups or take the files with you, but don&apos;t edit them by hand.</source>
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
@@ -1170,7 +1192,7 @@
     </message>
     <message>
         <location filename="../../../../QTfrontend/pagescheme.cpp" line="81"/>
-        <source>Add an indestructable border around the terrain</source>
+        <source>Add an indestructible border around the terrain</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -1274,27 +1296,32 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="318"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="165"/>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="323"/>
         <source>Random</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="319"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="324"/>
         <source>Seconds</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="389"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="394"/>
         <source>Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="390"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="395"/>
         <source>New</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="391"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="396"/>
         <source>Delete</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1379,23 +1406,23 @@
     </message>
     <message>
         <location filename="../../../../QTfrontend/chatwidget.cpp" line="180"/>
-        <location filename="../../../../QTfrontend/chatwidget.cpp" line="527"/>
+        <location filename="../../../../QTfrontend/chatwidget.cpp" line="526"/>
         <source>Ignore</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/chatwidget.cpp" line="183"/>
-        <location filename="../../../../QTfrontend/chatwidget.cpp" line="538"/>
+        <location filename="../../../../QTfrontend/chatwidget.cpp" line="537"/>
         <source>Add friend</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/chatwidget.cpp" line="522"/>
+        <location filename="../../../../QTfrontend/chatwidget.cpp" line="521"/>
         <source>Unignore</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/chatwidget.cpp" line="533"/>
+        <location filename="../../../../QTfrontend/chatwidget.cpp" line="532"/>
         <source>Remove friend</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1463,22 +1490,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageoptions.cpp" line="300"/>
+        <location filename="../../../../QTfrontend/pageoptions.cpp" line="301"/>
         <source>Fullscreen</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageoptions.cpp" line="359"/>
+        <location filename="../../../../QTfrontend/pageoptions.cpp" line="362"/>
         <source>Enable sound</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageoptions.cpp" line="363"/>
+        <location filename="../../../../QTfrontend/pageoptions.cpp" line="366"/>
         <source>Enable music</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageoptions.cpp" line="381"/>
+        <location filename="../../../../QTfrontend/pageoptions.cpp" line="384"/>
         <source>Show FPS</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1486,40 +1513,40 @@
 <context>
     <name>QComboBox</name>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="1217"/>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="1226"/>
-        <location filename="../../../../QTfrontend/mapContainer.cpp" line="144"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="1236"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="1245"/>
+        <location filename="../../../../QTfrontend/mapContainer.cpp" line="142"/>
         <source>Mission</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/mapContainer.cpp" line="76"/>
+        <location filename="../../../../QTfrontend/mapContainer.cpp" line="74"/>
         <source>generated map...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../../../../QTfrontend/mapContainer.cpp" line="78"/>
+        <source>generated maze...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../../../../QTfrontend/mapContainer.cpp" line="80"/>
-        <source>generated maze...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../../QTfrontend/mapContainer.cpp" line="82"/>
         <source>hand drawn map...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="125"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="130"/>
         <source>Human</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="129"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="134"/>
         <source>Level</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="258"/>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="292"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="263"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="297"/>
         <source>Community</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1529,82 +1556,82 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageoptions.cpp" line="321"/>
+        <location filename="../../../../QTfrontend/pageoptions.cpp" line="324"/>
         <source>Disabled</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageoptions.cpp" line="322"/>
-        <source>Red/Cyan</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../../QTfrontend/pageoptions.cpp" line="323"/>
-        <source>Cyan/Red</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../../QTfrontend/pageoptions.cpp" line="324"/>
-        <source>Red/Blue</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../../../../QTfrontend/pageoptions.cpp" line="325"/>
-        <source>Blue/Red</source>
+        <source>Red/Cyan</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pageoptions.cpp" line="326"/>
-        <source>Red/Green</source>
+        <source>Cyan/Red</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pageoptions.cpp" line="327"/>
-        <source>Green/Red</source>
+        <source>Red/Blue</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pageoptions.cpp" line="328"/>
-        <source>Side-by-side</source>
+        <source>Blue/Red</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pageoptions.cpp" line="329"/>
-        <source>Top-Bottom</source>
+        <source>Red/Green</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pageoptions.cpp" line="330"/>
-        <source>Wiggle</source>
+        <source>Green/Red</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pageoptions.cpp" line="331"/>
-        <source>Red/Cyan grayscale</source>
+        <source>Side-by-side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pageoptions.cpp" line="332"/>
-        <source>Cyan/Red grayscale</source>
+        <source>Top-Bottom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pageoptions.cpp" line="333"/>
-        <source>Red/Blue grayscale</source>
+        <source>Wiggle</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pageoptions.cpp" line="334"/>
-        <source>Blue/Red grayscale</source>
+        <source>Red/Cyan grayscale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pageoptions.cpp" line="335"/>
-        <source>Red/Green grayscale</source>
+        <source>Cyan/Red grayscale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../../../../QTfrontend/pageoptions.cpp" line="336"/>
+        <source>Red/Blue grayscale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../../QTfrontend/pageoptions.cpp" line="337"/>
+        <source>Blue/Red grayscale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../../QTfrontend/pageoptions.cpp" line="338"/>
+        <source>Red/Green grayscale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../../QTfrontend/pageoptions.cpp" line="339"/>
         <source>Green/Red grayscale</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1634,17 +1661,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="98"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="103"/>
         <source>Team Settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="173"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="178"/>
         <source>Fort</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="301"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="306"/>
         <source>Key binds</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1692,37 +1719,37 @@
 <context>
     <name>QLabel</name>
     <message>
-        <location filename="../../../../QTfrontend/about.cpp" line="50"/>
+        <location filename="../../../../QTfrontend/about.cpp" line="49"/>
         <source>Version</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/about.cpp" line="52"/>
+        <location filename="../../../../QTfrontend/about.cpp" line="51"/>
         <source>This program is distributed under the GNU General Public License</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/about.cpp" line="67"/>
+        <location filename="../../../../QTfrontend/about.cpp" line="66"/>
         <source>Developers:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/about.cpp" line="84"/>
+        <location filename="../../../../QTfrontend/about.cpp" line="86"/>
         <source>Art:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/about.cpp" line="102"/>
+        <location filename="../../../../QTfrontend/about.cpp" line="104"/>
         <source>Sounds:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/about.cpp" line="112"/>
+        <location filename="../../../../QTfrontend/about.cpp" line="114"/>
         <source>Translations:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/about.cpp" line="135"/>
+        <location filename="../../../../QTfrontend/about.cpp" line="138"/>
         <source>Special thanks:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1758,37 +1785,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="102"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="107"/>
         <source>Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="105"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="110"/>
         <source>Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="108"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="113"/>
         <source>Grave</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="111"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="116"/>
         <source>Flag</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="114"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="119"/>
         <source>Voice</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagemain.cpp" line="119"/>
+        <location filename="../../../../QTfrontend/pagemain.cpp" line="121"/>
         <source>Tip: </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagemain.cpp" line="122"/>
+        <location filename="../../../../QTfrontend/pagemain.cpp" line="124"/>
         <source>This development build is &apos;work in progress&apos; and may not be compatible with other versions of the game. Some features might be broken or incomplete. Use at your own risk!</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1828,107 +1855,107 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageoptions.cpp" line="305"/>
+        <location filename="../../../../QTfrontend/pageoptions.cpp" line="306"/>
         <source>Quality</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageoptions.cpp" line="317"/>
+        <location filename="../../../../QTfrontend/pageoptions.cpp" line="320"/>
         <source>Stereo rendering</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageoptions.cpp" line="350"/>
+        <location filename="../../../../QTfrontend/pageoptions.cpp" line="353"/>
         <source>Initial sound volume</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageoptions.cpp" line="374"/>
+        <location filename="../../../../QTfrontend/pageoptions.cpp" line="377"/>
         <source>FPS limit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageoptions.cpp" line="391"/>
+        <location filename="../../../../QTfrontend/pageoptions.cpp" line="394"/>
         <source>Restart game to apply</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="168"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="173"/>
         <source>Damage Modifier</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="182"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="187"/>
         <source>Turn Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="196"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="201"/>
         <source>Initial Health</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="210"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="215"/>
         <source>Sudden Death Timeout</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="224"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="229"/>
         <source>Sudden Death Water Rise</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="238"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="243"/>
         <source>Sudden Death Health Decrease</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="252"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="257"/>
         <source>% Rope Length</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="266"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="271"/>
         <source>Crate Drops</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="279"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="284"/>
         <source>% Health Crates</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="293"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="298"/>
         <source>Health in Crates</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="307"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="312"/>
         <source>Mines Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="323"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="328"/>
         <source>Mines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="337"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="342"/>
         <source>% Dud Mines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="351"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="356"/>
         <source>Explosives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="365"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="370"/>
         <source>% Get Away Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="379"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="384"/>
         <source>Scheme Name:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1936,10 +1963,17 @@
 <context>
     <name>QLineEdit</name>
     <message>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="642"/>
         <location filename="../../../../QTfrontend/pageoptions.cpp" line="192"/>
         <source>unnamed</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="355"/>
+        <location filename="../../../../QTfrontend/team.cpp" line="41"/>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1952,60 +1986,60 @@
 <context>
     <name>QMessageBox</name>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="640"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="657"/>
         <source>Teams</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="640"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="657"/>
         <source>Really delete this team?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="686"/>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="468"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="703"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="474"/>
         <source>Schemes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="686"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="703"/>
         <source>Can not delete default scheme &apos;%1&apos;!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="939"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="956"/>
         <source>Network</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="940"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="957"/>
         <source>Connection to server is lost</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="1284"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="1303"/>
         <source>All file associations have been set.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/hwform.cpp" line="1285"/>
+        <location filename="../../../../QTfrontend/hwform.cpp" line="1304"/>
         <source>File association failed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../../../../QTfrontend/main.cpp" line="380"/>
+        <source>Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../../../../QTfrontend/main.cpp" line="381"/>
-        <source>Error</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../../QTfrontend/main.cpp" line="382"/>
         <source>Failed to open data directory:
 %1
 Please check your installation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pagescheme.cpp" line="468"/>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="474"/>
         <source>Really delete this game scheme?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2079,7 +2113,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/mapContainer.cpp" line="246"/>
+        <location filename="../../../../QTfrontend/mapContainer.cpp" line="244"/>
         <source>more</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2090,7 +2124,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="92"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="97"/>
         <source>Random Team</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2371,6 +2405,11 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../../../../QTfrontend/pagescheme.cpp" line="165"/>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
@@ -2564,17 +2603,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/binds.cpp" line="66"/>
+        <location filename="../../../../QTfrontend/binds.cpp" line="65"/>
         <source>change mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/binds.cpp" line="68"/>
+        <location filename="../../../../QTfrontend/binds.cpp" line="66"/>
         <source>capture</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/binds.cpp" line="69"/>
+        <location filename="../../../../QTfrontend/binds.cpp" line="67"/>
         <source>hedgehogs
 info</source>
         <translation type="unfinished"></translation>
@@ -2671,17 +2710,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/binds.cpp" line="66"/>
+        <location filename="../../../../QTfrontend/binds.cpp" line="65"/>
         <source>Toggle fullscreen mode:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/binds.cpp" line="68"/>
+        <location filename="../../../../QTfrontend/binds.cpp" line="66"/>
         <source>Take a screenshot:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/binds.cpp" line="69"/>
+        <location filename="../../../../QTfrontend/binds.cpp" line="67"/>
         <source>Toggle labels above hedgehogs:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2726,7 +2765,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="340"/>
+        <location filename="../../../../QTfrontend/pageeditteam.cpp" line="345"/>
         <source>Keyboard</source>
         <translation type="unfinished"></translation>
     </message>
--- a/share/hedgewars/Data/Locale/hedgewars_nl.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_nl.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -119,6 +119,14 @@
         <comment>File Types</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -364,13 +372,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <source>Save drawn map</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -699,6 +711,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -960,10 +976,6 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Add an indestructable border around the terrain</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <source>Lower gravity</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1063,6 +1075,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1575,6 +1595,10 @@
         <source>unnamed</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1917,6 +1941,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_pl.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_pl.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -130,11 +130,11 @@
     </message>
     <message>
         <source>Demo name</source>
-        <translation type="unfinished">Nazwa demo</translation>
+        <translation>Podaj nazwę</translation>
     </message>
     <message>
         <source>Demo name:</source>
-        <translation type="unfinished">Nazwa demo:</translation>
+        <translation>Nazwa demo:</translation>
     </message>
 </context>
 <context>
@@ -400,12 +400,20 @@
     </message>
     <message>
         <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation>Narysowane mapy (*.hwmap);;Wszystkie pliki (*.*)</translation>
+        <translation type="obsolete">Narysowane mapy (*.hwmap);;Wszystkie pliki (*.*)</translation>
     </message>
     <message>
         <source>Save drawn map</source>
         <translation>Zapisz mapę</translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation>Narysowane mapy</translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation>Wszystkie pliki</translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -527,7 +535,7 @@
     <message>
         <source>Some weapons might do only low damage but they can be a lot more devastating in the right situation. Try to use the Desert Eagle to knock multiple hedgehogs into the water.</source>
         <comment>Tips</comment>
-        <translation type="unfinished">Niektóre z broni zadają mało punktów obrażeń jednak użyte w odpowiednim momencie mogą pokazać pazur. Na przykład spróbuj użyć pistoletu by strącić swoich przeciwników do wody.</translation>
+        <translation>Niektóre z broni zadają mało punktów obrażeń jednak użyte w odpowiednim momencie mogą pokazać pazur. Na przykład spróbuj użyć pistoletu by strącić swoich przeciwników do wody.</translation>
     </message>
     <message>
         <source>If you&apos;re unsure what to do and don&apos;t want to waste ammo, skip one round. But don&apos;t let too much time pass as there will be Sudden Death!</source>
@@ -572,17 +580,17 @@
     <message>
         <source>From time to time there will be official tournaments. Upcoming events will be announced at http://www.hedgewars.org/ some days in advance.</source>
         <comment>Tips</comment>
-        <translation type="unfinished">Od czasu do czasu będą organizowane mistrzostwa. Będą one ogłaszane z wyprzedzeniem na http://www.hedgewars.org/ .</translation>
+        <translation>Od czasu do czasu będą organizowane mistrzostwa. Będą one ogłaszane z wyprzedzeniem na http://www.hedgewars.org/ .</translation>
     </message>
     <message>
         <source>Hedgewars is available in many languages. If the translation in your language seems to be missing or outdated, feel free to contact us!</source>
         <comment>Tips</comment>
-        <translation type="unfinished">Hedgewars jest dostępne w wielu językach. Jeśli brakuje tłumaczenia w twoim języku bądź jest ono niekompletne, nie bój się z nami skontaktować!</translation>
+        <translation>Hedgewars jest dostępne w wielu językach. Jeśli brakuje tłumaczenia w twoim języku bądź jest ono niekompletne, nie bój się z nami skontaktować!</translation>
     </message>
     <message>
         <source>Hedgewars can be run on lots of different operating systems including Microsoft Windows, Mac OS X and Linux.</source>
         <comment>Tips</comment>
-        <translation type="unfinished">Hedgewars może być uruchomione na różnych systemach operacyjnych takich jak Microsoft Windows, MacOS X, FreeBSD oraz Linux.</translation>
+        <translation>Hedgewars może być uruchomione na różnych systemach operacyjnych takich jak Microsoft Windows, MacOS X, FreeBSD oraz Linux.</translation>
     </message>
     <message>
         <source>Always remember you&apos;re able to set up your own games in local and network/online play. You&apos;re not restricted to the &apos;Simple Game&apos; option.</source>
@@ -617,7 +625,7 @@
     <message>
         <source>Especially while playing online be polite and always remember there might be some minors playing with or against you as well!</source>
         <comment>Tips</comment>
-        <translation type="unfinished">Bądź kulturalny grając przez internet. Pamiętaj o tym, że w Hedgewars mogą grać także młodsze osoby!</translation>
+        <translation>Bądź kulturalny grając przez internet. Pamiętaj o tym, że w Hedgewars mogą grać także młodsze osoby!</translation>
     </message>
     <message>
         <source>Special game modes such as &apos;Vampirism&apos; or &apos;Karma&apos; allow you to develop completely new tactics. Try them in a custom game!</source>
@@ -657,7 +665,7 @@
     <message>
         <source>Connect one or more gamepads before starting the game to be able to assign their controls to your teams.</source>
         <comment>Tips</comment>
-        <translation type="unfinished">Jeśli podłączysz jeden lub więcej gamepadów przed włączeniem gry będziesz miał możliwość przypisania klawiszy by sterować swoimi jeżami.</translation>
+        <translation>Jeśli podłączysz jeden lub więcej gamepadów przed włączeniem gry będziesz miał możliwość przypisania klawiszy by sterować swoimi jeżami.</translation>
     </message>
     <message>
         <source>Create an account on %1 to keep others from using your most favourite nickname while playing on the official server.</source>
@@ -772,12 +780,12 @@
     <message>
         <source>You&apos;re able to associate Hedgewars related files (savegames and demo recordings) with the game to launch them right from your favorite file or internet browser.</source>
         <comment>Tips</comment>
-        <translation type="unfinished">Możesz powiązać typy plików związane z Hedgewars (zapisy gier i dema) by móc je uruchamiać bezpośrednio z ulubionego menedżera plików bądź przeglądarki internetowej.</translation>
+        <translation>Możesz powiązać typy plików związane z Hedgewars (zapisy gier i dema) by móc je uruchamiać bezpośrednio z ulubionego menedżera plików bądź przeglądarki internetowej.</translation>
     </message>
     <message>
         <source>Want to save ropes? Release the rope in mid air and then shoot again. As long as you don&apos;t touch the ground you&apos;ll reuse your rope without wasting ammo!</source>
         <comment>Tips</comment>
-        <translation type="unfinished">Chcesz zaoszczędzić liny? Odłącz ją będąc w powietrzu, a potem wypuść ją ponownie. Dopóki nie dotkniesz ziemi, będziesz używał pojedynczego naboju!</translation>
+        <translation>Chcesz zaoszczędzić liny? Odłącz ją będąc w powietrzu, a potem wypuść ją ponownie. Dopóki nie dotkniesz ziemi, będziesz używał pojedynczego naboju!</translation>
     </message>
     <message>
         <source>You can find your Hedgewars configuration files under &quot;Library/Application Support/Hedgewars&quot; in your home directory. Create backups or take the files with you, but don&apos;t edit them by hand.</source>
@@ -792,21 +800,21 @@
     <message>
         <source>The Windows version of Hedgewars supports Xfire. Make sure to add Hedgewars to its game list so your friends can see you playing.</source>
         <comment>Tips</comment>
-        <translation type="unfinished">Wersja Hedgewars dla systemu Windows wspiera XFire. Upewnij się, że dodałeś Hedgewars do listy gier by Twoi znajomi mogli zobaczyć Ciebie w czasie gry.</translation>
+        <translation>Wersja Hedgewars dla systemu Windows wspiera XFire. Upewnij się, że dodałeś Hedgewars do listy gier by Twoi znajomi mogli zobaczyć Ciebie w czasie gry.</translation>
     </message>
     <message>
         <source>Use the Molotov or Flame Thrower to temporary keep hedgehogs from passing terrain such as tunnels or platforms.</source>
         <comment>Tips</comment>
-        <translation type="unfinished">Użyj koktajlu Mołotowa lub Miotacza ognia by powstrzymać przeciwnika przed przedostaniem się przez tunele lub platformy.</translation>
+        <translation>Użyj koktajlu Mołotowa lub Miotacza ognia by powstrzymać przeciwnika przed przedostaniem się przez tunele lub platformy.</translation>
     </message>
     <message>
         <source>The Homing Bee can be tricky to use. Its turn radius depends on its velocity, so try to not use full power.</source>
         <comment>Tips</comment>
-        <translation type="unfinished">Pszczoła potrafi być ciężka w użyciu. Jej promień skrętu zależy od prędkości lotu, więc nie staraj się nie używać pełnej mocy podczas strzału.</translation>
+        <translation>Pszczoła potrafi być ciężka w użyciu. Jej promień skrętu zależy od prędkości lotu, więc nie staraj się nie używać pełnej mocy podczas strzału.</translation>
     </message>
     <message>
         <source>Downloadable Content</source>
-        <translation type="unfinished">Dodatki do pobrania</translation>
+        <translation>Dodatki do pobrania</translation>
     </message>
 </context>
 <context>
@@ -1196,11 +1204,11 @@
     </message>
     <message>
         <source>Add an indestructible border around the terrain</source>
-        <translation type="unfinished">Dodaje niezniszczalną ramkę dookoła terenu</translation>
+        <translation>Dodaje niezniszczalną ramkę dookoła terenu</translation>
     </message>
     <message>
         <source>Add an indestructible border along the bottom</source>
-        <translation type="unfinished">Dodaje na dole niezniszczalną ramkę</translation>
+        <translation>>Dodaje niezniszczalną ramkę u dołu mapy</translation>
     </message>
 </context>
 <context>
@@ -1439,67 +1447,67 @@
     </message>
     <message>
         <source>Disabled</source>
-        <translation type="unfinished">Wyłączone</translation>
+        <translation>Wyłączone</translation>
     </message>
     <message>
         <source>Red/Cyan</source>
-        <translation type="unfinished">Czerwone/Błękitne</translation>
+        <translation>Czerwone/Błękitne</translation>
     </message>
     <message>
         <source>Cyan/Red</source>
-        <translation type="unfinished">Błękitne/Czerwone</translation>
+        <translation>Błękitne/Czerwone</translation>
     </message>
     <message>
         <source>Red/Blue</source>
-        <translation type="unfinished">Czerwone/Niebieskie</translation>
+        <translation>Czerwone/Niebieskie</translation>
     </message>
     <message>
         <source>Blue/Red</source>
-        <translation type="unfinished">Niebieskie/Czerwone</translation>
+        <translation>Niebieskie/Czerwone</translation>
     </message>
     <message>
         <source>Red/Green</source>
-        <translation type="unfinished">Czerwone/Zielone</translation>
+        <translation>Czerwone/Zielone</translation>
     </message>
     <message>
         <source>Green/Red</source>
-        <translation type="unfinished">Zielone/Czerwone</translation>
+        <translation>Zielone/Czerwone</translation>
     </message>
     <message>
         <source>Side-by-side</source>
-        <translation type="unfinished">Obok siebie</translation>
+        <translation>Obok siebie</translation>
     </message>
     <message>
         <source>Top-Bottom</source>
-        <translation type="unfinished">Góra-dół</translation>
+        <translation>Góra-dół</translation>
     </message>
     <message>
         <source>Wiggle</source>
-        <translation type="unfinished">Trzęsący się obraz</translation>
+        <translation>Trzęsący się obraz</translation>
     </message>
     <message>
         <source>Red/Cyan grayscale</source>
-        <translation type="unfinished">Czer/Błęk w odc. szar</translation>
+        <translation>Czer/Błęk w odc. szar</translation>
     </message>
     <message>
         <source>Cyan/Red grayscale</source>
-        <translation type="unfinished">Błęk/Czer w odc. szar</translation>
+        <translation>Błęk/Czer w odc. szar</translation>
     </message>
     <message>
         <source>Red/Blue grayscale</source>
-        <translation type="unfinished">Czer/Nieb w odc. szar</translation>
+        <translation>Czer/Nieb w odc. szar</translation>
     </message>
     <message>
         <source>Blue/Red grayscale</source>
-        <translation type="unfinished">Nieb/Czer w odc. szar</translation>
+        <translation>Nieb/Czer w odc. szar</translation>
     </message>
     <message>
         <source>Red/Green grayscale</source>
-        <translation type="unfinished">Czer/Ziel w odc. szar</translation>
+        <translation>Czer/Ziel w odc. szar</translation>
     </message>
     <message>
         <source>Green/Red grayscale</source>
-        <translation type="unfinished">Ziel/Czer w odc. szar</translation>
+        <translation>Ziel/Czer w odc. szar</translation>
     </message>
 </context>
 <context>
@@ -1749,27 +1757,27 @@
     </message>
     <message>
         <source>Stereo rendering</source>
-        <translation type="unfinished">Wyświetlanie w 3D</translation>
+        <translation>Wyświetlanie w 3D</translation>
     </message>
     <message>
         <source>Game Options</source>
-        <translation type="unfinished">Opcje</translation>
+        <translation>Opcje</translation>
     </message>
     <message>
         <source>Style</source>
-        <translation type="unfinished">Tryb gry</translation>
+        <translation>Tryb gry</translation>
     </message>
     <message>
         <source>Scheme</source>
-        <translation type="unfinished">Schemat</translation>
+        <translation>Schemat</translation>
     </message>
     <message>
         <source>Password</source>
-        <translation type="unfinished">Hasło</translation>
+        <translation>Hasło</translation>
     </message>
     <message>
         <source>% Get Away Time</source>
-        <translation type="unfinished">Czas na ucieczkę w %</translation>
+        <translation>Czas na ucieczkę w %</translation>
     </message>
 </context>
 <context>
@@ -1778,6 +1786,10 @@
         <source>unnamed</source>
         <translation>nienazwany</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation>jeż %1</translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -2136,11 +2148,11 @@
     </message>
     <message>
         <source>Tag Team</source>
-        <translation type="unfinished">Zespół</translation>
+        <translation>Zespół</translation>
     </message>
     <message>
         <source>Add Bottom Border</source>
-        <translation type="unfinished">Ddoaj ramkę na dole</translation>
+        <translation>Dodaj ramkę na dole</translation>
     </message>
 </context>
 <context>
--- a/share/hedgewars/Data/Locale/hedgewars_pt_BR.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_pt_BR.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -123,6 +123,14 @@
         <comment>File Types</comment>
         <translation>Arquivo do Jogo Hedgewars</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -373,12 +381,20 @@
     </message>
     <message>
         <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation>Mapas Desenhados (*.hwmaps);; Todos os arquivos (*.*)</translation>
+        <translation type="obsolete">Mapas Desenhados (*.hwmaps);; Todos os arquivos (*.*)</translation>
     </message>
     <message>
         <source>Save drawn map</source>
         <translation>Salvar Mapa</translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -820,6 +836,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -1129,7 +1149,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Adicione uma borda indestrutível em volta do terreno</translation>
+        <translation type="obsolete">Adicione uma borda indestrutível em volta do terreno</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1203,6 +1223,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Adicione uma borda indestrutível em volta do terreno</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1773,6 +1801,10 @@
         <source>unnamed</source>
         <translation>sem nome</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -2138,6 +2170,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_pt_PT.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_pt_PT.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -123,6 +123,14 @@
         <comment>File Types</comment>
         <translation>Ficheiro de jogo Hedgewars</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -382,12 +390,20 @@
     </message>
     <message>
         <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation>Mapas Desenhados (*.hwmap);;Todos os ficheiros (*.*)</translation>
+        <translation type="obsolete">Mapas Desenhados (*.hwmap);;Todos os ficheiros (*.*)</translation>
     </message>
     <message>
         <source>Save drawn map</source>
         <translation>Gravar mapa desenhado</translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -734,6 +750,10 @@
         <comment>Tips</comment>
         <translation>A Abelha Teleguiada pode-se demonstrar complicada de utilizar. O grau a que consegue virar depende da sua velocidade, por isso experimenta lança-la com diferentes níveis de força.</translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -1011,7 +1031,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Adiciona uma borda indestrutível à volta do terreno</translation>
+        <translation type="obsolete">Adiciona uma borda indestrutível à volta do terreno</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1117,6 +1137,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation>As equipas do mesmo clã jogam de forma sucessiva partilhando o seu tempo para jogar.</translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Adiciona uma borda indestrutível à volta do terreno</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1358,7 +1386,7 @@
     </message>
     <message>
         <source>Wiggle</source>
-        <translation>"Wiggle"</translation>
+        <translation>&quot;Wiggle&quot;</translation>
     </message>
     <message>
         <source>Red/Cyan grayscale</source>
@@ -1641,6 +1669,10 @@
         <source>unnamed</source>
         <translation>sem nome</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1997,6 +2029,10 @@
         <source>Tag Team</source>
         <translation>Tag Team</translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_ru.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_ru.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -128,6 +128,14 @@
         <comment>File Types</comment>
         <translation>Файл сохранения игры hedgewars</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -388,12 +396,20 @@
     </message>
     <message>
         <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation>Рисованные карты (*.hwmap);;Все файлы (*.*)</translation>
+        <translation type="obsolete">Рисованные карты (*.hwmap);;Все файлы (*.*)</translation>
     </message>
     <message>
         <source>Save drawn map</source>
         <translation>Сохранить рисованную карту</translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -748,6 +764,10 @@
         <comment>Tips</comment>
         <translation>Пчёлку можеть быть сложно использовать. Её радиус поворота зависит от скорости, поэтому попробуйте не использовать полную силу броска.</translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -1060,7 +1080,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Добавить неразрушимую границу вокруг карты</translation>
+        <translation type="obsolete">Добавить неразрушимую границу вокруг карты</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1134,6 +1154,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation>Команды в каждом клане будут последовательно получать право хода, имея общее время на ход.</translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Добавить неразрушимую границу вокруг карты</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1668,6 +1696,10 @@
         <source>unnamed</source>
         <translation>безымянный</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -2024,6 +2056,10 @@
         <source>Tag Team</source>
         <translation>Эстафета команд</translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_sk.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_sk.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -128,6 +128,14 @@
         <comment>File Types</comment>
         <translation>Súbor s uloženou hrou Hedgewars</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -390,12 +398,20 @@
     </message>
     <message>
         <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation>Nakreslené mapy (*.hwmap);;Všetky súbory (*.*)</translation>
+        <translation type="obsolete">Nakreslené mapy (*.hwmap);;Všetky súbory (*.*)</translation>
     </message>
     <message>
         <source>Save drawn map</source>
         <translation>Uložiť nakreslenú mapu</translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -789,6 +805,10 @@
         <comment>Tips</comment>
         <translation>Navádzaná včela je trošku zložitejšia na použitie. Jej polomer otočenia závisí na jej rýchlosti, takže ju radšej nepoužívajte pri plnej sile.</translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -1101,7 +1121,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Pridať nezničiteľný okraj okolo terénu</translation>
+        <translation type="obsolete">Pridať nezničiteľný okraj okolo terénu</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1175,6 +1195,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation>Tímy každého klanu sa striedajú v ťahaní a zdieľajú svoj čas na ťah.</translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Pridať nezničiteľný okraj okolo terénu</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1746,6 +1774,10 @@
         <source>unnamed</source>
         <translation>beznázvu</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -2106,6 +2138,10 @@
         <source>Tag Team</source>
         <translation>Označit tím</translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_sv.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_sv.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -16,15 +16,15 @@
     <name>DrawMapWidget</name>
     <message>
         <source>File error</source>
-        <translation type="unfinished"></translation>
+        <translation>Fel på fil</translation>
     </message>
     <message>
         <source>Cannot open file &apos;%1&apos; for writing</source>
-        <translation type="unfinished"></translation>
+        <translation>Kan inte skriva till &apos;%1&apos;</translation>
     </message>
     <message>
         <source>Cannot read file &apos;%1&apos;</source>
-        <translation type="unfinished"></translation>
+        <translation>Kan inte läsa &apos;%1&apos;</translation>
     </message>
 </context>
 <context>
@@ -123,6 +123,14 @@
         <comment>File Types</comment>
         <translation>Sparfil för Hedgewars</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation>Demonamn</translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation>Demonamn:</translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -207,7 +215,7 @@
     </message>
     <message>
         <source>Set</source>
-        <translation type="unfinished">Ange</translation>
+        <translation>Ange</translation>
     </message>
 </context>
 <context>
@@ -289,14 +297,17 @@
     </message>
     <message>
         <source>Nickname</source>
-        <translation type="unfinished">Smeknamn</translation>
+        <translation>Smeknamn</translation>
     </message>
     <message>
         <source>Some one already uses
  your nickname %1
 on the server.
 Please pick another nickname:</source>
-        <translation type="unfinished"></translation>
+        <translation>Någon använder redan
+ditt smeknamn %1
+på servern.
+Välj ett annat smeknamn:</translation>
     </message>
 </context>
 <context>
@@ -353,7 +364,7 @@
     </message>
     <message>
         <source>Cancel</source>
-        <translation type="unfinished">Avbryt</translation>
+        <translation>Avbryt</translation>
     </message>
 </context>
 <context>
@@ -380,12 +391,20 @@
     </message>
     <message>
         <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation>Ritade kartor (*.hwmap);;Alla filer (*.*)</translation>
+        <translation type="obsolete">Ritade kartor (*.hwmap);;Alla filer (*.*)</translation>
     </message>
     <message>
         <source>Save drawn map</source>
         <translation>Spara ritad karta</translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation>Ritade kartor</translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation>Alla filer</translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -749,17 +768,21 @@
     <message>
         <source>The Windows version of Hedgewars supports Xfire. Make sure to add Hedgewars to its game list so your friends can see you playing.</source>
         <comment>Tips</comment>
-        <translation type="unfinished"></translation>
+        <translation>Windows-versionen av Hedgewars har stöd för Xfire. Se till att lägga till Hedgewars till spellistan så att dina vänner kan se dig spela.</translation>
     </message>
     <message>
         <source>Use the Molotov or Flame Thrower to temporary keep hedgehogs from passing terrain such as tunnels or platforms.</source>
         <comment>Tips</comment>
-        <translation type="unfinished"></translation>
+        <translation>Använd molotov eller eldkastaren för att temporärt förhindra att igelkottar passerar terräng så som tunnlar eller platformar.</translation>
     </message>
     <message>
         <source>The Homing Bee can be tricky to use. Its turn radius depends on its velocity, so try to not use full power.</source>
         <comment>Tips</comment>
-        <translation type="unfinished"></translation>
+        <translation>Målsökande bin kan vara kluriga att använda. Svängradien beror på hastigheten, så försök att inte använda full kraft.</translation>
+    </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation>Nedladdningsbart innehåll</translation>
     </message>
 </context>
 <context>
@@ -788,15 +811,15 @@
     </message>
     <message>
         <source>Error</source>
-        <translation type="unfinished">Fel</translation>
+        <translation>Fel</translation>
     </message>
     <message>
         <source>Please enter room name</source>
-        <translation type="unfinished">Skriv in rummets namn</translation>
+        <translation>Skriv in rummets namn</translation>
     </message>
     <message>
         <source>OK</source>
-        <translation type="unfinished">OK</translation>
+        <translation>OK</translation>
     </message>
 </context>
 <context>
@@ -1016,8 +1039,8 @@
     </message>
     <message numerus="yes">
         <source>%1 players online</source>
-        <translation type="unfinished">
-            <numerusform></numerusform>
+        <translation>
+            <numerusform>%1 spelare inne</numerusform>
             <numerusform></numerusform>
         </translation>
     </message>
@@ -1070,7 +1093,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Lägger till en oförstörbar kant runt terrängen</translation>
+        <translation type="obsolete">Lägger till en oförstörbar kant runt terrängen</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1142,7 +1165,15 @@
     </message>
     <message>
         <source>Teams in each clan take successive turns sharing their turn time.</source>
-        <translation type="unfinished"></translation>
+        <translation>Lag inom en klan spelar efter varandra och delar på turtiden.</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Lägger till en oförstörbar kant runt terrängen</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation>Lägg till en oförstörbar barriär längs botten</translation>
     </message>
 </context>
 <context>
@@ -1239,7 +1270,7 @@
     </message>
     <message>
         <source>Update</source>
-        <translation type="unfinished">Uppdatera</translation>
+        <translation>Uppdatera</translation>
     </message>
 </context>
 <context>
@@ -1381,67 +1412,67 @@
     </message>
     <message>
         <source>Disabled</source>
-        <translation type="unfinished"></translation>
+        <translation>Avaktiverad</translation>
     </message>
     <message>
         <source>Red/Cyan</source>
-        <translation type="unfinished"></translation>
+        <translation>Röd/Cyan</translation>
     </message>
     <message>
         <source>Cyan/Red</source>
-        <translation type="unfinished"></translation>
+        <translation>Cyan/Röd</translation>
     </message>
     <message>
         <source>Red/Blue</source>
-        <translation type="unfinished"></translation>
+        <translation>Röd/Blå</translation>
     </message>
     <message>
         <source>Blue/Red</source>
-        <translation type="unfinished"></translation>
+        <translation>Blå/Röd</translation>
     </message>
     <message>
         <source>Red/Green</source>
-        <translation type="unfinished"></translation>
+        <translation>Röd/Grön</translation>
     </message>
     <message>
         <source>Green/Red</source>
-        <translation type="unfinished"></translation>
+        <translation>Grön/Röd</translation>
     </message>
     <message>
         <source>Side-by-side</source>
-        <translation type="unfinished"></translation>
+        <translation>Sida vid sida</translation>
     </message>
     <message>
         <source>Top-Bottom</source>
-        <translation type="unfinished"></translation>
+        <translation>Uppe och nere</translation>
     </message>
     <message>
         <source>Wiggle</source>
-        <translation type="unfinished"></translation>
+        <translation>Vicka</translation>
     </message>
     <message>
         <source>Red/Cyan grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Röd/Cyan gråskala</translation>
     </message>
     <message>
         <source>Cyan/Red grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Cyan/Röd gråskala</translation>
     </message>
     <message>
         <source>Red/Blue grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Röd/Blå gråskala</translation>
     </message>
     <message>
         <source>Blue/Red grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Blå/Röd gråskala</translation>
     </message>
     <message>
         <source>Red/Green grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Röd/Grön gråskala</translation>
     </message>
     <message>
         <source>Green/Red grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Grön/Röd gråskala</translation>
     </message>
 </context>
 <context>
@@ -1681,27 +1712,27 @@
     </message>
     <message>
         <source>Stereo rendering</source>
-        <translation type="unfinished"></translation>
+        <translation>Stereorendering</translation>
     </message>
     <message>
         <source>Game Options</source>
-        <translation type="unfinished"></translation>
+        <translation>Spelinställningar</translation>
     </message>
     <message>
         <source>Style</source>
-        <translation type="unfinished"></translation>
+        <translation>Stil</translation>
     </message>
     <message>
         <source>Scheme</source>
-        <translation type="unfinished"></translation>
+        <translation>Schema</translation>
     </message>
     <message>
         <source>Password</source>
-        <translation type="unfinished">Lösenord</translation>
+        <translation>Lösenord</translation>
     </message>
     <message>
         <source>% Get Away Time</source>
-        <translation type="unfinished"></translation>
+        <translation>% flykttid</translation>
     </message>
 </context>
 <context>
@@ -1710,6 +1741,10 @@
         <source>unnamed</source>
         <translation>onämnd</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation>igelkott %1</translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1892,7 +1927,7 @@
     </message>
     <message>
         <source>more</source>
-        <translation type="unfinished"></translation>
+        <translation>mer</translation>
     </message>
 </context>
 <context>
@@ -2068,7 +2103,11 @@
     </message>
     <message>
         <source>Tag Team</source>
-        <translation type="unfinished"></translation>
+        <translation>Maraton</translation>
+    </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation>Lägg till undre barriär</translation>
     </message>
 </context>
 <context>
--- a/share/hedgewars/Data/Locale/hedgewars_tr_TR.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_tr_TR.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -122,6 +122,14 @@
         <comment>File Types</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -365,11 +373,15 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
+        <source>Save drawn map</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Save drawn map</source>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -698,6 +710,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -957,7 +973,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Bölgenin etrafına yok edilemez bir sınır ekle</translation>
+        <translation type="obsolete">Bölgenin etrafına yok edilemez bir sınır ekle</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1063,6 +1079,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Bölgenin etrafına yok edilemez bir sınır ekle</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1583,6 +1607,10 @@
         <source>unnamed</source>
         <translation>isimsiz</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1939,6 +1967,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_uk.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_uk.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -16,15 +16,15 @@
     <name>DrawMapWidget</name>
     <message>
         <source>File error</source>
-        <translation type="unfinished"></translation>
+        <translation>Помилка файлу</translation>
     </message>
     <message>
         <source>Cannot open file &apos;%1&apos; for writing</source>
-        <translation type="unfinished"></translation>
+        <translation>Не можу відкрити файл &apos;%1&apos; для запису</translation>
     </message>
     <message>
         <source>Cannot read file &apos;%1&apos;</source>
-        <translation type="unfinished"></translation>
+        <translation>Не можу прочитати файл &apos;%1&apos;</translation>
     </message>
 </context>
 <context>
@@ -124,6 +124,14 @@
         <comment>File Types</comment>
         <translation>Файл Збереження Hedgewars</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -290,14 +298,17 @@
     </message>
     <message>
         <source>Nickname</source>
-        <translation type="unfinished">Ім&apos;я</translation>
+        <translation>Нікнейм</translation>
     </message>
     <message>
         <source>Some one already uses
  your nickname %1
 on the server.
 Please pick another nickname:</source>
-        <translation type="unfinished"></translation>
+        <translation>Хтось вже використовує
+ нікнейм %1
+на сервері.
+Виберіть інший нікнейм:</translation>
     </message>
 </context>
 <context>
@@ -354,7 +365,7 @@
     </message>
     <message>
         <source>Cancel</source>
-        <translation type="unfinished">Скасувати</translation>
+        <translation>Скасувати</translation>
     </message>
 </context>
 <context>
@@ -381,12 +392,20 @@
     </message>
     <message>
         <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation>Намальовані мапи (*.hwmap);;Всі файли (*.*)</translation>
+        <translation type="obsolete">Намальовані мапи (*.hwmap);;Всі файли (*.*)</translation>
     </message>
     <message>
         <source>Save drawn map</source>
         <translation>Зберегти намальовану мапу</translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -732,11 +751,6 @@
         <translation>Windows-версія Hedgewars підтримує Xfire. Переконайтеся в тому, що ви додали Hedgewars до списку ігор, щоб ваші друзі могли бачити вас в грі.</translation>
     </message>
     <message>
-        <source>The Homing Bee can be tricky to use. Its turn radius depends on it&apos;s velocity, so try to not use full power.</source>
-        <comment>Tips</comment>
-        <translation type="obsolete">Навідна Бджілка може бути складною у керуванні. Радіус повороту залежить від її швидкості, тому постарайтеся не стріляти на повну силу.</translation>
-    </message>
-    <message>
         <source>Use the Molotov or Flame Thrower to temporary keep hedgehogs from passing terrain such as tunnels or platforms.</source>
         <comment>Tips</comment>
         <translation>Використайте Коктейль Молотова або Вогнемет щоб тимчасово утримати їжаків від проходження такої місцевості як тунелі або платформи.</translation>
@@ -744,6 +758,10 @@
     <message>
         <source>The Homing Bee can be tricky to use. Its turn radius depends on its velocity, so try to not use full power.</source>
         <comment>Tips</comment>
+        <translation>Навідна Бджілка може бути складною у керуванні. Радіус повороту залежить від її швидкості, тому постарайтеся не стріляти на повну силу.</translation>
+    </message>
+    <message>
+        <source>Downloadable Content</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -773,15 +791,15 @@
     </message>
     <message>
         <source>Error</source>
-        <translation type="unfinished">Помилка</translation>
+        <translation>Помилка</translation>
     </message>
     <message>
         <source>Please enter room name</source>
-        <translation type="unfinished">Введіть назву кімнати</translation>
+        <translation>Введіть назву кімнати</translation>
     </message>
     <message>
         <source>OK</source>
-        <translation type="unfinished">Так</translation>
+        <translation>Так</translation>
     </message>
 </context>
 <context>
@@ -1003,10 +1021,10 @@
     </message>
     <message numerus="yes">
         <source>%1 players online</source>
-        <translation type="unfinished">
-            <numerusform></numerusform>
-            <numerusform></numerusform>
-            <numerusform></numerusform>
+        <translation>
+            <numerusform>%1 гравець в мережі</numerusform>
+            <numerusform>%1 гравця в мережі</numerusform>
+            <numerusform>%1 гравців в мережі</numerusform>
         </translation>
     </message>
 </context>
@@ -1026,7 +1044,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>Додати невразливу рамку навколо місцевості</translation>
+        <translation type="obsolete">Додати невразливу рамку навколо місцевості</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1130,6 +1148,14 @@
     </message>
     <message>
         <source>Teams in each clan take successive turns sharing their turn time.</source>
+        <translation>Команди в кожному клані здійснюють послідовні ходи, поділяючи час ходу.</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>Додати невразливу рамку навколо місцевості</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -1227,7 +1253,7 @@
     </message>
     <message>
         <source>Update</source>
-        <translation type="unfinished">Оновити</translation>
+        <translation>Оновити</translation>
     </message>
 </context>
 <context>
@@ -1377,27 +1403,27 @@
     </message>
     <message>
         <source>Red/Cyan grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Черв./Блак. відтінки сірого</translation>
     </message>
     <message>
         <source>Cyan/Red grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Блак./Черв. відтінки сірого</translation>
     </message>
     <message>
         <source>Red/Blue grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Черв./Синій відтінки сірого</translation>
     </message>
     <message>
         <source>Blue/Red grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Синій/Черв. відтінки сірого</translation>
     </message>
     <message>
         <source>Red/Green grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Черв./Зел. відтінки сірого</translation>
     </message>
     <message>
         <source>Green/Red grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>Зел./Черв. відтінки сірого</translation>
     </message>
 </context>
 <context>
@@ -1626,32 +1652,28 @@
         <translation>% Довжина Мотузки</translation>
     </message>
     <message>
-        <source>Gameplay</source>
-        <translation type="obsolete">Геймплей</translation>
-    </message>
-    <message>
         <source>Stereo rendering</source>
         <translation>Стерео рендеринг</translation>
     </message>
     <message>
         <source>Game Options</source>
-        <translation type="unfinished"></translation>
+        <translation>Параметри гри</translation>
     </message>
     <message>
         <source>Style</source>
-        <translation type="unfinished"></translation>
+        <translation>Стиль</translation>
     </message>
     <message>
         <source>Scheme</source>
-        <translation type="unfinished"></translation>
+        <translation>Схема</translation>
     </message>
     <message>
         <source>Password</source>
-        <translation type="unfinished">Пароль</translation>
+        <translation>Пароль</translation>
     </message>
     <message>
         <source>% Get Away Time</source>
-        <translation type="unfinished"></translation>
+        <translation>% Час Тікати</translation>
     </message>
 </context>
 <context>
@@ -1660,6 +1682,10 @@
         <source>unnamed</source>
         <translation>без_назви</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -2014,6 +2040,10 @@
     </message>
     <message>
         <source>Tag Team</source>
+        <translation>Збірна Команда</translation>
+    </message>
+    <message>
+        <source>Add Bottom Border</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
--- a/share/hedgewars/Data/Locale/hedgewars_zh_CN.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_zh_CN.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -122,6 +122,14 @@
         <comment>File Types</comment>
         <translation>刺猬大作战存档文件</translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -379,12 +387,20 @@
     </message>
     <message>
         <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
-        <translation>绘制的地图 (*.hwmap);;全部文件 (*.*)</translation>
+        <translation type="obsolete">绘制的地图 (*.hwmap);;全部文件 (*.*)</translation>
     </message>
     <message>
         <source>Save drawn map</source>
         <translation>保存绘制的地图</translation>
     </message>
+    <message>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageEditTeam</name>
@@ -772,6 +788,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -1054,7 +1074,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>添加不可毁坏地边界</translation>
+        <translation type="obsolete">添加不可毁坏地边界</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1152,6 +1172,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>添加不可毁坏地边界</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1708,6 +1736,10 @@
         <source>unnamed</source>
         <translation>无名</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -2064,6 +2096,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/hedgewars_zh_TW.ts	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/hedgewars_zh_TW.ts	Fri Sep 16 18:17:16 2011 +0200
@@ -122,6 +122,14 @@
         <comment>File Types</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Demo name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Demo name:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HWGame</name>
@@ -375,11 +383,15 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Drawn Maps (*.hwmap);;All files (*.*)</source>
+        <source>Save drawn map</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Save drawn map</source>
+        <source>Drawn Maps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All files</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -720,6 +732,10 @@
         <comment>Tips</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Downloadable Content</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageMultiplayer</name>
@@ -1013,7 +1029,7 @@
     </message>
     <message>
         <source>Add an indestructable border around the terrain</source>
-        <translation>添加不可毀壞地邊界</translation>
+        <translation type="obsolete">添加不可毀壞地邊界</translation>
     </message>
     <message>
         <source>Lower gravity</source>
@@ -1087,6 +1103,14 @@
         <source>Teams in each clan take successive turns sharing their turn time.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add an indestructible border around the terrain</source>
+        <translation>添加不可毀壞地邊界</translation>
+    </message>
+    <message>
+        <source>Add an indestructible border along the bottom</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageSelectWeapon</name>
@@ -1611,6 +1635,10 @@
         <source>unnamed</source>
         <translation>無名</translation>
     </message>
+    <message>
+        <source>hedgehog %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QMainWindow</name>
@@ -1967,6 +1995,10 @@
         <source>Tag Team</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Add Bottom Border</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>binds</name>
--- a/share/hedgewars/Data/Locale/it.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/it.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -2,25 +2,34 @@
 --      ["..."] = "",
 	[":("] = ":(",
 	["!!!"] = "!!!",
---      ["Accuracy Bonus!"] = "",
---      ["a Hedgewars mini-game"] = "", -- Space_Invasion, The_Specialists
+--      ["Accuracy Bonus!"] = "Bonus accuratezza",
+--      ["Achievement Unlocked"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
+--      ["a Hedgewars mini-game"] = "Mini gioco Hedgewars", -- Space_Invasion, The_Specialists
 	["Aiming Practice"] = "Pratica la tua mira", --Bazooka, Shotgun, SniperRifle
---      ["Ammo"] = "",
---      ["Ammo Depleted!"] = "",
---      ["Ammo Maniac!"] = "",
---      ["Available points remaining: "] = "",
+--      ["Ammo"] = "Munizioni",
+--      ["Ammo Depleted!"] = "Munizioni scarse!",
+--      ["ammo extended!"] = "",
+--      ["Ammo is reset at the end of your turn."] = "",
+--      ["Ammo Maniac!"] = "Maniaco delle munizioni!",
+--      ["Available points remaining: "] = "Punti disponibili rimasti: ",
+--      ["[Backspace]"] = "[Cancella]",
+--      ["Bamboo Thicket"] = "",
+--      ["Barrel Eater!"] = "",
+--      ["Barrel Launcher"] = "",
 	["Bat balls at your enemies and|push them into the sea!"] = "Lancia delle palle ai tuoi nemici|e spingili in acqua!",
 	["Bat your opponents through the|baskets and out of the map!"] = "Manda (colpendoli) i tuoi nemici|in acqua attraverso i canestri laterali!",
 	["Bazooka Training"] = "Addestramento con il Bazooka",
 	["Best laps per team: "] = "Tempo migliore per squadra: ",
---      ["Best Team Times: "] = "",
+--      ["Best Team Times: "] = "Tempi della squadra migliore: ",
 	["Bloody Rookies"] = "Reclute Sanguinose", -- 01#Boot_Camp, User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree
---      ["BOOM!"] = "",
---      ["Boom!"] = "BOOM!",
+--      ["BOOM!"] = "BOOM!",
+--      ["Boom!"] = "Boom!",
 --      ["Boss defeated!"] = "",
 --      ["Boss Slayer!"] = "",
+--      ["Build a track and race."] = "",
 	["CAPTURE THE FLAG"] = "Cattura la Bandiera",
 --      ["Careless"] = "",
+--      ["Change Weapon"] = "",
 --      ["Clumsy"] = "",
 	["Codename: Teamwork"] = "Nome in codice: Lavoro di Squadra",
 --      ["Complete the track as fast as you can!"] = "",
@@ -32,8 +41,10 @@
 	["DAMMIT, ROOKIE!"] = "MALEDIZIONE, RECLUTA!",
 	["Dangerous Ducklings"] = "Papere Pericolose",
 --      ["Deadweight"] = "",
+--      ["Demolition is fun!"] = "",
 --      ["Depleted Kamikaze!"] = "",
 --      ["Destroy invaders to score points."] = "",
+--      ["Double Kill!"] = "",
 --      ["Drone Hunter!"] = "",
 --      ["Drowner"] = "",
 --      ["Each turn you get 1-3 random weapons"] = "",
@@ -42,8 +53,11 @@
 	["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "Distruggi tutti gli obiettivi entro il tempo previsto.|Hai armi illimitate per questa missione.", --Bazooka, Shotgun, SniperRifle
 	["Eliminate Poison before the time runs out"] = "Elimina Veleno prima che il tempo finisca",
 	["Eliminate the Blue Team"] = "Elimina il Blue Team",
+--      ["Eliminate the enemy before the time runs out"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Eliminate the enemy hogs to win."] = "",
 --      ["Eliminate the enemy specialists."] = "",
 	["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "- Elimina l'Unità 3378 |- La Resistenza Finale deve sopravvivere",
+--      ["Energetic Engineer"] = "",
 	["Enjoy the swim..."] = "Nuota con piacere...",
 --      ["[Enter]"] = "",
 	["Fastest lap: "] = "Giro migliore: ",
@@ -53,6 +67,9 @@
 	["Flag respawned!"] = "Bandiera restituita!",
 	["Flag returned!"] = "Bandiera recuperata!",
 --      ["Flags, and their home base will be placed where each team ends their first turn."] = "",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+--      ["fuel extended!"] = "",
 --      ["GAME BEGUN!!!"] = "",
 --      ["Game Modifiers: "] = "",
 	["GAME OVER!"] = "GAME OVER!",
@@ -62,11 +79,15 @@
 	["GO! GO! GO!"] = "VAI! VAI! VAI!",
 	["Good birdy......"] = "Bell'uccellino......",
 	["Good luck out there!"] = "Buona fortuna!",
+--      ["Good so far!"] = "",
+--      ["Good to go!"] = "",
 --      ["GOTCHA!"] = "",
+--      ["Grab Mines/Explosives"] = "",
 --      ["Hahahaha!"] = "",
 --      ["Haha, now THAT would be something!"] = "",
 --      ["Hapless Hogs"] = "",
 --      [" Hapless Hogs left!"] = "",
+--      ["Health crates extend your time."] = "",
 --      ["Heavy"] = "",
 	["Hedgewars-Basketball"] = "Hedgewars-Pallacanestro",
 	["Hedgewars-Knockball"] = "Hedgewars-Knockball",
@@ -80,9 +101,15 @@
 --      ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "",
 --      ["Jumping is disabled"] = "",
 --      ["Kamikaze Expert!"] = "",
+--      ["Keep it up!"] = "",
+--      ["Killing spree!"] = "",
 --      ["KILLS"] = "",
+--      ["Last Target!"] = "",
 --      ["[Left Shift]"] = "",
 	["Listen up, maggot!!"] = "Recluta, Attenzione!!",
+--      ["Lively Lifeguard"] = "",
+--      ["Mine Deployer"] = "",
+--      ["Mine Eater!"] = "",
 --      ["|- Mines Time:"] = "|-Timer delle mine:", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 	["MISSION FAILED"] = "MISSIONE FALLITA", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 	["MISSION SUCCESSFUL"] = "MISSIONE COMPLETATA CON SUCCESSO", -- User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
@@ -90,9 +117,12 @@
 --      ["Movement: [Up], [Down], [Left], [Right]"] = "",
 --      ["Multi-shot!"] = "",
 --      ["Nameless Heroes"] = "",
+--      ["New Barrels Per Turn"] = "",
 --      ["NEW CLAN RECORD: "] = "",
 	["NEW fastest lap: "] = "Nuovo giro migliore: ",
+--      ["New Mines Per Turn"] = "",
 --      ["NEW RACE RECORD: "] = "",
+--      ["Newton's Hammock"] = "",
 --      ["NOT ENOUGH WAYPOINTS"] = "",
 	["Not So Friendly Match"] = "Partita non molto amichevole", -- Basketball, Knockball
 	["Oh no! Just try again!"] = "Oh no! Prova ancora!", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
@@ -100,15 +130,21 @@
 	["Operation Diver"] = "Operazione Sub",
 	["Opposing Team: "] = "Squadra Nemica: ",
 	["Pathetic Hog #%d"] = "Riccio Patetico #%d",
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
 --      ["Per-Hog Ammo"] = "",
 --      ["Place more waypoints using [ENTER]"] = "",
+--      ["Place more waypoints using the 'Air Attack' weapon."] = "",
 --      ["points"] = "", -- Control, Space_Invasion
 	["Poison"] = "Veleno",
 --      ["Power Remaining"] = "",
+--      ["Prepare yourself"] = "",
 --      ["Press [Precise] to skip intro"] = "",
 --      ["Race complexity limit reached."] = "",
+--      ["RACER"] = "",
 	[" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = " - Riporta la bandiera nemica alla tua base per guadagnare un punto| - La prima squadra a catturarne 3 vince! | - Puoi guadagnare punti solo quando la tua bandiera si trova nella tua base! | - I ricci lasceranno cadere la bandiera se uccisi o caduti in acqua! | - Le bandiere cadute possono essere restituite o ricatturate! | - I ricci risorgono dalla morte!",
+--      ["Round Limit:"] = "",
 --      ["Round Limit"] = "",
+--      ["Rounds Complete: "] = "",
 --      ["Rounds Complete"] = "",
 --      ["RULES OF THE GAME [Press ESC to view]"] = "",
 	["RULES OF THE GAME [Press ESC to view]"] = "REGOLE DEL GIOCO (Premi ESC per visualizzarle)",
@@ -117,6 +153,7 @@
 --      ["SCORE"] = "",
 --      ["sec"] = "sec", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
 	["See ya!"] = "Ci vediamo!",
+--      ["selected!"] = "",
 --      ["s"] = "", -- GaudyRacer, Space_Invasion
 --      ["Shield boosted! +30 power"] = "",
 --      ["Shield Depleted"] = "",
@@ -128,7 +165,7 @@
 --      ["Shield Seeker!"] = "",
 	["Shotgun Team"] = "Squadra FaP",
 	["Shotgun Training"] = "Allenamento con il Fucile a Pompa",
---      ["Shots Left: "] = "", -- GaudyRacer, Tumbler
+--      ["shots remaining."] = "",
 --      ["Silly"] = "",
 --      ["Sinky"] = "",
 	["%s is out and Team %d|scored a penalty!| |Score:"] = "%s è fuori dal campo e la squadra %d|prende una penalità!| |Punteggio:", -- Basketball, Knockball
@@ -147,27 +184,34 @@
 --      ["The flag will respawn next round."] = "La bandiera verrà restituita alla fine del turno.",
 --      ["The Nameless One"] = "",
 --      ["THE SPECIALISTS"] = "",
+--      ["This one's tricky."] = "",
 --      ["This rain is really something..."] = "",
 --      ["TIME: "] = "",
 --      ["Timed Kamikaze!"] = "",
 --      ["Time Extended!"] = "",
---      ["Time Left: "] = "",
+--      ["Time Extension"] = "",
 --      ["Toggle Shield"] = "",
 	["Toxic Team"] = "Team Velenoso", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["TRACK COMPLETED"] = "",
---      ["Track Time: "] = "",
+--      ["TRACK FAILED!"] = "",
 	["TrophyRace"] = "TrophyRace",
 	["T_T"] = "T_T",
+--      ["Tumbling Time Extended!"] = "",
 --      ["Turn Time"] = "",
+--      ["Unit"] = "",
 	["Unit 3378"] = "Unità 3378",
+--      ["Unit 835"] = "",
 --      ["Unlimited Attacks"] = "",
+--      ["Unstoppable!"] = "",
 --      ["User Challenge"] = "",
 	["Use your rope to get from start to finish as fast as you can!"] = "Usa la tua corda per raggiungere il traguardo il più velocemente possibile!",
---      ["v.06"] = "",
 --      ["Victory for the "] = "", -- CTF_Blizzard, Capture_the_Flag
 	["Victory for the"] = "La vittoria è di",
 --      ["Waypoint placed."] = "",
+--      ["Way-Points Remaining"] = "",
 --      ["Weapons Reset"] = "",
+--      ["Well done."] = "",
+--      ["Will this ever end?"] = "",
 --      ["WINNING TIME: "] = "",
 --      ["You'd almost swear the water was rising!"] = "",
 	["You have SCORED!!"] = "Hai guadagnato un PUNTO!",
--- a/share/hedgewars/Data/Locale/ko.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/ko.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -3,12 +3,19 @@
 --      ["!!!"] = "",
 --      ["..."] = "",
 --      ["Accuracy Bonus!"] = "",
+--      ["Achievement Unlocked"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
 --      ["a Hedgewars mini-game"] = "", -- Space_Invasion, The_Specialists
 --      ["Aiming Practice"] = "", --Bazooka, Shotgun, SniperRifle
 --      ["Ammo"] = "",
 --      ["Ammo Depleted!"] = "",
+--      ["ammo extended!"] = "",
+--      ["Ammo is reset at the end of your turn."] = "",
 --      ["Ammo Maniac!"] = "",
 --      ["Available points remaining: "] = "",
+--      ["[Backspace]"] = "",
+--      ["Bamboo Thicket"] = "",
+--      ["Barrel Eater!"] = "",
+--      ["Barrel Launcher"] = "",
 --      ["Bat balls at your enemies and|push them into the sea!"] = "",
 --      ["Bat your opponents through the|baskets and out of the map!"] = "",
 --      ["Bazooka Training"] = "",
@@ -19,8 +26,10 @@
 --      ["BOOM!"] = "",
 --      ["Boss defeated!"] = "",
 --      ["Boss Slayer!"] = "",
+--      ["Build a track and race."] = "",
 --      ["CAPTURE THE FLAG"] = "",
 --      ["Careless"] = "",
+--      ["Change Weapon"] = "",
 --      ["Clumsy"] = "",
 --      ["Codename: Teamwork"] = "",
 --      ["Complete the track as fast as you can!"] = "",
@@ -32,8 +41,10 @@
 --      ["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "",
 --      ["Dangerous Ducklings"] = "",
 --      ["Deadweight"] = "",
+--      ["Demolition is fun!"] = "",
 --      ["Depleted Kamikaze!"] = "",
 --      ["Destroy invaders to score points."] = "",
+--      ["Double Kill!"] = "",
 --      ["Drone Hunter!"] = "",
 --      ["Drowner"] = "",
 --      ["Each turn you get 1-3 random weapons"] = "",
@@ -42,8 +53,11 @@
 --      ["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "", --Bazooka, Shotgun, SniperRifle
 --      ["Eliminate Poison before the time runs out"] = "",
 --      ["Eliminate the Blue Team"] = "",
+--      ["Eliminate the enemy before the time runs out"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Eliminate the enemy hogs to win."] = "",
 --      ["Eliminate the enemy specialists."] = "",
 --      ["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "",
+--      ["Energetic Engineer"] = "",
 --      ["Enjoy the swim..."] = "",
 --      ["[Enter]"] = "",
 --      ["Fastest lap: "] = "",
@@ -53,6 +67,9 @@
 --      ["Flag respawned!"] = "",
 --      ["Flag returned!"] = "",
 --      ["Flags, and their home base will be placed where each team ends their first turn."] = "",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+--      ["fuel extended!"] = "",
 --      ["GAME BEGUN!!!"] = "",
 --      ["Game Modifiers: "] = "",
 --      ["GAME OVER!"] = "",
@@ -62,11 +79,15 @@
 --      ["GO! GO! GO!"] = "",
 --      ["Good birdy......"] = "",
 --      ["Good luck out there!"] = "",
+--      ["Good so far!"] = "",
+--      ["Good to go!"] = "",
 --      ["GOTCHA!"] = "",
+--      ["Grab Mines/Explosives"] = "",
 --      ["Hahahaha!"] = "",
 --      ["Haha, now THAT would be something!"] = "",
 --      ["Hapless Hogs"] = "",
 --      [" Hapless Hogs left!"] = "",
+--      ["Health crates extend your time."] = "",
 --      ["Heavy"] = "",
 --      ["Hedgewars-Basketball"] = "",
 --      ["Hedgewars-Knockball"] = "",
@@ -80,9 +101,15 @@
 --      ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "",
 --      ["Jumping is disabled"] = "",
 --      ["Kamikaze Expert!"] = "",
+--      ["Keep it up!"] = "",
+--      ["Killing spree!"] = "",
 --      ["KILLS"] = "",
+--      ["Last Target!"] = "",
 --      ["[Left Shift]"] = "",
 --      ["Listen up, maggot!!"] = "",
+--      ["Lively Lifeguard"] = "",
+--      ["Mine Deployer"] = "",
+--      ["Mine Eater!"] = "",
 --      ["|- Mines Time:"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["MISSION FAILED"] = "", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["MISSION SUCCESS"] = "",
@@ -90,9 +117,12 @@
 --      ["Movement: [Up], [Down], [Left], [Right]"] = "",
 --      ["Multi-shot!"] = "",
 --      ["Nameless Heroes"] = "",
+--      ["New Barrels Per Turn"] = "",
 --      ["NEW CLAN RECORD: "] = "",
 --      ["NEW fastest lap: "] = "",
+--      ["New Mines Per Turn"] = "",
 --      ["NEW RACE RECORD: "] = "",
+--      ["Newton's Hammock"] = "",
 --      ["NOT ENOUGH WAYPOINTS"] = "",
 --      ["Not So Friendly Match"] = "", -- Basketball, Knockball
 --      ["Oh no! Just try again!"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
@@ -100,15 +130,21 @@
 --      ["Operation Diver"] = "",
 --      ["Opposing Team: "] = "",
 --      ["Pathetic Hog #%d"] = "",
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
 --      ["Per-Hog Ammo"] = "",
 --      ["Place more waypoints using [ENTER]"] = "",
+--      ["Place more waypoints using the 'Air Attack' weapon."] = "",
 --      ["points"] = "", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
 --      ["Poison"] = "",
 --      ["Power Remaining"] = "",
+--      ["Prepare yourself"] = "",
 --      ["Press [Precise] to skip intro"] = "",
 --      ["Race complexity limit reached."] = "",
+--      ["RACER"] = "",
 --      [" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = "",
+--      ["Round Limit:"] = "",
 --      ["Round Limit"] = "",
+--      ["Rounds Complete: "] = "",
 --      ["Rounds Complete"] = "",
 --      ["RULES OF THE GAME [Press ESC to view]"] = "",
 --      ["s|"] = "",
@@ -116,6 +152,7 @@
 --      ["SCORE"] = "",
 --      ["sec"] = "", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
 --      ["See ya!"] = "",
+--      ["selected!"] = "",
 --      ["s"] = "", -- GaudyRacer, Space_Invasion
 --      ["Shield boosted! +30 power"] = "",
 --      ["Shield Depleted"] = "",
@@ -127,7 +164,7 @@
 --      ["Shield Seeker!"] = "",
 --      ["Shotgun Team"] = "",
 --      ["Shotgun Training"] = "",
---      ["Shots Left: "] = "", -- GaudyRacer, Tumbler
+--      ["shots remaining."] = "",
 --      ["Silly"] = "",
 --      ["Sinky"] = "",
 --      ["%s is out and Team %d|scored a penalty!| |Score:"] = "", -- Basketball, Knockball
@@ -146,26 +183,33 @@
 --      ["The flag will respawn next round."] = "",
 --      ["The Nameless One"] = "",
 --      ["THE SPECIALISTS"] = "",
+--      ["This one's tricky."] = "",
 --      ["This rain is really something..."] = "",
 --      ["TIME: "] = "",
 --      ["Timed Kamikaze!"] = "",
 --      ["Time Extended!"] = "",
---      ["Time Left: "] = "",
+--      ["Time Extension"] = "",
 --      ["Toggle Shield"] = "",
 --      ["Toxic Team"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["TRACK COMPLETED"] = "",
---      ["Track Time: "] = "",
+--      ["TRACK FAILED!"] = "",
 --      ["TrophyRace"] = "",
 --      ["T_T"] = "",
+--      ["Tumbling Time Extended!"] = "",
 --      ["Turn Time"] = "",
+--      ["Unit"] = "",
 --      ["Unit 3378"] = "",
+--      ["Unit 835"] = "",
 --      ["Unlimited Attacks"] = "",
+--      ["Unstoppable!"] = "",
 --      ["User Challenge"] = "",
 --      ["Use your rope to get from start to finish as fast as you can!"] = "",
---      ["v.06"] = "",
 --      ["Victory for the "] = "", -- CTF_Blizzard, Capture_the_Flag
 --      ["Waypoint placed."] = "",
+--      ["Way-Points Remaining"] = "",
 --      ["Weapons Reset"] = "",
+--      ["Well done."] = "",
+--      ["Will this ever end?"] = "",
 --      ["WINNING TIME: "] = "",
 --      ["You'd almost swear the water was rising!"] = "",
 --      ["You have SCORED!!"] = "",
--- a/share/hedgewars/Data/Locale/lt.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/lt.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -3,12 +3,19 @@
    ["!!!"] = "!!!",
    ["..."] = "...",
    ["Accuracy Bonus!"] = "Taiklumo Bonusas!",
+--      ["Achievement Unlocked"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
    ["a Hedgewars mini-game"] = "Eþiu karu mini þaidimas", -- Space_Invasion, The_Specialists
    ["Aiming Practice"] = "Taiklumo Treniruotë", --Bazooka, Shotgun, SniperRifle
+   ["Ammo Depleted!"] = "Nusodrintojo Kulkos!",
+--      ["ammo extended!"] = "",
+--      ["Ammo is reset at the end of your turn."] = "",
    ["Ammo"] = "Kulkos",
-   ["Ammo Depleted!"] = "Nusodrintojo Kulkos!",
    ["Ammo Maniac!"] = "Kulku Maniakas!",
    ["Available points remaining: "] = "Pajamumu taðku liko: ",
+--      ["[Backspace]"] = "",
+--      ["Bamboo Thicket"] = "",
+--      ["Barrel Eater!"] = "",
+--      ["Barrel Launcher"] = "",
    ["Bat balls at your enemies and|push them into the sea!"] = "Dauþk is kamuoliu i savo prieðus|ir nustumk juos i jûra!",
    ["Bat your opponents through the|baskets and out of the map!"] = "Dauþk savo obonentus pro kaðes|ir ið þemëlapio!",
    ["Bazooka Training"] = "Bazukos Treniruotë",
@@ -19,8 +26,10 @@
    ["BOOM!"] = "BOOM!",
    ["Boss defeated!"] = "Bosas Nugalëtas!",
    ["Boss Slayer!"] = "Bosu Þudikas!",
+--      ["Build a track and race."] = "",
    ["CAPTURE THE FLAG"] = "Pagriebk Vëliava",
    ["Careless"] = "Neatsargus",
+--      ["Change Weapon"] = "",
    ["Clumsy"] = "Durnelis",
    ["Codename: Teamwork"] = "Kodas: Komandinis Darbas",
    ["Complete the track as fast as you can!"] = "Apvaryk trasa taip greitai kaip gali!",
@@ -28,12 +37,14 @@
    ["Congratulations! You've eliminated all targets|within the allowed time frame."] = "Sveikinu! Tu pradanginai visus taikinius|per leista laika.", --Bazooka, Shotgun, SniperRifle
    ["Control pillars to score points."] = "Valdyk stulpus ir gausi taðku.",
    ["Cybernetic Empire"] = "Kibernetinë Karalystë",
+   ["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "PO VELNIU EILINI NULIPK MAN NUO GALVOS!",
    ["DAMMIT, ROOKIE!"] = "PO VELNIU EILINI!",
-   ["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "PO VELNIU EILINI NULIPK MAN NUO GALVOS!",
    ["Dangerous Ducklings"] = "Pavojingos Antis",
    ["Deadweight"] = "Dedveitas",
+--      ["Demolition is fun!"] = "",
    ["Depleted Kamikaze!"] = "Nusodrintojo Kamikaze!",
    ["Destroy invaders to score points."] = "Sunaikink Isiverþëjus Ir Gauk Taðku.",
+--      ["Double Kill!"] = "",
    ["Drone Hunter!"] = "Drone Medþiotojas!",
    ["Drowner"] = "Skendëjas",
    ["Each turn you get 1-3 random weapons"] = "Kekviena Eile Gausi 1-3 Atsitiktiniu Ginklu",
@@ -42,8 +53,11 @@
    ["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "Sunaikink Visus taikinius kol neiðseko laikas.|Ðitai misijai gausi nesibaigianèiu kulku.", --Bazooka, Shotgun, SniperRifle
    ["Eliminate Poison before the time runs out"] = "Sunaikink Nuodus kol nepasibaigë laikas",
    ["Eliminate the Blue Team"] = "Sunaikink Mëlyna komanda",
+--      ["Eliminate the enemy before the time runs out"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Eliminate the enemy hogs to win."] = "",
    ["Eliminate the enemy specialists."] = "Sunaikink prieðus specialistus.",
    ["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "- Sunaikink Tipa 3378 |- Silpnaus atsparumo tvirtovë turi iðlikti",
+--      ["Energetic Engineer"] = "",
    ["Enjoy the swim..."] = "Pasimëgauk Rlaukimu...",
    ["[Enter]"] = "[ENTER"],
    ["Fastest lap: "] = "Greièiausias Ratas: ",
@@ -53,6 +67,9 @@
    ["Flag respawned!"] = "Vëliava Atsigavo!",
    ["Flag returned!"] = "Vëliava Sugraþinta!",
    ["Flags, and their home base will be placed where each team ends their first turn."] = "Vëliavos, Ir Ju Bazës Bus Padëtos Kur Kekviena Komanda Pabaigs Ëjima.",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+--      ["fuel extended!"] = "",
    ["GAME BEGUN!!!"] = "Þaidimas Prasidëjo!!!",
    ["Game Modifiers: "] = "Þaidimo Modifikatoriai: ",
    ["GAME OVER!"] = "Þaidimas Baigtas!",
@@ -62,11 +79,15 @@
    ["GO! GO! GO!"] = "Bëk! Bëk! Bëk!",
    ["Good birdy......"] = "Geras Paukðtelis......",
    ["Good luck out there!"] = "Sëkmës Tau Ten!",
+--      ["Good so far!"] = "",
+--      ["Good to go!"] = "",
    ["GOTCHA!"] = "Prigavau!",
+--      ["Grab Mines/Explosives"] = "",
    ["Hahahaha!"] = "Hahahaha!",
    ["Haha, now THAT would be something!"] = "Haha, na tai jau butu kaþkas!",
+   [" Hapless Hogs left!"] = " Nelaimingu Eþiu Liko!",
    ["Hapless Hogs"] = "Nelaimingi Eþiai",
-   [" Hapless Hogs left!"] = " Nelaimingu Eþiu Liko!",
+--      ["Health crates extend your time."] = "",
    ["Heavy"] = "Sunku",
    ["Hedgewars-Basketball"] = "Eþiukaru-Krepðinis",
    ["Hedgewars-Knockball"] = "Eþiukaru-Trenktaskamuolys",
@@ -80,19 +101,28 @@
    ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "Geras dalykas kad MARAS dar po 99 eiliu...",
    ["Jumping is disabled"] = "Ðokimas ira iðjungtas",
    ["Kamikaze Expert!"] = "Kamikazes Ekspertas!",
+--      ["Keep it up!"] = "",
+--      ["Killing spree!"] = "",
    ["KILLS"] = "Nuþudymai",
+--      ["Last Target!"] = "",
    ["[Left Shift]"] = "[Kairis Shiftas"],
    ["Listen up, maggot!!"] = "Paklausyk eilini!!",
+--      ["Lively Lifeguard"] = "",
+--      ["Mine Deployer"] = "",
+--      ["Mine Eater!"] = "",
    ["|- Mines Time:"] = "|- Minu Laikas:", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
    ["MISSION FAILED"] = "Misija Nepavyko", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
+   ["MISSION SUCCESSFUL"] = "Misija Buvo Ivykdita", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
    ["MISSION SUCCESS"] = "Misija Pavyko",
-   ["MISSION SUCCESSFUL"] = "Misija Buvo Ivykdita", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
    ["Movement: [Up], [Down], [Left], [Right]"] = "Judëjimas: [I Virðu, [I Apaèia], [I Kaire], [I Deðine]"],
    ["Multi-shot!"] = "Dvigubas-Ðuvis!",
    ["Nameless Heroes"] = "Bevardþiai Herojiai",
+--      ["New Barrels Per Turn"] = "",
    ["NEW CLAN RECORD: "] = "Naujas Klano Rekordas: ",
    ["NEW fastest lap: "] = "Naujas Greièiausias Ratas: ",
+--      ["New Mines Per Turn"] = "",
    ["NEW RACE RECORD: "] = "Naujas Lenktyniu Rekordas: ",
+--      ["Newton's Hammock"] = "",
    ["NOT ENOUGH WAYPOINTS"] = "Neuþtenka Kelio Taðku",
    ["Not So Friendly Match"] = "Ne Toks Jau Ir Draugiðkas Turnyras", -- Basketball, Knockball
    ["Oh no! Just try again!"] = "O NE! Tiesiog Bandyk Vël", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
@@ -100,23 +130,28 @@
    ["Operation Diver"] = "Operacijos Vairuotojas",
    ["Opposing Team: "] = "Pasiprieðinanti Komanda: ",
    ["Pathetic Hog #%d"] = "Niekam Tikes Eþys #%d",
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
    ["Per-Hog Ammo"] = "Kulkos Per-Eþy",
    ["Place more waypoints using [ENTER]"] = "Padëk Daugiau Kelio Taðku Su [ENTER"],
+--      ["Place more waypoints using the 'Air Attack' weapon."] = "",
    ["points"] = "taðkai", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
    ["Poison"] = "Nuodai",
    ["Power Remaining"] = "Jëgos Liko",
+--      ["Prepare yourself"] = "",
    ["Press [Precise] to skip intro"] = "Spausk [TaikluNusitaikima kad baigtum iëjima"],
    ["Race complexity limit reached."] = "Lenktyniu Sudëtingumo Limitas Pasiektas.",
+--      ["RACER"] = "",
    [" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = " - Graþink prieðu vëliava i savo baze ir gausi taðku | - Pirma komanda su 3 vëliavom laimi | - Taðkus gausi tik tada kaip tavo vëliava bazëje | - Eþiai pames vëliava jeigu mirs, arba paskes | - Pamestos vëliavos gali buti graþintos arba pavogtos | - Eþiai atsikelia kaip nuþudyti",
+--      ["Round Limit:"] = "",
    ["Round Limit"] = "Raundu Limitas",
+--      ["Rounds Complete: "] = "",
    ["Rounds Complete"] = "Raundai Ivykditi",
    ["RULES OF THE GAME [Press ESC to view]"] = "ÞAIDIMO TAISYKLES [Spausk ESC Kad Parodytu"],
-   ["s|"] = "s|",
    ["Save as many hapless hogs as possible!"] = "Iðgelbëk kuo daugiau nelaimingu eþiu!",
    ["SCORE"] = "Taðkai",
    ["sec"] = "sek", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
    ["See ya!"] = "Iki!",
-   ["s"] = "s", -- GaudyRacer, Space_Invasion
+--      ["selected!"] = "",
    ["Shield boosted! +30 power"] = "Skydas Pagerintas! +30 jëga",
    ["Shield Depleted"] = "Skydas Nusodrintas",
    ["Shield is fully recharged!"] = "Skydas Pilnai Pakrautas!",
@@ -127,7 +162,7 @@
    ["Shield Seeker!"] = "Skydo Ieðkotojas!",
    ["Shotgun Team"] = "Ðratinio Ðautuvo Komanda",
    ["Shotgun Training"] = "Ðratinio Ðautuvo Treniruotë",
-   ["Shots Left: "] = "Liko Ðuviu: ", -- GaudyRacer, Tumbler
+--      ["shots remaining."] = "",
    ["Silly"] = "Durnelis",
    ["Sinky"] = "Paskenduolis",
    ["%s is out and Team %d|scored a penalty!| |Score:"] = "%s Iðkrito ir komanda %d|gavo bausme!| |Score:", -- Basketball, Knockball
@@ -136,6 +171,8 @@
    ["Sniperz"] = "Snaiperiai",
    ["Sponge"] = "Kempinë",
    ["Spooky Tree"] = "Baisusis Medis",
+   ["s|"] = "s|",
+   ["s"] = "s", -- GaudyRacer, Space_Invasion
    ["STATUS UPDATE"] = "Bûsenos Atnaujinimas", -- GaudyRacer, Space_Invasion
    ["Switched to "] = "Pakeistas i ",
    ["Team %d: "] = "Komanda %d: ",
@@ -146,26 +183,33 @@
    ["The flag will respawn next round."] = "Vëliava atsigaus kita raunda.",
    ["The Nameless One"] = "Bevardis",
    ["THE SPECIALISTS"] = "Specialistai",
+--      ["This one's tricky."] = "",
    ["This rain is really something..."] = "Ðis lietus tikrai kaþkas...",
-   ["TIME: "] = "Laikas: ",
    ["Timed Kamikaze!"] = "Laikina Kamikaze!",
    ["Time Extended!"] = "Laikas Prailgintas!",
-   ["Time Left: "] = "Liko Laiko: ",
+--      ["Time Extension"] = "",
+   ["TIME: "] = "Laikas: ",
    ["Toggle Shield"] = "Perjungti i skyda",
    ["Toxic Team"] = "Toksinë Komanda", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
    ["TRACK COMPLETED"] = "Trasa Ivykdita",
-   ["Track Time: "] = "Trasos Laikas: ",
+--      ["TRACK FAILED!"] = "",
    ["TrophyRace"] = "Trophëju Trasa",
    ["T_T"] = "T_T",
+--      ["Tumbling Time Extended!"] = "",
    ["Turn Time"] = "Eilës Laikas",
+--      ["Unit"] = "",
    ["Unit 3378"] = "Tipas 3378",
+--      ["Unit 835"] = "",
    ["Unlimited Attacks"] = "Nesibaigianèios Atakos",
+--      ["Unstoppable!"] = "",
    ["User Challenge"] = "Vartotojo Iðukis",
    ["Use your rope to get from start to finish as fast as you can!"] = "Naudok virve kad nusigautum nuo starto iki finiðo taip greitai kaip gali!",
-   ["v.06"] = "v.06",
    ["Victory for the "] = "Pergalë ", -- CTF_Blizzard, Capture_the_Flag
    ["Waypoint placed."] = "Kelio Taðkas Pasiektas.",
+--      ["Way-Points Remaining"] = "",
    ["Weapons Reset"] = "Ginklai Atgaivinti",
+--      ["Well done."] = "",
+--      ["Will this ever end?"] = "",
    ["WINNING TIME: "] = "Laimëjimo Laikas: ",
    ["You'd almost swear the water was rising!"] = "Galima pamanyti kad vanduo tikrai kyla!",
    ["You have SCORED!!"] = "Tu gavai TAÐKU!!",
@@ -173,4 +217,4 @@
    ["You've failed. Try again."] = "Tau nepavyko. Bandyk vël.",
    ["You've reached the goal!| |Time: "] = "Tu pasiekiai taikini!| |Laikas: ",
    ["'Zooka Team"] = "'Zukos Komanda",
-   }
+    }
--- a/share/hedgewars/Data/Locale/pl.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/pl.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -3,24 +3,33 @@
     ["!!!"] = "!!!",
     ["..."] = "...",
     ["Accuracy Bonus!"] = "Bonus za celność",
+    ["Achievement Unlocked"] = "Zdobyłeś Osiągnięcie!", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
     ["a Hedgewars mini-game"] = "Mini gra", -- Space_Invasion, The_Specialists
     ["Aiming Practice"] = "Potrenuj celność",
     ["Ammo"] = "Amunicja",
     ["Ammo Depleted!"] = "Koniec amunicji!",
+--      ["ammo extended!"] = "",
+    ["Ammo is reset at the end of your turn."] = "Amunicja jest resetowana przy końcu tury.",
     ["Ammo Maniac!"] = "Nabojowy Maniak!",
     ["Available points remaining: "] = "Pozostały następujące punkty: ",
+--      ["[Backspace]"] = "",
+--      ["Bamboo Thicket"] = "",
+    ["Barrel Eater!"] = "Pożeracz Beczek!",
+    ["Barrel Launcher"] = "Wyrzutnia Beczek",
     ["Bat balls at your enemies and|push them into the sea!"] = "Uderzaj piłkami w swoich przeciwników|i strącaj ich do wody!",
     ["Bat your opponents through the|baskets and out of the map!"] = "Uderzaj swoich przekiwników|wyrzucając przez kosz, poza mapę!",
     ["Bazooka Training"] = "Trening bazooki",
     ["Best laps per team: "] = "Najszybsze okrążenie drużyny: ",
     ["Best Team Times: "] = "Najlepszy czas zespołów",
     ["Bloody Rookies"] = "Żółtodzioby",
+    ["Boom!"] = "BUM!",
     ["BOOM!"] = "BUM!",
-    ["Boom!"] = "BUM!",
     ["Boss defeated!"] = "Boss pokonany!",
     ["Boss Slayer!"] = "Pogromca bossów",
+    ["Build a track and race."] = "Zbuduj trasię i ścigaj się.",
     ["CAPTURE THE FLAG"] = "PRZECHWYĆ FLAGĘ",
     ["Careless"] = "Nieostrożny",
+    ["Change Weapon"] = "Zmień broń",
     ["Clumsy"] = "Fajtłapa",
     ["Codename: Teamwork"] = "Kryptonim: Praca zespołowa",
     ["Complete the track as fast as you can!"] = "Ukończ trasę tak szybko jak tylko potrafisz!",
@@ -32,8 +41,10 @@
     ["DAMMIT, ROOKIE!"] = "Żółtodziobie!",
     ["Dangerous Ducklings"] = "Niebezpieczne Kaczory",
 --      ["Deadweight"] = "",
+    ["Demolition is fun!"] = "Rozwałka jest fajna!",
 --      ["Depleted Kamikaze!"] = "",
     ["Destroy invaders to score points."] = "Zabijaj najeźdźców by zdobyć punkty.",
+    ["Double Kill!"] = "Podwójna śmierć!",
     ["Drone Hunter!"] = "Łowca dronów",
 --      ["Drowner"] = "",
     ["Each turn you get 1-3 random weapons"] = "Z każdą turą dostaniesz 1-3 bronie",
@@ -42,8 +53,11 @@
     ["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "Zniszcz wszystkie cele zanim upłynie czas.|W tej misji masz nieskończoną ilość amunicji.", 
     ["Eliminate Poison before the time runs out"] = "Zabij Truciciela zanim skończy się czas",
     ["Eliminate the Blue Team"] = "Zniszcz niebieską drużynę",
-    ["Eliminate the enemy specialists."] = "Weliminuj specjalistów wroga.",
+    ["Eliminate the enemy before the time runs out"] = "Wyeliminuj przeciwnika przed upłynięciem czasu.", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+    ["Eliminate the enemy hogs to win."] = "Wybij jeże przeciwnika by wygrać.",
+    ["Eliminate the enemy specialists."] = "Zabij specjalistów wroga.",
     ["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "- Rozwal Jednostkę 3378 |- Twoja drużyna musi przetrwać",
+    ["Energetic Engineer"] = "Energetyczny Inżynier",
     ["Enjoy the swim..."] = "Popływaj trochę...",
     ["[Enter]"] = "[Enter]",
     ["Fastest lap: "] = "Najszybsze okrążenie: ",
@@ -53,6 +67,9 @@
     ["Flag respawned!"] = "Flaga przywrócona!",
     ["Flag returned!"] = "Flaga odzyskana!",
     ["Flags, and their home base will be placed where each team ends their first turn."] = "Flagi i baza zostaną umieszzcone tam gdzie zespół zakończy swą pierwszą turę.",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+    ["fuel extended!"] = "zdobyto paliwo",
     ["GAME BEGUN!!!"] = "GRA ROZPOCZĘTA!!!",
     ["Game Modifiers: "] = "Modyfikatory: ",
     ["GAME OVER!"] = "KONIEC GRY!",
@@ -62,11 +79,15 @@
     ["GO! GO! GO!"] = "RUCHY! RUCHY! RUCHY!",
     ["Good birdy......"] = "Dooobry ptaszek...",
     ["Good luck out there!"] = "Powodzenia!",
+    ["Good so far!"] = "Jak dotąd idzie dobrze!",
+    ["Good to go!"] = "Gotowi do akcji!",
     ["GOTCHA!"] = "MAM CIĘ!",
+    ["Grab Mines/Explosives"] = "Chwyć miny/beczki",
     ["Hahahaha!"] = "Hahahaha!",
     ["Haha, now THAT would be something!"] = "Haha, to było by COŚ",
+    [" Hapless Hogs left!"] = " Nieszczęsne Jeże pozostały",
     ["Hapless Hogs"] = "Nieszczęsne Jeże",
-    [" Hapless Hogs left!"] = " Nieszczęsne Jeże pozostały",
+    ["Health crates extend your time."] = "Apteczki dodają czas.",
 --      ["Heavy"] = "",
     ["Hedgewars-Basketball"] = "Hedgewars-Koszykówka",
     ["Hedgewars-Knockball"] = "Hedgewars-Knockball",
@@ -80,43 +101,57 @@
     ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "Jak to dobrze, że Nagła Śmierć jest dopiero za 99 tur...",
     ["Jumping is disabled"] = "Skakanie jest niemożliwe",
 --      ["Kamikaze Expert!"] = "",
+    ["Keep it up!"] = "Tak trzymaj!",
+    ["Killing spree!"] = "Masakra!",
     ["KILLS"] = "Zabicia",
+    ["Last Target!"] = "Ostatni cel!",
     ["[Left Shift]"] = "[Lewy Shift]",
     ["Listen up, maggot!!"] = "Słuchaj mnie, gnido!",
+    ["Lively Lifeguard"] = "Ratownik!",
+--      ["Mine Deployer"] = "",
+    ["Mine Eater!"] = "Pożeracz min!",
     ["|- Mines Time:"] = "|- Czas detonacji min:",
     ["MISSION FAILED"] = "MISJA ZAKOŃCZONA NIEPOWODZENIEM", 
+    ["MISSION SUCCESSFUL"] = "MISJA POWIODŁA SIĘ",  
     ["MISSION SUCCESS"] = "MISJA ZAKOŃCZONA SUKCESEM",
-    ["MISSION SUCCESSFUL"] = "MISJA POWIODŁA SIĘ",  
     ["Movement: [Up], [Down], [Left], [Right]"] = "Poruszanie się: [Góra], [Dół], [Lewo], [Prawo]",
     ["Multi-shot!"] = "Wielokrotny strzał",
     ["Nameless Heroes"] = "Bezimienni Bohaterowie",
+    ["New Barrels Per Turn"] = "Ilość beczek dodanych co turę",
     ["NEW CLAN RECORD: "] = "NOWY REKORD ZESPOŁU: ",
     ["NEW fastest lap: "] = "NOWE najszybsze okrążenie: ",
+    ["New Mines Per Turn"] = "Ilość min dodanych co turę",
     ["NEW RACE RECORD: "] = "NOWY REKORD WYŚCIGU: ",
-    ["NOT ENOUGH WAYPOINTS"] = "BRAK PUNKTÓW ORIENTACYJNYCH",
+    ["Newton's Hammock"] = "Hamak Newtona",
+    ["NOT ENOUGH WAYPOINTS"] = "ZA MAŁO PUNKTÓW KONTROLNYCH",
     ["Not So Friendly Match"] = "Mecz Nie-Do-Końca Towarzyski",  
     ["Oh no! Just try again!"] = "Ojojoj! Spróbuj jeszcze raz!", 
     ["Oh no! Time's up! Just try again."] = "Ajajaj! Koniec czasu! Spróbuj jeszcze raz.",  
     ["Operation Diver"] = "Operacja Nurek",
     ["Opposing Team: "] = "Przeciwna drużyna",
     ["Pathetic Hog #%d"] = "Załosny Jeż #%d",
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
     ["Per-Hog Ammo"] = "Oddzielna amunicja dla jeży",
     ["Place more waypoints using [ENTER]"] = "Postaw więcej punktów orientacyjnych za pomocą [Entera]",
+    ["Place more waypoints using the 'Air Attack' weapon."] = "Postaw więcej punktów orientacyjnych używając [Nalotu]",
     ["points"] = "punkty", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
     ["Poison"] = "Truciciel",
     ["Power Remaining"] = "pkt. energii pozostało",
+    ["Prepare yourself"] = "Przygotuj się",
     ["Press [Precise] to skip intro"] = "Naciśnij [Precyzyjne celowanie] by pominąć intro",
---      ["Race complexity limit reached."] = "",
+    ["Race complexity limit reached."] = "Osiągnięto limit złożoności trasy.",
+    ["RACER"] = "WYŚCIG",
     [" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = " - Przynieś flagę wroga do swojej bazy by zdobyć punkt | - Pierwszy kto zrobi to 3 razy, wygrywa | - Punkt zdobywasz tylko gdy twoja flaga znajduje się w bazie | - Jeże upuszczą flagę gdy zostaną zabite bądź utopione | - Upuszczona flaga może być przywrócona lub przechwycona ponownie | - Jeże odradzają się po śmierci",
+    ["Round Limit:"] = "Ilość rund:",
     ["Round Limit"] = "Ilość rund",
+    ["Rounds Complete: "] = "Ukończono rund: ",
     ["Rounds Complete"] = "Koniec",
     ["RULES OF THE GAME [Press ESC to view]"] = "ZASADY GRY [Naciśnij ESC by zobaczyć]",        
-    ["s|"] = "s|",
     ["Save as many hapless hogs as possible!"] = "Uratuj jak najwięcej nieszczęsnych jeży",
     ["SCORE"] = "PUNKTY",
     ["sec"] = "sek",
     ["See ya!"] = "Do zobaczenia!",
-    ["s"] = "s", -- GaudyRacer, Space_Invasion
+    ["selected!"] = "wybrany!",
     ["Shield boosted! +30 power"] = "Osłona ulepszona: +30 energii",
     ["Shield Depleted"] = "Straciłeś Osłonę",
     ["Shield is fully recharged!"] = "Osłona całkowicie naładowana",
@@ -127,7 +162,7 @@
     ["Shield Seeker!"] = "Zdobywca osłon!",
     ["Shotgun Team"] = "Strzelcy",
     ["Shotgun Training"] = "Trening strzelecki",
-    ["Shots Left: "] = "Pozostało strzałów: ", -- GaudyRacer, Tumbler
+    ["shots remaining."] = "strzałów pozostało.",
     ["Silly"] = "Głuptas",
 --      ["Sinky"] = "",
     ["%s is out and Team %d|scored a penalty!| |Score:"] = "%s utonął i drużyna %d|dostała punkt karny!| |Punktacja:", 
@@ -136,6 +171,8 @@
     ["Sniperz"] = "Snajperzy",
     ["Sponge"] = "Gąbka",
     ["Spooky Tree"] = "Straszne drzewo",
+    ["s|"] = "s|",
+    ["s"] = "s", -- GaudyRacer, Space_Invasion
     ["STATUS UPDATE"] = "WYNIKI", -- GaudyRacer, Space_Invasion
     ["Switched to "] = "Przełączono na ",
     ["Team %d: "] = "Drużyna %d: ",
@@ -146,26 +183,33 @@
     ["The flag will respawn next round."] = "Flaga pojawi się ponownie przy następnej rundzie.",
     ["The Nameless One"] = "Bezimienny",
     ["THE SPECIALISTS"] = "SPECJALIŚCI",
+--      ["This one's tricky."] = "",
 --      ["This rain is really something..."] = "",
     ["TIME: "] = "CZAS: ",
 --      ["Timed Kamikaze!"] = "",
-    ["Time Extended!"] = "Dodatkowy Czas!",
-    ["Time Left: "] = "Pozostały czas: ",
+    ["Time Extended!"] = "Więcej Czasu!",
+    ["Time Extension"] = "Dodatkowy Czas!",
     ["Toggle Shield"] = "Wł/Wył Osłonę",
     ["Toxic Team"] = "Toksyczny zespół", 
     ["TRACK COMPLETED"] = "UKOŃCZONO TRASĘ",
-    ["Track Time: "] = "Czas: ",
+    ["TRACK FAILED!"] = "TRASA NIEUKOŃCZONA!",
     ["TrophyRace"] = "TrophyRace",
     ["T_T"] = "T_T",
+--      ["Tumbling Time Extended!"] = "",
     ["Turn Time"] = "Długość Tury",
+    ["Unit"] = "Jednostka",
     ["Unit 3378"] = "Jednostka 3378",
+    ["Unit 835"] = "Jednostka 835",
 --      ["Unlimited Attacks"] = "",
+    ["Unstoppable!"] = "Nie do zatrzymania!",
 --      ["User Challenge"] = "",
     ["Use your rope to get from start to finish as fast as you can!"] = "Użyj liny by jak najszybciej dotrzec od startu do mety",
-    ["v.06"] = "v.06",
     ["Victory for the "] = "Zwycięstwo przypadło",
-    ["Waypoint placed."] = "Postawiono punkt orientacyjny",
+    ["Waypoint placed."] = "Postawiono punkt kontrolny",
+    ["Way-Points Remaining"] = "Pozostało punktów: ",
     ["Weapons Reset"] = "Bronie odnawiają się",
+    ["Well done."] = "Dobra robota",
+    ["Will this ever end?"] = "Co to się kiedyś skończy?",
     ["WINNING TIME: "] = "ZWYCIĘSKI CZAS: ",
     ["You'd almost swear the water was rising!"] = "Przysiągłbym, że woda zdaje się podnosić!",
     ["You have SCORED!!"] = "Zdobyłeś PUNKT",
--- a/share/hedgewars/Data/Locale/pt_BR.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/pt_BR.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -3,12 +3,19 @@
 --      ["!!!"] = "",
 --      ["..."] = "",
 --      ["Accuracy Bonus!"] = "",
+--      ["Achievement Unlocked"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
 --      ["a Hedgewars mini-game"] = "", -- Space_Invasion, The_Specialists
 	["Aiming Practice"] = "Pratique a sua pontaria", --Bazooka, Shotgun, SniperRifle
 --      ["Ammo"] = "",
 --      ["Ammo Depleted!"] = "",
+--      ["ammo extended!"] = "",
+--      ["Ammo is reset at the end of your turn."] = "",
 --      ["Ammo Maniac!"] = "",
 --      ["Available points remaining: "] = "",
+--      ["[Backspace]"] = "",
+--      ["Bamboo Thicket"] = "",
+--      ["Barrel Eater!"] = "",
+--      ["Barrel Launcher"] = "",
 	["Bat balls at your enemies and|push them into the sea!"] = "Rebata as bolas em direção ao seus|e derrube-os no mar!",
 	["Bat your opponents through the|baskets and out of the map!"] = "Rebata seus oponentes para|fora do mapa através dos cestos!",
 	["Bazooka Training"] = "Treino com a Bazuca",
@@ -19,8 +26,10 @@
 --      ["BOOM!"] = "",
 --      ["Boss defeated!"] = "",
 --      ["Boss Slayer!"] = "",
+--      ["Build a track and race."] = "",
 --      ["CAPTURE THE FLAG"] = "",
 --      ["Careless"] = "",
+--      ["Change Weapon"] = "",
 --      ["Clumsy"] = "",
 --      ["Codename: Teamwork"] = "",
 --      ["Complete the track as fast as you can!"] = "",
@@ -32,8 +41,10 @@
 --      ["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "",
 --      ["Dangerous Ducklings"] = "",
 --      ["Deadweight"] = "",
+--      ["Demolition is fun!"] = "",
 --      ["Depleted Kamikaze!"] = "",
 --      ["Destroy invaders to score points."] = "",
+--      ["Double Kill!"] = "",
 --      ["Drone Hunter!"] = "",
 --      ["Drowner"] = "",
 --      ["Each turn you get 1-3 random weapons"] = "",
@@ -42,8 +53,11 @@
 	["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "Destrua todos os alvos antes que o tempo acabe.|Você tem munição infinita para esta missão.", --Bazooka, Shotgun, SniperRifle
 --      ["Eliminate Poison before the time runs out"] = "",
 --      ["Eliminate the Blue Team"] = "",
+--      ["Eliminate the enemy before the time runs out"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Eliminate the enemy hogs to win."] = "",
 --      ["Eliminate the enemy specialists."] = "",
 --      ["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "",
+--      ["Energetic Engineer"] = "",
 --      ["Enjoy the swim..."] = "",
 --      ["[Enter]"] = "",
 	["Fastest lap: "] = "Volta mais rápida: ",
@@ -53,6 +67,9 @@
 --      ["Flag respawned!"] = "",
 --      ["Flag returned!"] = "",
 --      ["Flags, and their home base will be placed where each team ends their first turn."] = "",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+--      ["fuel extended!"] = "",
 --      ["GAME BEGUN!!!"] = "",
 --      ["Game Modifiers: "] = "",
 --      ["GAME OVER!"] = "",
@@ -62,11 +79,15 @@
 --      ["GO! GO! GO!"] = "",
 --      ["Good birdy......"] = "",
 --      ["Good luck out there!"] = "",
+--      ["Good so far!"] = "",
+--      ["Good to go!"] = "",
 --      ["GOTCHA!"] = "",
+--      ["Grab Mines/Explosives"] = "",
 --      ["Hahahaha!"] = "",
 --      ["Haha, now THAT would be something!"] = "",
 --      ["Hapless Hogs"] = "",
 --      [" Hapless Hogs left!"] = "",
+--      ["Health crates extend your time."] = "",
 --      ["Heavy"] = "",
 	["Hedgewars-Basketball"] = "Hedgewars-Basketball",
 	["Hedgewars-Knockball"] = "Hedgewars-Knockball",
@@ -80,9 +101,15 @@
 --      ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "",
 --      ["Jumping is disabled"] = "",
 --      ["Kamikaze Expert!"] = "",
+--      ["Keep it up!"] = "",
+--      ["Killing spree!"] = "",
 --      ["KILLS"] = "",
+--      ["Last Target!"] = "",
 --      ["[Left Shift]"] = "",
 --      ["Listen up, maggot!!"] = "",
+--      ["Lively Lifeguard"] = "",
+--      ["Mine Deployer"] = "",
+--      ["Mine Eater!"] = "",
 --      ["|- Mines Time:"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["MISSION FAILED"] = "", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["MISSION SUCCESS"] = "",
@@ -90,9 +117,12 @@
 --      ["Movement: [Up], [Down], [Left], [Right]"] = "",
 --      ["Multi-shot!"] = "",
 --      ["Nameless Heroes"] = "",
+--      ["New Barrels Per Turn"] = "",
 --      ["NEW CLAN RECORD: "] = "",
 	["NEW fastest lap: "] = "NOVA volta mais rápida: ",
+--      ["New Mines Per Turn"] = "",
 --      ["NEW RACE RECORD: "] = "",
+--      ["Newton's Hammock"] = "",
 --      ["NOT ENOUGH WAYPOINTS"] = "",
 	["Not So Friendly Match"] = "Partida não muito amigável", -- Basketball, Knockball
 --      ["Oh no! Just try again!"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
@@ -100,15 +130,21 @@
 --      ["Operation Diver"] = "",
 --      ["Opposing Team: "] = "",
 --      ["Pathetic Hog #%d"] = "",
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
 --      ["Per-Hog Ammo"] = "",
 --      ["Place more waypoints using [ENTER]"] = "",
+--      ["Place more waypoints using the 'Air Attack' weapon."] = "",
 --      ["points"] = "", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
 --      ["Poison"] = "",
 --      ["Power Remaining"] = "",
+--      ["Prepare yourself"] = "",
 --      ["Press [Precise] to skip intro"] = "",
 --      ["Race complexity limit reached."] = "",
+--      ["RACER"] = "",
 --      [" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = "",
+--      ["Round Limit:"] = "",
 --      ["Round Limit"] = "",
+--      ["Rounds Complete: "] = "",
 --      ["Rounds Complete"] = "",
 --      ["RULES OF THE GAME [Press ESC to view]"] = "",
 --      ["s|"] = "",
@@ -116,6 +152,7 @@
 --      ["SCORE"] = "",
 --      ["sec"] = "", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
 --      ["See ya!"] = "",
+--      ["selected!"] = "",
 --      ["s"] = "", -- GaudyRacer, Space_Invasion
 --      ["Shield boosted! +30 power"] = "",
 --      ["Shield Depleted"] = "",
@@ -127,7 +164,7 @@
 --      ["Shield Seeker!"] = "",
 	["Shotgun Team"] = "Carabineiros",
 	["Shotgun Training"] = "Treino com a Escopeta",
---      ["Shots Left: "] = "", -- GaudyRacer, Tumbler
+--      ["shots remaining."] = "",
 --      ["Silly"] = "",
 --      ["Sinky"] = "",
 	["%s is out and Team %d|scored a penalty!| |Score:"] = "%s está fora e a Equipe %d|sofreu uma penalidade!| |Pontuação:", -- Basketball, Knockball
@@ -146,26 +183,33 @@
 --      ["The flag will respawn next round."] = "",
 --      ["The Nameless One"] = "",
 --      ["THE SPECIALISTS"] = "",
+--      ["This one's tricky."] = "",
 --      ["This rain is really something..."] = "",
 --      ["TIME: "] = "",
 --      ["Timed Kamikaze!"] = "",
 --      ["Time Extended!"] = "",
---      ["Time Left: "] = "",
+--      ["Time Extension"] = "",
 --      ["Toggle Shield"] = "",
 --      ["Toxic Team"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["TRACK COMPLETED"] = "",
---      ["Track Time: "] = "",
+--      ["TRACK FAILED!"] = "",
 	["TrophyRace"] = "TrophyRace",
 --      ["T_T"] = "",
+--      ["Tumbling Time Extended!"] = "",
 --      ["Turn Time"] = "",
+--      ["Unit"] = "",
 --      ["Unit 3378"] = "",
+--      ["Unit 835"] = "",
 --      ["Unlimited Attacks"] = "",
+--      ["Unstoppable!"] = "",
 --      ["User Challenge"] = "",
 	["Use your rope to get from start to finish as fast as you can!"] = "Use sua corda para ir do início ao fim o mais rápido que você puder!",
---      ["v.06"] = "",
 --      ["Victory for the "] = "", -- CTF_Blizzard, Capture_the_Flag
 --      ["Waypoint placed."] = "",
+--      ["Way-Points Remaining"] = "",
 --      ["Weapons Reset"] = "",
+--      ["Well done."] = "",
+--      ["Will this ever end?"] = "",
 --      ["WINNING TIME: "] = "",
 --      ["You'd almost swear the water was rising!"] = "",
 --      ["You have SCORED!!"] = "",
--- a/share/hedgewars/Data/Locale/pt_PT.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/pt_PT.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -1,26 +1,35 @@
 locale = {
-	["..."] = "...",
 	[":("] = ":(",
 	["!!!"] = "!!!",
+	["..."] = "...",
 --      ["Accuracy Bonus!"] = "",
+--      ["Achievement Unlocked"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
 	["a Hedgewars mini-game"] = "um mini-jogo Hedgewars", -- Space_Invasion, The_Specialists
 	["Aiming Practice"] = "Pratica a tua pontaria", --Bazooka, Shotgun, SniperRifle
+--      ["Ammo Depleted!"] = "",
+--      ["ammo extended!"] = "",
+--      ["Ammo is reset at the end of your turn."] = "",
+--      ["Ammo Maniac!"] = "",
       ["Ammo"] = "Munições",
---      ["Ammo Depleted!"] = "",
---      ["Ammo Maniac!"] = "",
 --      ["Available points remaining: "] = "",
+--      ["[Backspace]"] = "",
+--      ["Bamboo Thicket"] = "",
+--      ["Barrel Eater!"] = "",
+--      ["Barrel Launcher"] = "",
 	["Bat balls at your enemies and|push them into the sea!"] = "Bate bolas contra os teus|enimigos e empurra-os ao mar!",
 	["Bat your opponents through the|baskets and out of the map!"] = "Bate os teus adversarios|fora do mapa acertando com eles no cesto!",
 	["Bazooka Training"] = "Treino com Bazuca",
 	["Best laps per team: "] = "Melhores voltas por equipa: ",
 --      ["Best Team Times: "] = "",
 --      ["Bloody Rookies"] = "", -- 01#Boot_Camp, User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree
+	["Boom!"] = "Boom!",
 	["BOOM!"] = "BOOM!",
-	["Boom!"] = "Boom!",
 	["Boss defeated!"] = "Boss derrotado!",
 --      ["Boss Slayer!"] = "",
+--      ["Build a track and race."] = "",
 	["CAPTURE THE FLAG"] = "CAPTURAR A BANDEIRA",
       ["Careless"] = "Descuidado",
+--      ["Change Weapon"] = "",
 --      ["Clumsy"] = "",
 --      ["Codename: Teamwork"] = "",
 	["Complete the track as fast as you can!"] = "Completa a pista o mais rápido que conseguires!",
@@ -32,8 +41,10 @@
 --      ["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "",
 	["Dangerous Ducklings"] = "Patinhos perigosos",
 --      ["Deadweight"] = "",
+--      ["Demolition is fun!"] = "",
 --      ["Depleted Kamikaze!"] = "",
 --      ["Destroy invaders to score points."] = "",
+--      ["Double Kill!"] = "",
 --      ["Drone Hunter!"] = "",
 --      ["Drowner"] = "",
 --      ["Each turn you get 1-3 random weapons"] = "",
@@ -42,8 +53,11 @@
 	["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "Destrói todos os alvos antes do tempo terminar.|Tens munições infinitas para esta missão.", --Bazooka, Shotgun, SniperRifle
 	["Eliminate Poison before the time runs out"] = "Elimina o Poison antes do tempo terminar.",
 	["Eliminate the Blue Team"] = "Elimina a equipa azul",
+--      ["Eliminate the enemy before the time runs out"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Eliminate the enemy hogs to win."] = "",
 --      ["Eliminate the enemy specialists."] = "",
 --      ["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "",
+--      ["Energetic Engineer"] = "",
 	["Enjoy the swim..."] = "Aproveita o mergulho",
       ["[Enter]"] = "[Enter]",
 	["Fastest lap: "] = "Volta mais rápida: ",
@@ -53,6 +67,9 @@
 	["Flag respawned!"] = "Bandeira reiniciada!",
 	["Flag returned!"] = "Bandeira devolvida!",
 --      ["Flags, and their home base will be placed where each team ends their first turn."] = "",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+--      ["fuel extended!"] = "",
 --      ["GAME BEGUN!!!"] = "",
 --      ["Game Modifiers: "] = "",
 --      ["GAME OVER!"] = "",
@@ -62,11 +79,15 @@
 	["GO! GO! GO!"] = "GO! GO! GO!",
 	["Good birdy......"] = "Bom passarito......",
 	["Good luck out there!"] = "Boa sorte aí fora!",
+--      ["Good so far!"] = "",
+--      ["Good to go!"] = "",
 --      ["GOTCHA!"] = "",
+--      ["Grab Mines/Explosives"] = "",
 	["Hahahaha!"] = "Hahahaha!",
 --      ["Haha, now THAT would be something!"] = "",
 --      ["Hapless Hogs"] = "",
 --      [" Hapless Hogs left!"] = "",
+--      ["Health crates extend your time."] = "",
 --      ["Heavy"] = "",
 	["Hedgewars-Basketball"] = "Hedgewars-Basketball",
 	["Hedgewars-Knockball"] = "Hedgewars-Knockball",
@@ -80,9 +101,15 @@
 --      ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "",
 --      ["Jumping is disabled"] = "",
 	["Kamikaze Expert!"] = "Kamikaze profissional!",
+--      ["Keep it up!"] = "",
+--      ["Killing spree!"] = "",
 --      ["KILLS"] = "",
+--      ["Last Target!"] = "",
 	["[Left Shift]"] = "[Shift Esquerdo]",
 	["Listen up, maggot!!"] = "Oiçam bem suas larvas!!",
+--      ["Lively Lifeguard"] = "",
+--      ["Mine Deployer"] = "",
+--      ["Mine Eater!"] = "",
 	["|- Mines Time:"] = "|- Tempo das minas:", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 	["MISSION FAILED"] = "MISSÃO FALHADA", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 	["MISSION SUCCESSFUL"] = "MISSÃO COMPLETA", -- User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
@@ -90,9 +117,12 @@
 	["Movement: [Up], [Down], [Left], [Right]"] = "Movimento: [Cima], [Baixo], [Esquerda], [Direita]",
 --      ["Multi-shot!"] = "",
 --      ["Nameless Heroes"] = "",
+--      ["New Barrels Per Turn"] = "",
 --      ["NEW CLAN RECORD: "] = "",
 	["NEW fastest lap: "] = "NOVA volta recorde: ",
+--      ["New Mines Per Turn"] = "",
 --      ["NEW RACE RECORD: "] = "",
+--      ["Newton's Hammock"] = "",
 --      ["NOT ENOUGH WAYPOINTS"] = "",
 	["Not So Friendly Match"] = "Partida não muito amigável", -- Basketball, Knockball
 	["Oh no! Just try again!"] = "Oh não! Tenta novamente!", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
@@ -100,15 +130,21 @@
 	["Operation Diver"] = "Operação Mergulho",
 	["Opposing Team: "] = "Equipa adversária",
 	["Pathetic Hog #%d"] = "Ouriço patético #%d",
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
 --      ["Per-Hog Ammo"] = "",
 --      ["Place more waypoints using [ENTER]"] = "",
+--      ["Place more waypoints using the 'Air Attack' weapon."] = "",
 --      ["points"] = "", -- Control, Space_Invasion
 	["Poison"] = "Poison",
 --      ["Power Remaining"] = "",
+--      ["Prepare yourself"] = "",
 --      ["Press [Precise] to skip intro"] = "",
 --      ["Race complexity limit reached."] = "",
+--      ["RACER"] = "",
 	[" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = " - Traz a bandeira inimiga para tua base | - A primeira equipa a captura-la 3 vezes ganha | - Apenas podes marcar quando a tua bandeira está na tua base | - Os ouriços largam a bandeira se morrerem ou se afogarem | - As bandeiras abandonadas podem ser devolvidas ou recapturadas | - Os ouriços mortos ressuscitam",
+--      ["Round Limit:"] = "",
 --      ["Round Limit"] = "",
+--      ["Rounds Complete: "] = "",
 --      ["Rounds Complete"] = "",
 	["RULES OF THE GAME [Press ESC to view]"] = "REGRAS DE JOGO [Pressiona ESC para as visualizar]",
 	["RULES OF THE GAME [Press ESC to view]"] = "REGRAS DE JOGO [Pressiona ESC para as visualizar]",
@@ -117,7 +153,7 @@
 --      ["SCORE"] = "",
 	["sec"] = "seg", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
 	["See ya!"] = "Chau!",
-	["s"] = "s", -- GaudyRacer, Space_Invasion
+--      ["selected!"] = "",
 --      ["Shield boosted! +30 power"] = "",
 	["Shield Depleted"] = "Escudo Esgotado",
 	["Shield is fully recharged!"] = "Escudo completamente recarregado!",
@@ -128,7 +164,7 @@
 --      ["Shield Seeker!"] = "",
 	["Shotgun Team"] = "Caçadores",
 	["Shotgun Training"] = "Treino com Caçadeira",
---      ["Shots Left: "] = "", -- GaudyRacer, Tumbler
+--      ["shots remaining."] = "",
 --      ["Silly"] = "",
 --      ["Sinky"] = "",
 	["%s is out and Team %d|scored a penalty!| |Score:"] = "%s está fora e a equipa %d|perde um ponto!| |Pontuação:", -- Basketball, Knockball
@@ -137,6 +173,7 @@
 	["Sniperz"] = "Sniperz",
 --      ["Sponge"] = "",
 --      ["Spooky Tree"] = "",
+	["s"] = "s", -- GaudyRacer, Space_Invasion
 --      ["STATUS UPDATE"] = "", -- GaudyRacer, Space_Invasion
 --      ["Switched to "] = "",
 	["Team %d: "] = "Equipa %d: ",
@@ -147,27 +184,34 @@
 	["The flag will respawn next round."] = "A bandeira ira reaparecer no próximo turno.",
 --      ["The Nameless One"] = "",
 --      ["THE SPECIALISTS"] = "",
+--      ["This one's tricky."] = "",
 --      ["This rain is really something..."] = "",
-      ["TIME: "] = "TEMPO: ",
 --      ["Timed Kamikaze!"] = "",
 --      ["Time Extended!"] = "",
-      ["Time Left: "] = "Tempo Restante: ",
+--      ["Time Extension"] = "",
+      ["TIME: "] = "TEMPO: ",
 --      ["Toggle Shield"] = "",
 --      ["Toxic Team"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["TRACK COMPLETED"] = "",
---      ["Track Time: "] = "",
+--      ["TRACK FAILED!"] = "",
 	["TrophyRace"] = "TrophyRace",
 	["T_T"] = "T_T",
+--      ["Tumbling Time Extended!"] = "",
 --      ["Turn Time"] = "",
+--      ["Unit"] = "",
 	["Unit 3378"] = "Unidade 3378",
+--      ["Unit 835"] = "",
 	["Unlimited Attacks"] = "Ataques Ilimitados",
+--      ["Unstoppable!"] = "",
 --      ["User Challenge"] = "",
 	["Use your rope to get from start to finish as fast as you can!"] = "Utilizando a corda, percorre o percurso do inicio ao fim o mais rápido que conseguires!",
---      ["v.06"] = "",
 --      ["Victory for the "] = "", -- CTF_Blizzard, Capture_the_Flag
 	["Victory for the"] = "Vitória para a",
 --      ["Waypoint placed."] = "",
+--      ["Way-Points Remaining"] = "",
 --      ["Weapons Reset"] = "",
+--      ["Well done."] = "",
+--      ["Will this ever end?"] = "",
 --      ["WINNING TIME: "] = "",
 --      ["You'd almost swear the water was rising!"] = "",
 	["You have SCORED!!"] = "Marcaste!!",
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/share/hedgewars/Data/Locale/ru.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -0,0 +1,220 @@
+locale = {
+--      [":("] = "",
+--      ["!!!"] = "",
+--      ["..."] = "",
+      ["Accuracy Bonus!"] = "Бонус за аккуратность!",
+--      ["Achievement Unlocked"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
+      ["a Hedgewars mini-game"] = "Мини-игра в Hedgewars", -- Space_Invasion, The_Specialists
+      ["Aiming Practice"] = "Упражнение на точность", --Bazooka, Shotgun, SniperRifle
+--      ["Ammo"] = "",
+--      ["Ammo Depleted!"] = "",
+--      ["ammo extended!"] = "",
+--      ["Ammo is reset at the end of your turn."] = "",
+--      ["Ammo Maniac!"] = "",
+--      ["Available points remaining: "] = "",
+--      ["[Backspace]"] = "",
+--      ["Bamboo Thicket"] = "",
+--      ["Barrel Eater!"] = "",
+--      ["Barrel Launcher"] = "",
+--      ["Bat balls at your enemies and|push them into the sea!"] = "",
+--      ["Bat your opponents through the|baskets and out of the map!"] = "",
+      ["Bazooka Training"] = "Упражнение с базукой",
+--      ["Best laps per team: "] = "",
+--      ["Best Team Times: "] = "",
+--      ["Bloody Rookies"] = "", -- 01#Boot_Camp, User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree
+      ["Boom!"] = "Бум!",
+      ["BOOM!"] = "БАБАХ!",
+--      ["Boss defeated!"] = "",
+--      ["Boss Slayer!"] = "",
+--      ["Build a track and race."] = "",
+      ["CAPTURE THE FLAG"] = "ЗАХВАТ ФЛАГА",
+--      ["Careless"] = "",
+      ["Change Weapon"] = "Сменить оружие",
+--      ["Clumsy"] = "",
+--      ["Codename: Teamwork"] = "",
+--      ["Complete the track as fast as you can!"] = "",
+      ["Congratulations!"] = "Поздравления!",
+--      ["Congratulations! You've eliminated all targets|within the allowed time frame."] = "", --Bazooka, Shotgun, SniperRifle
+--      ["Control pillars to score points."] = "",
+--      ["Cybernetic Empire"] = "",
+--      ["DAMMIT, ROOKIE!"] = "",
+--      ["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "",
+--      ["Dangerous Ducklings"] = "",
+--      ["Deadweight"] = "",
+--      ["Demolition is fun!"] = "",
+--      ["Depleted Kamikaze!"] = "",
+--      ["Destroy invaders to score points."] = "",
+      ["Double Kill!"] = "Двойное убийство!",
+--      ["Drone Hunter!"] = "",
+--      ["Drowner"] = "",
+--      ["Each turn you get 1-3 random weapons"] = "",
+--      ["Each turn you get one random weapon"] = "",
+--      ["Eliminate all enemies"] = "",
+--      ["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "", --Bazooka, Shotgun, SniperRifle
+--      ["Eliminate Poison before the time runs out"] = "",
+--      ["Eliminate the Blue Team"] = "",
+--      ["Eliminate the enemy before the time runs out"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Eliminate the enemy hogs to win."] = "",
+--      ["Eliminate the enemy specialists."] = "",
+--      ["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "",
+--      ["Energetic Engineer"] = "",
+      ["Enjoy the swim..."] = "Приятного плавания...",
+--      ["[Enter]"] = "",
+--      ["Fastest lap: "] = "",
+--      ["Feeble Resistance"] = "",
+--      ["Fire"] = "",
+--      ["Flag captured!"] = "",
+--      ["Flag respawned!"] = "",
+--      ["Flag returned!"] = "",
+--      ["Flags, and their home base will be placed where each team ends their first turn."] = "",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+--      ["fuel extended!"] = "",
+--      ["GAME BEGUN!!!"] = "",
+--      ["Game Modifiers: "] = "",
+      ["GAME OVER!"] = "ИГРА ОКОНЧЕНА!",
+--      ["Game Started!"] = "",
+--      ["Get on over there and take him out!"] = "",
+      ["Goal"] = "Цель",
+--      ["GO! GO! GO!"] = "",
+--      ["Good birdy......"] = "",
+--      ["Good luck out there!"] = "",
+--      ["Good so far!"] = "",
+--      ["Good to go!"] = "",
+      ["GOTCHA!"] = "ПОПАЛСЯ!",
+--      ["Grab Mines/Explosives"] = "",
+--      ["Hahahaha!"] = "",
+--      ["Haha, now THAT would be something!"] = "",
+--      ["Hapless Hogs"] = "",
+--      [" Hapless Hogs left!"] = "",
+--      ["Health crates extend your time."] = "",
+--      ["Heavy"] = "",
+--      ["Hedgewars-Basketball"] = "",
+--      ["Hedgewars-Knockball"] = "",
+--      ["Heh, it's not that bad."] = "",
+--      ["Hit Combo!"] = "",
+      ["Hmmm..."] = "Хммм...",
+      ["Hooray!"] = "Ура!",
+      ["Hunter"] = "Охотник", --Bazooka, Shotgun, SniperRifle
+      ["Instructor"] = "Инструктор", -- 01#Boot_Camp, User_Mission_-_Dangerous_Ducklings
+--      ["invaders destroyed"] = "",
+--      ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "",
+      ["Jumping is disabled"] = "Прыжки отключены",
+--      ["Kamikaze Expert!"] = "",
+--      ["Keep it up!"] = "",
+--      ["Killing spree!"] = "",
+--      ["KILLS"] = "",
+      ["Last Target!"] = "Последняя цель!",
+--      ["[Left Shift]"] = "",
+--      ["Listen up, maggot!!"] = "",
+--      ["Lively Lifeguard"] = "",
+--      ["Mine Deployer"] = "",
+--      ["Mine Eater!"] = "",
+--      ["|- Mines Time:"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
+      ["MISSION FAILED"] = "МИССИЯ ПРОВАЛЕНА", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
+--      ["MISSION SUCCESS"] = "",
+      ["MISSION SUCCESSFUL"] = "МИССИЯ УСПЕШНА", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
+--      ["Movement: [Up], [Down], [Left], [Right]"] = "",
+--      ["Multi-shot!"] = "",
+      ["Nameless Heroes"] = "Безымянные герои",
+--      ["New Barrels Per Turn"] = "",
+      ["NEW CLAN RECORD: "] = "НОВЫЙ РЕКОРД КЛАНА: ",
+--      ["NEW fastest lap: "] = "",
+--      ["New Mines Per Turn"] = "",
+--      ["NEW RACE RECORD: "] = "",
+      ["Newton's Hammock"] = "Гамак Ньютона",
+--      ["NOT ENOUGH WAYPOINTS"] = "",
+--      ["Not So Friendly Match"] = "", -- Basketball, Knockball
+--      ["Oh no! Just try again!"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
+--      ["Oh no! Time's up! Just try again."] = "", --Bazooka, Shotgun, SniperRifle
+--      ["Operation Diver"] = "",
+--      ["Opposing Team: "] = "",
+--      ["Pathetic Hog #%d"] = "",
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Per-Hog Ammo"] = "",
+--      ["Place more waypoints using [ENTER]"] = "",
+--      ["Place more waypoints using the 'Air Attack' weapon."] = "",
+--      ["points"] = "", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
+      ["Poison"] = "Яд",
+--      ["Power Remaining"] = "",
+--      ["Prepare yourself"] = "",
+--      ["Press [Precise] to skip intro"] = "",
+--      ["Race complexity limit reached."] = "",
+--      ["RACER"] = "",
+--      [" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = "",
+--      ["Round Limit:"] = "",
+--      ["Round Limit"] = "",
+--      ["Rounds Complete: "] = "",
+--      ["Rounds Complete"] = "",
+--      ["RULES OF THE GAME [Press ESC to view]"] = "",
+--      ["s|"] = "",
+--      ["Save as many hapless hogs as possible!"] = "",
+--      ["SCORE"] = "",
+      ["sec"] = "сек", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
+      ["See ya!"] = "Увидимся!",
+--      ["selected!"] = "",
+--      ["s"] = "", -- GaudyRacer, Space_Invasion
+--      ["Shield boosted! +30 power"] = "",
+--      ["Shield Depleted"] = "",
+--      ["Shield is fully recharged!"] = "",
+--      ["Shield Master!"] = "",
+--      ["Shield Miser!"] = "",
+--      ["Shield OFF:"] = "",
+--      ["Shield ON:"] = "",
+--      ["Shield Seeker!"] = "",
+--      ["Shotgun Team"] = "",
+--      ["Shotgun Training"] = "",
+--      ["shots remaining."] = "",
+--      ["Silly"] = "",
+--      ["Sinky"] = "",
+--      ["%s is out and Team %d|scored a penalty!| |Score:"] = "", -- Basketball, Knockball
+--      ["%s is out and Team %d|scored a point!| |Score:"] = "", -- Basketball, Knockball
+      ["Sniper Training"] = "Тренировка снайпера",
+--      ["Sniperz"] = "",
+--      ["Sponge"] = "",
+--      ["Spooky Tree"] = "",
+--      ["STATUS UPDATE"] = "", -- GaudyRacer, Space_Invasion
+--      ["Switched to "] = "",
+      ["Team %d: "] = "Команда %d: ",
+      ["Team Scores"] = "Очки команды", -- Control, Space_Invasion
+--      ["That Sinking Feeling"] = "",
+--      ["That was pointless."] = "",
+--      ["The enemy is hiding out on yonder ducky!"] = "",
+--      ["The flag will respawn next round."] = "",
+--      ["The Nameless One"] = "",
+--      ["THE SPECIALISTS"] = "",
+--      ["This one's tricky."] = "",
+--      ["This rain is really something..."] = "",
+      ["TIME: "] = "ВРЕМЯ: ",
+--      ["Timed Kamikaze!"] = "",
+--      ["Time Extended!"] = "",
+--      ["Time Extension"] = "",
+--      ["Toggle Shield"] = "",
+--      ["Toxic Team"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
+--      ["TRACK COMPLETED"] = "",
+--      ["TRACK FAILED!"] = "",
+--      ["TrophyRace"] = "",
+--      ["T_T"] = "",
+--      ["Tumbling Time Extended!"] = "",
+--      ["Turn Time"] = "",
+--      ["Unit"] = "",
+--      ["Unit 3378"] = "",
+--      ["Unit 835"] = "",
+--      ["Unlimited Attacks"] = "",
+--      ["Unstoppable!"] = "",
+--      ["User Challenge"] = "",
+--      ["Use your rope to get from start to finish as fast as you can!"] = "",
+--      ["Victory for the "] = "", -- CTF_Blizzard, Capture_the_Flag
+--      ["Waypoint placed."] = "",
+--      ["Way-Points Remaining"] = "",
+--      ["Weapons Reset"] = "",
+--      ["Well done."] = "",
+--      ["Will this ever end?"] = "",
+--      ["WINNING TIME: "] = "",
+--      ["You'd almost swear the water was rising!"] = "",
+--      ["You have SCORED!!"] = "",
+--      ["You saved"] = "",
+--      ["You've failed. Try again."] = "",
+--      ["You've reached the goal!| |Time: "] = "",
+--      ["'Zooka Team"] = "",
+    }
--- a/share/hedgewars/Data/Locale/ru.txt	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/ru.txt	Fri Sep 16 18:17:16 2011 +0200
@@ -45,7 +45,7 @@
 00:42=Портативный телепорт
 00:43=Фортепьяновый удар
 00:44=Старый Лимбургер
-00:45=Синус-пушка (в разработке)
+00:45=Синус-пушка (бета)
 00:46=Огнемет
 00:47=Мина-липучка
 00:48=Молот
@@ -53,9 +53,9 @@
 00:50=Сверлящий удар
 00:51=Комок грязи
 00:52=Оружие не выбрано
-00:53=Ограничитель времени
+00:53=Будка времени
 00:54=Структура
-00:55=Земляной распылитель
+00:55=Распылитель земли
 
 01:00=Вперёд к победе!
 01:01=Ничья
@@ -107,11 +107,11 @@
 02:00=%1 уже не достанет свой Desert Eagle
 02:00=%1 заплатил сполна
 02:00=%1 мог бы воспользоваться аптечкой
-02:00=%1 ушел играть в игру получше
+02:00=%1 ушел играть лучшую игру
 02:00=%1 прожил трудную жизнь
 02:00=%1 вышел из строя
 02:00=Бедный, бедный %1...
-02:00=%1 предпочитает Wormux
+02:00=%1 предпочитает Warmux
 02:00=%1 принял удар на себя
 02:00=%1 герой среди лю...гм...ежей
 02:00=%1 занял свое место в Валгале
@@ -125,7 +125,7 @@
 02:00=Скажите "Прощай, %1!"
 02:00=Надежды больше нет, %1
 02:00=Это было твое последнее представление, %1
-02:00=Закури перед смертью, %1, т.к твоему здоровью это уже не повредит
+02:00=Закури перед смертью, %1, твоему здоровью это уже не повредит
 02:00=%1 испытал Внезапный Массовый Отказ в Системе Жизнеобеспечения (C)
 02:00=%1 преставился
 02:00=%1 стопроцентный труп
@@ -152,7 +152,7 @@
 02:01=%1 помылся
 02:01=%1 - это один мокрый ёж
 02:01=%1 забыл надеть спасательный жилет
-02:01=%1 плескается в воде
+02:01=%1 плещется в воде
 02:01=%1 спит среди рыб
 02:01=%1 думал, что физика воды в этой игре полный отстой
 02:01=%1 испытывает жажду
@@ -338,9 +338,9 @@
 02:08=%1 вообще не хотел идти в армию
 02:08=Хватит впустую тратить время, %1
 02:08=Я разочарован тобой, %1
-02:08=Давай, ты можешь добиться большего, чем этот %1
+02:08=Давай, ты можешь быть лучше, чем сейчас, %1
 02:08=Намерения %1 провалились
-02:08=%1 очевидно знает более интересные дела
+02:08=%1, очевидно, знает более интересные дела
 02:08=%1 оцепенел от страха
 02:08=%1 уснул
 
@@ -383,7 +383,7 @@
 ; Hog shot an home run (using the bat and another hog)
 02:10=Хоум-ран!
 02:10=Птица, самолет, ...
-02:10=Тот отсутствует!
+02:10=Вылетел!
 
 ; Hog (%1) has to leave (team is gone)
 02:11=%1 должен идти спать!
@@ -435,8 +435,9 @@
 03:40=Испепеляющая граната
 03:41=Большой поклонник Squawks
 03:42=Здесь я веду записи...
+
 ; the misspelled "Beethoven" is intentional (-> to beat)
-03:43=Исполнение смертельной сонаты Бетховена
+03:43=Исполнение смертельной сонаты Битьховена
 03:44=Годен до: 1923
 03:45=Достижения науки
 03:46=Горячо, горячо, горячо!
--- a/share/hedgewars/Data/Locale/sk.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/sk.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -3,24 +3,33 @@
         ["!!!"] = "!!!",
 --      ["..."] = "",
         ["Accuracy Bonus!"] = "Bonus za presnosť!",
+--      ["Achievement Unlocked"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
         ["a Hedgewars mini-game"] = "minihra Hedgewars", -- Space_Invasion, The_Specialists
 	["Aiming Practice"] = "Tréning presnosti", --Bazooka, Shotgun, SniperRifle
+        ["Ammo Depleted!"] = "Výzbroj vyčerpaná!",
+--      ["ammo extended!"] = "",
+--      ["Ammo is reset at the end of your turn."] = "",
+--      ["Ammo Maniac!"] = "",
         ["Ammo"] = "Výzbroj",
-        ["Ammo Depleted!"] = "Výzbroj vyčerpaná!",
---      ["Ammo Maniac!"] = "",
         ["Available points remaining: "] = "Zostavajúci počet bodov: ",
+--      ["[Backspace]"] = "",
+--      ["Bamboo Thicket"] = "",
+--      ["Barrel Eater!"] = "",
+--      ["Barrel Launcher"] = "",
 	["Bat balls at your enemies and|push them into the sea!"] = "Loptami triafajte vašich nepriateľov|a zhoďte ich tak do mora!",
 	["Bat your opponents through the|baskets and out of the map!"] = "Odpálkujte vašich súperov do koša|a von z mapy!",
 	["Bazooka Training"] = "Tréning s bazukou",
 	["Best laps per team: "] = "Najrýchlejšie kolá podľa tímov: ",
         ["Best Team Times: "] = "Najrýchlejšie tímové časy: ",
         ["Bloody Rookies"] = "Mizerní zelenáči", -- 01#Boot_Camp, User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree
+        ["Boom!"] = "Bum!",
         ["BOOM!"] = "BUM!",
-        ["Boom!"] = "Bum!",
 --      ["Boss defeated!"] = "",
 --      ["Boss Slayer!"] = "",
+--      ["Build a track and race."] = "",
         ["CAPTURE THE FLAG"] = "ZMOCNITE SA VLAJKY",
         ["Careless"] = "Bezstarostný",
+--      ["Change Weapon"] = "",
         ["Clumsy"] = "Nešikovný",
         ["Codename: Teamwork"] = "Kódové meno: Teamová práca",
 --      ["Complete the track as fast as you can!"] = "",
@@ -32,8 +41,10 @@
         ["DAMMIT, ROOKIE!"] = "Prekliaty zelenáč!",
         ["Dangerous Ducklings"] = "Nebezpečné kačiatka",
 --      ["Deadweight"] = "",
+--      ["Demolition is fun!"] = "",
 --      ["Depleted Kamikaze!"] = "",
 --      ["Destroy invaders to score points."] = "",
+--      ["Double Kill!"] = "",
 --      ["Drone Hunter!"] = "",
 --      ["Drowner"] = "",
 --      ["Each turn you get 1-3 random weapons"] = "",
@@ -42,8 +53,11 @@
 	["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "Zneškodnite všetky ciele pred vypršaním času.|Na túto misiu máte neobmedzené množstvo streliva.", --Bazooka, Shotgun, SniperRifle
         ["Eliminate Poison before the time runs out"] = "Zneškodnite Poisona pred tým, ako vyprší čas",
         ["Eliminate the Blue Team"] = "Zneškodnite modrý tím",
+--      ["Eliminate the enemy before the time runs out"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Eliminate the enemy hogs to win."] = "",
 --      ["Eliminate the enemy specialists."] = "",
         ["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "- Zneškodnite Jednotku 3378|- Slabý odpor musí prežiť",
+--      ["Energetic Engineer"] = "",
         ["Enjoy the swim..."] = "Užite si plávanie...",
 --      ["[Enter]"] = "",
 	["Fastest lap: "] = "Najrýchlejšie kolo: ",
@@ -53,6 +67,9 @@
         ["Flag respawned!"] = "Vlajka obnovená!",
         ["Flag returned!"] = "Vlajka vrátená!",
 --      ["Flags, and their home base will be placed where each team ends their first turn."] = "",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+--      ["fuel extended!"] = "",
 --      ["GAME BEGUN!!!"] = "",
 --      ["Game Modifiers: "] = "",
         ["GAME OVER!"] = "KONIEC HRY!",
@@ -62,11 +79,15 @@
         ["GO! GO! GO!"] = "POĎ! POĎ! POĎ!",
         ["Good birdy......"] = "Dobrý vtáčik......",
         ["Good luck out there!"] = "Veľa šťastia!",
+--      ["Good so far!"] = "",
+--      ["Good to go!"] = "",
 --      ["GOTCHA!"] = "",
+--      ["Grab Mines/Explosives"] = "",
 --      ["Hahahaha!"] = "",
 --      ["Haha, now THAT would be something!"] = "",
 --      ["Hapless Hogs"] = "",
 --      [" Hapless Hogs left!"] = "",
+--      ["Health crates extend your time."] = "",
 --      ["Heavy"] = "",
 	["Hedgewars-Basketball"] = "Hedgewars-Basketbal",
 	["Hedgewars-Knockball"] = "Hedgewars-Knockball",
@@ -80,9 +101,15 @@
 --      ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "",
 --      ["Jumping is disabled"] = "",
 --      ["Kamikaze Expert!"] = "",
+--      ["Keep it up!"] = "",
+--      ["Killing spree!"] = "",
 --      ["KILLS"] = "",
+--      ["Last Target!"] = "",
 --      ["[Left Shift]"] = "",
         ["Listen up, maggot!!"] = "Počúvaj, ty biedny červ!",
+--      ["Lively Lifeguard"] = "",
+--      ["Mine Deployer"] = "",
+--      ["Mine Eater!"] = "",
         ["|- Mines Time:"] = "|- Časovač pre míny:", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
         ["MISSION FAILED"] = "MISIA NEÚSPEŠNÁ", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["MISSION SUCCESS"] = "",
@@ -90,9 +117,12 @@
         ["Movement: [Up], [Down], [Left], [Right]"] = "Pohyb: [Hore], [Dole], [Vľavo], [Vpravo]",
 --      ["Multi-shot!"] = "",
 --      ["Nameless Heroes"] = "",
+--      ["New Barrels Per Turn"] = "",
 --      ["NEW CLAN RECORD: "] = "",
 	["NEW fastest lap: "] = "NOVÉ najrýchlejšie kolo: ",
+--      ["New Mines Per Turn"] = "",
 --      ["NEW RACE RECORD: "] = "",
+--      ["Newton's Hammock"] = "",
 --      ["NOT ENOUGH WAYPOINTS"] = "",
 	["Not So Friendly Match"] = "Nie tak celkom priateľský zápas", -- Basketball, Knockball
         ["Oh no! Just try again!"] = "Áále nie! Tak to skúste znovu!", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
@@ -100,15 +130,21 @@
         ["Operation Diver"] = "Operácia Potápač",
         ["Opposing Team: "] = "Nepriateľský tím",
         ["Pathetic Hog #%d"] = "Žalostný ježko #%d",
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
 --      ["Per-Hog Ammo"] = "",
 --      ["Place more waypoints using [ENTER]"] = "",
+--      ["Place more waypoints using the 'Air Attack' weapon."] = "",
         ["points"] = "body", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
         ["Poison"] = "Poison",
 --      ["Power Remaining"] = "",
+--      ["Prepare yourself"] = "",
 --      ["Press [Precise] to skip intro"] = "",
 --      ["Race complexity limit reached."] = "",
+--      ["RACER"] = "",
         [" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = " - Skórujete prinesením nepriateľskej vlajky do vašej základne | -  Prvý tím, ktorý dosiahne 3 body, vyhráva | - Skórujete len vtedy, keď je máte svoju vlajku v základni | - Spadnuté vlajky môžu byť vrátené na základňu alebo sa ich môže zmocniť súpere | - Ježkovia po smrti ožiujú",
+--      ["Round Limit:"] = "",
 --      ["Round Limit"] = "",
+--      ["Rounds Complete: "] = "",
 --      ["Rounds Complete"] = "",
         ["RULES OF THE GAME [Press ESC to view]"] = "PRAVIDLÁ HRY [Stlačte Esc pre ich zobrazenie]",
 --      ["s|"] = "",
@@ -116,6 +152,7 @@
 --      ["SCORE"] = "",
         ["sec"] = "sek", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
         ["See ya!"] = "Tak zatiaľ!",
+--      ["selected!"] = "",
 --      ["s"] = "", -- GaudyRacer, Space_Invasion
 --      ["Shield boosted! +30 power"] = "",
 --      ["Shield Depleted"] = "",
@@ -127,7 +164,7 @@
 --      ["Shield Seeker!"] = "",
 	["Shotgun Team"] = "Shotgun tím",
 	["Shotgun Training"] = "Tréning s brokovnicou",
---      ["Shots Left: "] = "", -- GaudyRacer, Tumbler
+--      ["shots remaining."] = "",
 --      ["Silly"] = "",
 --      ["Sinky"] = "",
 	["%s is out and Team %d|scored a penalty!| |Score:"] = "%s je mimo hru a tím %d|dostal trestný bod!| |Skóre:", -- Basketball, Knockball
@@ -146,26 +183,33 @@
         ["The flag will respawn next round."] = "V ďalšom kole sa obnoví vlajka.",
 --      ["The Nameless One"] = "",
 --      ["THE SPECIALISTS"] = "",
+--      ["This one's tricky."] = "",
 --      ["This rain is really something..."] = "",
         ["TIME: "] = "ČAS: ",
 --      ["Timed Kamikaze!"] = "",
 --      ["Time Extended!"] = "",
---      ["Time Left: "] = "",
+--      ["Time Extension"] = "",
 --      ["Toggle Shield"] = "",
         ["Toxic Team"] = "Toxic tím", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["TRACK COMPLETED"] = "",
-        ["Track Time: "] = "Čas: ",
+--      ["TRACK FAILED!"] = "",
 	["TrophyRace"] = "Preteky o trofej",
         ["T_T"] = "T_T",
+--      ["Tumbling Time Extended!"] = "",
         ["Turn Time"] = "Čas na ťah",
+--      ["Unit"] = "",
         ["Unit 3378"] = "Jednotka 3378",
+--      ["Unit 835"] = "",
         ["Unlimited Attacks"] = "Neobmedzené útoky",
+--      ["Unstoppable!"] = "",
 --      ["User Challenge"] = "",
 	["Use your rope to get from start to finish as fast as you can!"] = "Použite lano na presun zo štartovnej pozície do cieľa tak rýchlo, ako to len viete!",
-        ["v.06"] = "v.06",
         ["Victory for the "] = "Víťazstvo pre", -- CTF_Blizzard, Capture_the_Flag
 --      ["Waypoint placed."] = "",
+--      ["Way-Points Remaining"] = "",
 --      ["Weapons Reset"] = "",
+--      ["Well done."] = "",
+--      ["Will this ever end?"] = "",
 --      ["WINNING TIME: "] = "",
 --      ["You'd almost swear the water was rising!"] = "",
         ["You have SCORED!!"] = "SKÓROVALI ste!!",
--- a/share/hedgewars/Data/Locale/stub.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/stub.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -3,12 +3,19 @@
 --      ["!!!"] = "",
 --      ["..."] = "",
 --      ["Accuracy Bonus!"] = "",
+--      ["Achievement Unlocked"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
 --      ["a Hedgewars mini-game"] = "", -- Space_Invasion, The_Specialists
 --      ["Aiming Practice"] = "", --Bazooka, Shotgun, SniperRifle
 --      ["Ammo"] = "",
 --      ["Ammo Depleted!"] = "",
+--      ["ammo extended!"] = "",
+--      ["Ammo is reset at the end of your turn."] = "",
 --      ["Ammo Maniac!"] = "",
 --      ["Available points remaining: "] = "",
+--      ["[Backspace]"] = "",
+--      ["Bamboo Thicket"] = "",
+--      ["Barrel Eater!"] = "",
+--      ["Barrel Launcher"] = "",
 --      ["Bat balls at your enemies and|push them into the sea!"] = "",
 --      ["Bat your opponents through the|baskets and out of the map!"] = "",
 --      ["Bazooka Training"] = "",
@@ -19,8 +26,10 @@
 --      ["BOOM!"] = "",
 --      ["Boss defeated!"] = "",
 --      ["Boss Slayer!"] = "",
+--      ["Build a track and race."] = "",
 --      ["CAPTURE THE FLAG"] = "",
 --      ["Careless"] = "",
+--      ["Change Weapon"] = "",
 --      ["Clumsy"] = "",
 --      ["Codename: Teamwork"] = "",
 --      ["Complete the track as fast as you can!"] = "",
@@ -32,8 +41,10 @@
 --      ["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "",
 --      ["Dangerous Ducklings"] = "",
 --      ["Deadweight"] = "",
+--      ["Demolition is fun!"] = "",
 --      ["Depleted Kamikaze!"] = "",
 --      ["Destroy invaders to score points."] = "",
+--      ["Double Kill!"] = "",
 --      ["Drone Hunter!"] = "",
 --      ["Drowner"] = "",
 --      ["Each turn you get 1-3 random weapons"] = "",
@@ -42,8 +53,11 @@
 --      ["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "", --Bazooka, Shotgun, SniperRifle
 --      ["Eliminate Poison before the time runs out"] = "",
 --      ["Eliminate the Blue Team"] = "",
+--      ["Eliminate the enemy before the time runs out"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Eliminate the enemy hogs to win."] = "",
 --      ["Eliminate the enemy specialists."] = "",
 --      ["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "",
+--      ["Energetic Engineer"] = "",
 --      ["Enjoy the swim..."] = "",
 --      ["[Enter]"] = "",
 --      ["Fastest lap: "] = "",
@@ -53,6 +67,9 @@
 --      ["Flag respawned!"] = "",
 --      ["Flag returned!"] = "",
 --      ["Flags, and their home base will be placed where each team ends their first turn."] = "",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+--      ["fuel extended!"] = "",
 --      ["GAME BEGUN!!!"] = "",
 --      ["Game Modifiers: "] = "",
 --      ["GAME OVER!"] = "",
@@ -62,11 +79,15 @@
 --      ["GO! GO! GO!"] = "",
 --      ["Good birdy......"] = "",
 --      ["Good luck out there!"] = "",
+--      ["Good so far!"] = "",
+--      ["Good to go!"] = "",
 --      ["GOTCHA!"] = "",
+--      ["Grab Mines/Explosives"] = "",
 --      ["Hahahaha!"] = "",
 --      ["Haha, now THAT would be something!"] = "",
 --      ["Hapless Hogs"] = "",
 --      [" Hapless Hogs left!"] = "",
+--      ["Health crates extend your time."] = "",
 --      ["Heavy"] = "",
 --      ["Hedgewars-Basketball"] = "",
 --      ["Hedgewars-Knockball"] = "",
@@ -80,9 +101,15 @@
 --      ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "",
 --      ["Jumping is disabled"] = "",
 --      ["Kamikaze Expert!"] = "",
+--      ["Keep it up!"] = "",
+--      ["Killing spree!"] = "",
 --      ["KILLS"] = "",
+--      ["Last Target!"] = "",
 --      ["[Left Shift]"] = "",
 --      ["Listen up, maggot!!"] = "",
+--      ["Lively Lifeguard"] = "",
+--      ["Mine Deployer"] = "",
+--      ["Mine Eater!"] = "",
 --      ["|- Mines Time:"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["MISSION FAILED"] = "", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["MISSION SUCCESS"] = "",
@@ -90,9 +117,12 @@
 --      ["Movement: [Up], [Down], [Left], [Right]"] = "",
 --      ["Multi-shot!"] = "",
 --      ["Nameless Heroes"] = "",
+--      ["New Barrels Per Turn"] = "",
 --      ["NEW CLAN RECORD: "] = "",
 --      ["NEW fastest lap: "] = "",
+--      ["New Mines Per Turn"] = "",
 --      ["NEW RACE RECORD: "] = "",
+--      ["Newton's Hammock"] = "",
 --      ["NOT ENOUGH WAYPOINTS"] = "",
 --      ["Not So Friendly Match"] = "", -- Basketball, Knockball
 --      ["Oh no! Just try again!"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
@@ -100,15 +130,21 @@
 --      ["Operation Diver"] = "",
 --      ["Opposing Team: "] = "",
 --      ["Pathetic Hog #%d"] = "",
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
 --      ["Per-Hog Ammo"] = "",
 --      ["Place more waypoints using [ENTER]"] = "",
+--      ["Place more waypoints using the 'Air Attack' weapon."] = "",
 --      ["points"] = "", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
 --      ["Poison"] = "",
 --      ["Power Remaining"] = "",
+--      ["Prepare yourself"] = "",
 --      ["Press [Precise] to skip intro"] = "",
 --      ["Race complexity limit reached."] = "",
+--      ["RACER"] = "",
 --      [" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = "",
+--      ["Round Limit:"] = "",
 --      ["Round Limit"] = "",
+--      ["Rounds Complete: "] = "",
 --      ["Rounds Complete"] = "",
 --      ["RULES OF THE GAME [Press ESC to view]"] = "",
 --      ["s|"] = "",
@@ -116,6 +152,7 @@
 --      ["SCORE"] = "",
 --      ["sec"] = "", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
 --      ["See ya!"] = "",
+--      ["selected!"] = "",
 --      ["s"] = "", -- GaudyRacer, Space_Invasion
 --      ["Shield boosted! +30 power"] = "",
 --      ["Shield Depleted"] = "",
@@ -127,7 +164,7 @@
 --      ["Shield Seeker!"] = "",
 --      ["Shotgun Team"] = "",
 --      ["Shotgun Training"] = "",
---      ["Shots Left: "] = "", -- GaudyRacer, Tumbler
+--      ["shots remaining."] = "",
 --      ["Silly"] = "",
 --      ["Sinky"] = "",
 --      ["%s is out and Team %d|scored a penalty!| |Score:"] = "", -- Basketball, Knockball
@@ -146,26 +183,33 @@
 --      ["The flag will respawn next round."] = "",
 --      ["The Nameless One"] = "",
 --      ["THE SPECIALISTS"] = "",
+--      ["This one's tricky."] = "",
 --      ["This rain is really something..."] = "",
 --      ["TIME: "] = "",
 --      ["Timed Kamikaze!"] = "",
 --      ["Time Extended!"] = "",
---      ["Time Left: "] = "",
+--      ["Time Extension"] = "",
 --      ["Toggle Shield"] = "",
 --      ["Toxic Team"] = "", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["TRACK COMPLETED"] = "",
---      ["Track Time: "] = "",
+--      ["TRACK FAILED!"] = "",
 --      ["TrophyRace"] = "",
 --      ["T_T"] = "",
+--      ["Tumbling Time Extended!"] = "",
 --      ["Turn Time"] = "",
+--      ["Unit"] = "",
 --      ["Unit 3378"] = "",
+--      ["Unit 835"] = "",
 --      ["Unlimited Attacks"] = "",
+--      ["Unstoppable!"] = "",
 --      ["User Challenge"] = "",
 --      ["Use your rope to get from start to finish as fast as you can!"] = "",
---      ["v.06"] = "",
 --      ["Victory for the "] = "", -- CTF_Blizzard, Capture_the_Flag
 --      ["Waypoint placed."] = "",
+--      ["Way-Points Remaining"] = "",
 --      ["Weapons Reset"] = "",
+--      ["Well done."] = "",
+--      ["Will this ever end?"] = "",
 --      ["WINNING TIME: "] = "",
 --      ["You'd almost swear the water was rising!"] = "",
 --      ["You have SCORED!!"] = "",
--- a/share/hedgewars/Data/Locale/sv.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/sv.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -3,12 +3,19 @@
 	[":("] = ":(",
 	["!!!"] = "!!!",
 --      ["Accuracy Bonus!"] = "",
+--      ["Achievement Unlocked"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
 --      ["a Hedgewars mini-game"] = "", -- Space_Invasion, The_Specialists
 	["Aiming Practice"] = "Siktesövning", --Bazooka, Shotgun, SniperRifle
 --      ["Ammo"] = "",
 --      ["Ammo Depleted!"] = "",
+--      ["ammo extended!"] = "",
+--      ["Ammo is reset at the end of your turn."] = "",
 --      ["Ammo Maniac!"] = "",
 --      ["Available points remaining: "] = "",
+--      ["[Backspace]"] = "",
+--      ["Bamboo Thicket"] = "",
+--      ["Barrel Eater!"] = "",
+--      ["Barrel Launcher"] = "",
 	["Bat balls at your enemies and|push them into the sea!"] = "Slå bollar mot dina fiender|och slå ner dem i havet",
 	["Bat your opponents through the|baskets and out of the map!"] = "Slå ner dina motståndare i|korgarna och ut ur kartan!",
 	["Bazooka Training"] = "Bazookaträning",
@@ -19,8 +26,10 @@
     ["Boom!"] = "Bom!",
 --      ["Boss defeated!"] = "",
 --      ["Boss Slayer!"] = "",
+--      ["Build a track and race."] = "",
 	["CAPTURE THE FLAG"] = "CAPTURE THE FLAG",
 --      ["Careless"] = "",
+--      ["Change Weapon"] = "",
 --      ["Clumsy"] = "",
 	["Codename: Teamwork"] = "Kodnamn: Lagarbete",
 --      ["Complete the track as fast as you can!"] = "",
@@ -32,8 +41,10 @@
 	["DAMMIT, ROOKIE!"] = "SATAN, GRÖNGÖLING!",
 	["Dangerous Ducklings"] = "Farliga ankungar",
 --      ["Deadweight"] = "",
+--      ["Demolition is fun!"] = "",
 --      ["Depleted Kamikaze!"] = "",
 --      ["Destroy invaders to score points."] = "",
+--      ["Double Kill!"] = "",
 --      ["Drone Hunter!"] = "",
 --      ["Drowner"] = "",
 --      ["Each turn you get 1-3 random weapons"] = "",
@@ -42,8 +53,11 @@
 	["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "Förstör alla målen innan din tid tar slut.|Du har obegränsad ammunition för deta uppdrag", --Bazooka, Shotgun, SniperRifle
 	["Eliminate Poison before the time runs out"] = "Förgör Gift innan tiden tar slut",
 	["Eliminate the Blue Team"] = "Förgör det Blå laget",
+--      ["Eliminate the enemy before the time runs out"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Eliminate the enemy hogs to win."] = "",
 --      ["Eliminate the enemy specialists."] = "",
 	["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "- Förgör Enhet 3378 |- Klent motstånd måste överleva",
+--      ["Energetic Engineer"] = "",
 	["Enjoy the swim..."] = "Ha en trevlig simtur...",
 --      ["[Enter]"] = "",
 	["Fastest lap: "] = "Snabbast varv: ",
@@ -53,6 +67,9 @@
 	["Flag respawned!"] = "Flagga återställd!",
 	["Flag returned!"] = "Flagga återvänd!",
 --      ["Flags, and their home base will be placed where each team ends their first turn."] = "",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+--      ["fuel extended!"] = "",
 --      ["GAME BEGUN!!!"] = "",
 --      ["Game Modifiers: "] = "",
 	["GAME OVER!"] = "SPELET ÄR SLUT!",
@@ -62,11 +79,15 @@
 	["GO! GO! GO!"] = "Kör! Kör! Kör!",
 	["Good birdy......"] = "Fin fågel......",
 	["Good luck out there!"] = "Lycka till där ute!",
+--      ["Good so far!"] = "",
+--      ["Good to go!"] = "",
 --      ["GOTCHA!"] = "",
+--      ["Grab Mines/Explosives"] = "",
 --      ["Hahahaha!"] = "",
 --      ["Haha, now THAT would be something!"] = "",
 --      ["Hapless Hogs"] = "",
 --      [" Hapless Hogs left!"] = "",
+--      ["Health crates extend your time."] = "",
 --      ["Heavy"] = "",
 	["Hedgewars-Basketball"] = "Hedgewars-Basket",
 	["Hedgewars-Knockball"] = "Hedgewars-Knockball",
@@ -80,9 +101,15 @@
 --      ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "",
 --      ["Jumping is disabled"] = "",
 --      ["Kamikaze Expert!"] = "",
+--      ["Keep it up!"] = "",
+--      ["Killing spree!"] = "",
 --      ["KILLS"] = "",
+--      ["Last Target!"] = "",
 --      ["[Left Shift]"] = "",
 	["Listen up, maggot!!"] = "Hör här, ynkrygg!!",
+--      ["Lively Lifeguard"] = "",
+--      ["Mine Deployer"] = "",
+--      ["Mine Eater!"] = "",
     ["|- Mines Time:"] = "|- Mintid:", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 	["MISSION FAILED"] = "UPPDRAG MISSLYCKADES", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["MISSION SUCCESS"] = "",
@@ -90,9 +117,12 @@
 --      ["Movement: [Up], [Down], [Left], [Right]"] = "",
 --      ["Multi-shot!"] = "",
 --      ["Nameless Heroes"] = "",
+--      ["New Barrels Per Turn"] = "",
 --      ["NEW CLAN RECORD: "] = "",
 	["NEW fastest lap: "] = "NYTT snabbast varv: ",
+--      ["New Mines Per Turn"] = "",
 --      ["NEW RACE RECORD: "] = "",
+--      ["Newton's Hammock"] = "",
 --      ["NOT ENOUGH WAYPOINTS"] = "",
 	["Not So Friendly Match"] = "En inte så vänlig match", -- Basketball, Knockball
 	["Oh no! Just try again!"] = "Å nej! Bara att försöka igen!", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
@@ -100,15 +130,21 @@
 	["Operation Diver"] = "Operationens dykare",
 	["Opposing Team: "] = "Motståndarlag: ",
 	["Pathetic Hog #%d"] = "Patetisk kott #%d",
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
 --      ["Per-Hog Ammo"] = "",
 --      ["Place more waypoints using [ENTER]"] = "",
+--      ["Place more waypoints using the 'Air Attack' weapon."] = "",
 --      ["points"] = "", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
 	["Poison"] = "Gift",
 --      ["Power Remaining"] = "",
+--      ["Prepare yourself"] = "",
 --      ["Press [Precise] to skip intro"] = "",
 --      ["Race complexity limit reached."] = "",
+--      ["RACER"] = "",
 	[" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = " - Återvänd med fiendens flagga till din bas för att ta poäng | - Första laget till tre vinner | - Du kan bara ta poäng när din egen flagga är i basen | - Kottar tappar flaggan när de dödas eller drunknar | - Tappade flaggor kan tas tillbaka eller fångas | - Kottar kommer tillbaka när de dör",
+--      ["Round Limit:"] = "",
 --      ["Round Limit"] = "",
+--      ["Rounds Complete: "] = "",
 --      ["Rounds Complete"] = "",
 	["RULES OF THE GAME [Press ESC to view]"] = "SPELREGLER [Tryck ESC för att se]",
 --      ["s|"] = "",
@@ -116,6 +152,7 @@
 --      ["SCORE"] = "",
     ["sec"] = "sec", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
 	["See ya!"] = "Ses!",
+--      ["selected!"] = "",
 --      ["s"] = "", -- GaudyRacer, Space_Invasion
 --      ["Shield boosted! +30 power"] = "",
 --      ["Shield Depleted"] = "",
@@ -127,7 +164,7 @@
 --      ["Shield Seeker!"] = "",
 	["Shotgun Team"] = "Hagelgevärslaget",
 	["Shotgun Training"] = "Hagelgevärsträning",
---      ["Shots Left: "] = "", -- GaudyRacer, Tumbler
+--      ["shots remaining."] = "",
 --      ["Silly"] = "",
 --      ["Sinky"] = "",
 	["%s is out and Team %d|scored a penalty!| |Score:"] = "%s är ute och lag %d|fick ett straff!| |Poängställning:", -- Basketball, Knockball
@@ -146,26 +183,33 @@
     ["The flag will respawn next round."] = "Flaggan kommer tillbaka nästa runda.",
 --      ["The Nameless One"] = "",
 --      ["THE SPECIALISTS"] = "",
+--      ["This one's tricky."] = "",
 --      ["This rain is really something..."] = "",
 --      ["TIME: "] = "",
 --      ["Timed Kamikaze!"] = "",
 --      ["Time Extended!"] = "",
---      ["Time Left: "] = "",
+--      ["Time Extension"] = "",
 --      ["Toggle Shield"] = "",
 	["Toxic Team"] = "Förgiftade laget", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["TRACK COMPLETED"] = "",
---      ["Track Time: "] = "",
+--      ["TRACK FAILED!"] = "",
 	["TrophyRace"] = "TrophyRace",
 	["T_T"] = "T_T",
+--      ["Tumbling Time Extended!"] = "",
 --      ["Turn Time"] = "",
+--      ["Unit"] = "",
 	["Unit 3378"] = "Enhet 3378",
+--      ["Unit 835"] = "",
 --      ["Unlimited Attacks"] = "",
+--      ["Unstoppable!"] = "",
 --      ["User Challenge"] = "",
 	["Use your rope to get from start to finish as fast as you can!"] = "Använd ditt rep för att ta dig från start till mål så fort som möjligt!",
---      ["v.06"] = "",
 	["Victory for the "] = "Vinst för", -- CTF_Blizzard, Capture_the_Flag
 --      ["Waypoint placed."] = "",
+--      ["Way-Points Remaining"] = "",
 --      ["Weapons Reset"] = "",
+--      ["Well done."] = "",
+--      ["Will this ever end?"] = "",
 --      ["WINNING TIME: "] = "",
 --      ["You'd almost swear the water was rising!"] = "",
 	["You have SCORED!!"] = "Du har tagit poäng!",
--- a/share/hedgewars/Data/Locale/sv.txt	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/sv.txt	Fri Sep 16 18:17:16 2011 +0200
@@ -50,6 +50,12 @@
 00:47=Fästande mina
 00:48=Hammare
 00:49=Återuppliva
+00:50=Borrangrepp
+00:51=Jordboll
+00:52=Inget vapen valt
+00:53=Tidslåda
+00:54=Struktur
+00:55=Markspruta
 
 01:00=Nu kör vi!
 01:01=Oavgjort
@@ -66,6 +72,12 @@
 01:12=Sista rundan till sudden death!
 01:13=%1 rundor till sudden death!
 01:14=Gör dig redo, %1!
+01:15=Märkbar
+01:16=Låg
+01:17=Normal
+01:18=Hög
+01:19=Extrem
+01:20=%1 studs
 
 ; Event messages
 ; Hog (%1) died
@@ -461,6 +473,12 @@
 03:47=Fäst de här på ett användbart ställe!
 03:48=Dags att banka järnet!
 03:49=Gör det du tror
+03:50=Siktar mot stjärnorna
+03:51=Upphittad på marken
+03:52=UNUSED
+03:53=Typ 40
+03:54=Bygg något
+03:55=Verktyg
 
 ; Weapon Descriptions (use | as line breaks)
 04:00=Attackera fienden med en enkel granat.|Exploderar när tiden når noll.|1-5: Ställ in granatens tid|Attack: Håll ner för att kasta med mer kraft
@@ -513,6 +531,12 @@
 04:47=Det är dubbelt så roligt med två farliga, fantastiska,|fästande minor. Skapa en kedjereaktion eller försvara|dig själv (eller både och!)|Attack: Håll ner för att skjuta med mer kraft (två gånger)
 04:48=Varför ska mullvadarna få all misshandel? Att|drämma till en igelkott kan vara minst lika roligt!|Ett rejält slag med den här hammaren kan skala|av en tredjedel av en igelkotts hälsa och slå ner|dem i marken.|Attack: Aktivera
 04:49=Återuppliva dina vänner!|Men tänk på att du också återupplivar dina fiender.|Attack: Håll inne för att återuppliva långsamt|Upp: Accelerera återupplivning
+04:50=Gömmer sig någon under marken?|Gräv fram dem med ett borrangrepp!|1-5: Ställ in hur långt raketerna borrar.
+04:51=Få till en gratisträff genom att kasta en boll med|jord. Känns lite gran, och knuffar tillbaka|igelkottar.
+04:52=UNUSED
+04:53=Åk på ett äventyr genom tid och rymd, medan dina|kamrater blir kvar själva att slåss. Var beredd|att komma tillbaka när som helst, eller till|Sudden Death eller om de andra blir besegrade.|Varning. Fungerar inte under Sudden Death, om du|är ensam, eller om du är en kung.
+04:54=INCOMPLETE                                                                                                                                     
+04:55=Spruta en ström av fästande jord.|Bygg broar, gräv ner fienden, stäng igen tunnlar.|Var försiktig så att du inte får något på dig!
 
 ; Game goal strings
 05:00=Spellägen
@@ -536,3 +560,4 @@
 05:18=Obegränsade attacker
 05:19=Vapen nollställs när turen är över
 05:20=Igelkottar delar inte på vapnen
+05:21=Maraton: Lag i en klan tar på vart andra följande turer|Delad tid: Lag inom en klan delar på turtiden
--- a/share/hedgewars/Data/Locale/uk.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/uk.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -1,28 +1,38 @@
 locale = {
 --      [":("] = "",
+        ["!!!"] = "Я!",
 --      ["..."] = "",
---      ["Accuracy Bonus!"] = "",
---      ["a Hedgewars mini-game"] = "", -- Space_Invasion, The_Specialists
+        ["Accuracy Bonus!"] = "Бонус Точності!",
+        ["Achievement Unlocked"] = "Досягнення Розблоковано", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
+        ["a Hedgewars mini-game"] = "Міні-гра Hedgewars", -- Space_Invasion, The_Specialists
         ["Aiming Practice"] = "Практика прицілювання", --Bazooka, Shotgun, SniperRifle
---      ["Ammo"] = "",
---      ["Ammo Depleted!"] = "",
---      ["Ammo Maniac!"] = "",
---      ["Available points remaining: "] = "",
+        ["Ammo"] = "Боєприпаси",
+        ["Ammo Depleted!"] = "Боєприпаси Скінчились!",
+        ["ammo extended!"] = "Боєприпаси поповнені!",
+        ["Ammo is reset at the end of your turn."] = "Боєприпаси обнуляються в кінці вашого ходу.",
+        ["Ammo Maniac!"] = "Маніяк Боєприпасів!",
+        ["Available points remaining: "] = "Залишилось доступних очків: ",
+--      ["[Backspace]"] = "",
+        ["Bamboo Thicket"] = "Бамбукові Хащі",
+        ["Barrel Eater!"] = "Поїдач Бочок!",
+        ["Barrel Launcher"] = "Катапульта для бочок",
         ["Bat balls at your enemies and|push them into the sea!"] = "Закидайте ворогів м'ячами щоб|зіштовути їх у море!",
         ["Bat your opponents through the|baskets and out of the map!"] = "Дубасьте опонентів битою через|кошики та за межі карти!",
         ["Bazooka Training"] = "Тренування з базукою",
         ["Best laps per team: "] = "Кращі партії на команду: ",
---      ["Best Team Times: "] = "",
+        ["Best Team Times: "] = "Кращий Командний Час: ",
         ["Bloody Rookies"] = "Криваві Салаги", -- 01#Boot_Camp, User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree
---      ["BOOM!"] = "",
+        ["BOOM!"] = "БАБАХ!",
         ["Boom!"] = "Бабах!",
---      ["Boss defeated!"] = "",
---      ["Boss Slayer!"] = "",
+        ["Boss defeated!"] = "Боса переможено!",
+        ["Boss Slayer!"] = "Вбивця Боса!",
+        ["Build a track and race."] = "Створіть трасу та женіть.",
         ["CAPTURE THE FLAG"] = "ЗАХОПЛЕННЯ ПРАПОРА",
---      ["Careless"] = "",
---      ["Clumsy"] = "",
+        ["Careless"] = "Безтурботний",
+        ["Change Weapon"] = "Змінити Зброю",
+        ["Clumsy"] = "Незграбний",
         ["Codename: Teamwork"] = "Кодова назва: Командна гра",
---      ["Complete the track as fast as you can!"] = "",
+        ["Complete the track as fast as you can!"] = "Подолайте трасу так швидко, як тільки зможете!",
         ["Congratulations! You've eliminated all targets|within the allowed time frame."] = "Вітаємо! Ви знищили всі цілі|в межах дозволеного часу.", --Bazooka, Shotgun, SniperRifle
         ["Congratulations!"] = "Вітаємо!",
         ["Control pillars to score points."] = "Контрольюй стовпи щоб набрати очки.",
@@ -30,147 +40,181 @@
         ["DAMMIT, ROOKIE! GET OFF MY HEAD!"] = "ЧОРТ ЗАБИРАЙ, САЛАГА! ЗЛІЗЬ З МОЄЇ ГОЛОВИ!",
         ["DAMMIT, ROOKIE!"] = "ЧОРТ ЗАБИРАЙ, САЛАГА!",
         ["Dangerous Ducklings"] = "Небезпечні Каченята",
---      ["Deadweight"] = "",
---      ["Depleted Kamikaze!"] = "",
---      ["Destroy invaders to score points."] = "",
---      ["Drone Hunter!"] = "",
---      ["Drowner"] = "",
---      ["Each turn you get 1-3 random weapons"] = "",
---      ["Each turn you get one random weapon"] = "",
+        ["Deadweight"] = "Власна вага",
+        ["Demolition is fun!"] = "Руйнування це весело!",
+        ["Depleted Kamikaze!"] = "Виснажений Камікадзе!",
+        ["Destroy invaders to score points."] = "Знищіть загарбників, щоб набрати очки.",
+        ["Double Kill!"] = "Подвійне Вбивство!",
+        ["Drone Hunter!"] = "Мисливець за Джмелями!",
+        ["Drowner"] = "Потопаючий",
+        ["Each turn you get 1-3 random weapons"] = "Кожного ходу ви отримуєте 1-3 випадкової зброї",
+        ["Each turn you get one random weapon"] = "Кожного ходу ви отримуєте одну випадкову зброю",
         ["Eliminate all enemies"] = "Ліквідуйте всіх ворогів",
         ["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "Знищіть всі цілі до закінчення часу.|У вас безмежні боєприпаси.", --Bazooka, Shotgun, SniperRifle
         ["Eliminate Poison before the time runs out"] = "Знешкодьте Смердюка до закінчення часу",
         ["Eliminate the Blue Team"] = "Знищіть Синю Команду",
---      ["Eliminate the enemy specialists."] = "",
+        ["Eliminate the enemy before the time runs out"] = "Знешкодьте ворога до закінчення часу", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+        ["Eliminate the enemy hogs to win."] = "Знешкодьте ворожих їжаків щоб перемогти.",
+        ["Eliminate the enemy specialists."] = "Знешкодьте ворожих спеціалістів.",
         ["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "- Знищіть Об'єкт 3378 |- Жалюгідні Повстанці повинні вижити",
+        ["Energetic Engineer"] = "Енергетичний Інженер",
         ["Enjoy the swim..."] = "Насолоджуйся плаванням...",
 --      ["[Enter]"] = "",
         ["Fastest lap: "] = "Найшвидша партія: ",
         ["Feeble Resistance"] = "Жалюгідні Повстанці",
---      ["Fire"] = "",
+        ["Fire"] = "Вогонь",
         ["Flag captured!"] = "Прапор захоплено!",
         ["Flag respawned!"] = "Прапор відновлено!",
         ["Flag returned!"] = "Прапор повернено!",
---      ["Flags, and their home base will be placed where each team ends their first turn."] = "",
---      ["GAME BEGUN!!!"] = "",
---      ["Game Modifiers: "] = "",
+        ["Flags, and their home base will be placed where each team ends their first turn."] = "Прапори і їх базування будуть розміщені там, де кожна команда закінчить її перший хід.",
+        ["Flamer"] = "Вогнемет",
+        ["Friendly Fire!"] = "Дружній Вогонь!",
+        ["fuel extended!"] = "пальне поповнене!",
+        ["GAME BEGUN!!!"] = "ГРА ПОЧАЛАСЬ!!!",
+        ["Game Modifiers: "] = "Модифікатори Гри: ",
         ["GAME OVER!"] = "КІНЕЦЬ ГРИ!",
         ["Game Started!"] = "Гра почалась!",
         ["Get on over there and take him out!"] = "Залізь туди і прикінчи його!",
---      ["Goal"] = "",
+        ["Goal"] = "Мета",
         ["GO! GO! GO!"] = "ДАВАЙ! ДАВАЙ! РУХАЙСЯ!",
         ["Good birdy......"] = "Гарна пташка......",
         ["Good luck out there!"] = "Удачі!",
---      ["GOTCHA!"] = "",
---      ["Hahahaha!"] = "",
---      ["Haha, now THAT would be something!"] = "",
---      ["Hapless Hogs"] = "",
---      [" Hapless Hogs left!"] = "",
---      ["Heavy"] = "",
+        ["Good so far!"] = "Покищо добре!",
+        ["Good to go!"] = "Так тримати!",
+        ["GOTCHA!"] = "ПОПАВСЯ!",
+        ["Grab Mines/Explosives"] = "Схопити Міни/Вибухівку",
+        ["Hahahaha!"] = "Хахахаха!",
+        ["Haha, now THAT would be something!"] = "Хаха, от ЦЕ буде щось!",
+        ["Hapless Hogs"] = "Нещасні Їжаки",
+        [" Hapless Hogs left!"] = " Нещасних Їжаків лишилось!",
+        ["Health crates extend your time."] = "Ящики зі здоров'ям продовжують ваш час.",
+        ["Heavy"] = "В'ялий",
         ["Hedgewars-Basketball"] = "Баскетбол Їжаками",
         ["Hedgewars-Knockball"] = "Бейсбол Їжаками",
---      ["Heh, it's not that bad."] = "",
---      ["Hit Combo!"] = "",
+        ["Heh, it's not that bad."] = "хех, це не так вже й погано.",
+        ["Hit Combo!"] = "Зробив Комбо!",
         ["Hmmm..."] = "Хмм...",
         ["Hooray!"] = "Урааа!",
         ["Hunter"] = "Мисливець", --Bazooka, Shotgun, SniperRifle
         ["Instructor"] = "Інструктор", -- 01#Boot_Camp, User_Mission_-_Dangerous_Ducklings
---      ["invaders destroyed"] = "",
---      ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "",
---      ["Jumping is disabled"] = "",
---      ["Kamikaze Expert!"] = "",
---      ["KILLS"] = "",
---      ["[Left Shift]"] = "",
+        ["invaders destroyed"] = "Загарбників знищено",
+        ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "Це чудово що РАПТОВА СМЕРТЬ віддалилась на 99 ходів...",
+        ["Jumping is disabled"] = "Стрибання вимкнене",
+        ["Kamikaze Expert!"] = "Камікадзе Експерт!",
+        ["Keep it up!"] = "Так тримати!",
+        ["Killing spree!"] = "Череда вбивств!",
+        ["KILLS"] = "ВБИВСТВ",
+        ["Last Target!"] = "Остання Ціль!",
+        ["[Left Shift]"] = "[Лівий Shift]",
         ["Listen up, maggot!!"] = "Слухай, хробак!",
+        ["Lively Lifeguard"] = "Жвавий Рятівник",
+        ["Mine Deployer"] = "Мінер",
+        ["Mine Eater!"] = "Поїдач Мін!",
         ["|- Mines Time:"] = "|- Час детонування мін:", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
         ["MISSION FAILED"] = "МІСІЮ ПРОВАЛЕНО", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
---      ["MISSION SUCCESS"] = "",
+        ["MISSION SUCCESS"] = "УСПІХ МІСІЇ",
         ["MISSION SUCCESSFUL"] = "МІСІЮ ВИКОНАНО", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
---      ["Movement: [Up], [Down], [Left], [Right]"] = "",
---      ["Multi-shot!"] = "",
---      ["Nameless Heroes"] = "",
---      ["NEW CLAN RECORD: "] = "",
+        ["Movement: [Up], [Down], [Left], [Right]"] = "Керування: [Вверх], [Вниз], [Вліво], [Вправо]",
+        ["Multi-shot!"] = "Мультипостріл!",
+        ["Nameless Heroes"] = "Безіменні Герої",
+        ["New Barrels Per Turn"] = "Нових Бочок на Хід",
+        ["NEW CLAN RECORD: "] = "НОВИЙ РЕКОРД КЛАНУ: ",
         ["NEW fastest lap: "] = "НОВА найшвидша партія: ",
---      ["NEW RACE RECORD: "] = "",
---      ["NOT ENOUGH WAYPOINTS"] = "",
+        ["New Mines Per Turn"] = "Нових Мін на Хід",
+        ["NEW RACE RECORD: "] = "НОВИЙ РЕКОРД ГОНКИ: ",
+        ["Newton's Hammock"] = "Гамак Ньютона",
+        ["NOT ENOUGH WAYPOINTS"] = "НЕДОСТАТНЬО ТОЧОК ШЛЯХУ",
         ["Not So Friendly Match"] = "Не дуже товариський матч", -- Basketball, Knockball
         ["Oh no! Just try again!"] = "О, ні! Давай, спробуй ще раз!", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
         ["Oh no! Time's up! Just try again."] = "О, ні! Час йде! Спробуй ще раз.", --Bazooka, Shotgun, SniperRifle
         ["Operation Diver"] = "Операція Водолаз",
         ["Opposing Team: "] = "Команда-Противник: ",
         ["Pathetic Hog #%d"] = "Жалюгідний Їжак #%d",
---      ["Per-Hog Ammo"] = "",
---      ["Place more waypoints using [ENTER]"] = "",
+        ["Pathetic Resistance"] = "Жалюгідний Опір", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+        ["Per-Hog Ammo"] = "Боєприпаси на їжака",
+        ["Place more waypoints using [ENTER]"] = "Розмістіть більше точок шляху за допомогою [Enter]",
+        ["Place more waypoints using the 'Air Attack' weapon."] = "Розмістіть більше точок шляху використавши зброю 'Повітряна Атака'.",
         ["points"] = "очок", -- Control, CTF_Blizzard, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle
         ["Poison"] = "Смердюк",
---      ["Power Remaining"] = "",
---      ["Press [Precise] to skip intro"] = "",
---      ["Race complexity limit reached."] = "",
+        ["Power Remaining"] = "Залишилось Енергії",
+        ["Prepare yourself"] = "Приготуйся",
+        ["Press [Precise] to skip intro"] = "Натисніть [Приціл] щоб пропустити вступ",
+        ["Race complexity limit reached."] = "Досягнута межа складності гонки.",
+        ["RACER"] = "ГОНЩИК",
         [" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = " - Поверніть ворожий прапор на свою базу щоб заробити очко | - Виграє команда з трьома очками | - Ви можете заробити очко лише коли ваш прапор на вашій базі | - Їжак покине прапор якщо потоне чи буде вбитий | - Покинутий прапор можна повернути або захопити знов | - Їжаки відновлюються після смерті",
---      ["Round Limit"] = "",
---      ["Rounds Complete"] = "",
+        ["Round Limit:"] = "Межа Раунду:",
+        ["Round Limit"] = "Межа Раунду",
+        ["Rounds Complete: "] = "Раундів Завершено: ",
+        ["Rounds Complete"] = "Раундів Завершено",
         ["RULES OF THE GAME [Press ESC to view]"] = "ПРАВИЛА ГРИ [Натисніть ESC для перегляду]",
---      ["s|"] = "",
---      ["Save as many hapless hogs as possible!"] = "",
---      ["SCORE"] = "",
+        ["s|"] = "с|",
+        ["Save as many hapless hogs as possible!"] = "Врятуйте якнайбільше нещасних їжаків!",
+        ["SCORE"] = "РАХУНОК",
         ["sec"] = "сек", -- CTF_Blizzard, TrophyRace, Basic_Training_-_Bazooka, Basic_Training_-_Shotgun, Basic_Training_-_Sniper_Rifle, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork, Capture_the_Flag
         ["See ya!"] = "Побачимося!",
---      ["s"] = "", -- GaudyRacer, Space_Invasion
---      ["Shield boosted! +30 power"] = "",
---      ["Shield Depleted"] = "",
---      ["Shield is fully recharged!"] = "",
---      ["Shield Master!"] = "",
---      ["Shield Miser!"] = "",
---      ["Shield OFF:"] = "",
---      ["Shield ON:"] = "",
---      ["Shield Seeker!"] = "",
+        ["selected!"] = "вибрано!",
+        ["s"] = "с", -- GaudyRacer, Space_Invasion
+        ["Shield boosted! +30 power"] = "Щит підсилено! +30 сили",
+        ["Shield Depleted"] = "Щит Вичерпаний",
+        ["Shield is fully recharged!"] = "Щит повністю заряджений!",
+        ["Shield Master!"] = "Майстер Щита!",
+        ["Shield Miser!"] = "Скупій Щита!",
+        ["Shield OFF:"] = "Щит Вимкнено:",
+        ["Shield ON:"] = "Щит Ввімкнено:",
+        ["Shield Seeker!"] = "Шукач Щита!",
         ["Shotgun Team"] = "Команда Рушниць",
         ["Shotgun Training"] = "Тренування з рушницею",
---      ["Shots Left: "] = "", -- GaudyRacer, Tumbler
---      ["Silly"] = "",
---      ["Sinky"] = "",
+        ["shots remaining."] = "пострілів залишилось.",
+        ["Silly"] = "Дурник",
+        ["Sinky"] = "Любимчик",
         ["%s is out and Team %d|scored a penalty!| |Score:"] = "%s вибув і Команда %d|отримала штраф!| |Рахунок:", -- Basketball, Knockball
         ["%s is out and Team %d|scored a point!| |Score:"] = "%s вибув і Команда %d|заробила очко!| |Рахунок:", -- Basketball, Knockball
         ["Sniper Training"] = "Снайперське тренування",
 --      ["Sniperz"] = "",
---      ["Sponge"] = "",
+        ["Sponge"] = "Губка",
         ["Spooky Tree"] = "Примарне Дерево",
---      ["STATUS UPDATE"] = "", -- GaudyRacer, Space_Invasion
---      ["Switched to "] = "",
+        ["STATUS UPDATE"] = "ОНОВЛЕННЯ СТАНУ", -- GaudyRacer, Space_Invasion
+        ["Switched to "] = "Перейшов до ",
         ["Team %d: "] = "Команда %d: ",
---      ["Team Scores"] = "", -- Control, Space_Invasion
---      ["That Sinking Feeling"] = "",
+        ["Team Scores"] = "Очки Команди", -- Control, Space_Invasion
+        ["That Sinking Feeling"] = "Ця раптова слабкість",
         ["That was pointless."] = "Це було безглуздо.",
         ["The enemy is hiding out on yonder ducky!"] = "Ворог ховається на он тій качечці!",
         ["The flag will respawn next round."] = "Прапор відновиться в наступному раунді.",
---      ["The Nameless One"] = "",
---      ["THE SPECIALISTS"] = "",
---      ["This rain is really something..."] = "",
---      ["TIME: "] = "",
---      ["Timed Kamikaze!"] = "",
---      ["Time Extended!"] = "",
---      ["Time Left: "] = "",
---      ["Toggle Shield"] = "",
+        ["The Nameless One"] = "Безіменний",
+        ["THE SPECIALISTS"] = "СПЕЦІАЛІСТИ",
+        ["This one's tricky."] = "Хитро придумано.",
+        ["This rain is really something..."] = "Цей дощ дійсно дещо...",
+        ["TIME: "] = "ЧАС: ",
+        ["Timed Kamikaze!"] = "Часовий Камікадзе!",
+        ["Time Extended!"] = "Час Продовжено!",
+        ["Time Extension"] = "Збільшення Часу",
+        ["Toggle Shield"] = "Перемкнути Щит",
         ["Toxic Team"] = "Токсична Команда", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
---      ["TRACK COMPLETED"] = "",
---      ["Track Time: "] = "",
+        ["TRACK COMPLETED"] = "ТРАСУ ПРОЙДЕНО",
+        ["TRACK FAILED!"] = "ТРАСУ НЕ ПРОЙДЕНО!",
         ["TrophyRace"] = "Погоня за Трофеєм",
         ["T_T"] = "Ааааа!!!",
---      ["Turn Time"] = "",
+        ["Tumbling Time Extended!"] = "Час Падіння Збільшений!",
+        ["Turn Time"] = "Час Ходу",
+        ["Unit"] = "Модуль",
         ["Unit 3378"] = "Об'єкт 3378",
---      ["Unlimited Attacks"] = "",
---      ["User Challenge"] = "",
+        ["Unit 835"] = "Об'єкт 835",
+        ["Unlimited Attacks"] = "Необмежені Атаки",
+        ["Unstoppable!"] = "Невпинний!",
+        ["User Challenge"] = "Дуель між користувачами",
         ["Use your rope to get from start to finish as fast as you can!"] = "Скористайся мотузкою щоб якнайшвидше досягнути фінішу!",
---      ["v.06"] = "",
         ["Victory for the "] = "Перемога для ", -- CTF_Blizzard, Capture_the_Flag
---      ["Waypoint placed."] = "",
---      ["Weapons Reset"] = "",
---      ["WINNING TIME: "] = "",
---      ["You'd almost swear the water was rising!"] = "",
+        ["Waypoint placed."] = "Точка шляху розміщена.",
+        ["Way-Points Remaining"] = "Залишилось Точок",
+        ["Weapons Reset"] = "Скидання Зброї",
+        ["Well done."] = "Чудова робота.",
+        ["Will this ever end?"] = "Це коли-небудь закінчиться?",
+        ["WINNING TIME: "] = "ЧАС ВИГРАШУ: ",
+        ["You'd almost swear the water was rising!"] = "Ти ледь не присягався, що вода піднімається!",
         ["You have SCORED!!"] = "Ви заробили ОЧКО!!",
---      ["You saved"] = "",
+        ["You saved"] = "Ви врятували",
         ["You've failed. Try again."] = "Спроба не вдалась. Спробуйте знов.",
         ["You've reached the goal!| |Time: "] = "Ви досягли мети!| |Час: ",
         ["'Zooka Team"] = "Команда 'Zooka",
-        ["!!!"] = "Я!",
     }
--- a/share/hedgewars/Data/Locale/uk.txt	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/uk.txt	Fri Sep 16 18:17:16 2011 +0200
@@ -53,8 +53,9 @@
 00:50=Атака дрелями
 00:51=Грудка багна
 00:52=Зброя не вибрана
-00:53=TARDIS
+00:53=Будка Часу
 00:54=Структура
+00:55=Земляний Спрей
 
 01:00=Вперед до перемоги!
 01:01=Нічия
@@ -286,6 +287,7 @@
 03:52=UNUSED
 03:53=Тип 40
 03:54=Збудуй щось
+03:55=Утиліта
 
 ; Weapon Descriptions (use | as line breaks)
 04:00=Атакуй ворогів використовуючи просту гранату.|Вона вибухне як тільки її таймер доходить до нуля.|1-5: Вистав таймер гранати|Атака: Утримуй щоб метнути сильніше
@@ -338,6 +340,12 @@
 04:47=Подвійні веселощі з двома гострими, підлими,|липкими мінами. Налаштуй ланцюгову реакцію|або захищайся (або і те і те!)|Атака: Утримуй щоб кинути сильніше (двічі)
 04:48=Чому всі образи повинні отримати кроти?|Зробити з їжака божевільного теж весело!|Удар цим молотком забере у їжака|третину здоров'я і заб'є його під землю.|Атака: Активуй
 04:49=Воскреси своїх друзів! Але май на|увазі що це воскресить також і ворогів.|Атака: Утримуй атаку для повільного відновлення|Вверх: Пришвидш відновлення
+04:50=Хтось ховається під землею?|Вирий їх атакою дрелями!|Таймер керує тим, як далеко вони будуть рити.
+04:51=Здійсни халявний удар, шпурни грудку багна.|Трохи пече і відкидає їжака назад.
+04:52=UNUSED
+04:53=Здійсни подорож крізь час та простір,|залишивши товаришів битись далі самим.|Будь готовий повернутись в кожну мить,|або до Раптової смерті або до їх поразки.|Відмова. Не працює в Раптовій Смерті,|якщо ти один, або якщо ти Король.
+04:54=НЕЗАВЕРШЕНО                                                                                                                                     
+04:55=Розпили потік лепких пластівців.|будуй мости, хорони ворогів, перекривай тунелі.|Стеж щоб на тебе не впала жодна з них!
 
 ; Game goal strings
 05:00=Режими Гри
@@ -361,3 +369,4 @@
 05:18=Необмежені Атаки
 05:19=Зброя скидається на кінці ходу
 05:20=Зброя не розподіляється між їжаками
+05:21=Збірна Команда: Команди одного клану виконують послідовні ходи|Спільний Час: Команди одного клану ділять між собою час ходу
--- a/share/hedgewars/Data/Locale/zh_CN.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Locale/zh_CN.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -2,12 +2,19 @@
       ["!!!"] = "!!!",
 --      ["..."] = "",
 --      ["Accuracy Bonus!"] = "",
+--      ["Achievement Unlocked"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_That_Sinking_Feeling, Tumbler
 --      ["a Hedgewars mini-game"] = "", -- Space_Invasion, The_Specialists
       ["Aiming Practice"] = "瞄准练习", --火箭筒、霰弹枪、狙击枪
 --      ["Ammo"] = "",
 --      ["Ammo Depleted!"] = "",
+--      ["ammo extended!"] = "",
+--      ["Ammo is reset at the end of your turn."] = "",
 --      ["Ammo Maniac!"] = "",
 --      ["Available points remaining: "] = "",
+--      ["[Backspace]"] = "",
+--      ["Bamboo Thicket"] = "",
+--      ["Barrel Eater!"] = "",
+--      ["Barrel Launcher"] = "",
       ["Bat balls at your enemies and|push them into the sea!"] = "发射棒球将敌人击打入水",
       ["Bat your opponents through the|baskets and out of the map!"] = "把敌人击出场地——对准栏框",
       ["Bazooka Training"] = "火箭筒训练",
@@ -18,8 +25,10 @@
 --      ["BOOM!"] = "",
 --      ["Boss defeated!"] = "",
 --      ["Boss Slayer!"] = "",
+--      ["Build a track and race."] = "",
       ["CAPTURE THE FLAG"] = "抢旗子",
 --      ["Careless"] = "",
+--      ["Change Weapon"] = "",
 --      ["Clumsy"] = "",
       ["Codename: Teamwork"] = "代号:团队行动",
 --      ["Complete the track as fast as you can!"] = "",
@@ -31,8 +40,10 @@
       ["DAMMIT, ROOKIE!"] = "新人",
       ["Dangerous Ducklings"] = "危险的小鸭子",
 --      ["Deadweight"] = "",
+--      ["Demolition is fun!"] = "",
 --      ["Depleted Kamikaze!"] = "",
 --      ["Destroy invaders to score points."] = "",
+--      ["Double Kill!"] = "",
 --      ["Drone Hunter!"] = "",
 --      ["Drowner"] = "",
 --      ["Each turn you get 1-3 random weapons"] = "",
@@ -41,8 +52,11 @@
       ["Eliminate all targets before your time runs out.|You have unlimited ammo for this mission."] = "时间限制内清除全部目标。弹药无限。", --Bazooka, Shotgun, SniperRifle
       ["Eliminate Poison before the time runs out"] = "时间限制内清除毒素。",
       ["Eliminate the Blue Team"] = "解决蓝色队伍",
+--      ["Eliminate the enemy before the time runs out"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
+--      ["Eliminate the enemy hogs to win."] = "",
 --      ["Eliminate the enemy specialists."] = "",
       ["- Eliminate Unit 3378 |- Feeble Resistance must survive"] = "- 打倒 3378 |-反抗者必须存活",
+--      ["Energetic Engineer"] = "",
       ["Enjoy the swim..."] = "游水愉快",
 --      ["[Enter]"] = "",
       ["Fastest lap: "] = "最快记录:",
@@ -52,6 +66,9 @@
       ["Flag respawned!"] = "旗帜重生!",
       ["Flag returned!"] = "旗帜归还!",
 --      ["Flags, and their home base will be placed where each team ends their first turn."] = "",
+--      ["Flamer"] = "",
+--      ["Friendly Fire!"] = "",
+--      ["fuel extended!"] = "",
 --      ["GAME BEGUN!!!"] = "",
 --      ["Game Modifiers: "] = "",
       ["GAME OVER!"] = "结束了!",
@@ -61,11 +78,15 @@
       ["GO! GO! GO!"] = "上!",
       ["Good birdy......"] = "乖鸟儿",
       ["Good luck out there!"] = "祝好运",
+--      ["Good so far!"] = "",
+--      ["Good to go!"] = "",
 --      ["GOTCHA!"] = "",
+--      ["Grab Mines/Explosives"] = "",
 --      ["Hahahaha!"] = "",
 --      ["Haha, now THAT would be something!"] = "",
 --      ["Hapless Hogs"] = "",
 --      [" Hapless Hogs left!"] = "",
+--      ["Health crates extend your time."] = "",
 --      ["Heavy"] = "",
       ["Hedgewars-Basketball"] = "刺猬大作战-篮球计划",
       ["Hedgewars-Knockball"] = "刺猬大作战-击球计划",
@@ -79,9 +100,15 @@
 --      ["It's a good thing SUDDEN DEATH is 99 turns away..."] = "",
 --      ["Jumping is disabled"] = "",
 --      ["Kamikaze Expert!"] = "",
+--      ["Keep it up!"] = "",
+--      ["Killing spree!"] = "",
 --      ["KILLS"] = "",
+--      ["Last Target!"] = "",
 --      ["[Left Shift]"] = "",
       ["Listen up, maggot!!"] = "听好,小子!!",
+--      ["Lively Lifeguard"] = "",
+--      ["Mine Deployer"] = "",
+--      ["Mine Eater!"] = "",
 --      ["|- Mines Time:"] =
       ["MISSION FAILED"] = "任务失败", -- User_Mission_-_Dangerous_Ducklings, User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["MISSION SUCCESS"] = "",
@@ -89,9 +116,12 @@
 --      ["Movement: [Up], [Down], [Left], [Right]"] = "",
 --      ["Multi-shot!"] = "",
 --      ["Nameless Heroes"] = "",
+--      ["New Barrels Per Turn"] = "",
 --      ["NEW CLAN RECORD: "] = "",
       ["NEW fastest lap: "] = "新记录",
+--      ["New Mines Per Turn"] = "",
 --      ["NEW RACE RECORD: "] = "",
+--      ["Newton's Hammock"] = "",
 --      ["NOT ENOUGH WAYPOINTS"] = "",
       ["Not So Friendly Match"] = "非友善对抗", -- Basketball, Knockball
       ["Oh no! Just try again!"] = "不!重新再来。", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
@@ -102,16 +132,22 @@
       ["Pathetic Hog #1"] = "可怜刺猬一号",
       ["Pathetic Hog #2"] = "可怜刺猬二号",
 --      ["Pathetic Hog #%d"] =
+--      ["Pathetic Resistance"] = "", -- User_Mission_-_Bamboo_Thicket, User_Mission_-_Newton_and_the_Hammock
 --      ["Per-Hog Ammo"] = "",
 --      ["Place more waypoints using [ENTER]"] = "",
+--      ["Place more waypoints using the 'Air Attack' weapon."] = "",
 --      ["points"] =
 --      ["Poison"] =
 --      ["Power Remaining"] = "",
+--      ["Prepare yourself"] = "",
 --      ["Press [Precise] to skip intro"] = "",
 --      ["Race complexity limit reached."] = "",
+--      ["RACER"] = "",
 --      [" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] =
       ["- Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"] = "-带回敌人旗帜得分| -第一支3次夺旗队伍获胜| - 只有旗帜在己方基地才算| -带旗刺猬消逝则旗帜落下| -落下的旗帜使用方式不变| -损失的刺猬瞬间还原",
+--      ["Round Limit:"] = "",
 --      ["Round Limit"] = "",
+--      ["Rounds Complete: "] = "",
 --      ["Rounds Complete"] = "",
       ["RULES OF THE GAME [Press ESC to view]"] = "游戏规则 [按下 ESC键 查看]",
 --      ["s|"] = "",
@@ -119,6 +155,7 @@
 --      ["SCORE"] = "",
 --      ["sec"] =
       ["See ya!"] = "再见!",
+--      ["selected!"] = "",
 --      ["s"] = "", -- GaudyRacer, Space_Invasion
 --      ["Shield boosted! +30 power"] = "",
 --      ["Shield Depleted"] = "",
@@ -130,7 +167,7 @@
 --      ["Shield Seeker!"] = "",
       ["Shotgun Team"] = "霰弹枪队",
       ["Shotgun Training"] = "霰弹枪训练",
---      ["Shots Left: "] = "", -- GaudyRacer, Tumbler
+--      ["shots remaining."] = "",
 --      ["Silly"] = "",
 --      ["Sinky"] = "",
       ["%s is out and Team %d|scored a penalty!| |Score:"] = "%s 出局, %d 惩罚分数!", -- Basketball, Knockball
@@ -149,26 +186,33 @@
 --      ["The flag will respawn next round."] =
 --      ["The Nameless One"] = "",
 --      ["THE SPECIALISTS"] = "",
+--      ["This one's tricky."] = "",
 --      ["This rain is really something..."] = "",
 --      ["TIME: "] = "",
 --      ["Timed Kamikaze!"] = "",
 --      ["Time Extended!"] = "",
---      ["Time Left: "] = "",
+--      ["Time Extension"] = "",
 --      ["Toggle Shield"] = "",
       ["Toxic Team"] = "腐坏的队伍", -- User_Mission_-_Diver, User_Mission_-_Spooky_Tree, User_Mission_-_Teamwork
 --      ["TRACK COMPLETED"] = "",
---      ["Track Time: "] = "",
+--      ["TRACK FAILED!"] = "",
       ["TrophyRace"] = "竞速",
       ["T_T"] = "T_T",
+--      ["Tumbling Time Extended!"] = "",
 --      ["Turn Time"] = "",
+--      ["Unit"] = "",
       ["Unit 3378"] = "3378",
+--      ["Unit 835"] = "",
 --      ["Unlimited Attacks"] = "",
+--      ["Unstoppable!"] = "",
 --      ["User Challenge"] = "",
       ["Use your rope to get from start to finish as fast as you can!"] = "抓起绳子飞向目的地,越快越好。",
---      ["v.06"] = "",
       ["Victory for the "] = "胜利属于",
 --      ["Waypoint placed."] = "",
+--      ["Way-Points Remaining"] = "",
 --      ["Weapons Reset"] = "",
+--      ["Well done."] = "",
+--      ["Will this ever end?"] = "",
 --      ["WINNING TIME: "] = "",
 --      ["You'd almost swear the water was rising!"] = "",
       ["You have SCORED!!"] = "得分",
--- a/share/hedgewars/Data/Maps/Control/map.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Maps/Control/map.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -1,5 +1,5 @@
 --------------------------------
--- CONTROL 0.5
+-- CONTROL 0.6
 --------------------------------
 
 ---------
@@ -35,6 +35,16 @@
 -- removed user branding
 -- fixed infinite attack time exploit
 
+--------
+-- 0.6
+--------
+
+-- timebox fix
+-- support for more players
+-- remove version numbers
+-- enable limited sudden death
+-- using skip go generates as many points as you would have gotten had you sat and waited
+
 -----------------
 --script begins
 -----------------
@@ -88,10 +98,6 @@
 --zone and teleporter variables
 --------------------------------
 
---local redTel
---local orangeTel
---local areaArr = {} -- no longer used
-
 local cPoint = {}
 local cOwnerClan = {}
 
@@ -159,7 +165,7 @@
 		SetVisualGearValues(vCirc[i], vCircX[i], vCircY[i], vCircMinA[i], vCircMaxA[i], vCircType[i], vCircPulse[i], vCircFuckAll[i], vCircRadius[i], vCircWidth[i], 0xffffffff)
 		cOwnerClan[i] = nil
 		for k = 0, (numhhs-1) do
-			if (hhs[k] ~= nil) and (GetGearType(hhs[k]) ~= nil) then
+			if (hhs[k] ~= nil) then --and (GetGearType(hhs[k]) ~= nil) then
                 if (GearIsInZone(hhs[k],i)) == true then
 
                     if cOwnerClan[i] ~= nil then
@@ -179,7 +185,7 @@
                     end
 
                 end
-            else hhs[k] = nil
+           -- else hhs[k] = nil
 			end
 		end
 
@@ -207,9 +213,9 @@
 	for i = 0,(zCount-1) do			
 		if CurrentHedgehog ~= nil then		
 			if cOwnerClan[i] == GetHogClan(CurrentHedgehog) then
-				g = AddVisualGear(vCircX[i], vCircY[i], vgtHealthTag, 100, False)
+				g = AddVisualGear(vCircX[i], vCircY[i]-100, vgtHealthTag, 100, False)
                 if g ~= 0 then
-				    SetVisualGearValues(g, vCircX[i], vCircY[i], 0, 0, 0, 0, 0, teamScore[cOwnerClan[i]], 1500, GetClanColor(cOwnerClan[i]))
+				    SetVisualGearValues(g, vCircX[i], vCircY[i]-100, 0, 0, 0, 0, 0, teamScore[cOwnerClan[i]], 1500, GetClanColor(cOwnerClan[i]))
                 end
 			end
 		end
@@ -225,7 +231,7 @@
 
 
 	-- make a list of individual team names
-	for i = 0, 5 do
+	for i = 0, (TeamsCount-1) do
 		teamNameArr[i] = " " -- = i
 		teamSize[i] = 0
 		teamIndex[i] = 0
@@ -282,14 +288,27 @@
 -- game methods
 ------------------------
 
+function onAttack()
+
+	if CurrentHedgehog ~= nil then
+		if GetCurAmmoType() == amSkip then
+			z = (TurnTimeLeft / 2000) - (TurnTimeLeft / 2000)%2 
+			--AddCaption("scored: " .. z,GetClanColor(GetHogClan(CurrentHedgehog)),capgrpMessage2)
+			for i = 0, z do
+				AwardPoints()
+			end
+		end
+	end
+
+end
+
 function onGameInit()
 
 	-- Things we don't modify here will use their default values.
 	--GameFlags = gfInfAttack + gfSolidLand -- Game settings and rules
 	
 	GameFlags = band(bor(GameFlags, gfInfAttack + gfSolidLand), bnot(gfKing + gfForts))
-		
-	SuddenDeathTurns = 99 -- suddendeath is off, effectively
+	WaterRise = 0
 
 end
 
@@ -335,10 +354,7 @@
 	for i = 0, (numTeams-1) do
 		pointLimit = pointLimit - 25
 	end
-	--SetGearPosition(hhs[0], 631, 82)
-	--SetGearPosition(hhs[1], 1088, 684)
-	--SetGearPosition(hhs[2], 381, 1569)
-
+	
 	-- reposition hogs if they are on control points until they are not or sanity limit kicks in
 	reN = 0
 	--zz = 0
@@ -353,7 +369,10 @@
 		--AddCaption(zz) -- number of times it took to work
 	end
 
-	ShowMission("CONTROL v0.3", "", loc("Control pillars to score points.") .. "|" .. loc("Goal") .. ": " .. pointLimit .. " " .. loc("points"), 0, 0)
+	ShowMission("CONTROL", 
+	"", 
+	loc("Control pillars to score points.") .. "|" .. 
+	loc("Goal") .. ": " .. pointLimit .. " " .. loc("points"), 0, 0)
 
 
 end
@@ -389,14 +408,19 @@
 			TurnTimeLeft = 1
 		end
 
-		for i = 0,5 do
+		totalComment = ""		
+		for i = 0,(TeamsCount-1) do
 				if teamNameArr[i] ~= " " then				-- i
 					teamComment[i] = teamNameArr[i] .. ": " .. teamScore[teamClan[i]] .. " " .. loc("points") .. "|"
+					totalComment = totalComment .. teamComment[i]			
 				elseif teamNameArr[i] == " " then
 					teamComment[i] = "|"
 				end
 			end
-			ShowMission("CONTROL", loc("Team Scores") .. ":", teamComment[0] .. teamComment[1] .. teamComment[2] .. teamComment[3] .. teamComment[4] .. teamComment[5], 0, 1600)
+			
+			ShowMission("CONTROL", 
+			loc("Team Scores") .. ":", 
+			totalComment, 0, 1600)
 	
 	end
 
@@ -408,20 +432,6 @@
 	if (vCircCount >= 500) and (gameWon == false) then
 		vCircCount = 0
 		CheckZones()
-		--AwardPoints()
-
-
-		--[[for i = 0,5 do
-
-			if teamNameArr[i] ~= " " then				-- i
-				teamComment[i] = teamNameArr[i] .. ": " .. teamScore[teamClan[i] ] .. " points|"
-			elseif teamNameArr[i] == " " then
-				teamComment[i] = "|"
-			end
-		end
-		
-		ShowMission("CONTROL", "Team Scores:", teamComment[0] .. teamComment[1] .. teamComment[2] .. teamComment[3] .. teamComment[4] .. teamComment[5], 0, 1600)]]
-
 	end	
 
 	-- things we wanna check often
@@ -461,15 +471,37 @@
 	AddVisualGear(GetX(gear), GetY(gear), vgtBigExplosion, 0, false)
 end
 
+function InABetterPlaceNow(gear)
+	for i = 0, (numhhs-1) do
+		if gear == hhs[i] then
+			hhs[i] = nil
+		end
+	end
+end
+
+function onHogHide(gear)
+	 InABetterPlaceNow(gear)
+end
+
+function onHogRestore(gear)
+	match = false
+	for i = 0, (numhhs-1) do
+		if (hhs[i] == nil) and (match == false) then
+			hhs[i] = gear
+			--AddCaption(GetHogName(gear) .. " has reappeared it seems!")
+			--FollowGear(gear)
+			match = true
+		end
+	end
+end
+
 
 function onGearAdd(gear)
 
 	if GetGearType(gear) == gtHedgehog then
-
 		hhs[numhhs] = gear
 		numhhs = numhhs + 1
 		SetEffect(gear, heResurrectable, true)
-
 	end
 
 end
@@ -477,13 +509,7 @@
 function onGearDelete(gear)
 
 	if GetGearType(gear) == gtHedgehog then
-	--AddCaption("gear deleted!")
-		for i = 0, (numhhs-1) do
-			if gear == hhs[i] then
-				hhs[i] = nil
-				--AddCaption("for real")	
-			end		
-		end
+		InABetterPlaceNow(gear)
 	end
 
 end
Binary file share/hedgewars/Data/Maps/Ruler/preview.png has changed
--- a/share/hedgewars/Data/Missions/Training/Basic_Training_-_Sniper_Rifle.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Missions/Training/Basic_Training_-_Sniper_Rifle.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -189,6 +189,7 @@
 			elseif score == 3 then
 				spawnTarget(2080,780)
 			elseif score == 4 then
+				AddCaption(loc("Good so far!") .. " " .. loc("Keep it up!"));
 				blowUp(1730,1226)
 				blowUp(1440,1595)
 				blowUp(1527,1575)
@@ -213,8 +214,10 @@
 			elseif score == 10 then
 				spawnTarget(2930,1500)
 			elseif score == 11 then
+				AddCaption(loc("This one's tricky."));
 				spawnTarget(700,720)
 			elseif score == 12 then
+				AddCaption(loc("Well done."));
 				blowUp(914,1222)
 				blowUp(1050,1222)
 				blowUp(1160,1008)
@@ -239,6 +242,7 @@
 			elseif score == 17 then
 				spawnTarget(2080,820)
 			elseif score == 18 then
+				AddCaption(loc("Demolition is fun!"));
 				blowUp(2110,920)
 				blowUp(2210,920)
 				blowUp(2200,305)
@@ -260,6 +264,7 @@
 			elseif score == 21 then
 				spawnTarget(2590,-100)
 			elseif score == 22 then
+				AddCaption(loc("Will this ever end?"));
 				blowUp(2790,305)
 				blowUp(2930,305)
 				blowUp(3060,305)
@@ -271,7 +276,6 @@
 				blowUp(2805,630)
 				blowUp(2805,760)
 				blowUp(2805,890)
-				blowUp(2700,890)
 				blowUp(3258,370)
 				blowUp(3258,475)
 				blowUp(3264,575)
@@ -291,6 +295,7 @@
 			elseif score == 29 then
 				spawnTarget(3670,0)
 			elseif score == 30 then
+				AddCaption(loc("Last Target!"));
 				spawnTarget(3480,1200)
 			end
 		else
--- a/share/hedgewars/Data/Names/types.ini	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Names/types.ini	Fri Sep 16 18:17:16 2011 +0200
@@ -12,10 +12,10 @@
 #####
 Fruit
 #####
-apple
-banana
-lemon
-orange
+fr_apple
+fr_banana
+fr_lemon
+fr_orange
 #####
 Indians
 Apache
@@ -37,13 +37,13 @@
 Possessed
 Parasites
 #####
-BrainSlug
-BrainSlugMouth
-BrainSlugMouth
+scif_BrainSlug
+scif_BrainSlug2
+scif_BrainSlug2
 #####
 Bunnies
 #####
-Bunny
+zoo_Bunny
 #####
 Detectives
 #####
@@ -79,9 +79,9 @@
 #####
 StarHogs
 #####
-darthvader
-stormtrooper
-stormtrooper
+scif_swDarthvader
+scif_swStormtrooper
+scif_swStormtrooper
 #####
 Hogtrix
 #####
@@ -89,24 +89,24 @@
 #####
 Hog Fighters
 #####
-Balrog
-Blanka
-BlankaToothless
-Chunli
-Guile
-Honda
-Ken
-Ryu
-Vega
+sf_balrog
+sf_blanka
+sf_blankatoothless
+sf_chunli
+sf_guile
+sf_honda
+sf_ken
+sf_ryu
+sf_vega
 #####
 Mushroom Kingdom
 #####
-Mario
-Luigi
-PrincessPeach
-PrincessDaisy
-Toad
-Wario
+sm_mario
+sm_luigi
+sm_peach
+sm_daisy
+sm_toad
+sm_wario
 #####
 Honor
 #####
@@ -120,13 +120,13 @@
 #####
 Rainbow
 #####
-GreenHair
-BlueHair
-RedHair
-OrangeHair
-YellowHair
-PurpleHair
-GreyHair
+hair_green
+hair_blue
+hair_red
+hair_orange
+hair_yellow
+hair_purple
+hair_grey
 #####
 Pride
 #####
@@ -146,17 +146,17 @@
 #####
 Pocket Pros
 #####
-ash
-charmander
-chikorita
-diglett
-jigglypuff
-lugia
-mudkip
-pikachu
-slowpoke
-squirtle
-voltorb
+poke_ash
+poke_charmander
+poke_chikorita
+poke_diglett
+poke_jigglypuff
+poke_lugia
+poke_mudkip
+poke_pikachu
+poke_slowpoke
+poke_squirtle
+poke_voltorb
 #####
 Vikings
 #####
--- a/share/hedgewars/Data/Scripts/Multiplayer/Balanced_Random_Weapon.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Scripts/Multiplayer/Balanced_Random_Weapon.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -18,16 +18,16 @@
 
 function randomAmmo()
     local n = 3   --"points" to be allocated on weapons
-    
+
     --pick random weapon and subtract cost
     local r = GetRandom(table.maxn(weapons_values)) + 1
     local picked_items = {}
     table.insert(picked_items, weapons[r])
     n = n - weapons_values[r]
-    
-    
+
+
     --choose any weapons or utilities to use up remaining n
-    
+
     while n > 0 do
         local items = {}
         local items_values = {}
@@ -63,12 +63,12 @@
                 end
             end
         end
-        
+
         local r = GetRandom(table.maxn(items_values)) + 1
         table.insert(picked_items, items[r])
         n = n - items_values[r]
     end
-    
+
     return picked_items
 end
 
@@ -111,7 +111,7 @@
 
 function onAmmoStoreInit()
     SetAmmo(amSkip, 9, 0, 0, 0)
-    
+
     SetAmmo(amExtraDamage, 0, 1, 0, 1)
     SetAmmo(amInvulnerable, 0, 1, 0, 1)
     SetAmmo(amExtraTime, 0, 1, 0, 1)
--- a/share/hedgewars/Data/Scripts/Multiplayer/Capture_the_Flag.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Scripts/Multiplayer/Capture_the_Flag.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -84,7 +84,7 @@
 ------------------ "Oh well, they probably have the memory"
 
 local gameStarted = false
-local gameTurns = 0	
+local gameTurns = 0
 
 --------------------------
 -- hog and team tracking variales
@@ -142,14 +142,14 @@
 
 	if fCaptures[teamID] == 3 then
 		for i = 0, (numhhs-1) do
-			if hhs[i] ~= nil then			
+			if hhs[i] ~= nil then
 				if GetHogClan(hhs[i]) == alt then
 					SetEffect(hhs[i], heResurrectable, false)
 					SetHealth(hhs[i],0)
 				end
 			end
 		end
-		if CurrentHedgehog ~= nil then		
+		if CurrentHedgehog ~= nil then
 			ShowMission(loc("GAME OVER!"), loc("Victory for the ") .. GetHogTeamName(CurrentHedgehog), loc("Hooray!"), 0, 0)
 		end
 	end
@@ -165,18 +165,18 @@
 		wtf = 1
 		bbq = 0
 	end
-	
+
 	-- player has successfully captured the enemy flag
 	if (GetHogClan(CurrentHedgehog) == wtf) and (CurrentHedgehog == fThief[bbq]) and (fIsMissing[wtf] == false) then
-		
+
 		DeleteVisualGear(fGear[wtf])
-		fGear[wtf] = nil -- the flag has now disappeared				
-				
+		fGear[wtf] = nil -- the flag has now disappeared
+
 		fIsMissing[wtf] = false
 		fNeedsRespawn[wtf] = true
 		fIsMissing[bbq] = false
 		fNeedsRespawn[bbq] = true
-		fCaptures[wtf] = fCaptures[wtf] +1				
+		fCaptures[wtf] = fCaptures[wtf] +1
 		ShowMission(loc("You have SCORED!!"), GetHogTeamName(CurrentHedgehog) .. ": " .. fCaptures[wtf], loc("Opposing Team: ") .. fCaptures[bbq], 0, 0)
 		PlaySound(sndVictory)
 		fThief[bbq] = nil -- player no longer has the enemy flag
@@ -184,23 +184,23 @@
 
 	--if the player is returning the flag
 	elseif (GetHogClan(CurrentHedgehog) == wtf) and (fIsMissing[wtf] == true) then
-			
+
 		DeleteVisualGear(fGear[wtf])
 		fGear[wtf] = nil -- the flag has now disappeared
-					
-		fNeedsRespawn[wtf] = true					
+
+		fNeedsRespawn[wtf] = true
 		HandleRespawns() -- this will set fIsMissing[wtf] to false :)
 		AddCaption(loc("Flag returned!"))
-	
+
 	--if the player is taking the enemy flag
 	elseif GetHogClan(CurrentHedgehog) == bbq then
-				
+
 		DeleteVisualGear(fGear[wtf])
-		fGear[wtf] = nil -- the flag has now disappeared				
-				
+		fGear[wtf] = nil -- the flag has now disappeared
+
 		fIsMissing[wtf] = true
 		for i = 0,numhhs-1 do
-			if CurrentHedgehog ~= nil then			
+			if CurrentHedgehog ~= nil then
 				if CurrentHedgehog == hhs[i] then
 					fThief[wtf] = hhs[i]
 				end
@@ -209,23 +209,23 @@
 		AddCaption(loc("Flag captured!"))
 
 	end
-	
+
 end
 
-function CheckFlagProximity() 
+function CheckFlagProximity()
 
 	for i = 0, 1 do
 		if fGear[i] ~= nil then
-			
+
 			g1X = fGearX[i]
-			g1Y = fGearY[i]			
-	
+			g1Y = fGearY[i]
+
 			g2X, g2Y = GetGearPosition(CurrentHedgehog)
 
 			q = g1X - g2X
 			w = g1Y - g2Y
 			dist = (q*q) + (w*w)
-			
+
 			if dist < 500 then --1600
 				DoFlagStuff(fGear[i])
 			end
@@ -242,7 +242,7 @@
 		if fNeedsRespawn[i] == true then
 			fGear[i] = AddVisualGear(fSpawnX[i],fSpawnY[i],vgtCircle,0,true)
 			fGearX[i] = fSpawnX[i]
-			fGearY[i] = fSpawnY[i]			
+			fGearY[i] = fSpawnY[i]
 
 			fNeedsRespawn[i] = false
 			fIsMissing[i] = false -- new, this should solve problems of a respawned flag being "returned" when a player tries to score
@@ -265,16 +265,16 @@
 	end
 
 	if fThief[wtf] ~= nil then
-		-- falls into water		
-		--ShowMission(LAND_HEIGHT,  fThiefY[wtf], (LAND_HEIGHT - fThiefY[wtf]), 0, 0)	
+		-- falls into water
+		--ShowMission(LAND_HEIGHT,  fThiefY[wtf], (LAND_HEIGHT - fThiefY[wtf]), 0, 0)
 		if (LAND_HEIGHT - fThiefY[wtf]) < 15 then
 			fIsMissing[wtf] = true
 			fNeedsRespawn[wtf] = true
 			HandleRespawns()
-		else	--normally	
+		else	--normally
 			fGearX[wtf]  =  fThiefX[wtf]
-			fGearY[wtf]  =  fThiefY[wtf]	
-			fGear[wtf] = AddVisualGear(fGearX[wtf],fGearY[wtf],vgtCircle,0,true)		
+			fGearY[wtf]  =  fThiefY[wtf]
+			fGear[wtf] = AddVisualGear(fGearX[wtf],fGearY[wtf],vgtCircle,0,true)
 		end
 
 		AddVisualGear(fThiefX[wtf], fThiefY[wtf], vgtBigExplosion, 0, false)
@@ -290,14 +290,14 @@
 		fGearTimer = 0
 		fGearRad = fGearRad + 1
 		if fGearRad > fGearRadMax then
-			fGearRad = fGearRadMin	
+			fGearRad = fGearRadMin
 		end
 	end
 
 	for i = 0, 1 do
-		
+
 		--SetVisualGearValues(fSpawnC[i], fSpawnX[i],fSpawnY[i], 20, 200, 0, 0, 100, 50, 3, fCol[i]) -- draw a circ for spawning area
-		
+
 		if fIsMissing[i] == false then -- draw a flag marker at the flag's spawning place
 			SetVisualGearValues(fCirc[i], fSpawnX[i],fSpawnY[i], 20, 20, 0, 10, 0, 33, 3, fCol[i])
 			if fGear[i] ~= nil then -- draw the flag gear itself
@@ -308,12 +308,12 @@
 				SetVisualGearValues(fCirc[i], fThiefX[i], fThiefY[i], 20, 200, 0, 0, 100, 50, 3, fCol[i])
 				--AddCaption("circle marking carrier")
 			elseif fThief[i] == nil then -- draw cirle round dropped flag
-				--g1X,g1Y,g4,g5,g6,g7,g8,g9,g10,g11 =  GetVisualGearValues(fGear[i])				
+				--g1X,g1Y,g4,g5,g6,g7,g8,g9,g10,g11 =  GetVisualGearValues(fGear[i])
 				--SetVisualGearValues(fCirc[i], g1X, g1Y, 20, 200, 0, 0, 100, 33, 2, fCol[i])
 				SetVisualGearValues(fCirc[i], fGearX[i], fGearY[i], 20, 200, 0, 0, 100, 33, 3, fCol[i])
-				--AddCaption('dropped circle marker')				
+				--AddCaption('dropped circle marker')
 				if fGear[i] ~= nil then -- flag gear itself
-					--SetVisualGearValues(fGear[i], g1X, g1Y, 20, 200, 0, 0, 100, 10, 4, fCol[i])					
+					--SetVisualGearValues(fGear[i], g1X, g1Y, 20, 200, 0, 0, 100, 10, 4, fCol[i])
 					SetVisualGearValues(fGear[i], fGearX[i], fGearY[i], 20, 200, 0, 0, 100, fGearRad, 2, fCol[i])
 					--AddCaption('dropped flag itself')
 				end
@@ -410,13 +410,13 @@
 
 	for i = 0, 1 do
 
-		-- if someone uses kamikaze downwards, this can happen as the hog won't respawn		
+		-- if someone uses kamikaze downwards, this can happen as the hog won't respawn
 		if (LAND_HEIGHT - fSpawnY[i]) < 0 then
 			tempG = AddGear(0, 0, gtTarget, 0, 0, 0, 0)
-     			FindPlace(tempG, true, 0, LAND_WIDTH, true)			
+     			FindPlace(tempG, true, 0, LAND_WIDTH, true)
 			fSpawnX[i], fSpawnY[i] = GetGearPosition(tempG)
 			DeleteGear(tempG)
-		end  		
+		end
 
 		fGear[i] = AddVisualGear(fSpawnX[i],fSpawnY[i],vgtCircle,0,true)
 		fCirc[i] = AddVisualGear(fSpawnX[i],fSpawnY[i],vgtCircle,0,true)
@@ -429,11 +429,11 @@
 		fIsMissing[i] = false
 		fNeedsRespawn[i] = false
 		fCaptures[i] = 0
-		
-		--SetVisualGearValues(zxc, 1000,1000, 20, 100, 0,    10,                     1,         100,        5,      GetClanColor(0))		
-		
+
+		--SetVisualGearValues(zxc, 1000,1000, 20, 100, 0,    10,                     1,         100,        5,      GetClanColor(0))
+
 		SetVisualGearValues(fSpawnC[i], fSpawnX[i],fSpawnY[i], 20, 100, 0, 10, 0, 75, 5, fCol[i])
-				
+
 	end
 
 end
@@ -446,8 +446,8 @@
 
 	GameFlags = band(bor(GameFlags, gfDivideTeams), bnot(gfKing + gfForts))
 	--SuddenDeathTurns = 999 -- suddendeath is off, effectively
-	WaterRise = 0	
-	Delay = 10 
+	WaterRise = 0
+	Delay = 10
 
 end
 
@@ -458,8 +458,8 @@
 	ShowMission(loc("CAPTURE THE FLAG"), loc("Flags, and their home base will be placed where each team ends their first turn."), "", 0, 0)
 
 	RebuildTeamInfo()
-	
-	-- should gfDivideTeams do this automatically?	
+
+	-- should gfDivideTeams do this automatically?
 	--[[for i = 0, (TeamsCount-1) do
 		for g = teamIndex[i], (teamIndex[i]+teamSize[i]-1) do
 			if GetHogClan(hhs[g]) == 0 then
@@ -475,7 +475,7 @@
 
 	--zxc = AddVisualGear(fSpawnX[i],fSpawnY[i],vgtCircle,0,true)
 
-	
+
 	--SetVisualGearValues(zxc, 1000,1000, 20, 255, 1,    10,                     0,         200,        1,      GetClanColor(0))
 					--minO,max0 -glowyornot	--pulsate timer	 -- fuckall      -- radius -- width  -- colour
 end
@@ -484,7 +484,7 @@
 function onNewTurn()
 
 	gameTurns = gameTurns + 1
-	
+
 	if lastTeam ~= GetHogTeamName(CurrentHedgehog) then
 		lastTeam = GetHogTeamName(CurrentHedgehog)
 	end
@@ -492,14 +492,14 @@
 	--AddCaption("Handling respawns")
 	if gameStarted == true then
 		HandleRespawns()
-	--new method of placing starting flags	
+	--new method of placing starting flags
 	elseif gameTurns == 1 then
 		ShowMission(loc("CAPTURE THE FLAG"), loc("Flags, and their home base will be placed where each team ends their first turn."), "", 0, 0)
 	elseif gameTurns == 2 then
 		fPlaced[0] = true
 		ShowMission(loc("CAPTURE THE FLAG"), loc("RULES OF THE GAME [Press ESC to view]"), loc(" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"), 0, 0)
 	elseif gameTurns == 3 then
-		fPlaced[1] = true	
+		fPlaced[1] = true
 		StartTheGame()
 	end
 
@@ -535,16 +535,16 @@
 			CheckFlagProximity()
 		end
 	elseif CurrentHedgehog ~= nil then -- if the game hasn't started yet, keep track of where we are gonna put the flags on turn end
-				
+
 		if GetHogClan(CurrentHedgehog) == 0 then
-			i = 0			
+			i = 0
 		elseif GetHogClan(CurrentHedgehog) == 1 then
-			i = 1			
-		end			
-		
+			i = 1
+		end
+
 		fSpawnX[i] = GetX(CurrentHedgehog)
 		fSpawnY[i] = GetY(CurrentHedgehog)
-			
+
 	end
 
 end
@@ -575,14 +575,14 @@
 function InABetterPlaceNow(gear)
 	for i = 0, (numhhs-1) do
 		if gear == hhs[i] then
-				
+
 			for i = 0,1 do
 				if gear == fThief[i] then
 					FlagThiefDead(gear)
 				end
-			end				
-			hhs[i] = nil	
-		end		
+			end
+			hhs[i] = nil
+		end
 	end
 end
 
@@ -591,11 +591,11 @@
 end
 
 function onHogRestore(gear)
-	match = false	
+	match = false
 	for i = 0, (numhhs-1) do
 		if (hhs[i] == nil) and (match == false) then
 			hhs[i] = gear
-			--AddCaption(GetHogName(gear) .. " has reappeared it seems!")	
+			--AddCaption(GetHogName(gear) .. " has reappeared it seems!")
 			match = true
 		end
 	end
@@ -608,12 +608,12 @@
 		hhs[numhhs] = gear
 		numhhs = numhhs + 1
 		SetEffect(gear, heResurrectable, true)
-	
+
 	elseif GetGearType(gear) == gtPiano then
 
 		for i = 0, 1 do
 			if CurrentHedgehog == fThief[i] then
-				FlagThiefDead(gear)			
+				FlagThiefDead(gear)
 			end
 		end
 
@@ -624,7 +624,7 @@
 function onGearDelete(gear)
 
 	if GetGearType(gear) == gtHedgehog then
-		InABetterPlaceNow(gear)		
+		InABetterPlaceNow(gear)
 	end
 
 end
--- a/share/hedgewars/Data/Scripts/Multiplayer/GaudyRacer.cfg	Fri Sep 16 17:36:05 2011 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2 +0,0 @@
-Default
-Default
--- a/share/hedgewars/Data/Scripts/Multiplayer/GaudyRacer.lua	Fri Sep 16 17:36:05 2011 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,730 +0,0 @@
-
-------------------------------------------
--- RACER
--- a crazy, map-independant racing script
--- by mikade
------------------------------------------
-
------------------------------------
---0.1: with apologies to tumbler
------------------------------------
--- added tumbler movement system
--- added weapon systems
--- added timer to stop tumbler
--- added racer circle arrays
--- added changing of circs on contact
--- added a "track complete" etc
-
------------------------------------
---0.2: for your racing convenience
------------------------------------
-
--- added resurrection
--- added team tracking
--- added proper scoring (hopefully, finally)
--- changed showmission icons to match feedback
--- changed circles to be netural colours, and then change to team col
--- cleaned up code
--- cleaned up gameplay: removing control on resurrect, trackcomplete, maxpointset etc
--- improved player feedback: race record, clan record, no record etc.
-
------------------------------------
---0.3: user-requested features
------------------------------------
-
--- hogs now start at the location of the first waypoint \o/
--- added sticky camera. Hog will no longer lose focus on explosions etc.
--- increased maximum complexity for tracks
-
------------------------------------
---0.4: user-requested features
------------------------------------
-
--- added movement trail
--- removed exploder weapon
--- removed mortar weapon
-
------------------------------------
--- 0.5 gaudy feature experimentation
------------------------------------
--- added a booster
--- added flame trail for booster
--- added and removed dx/dy on mortar launch
--- added and removed keypress-based mortar fire
--- changed mortar for a gtShell, probably more useful for tunneling
--- added dx/dy *2 shell fire
-
-----------------------------------
--- 0.6 modesty / display mod
-----------------------------------
--- author branding removed
--- version numbers removed
-
------------------------------
--- SCRIPT BEGINS
------------------------------
-
--- enable awesome translaction support so we can use loc() wherever we want
-loadfile(GetDataPath() .. "Scripts/Locale.lua")()
-
-------------------
--- Got Variables?
-------------------
-
-local roundLimit = 3
-local roundNumber = 0
-local firstClan = 10
-
-local versionNo = loc("v.06")
-
---------------------------
--- hog and team tracking variales
---------------------------
-
-local numhhs = 0 -- store number of hedgehogs
-local hhs = {} -- store hedgehog gears
-
-local numTeams --  store the number of teams in the game
-local teamNameArr = {}	-- store the list of teams
-local teamClan = {}
-local teamSize = {}	-- store how many hogs per team
-local teamIndex = {} -- at what point in the hhs{} does each team begin
-
-local teamComment = {}
-local teamScore = {}
-
----------
--- tumbler stuff
----------
-
-local moveTimer = 0
-local leftOn = false
-local rightOn = false
-local upOn = false
-local downOn = false
-
-local shotsMax = 30	--10
-local shotsLeft = 10
-
-local TimeLeftCounter = 0
-local TimeLeft = 60
-local stopMovement = false
-local tumbleStarted = false
-
--------
--- racer vars
---------
-
-local boosterOn = false
-local boosterFuel = 75
-local boosterPower = 0.3
-local boosterTimer = 0
-
-local bestClan = nil
-local bestTime = nil
-
-local gameBegun = false
-local gameOver = false
-local racerActive = false
-local trackTime = 0
-local wpCheckCounter = 0
-
-local wpCirc = {}
-local wpX = {}
-local wpY = {}
-local wpCol = {}
-local wpActive = {}
-local wpRad = 75
-local wpCount = 0
-local wpLimit = 20
-
--------------------
--- general methods
--------------------
-
-function RebuildTeamInfo()
-
-
-	-- make a list of individual team names
-	for i = 0, 7 do
-		teamNameArr[i] = " " -- = i
-		teamSize[i] = 0
-		teamIndex[i] = 0
-		teamScore[i] = 100000
-	end
-	numTeams = 0
-
-	for i = 0, (numhhs-1) do
-
-		z = 0
-		unfinished = true
-		while(unfinished == true) do
-
-			newTeam = true
-			tempHogTeamName = GetHogTeamName(hhs[i]) -- this is the new name
-
-			if tempHogTeamName == teamNameArr[z] then
-				newTeam = false
-				unfinished = false
-			end
-
-			z = z + 1
-
-			if z == TeamsCount then
-				unfinished = false
-				if newTeam == true then
-					teamNameArr[numTeams] = tempHogTeamName
-					numTeams = numTeams + 1
-				end
-			end
-
-		end
-
-	end
-
-	-- find out how many hogs per team, and the index of the first hog in hhs
-	for i = 0, (numTeams-1) do
-		for z = 0, (numhhs-1) do
-			if GetHogTeamName(hhs[z]) == teamNameArr[i] then
-				teamClan[i] = GetHogClan(hhs[z])
-				if teamSize[i] == 0 then
-					teamIndex[i] = z -- should give starting index
-				end
-				teamSize[i] = teamSize[i] + 1
-				--add a pointer so this hog appears at i in hhs
-			end
-		end
-
-	end
-
-end
-
-
------------------
--- RACER METHODS
------------------
-
-function GetSpeed()
-
-	dx, dy = GetGearVelocity(CurrentHedgehog)
-
-	x = dx*dx
-	y = dy*dy
-	z = x+y
-
-	z = z*100
-
-	k = z%1
-
-	if k ~= 0 then
-	 z = z - k
-	end
-
-	return(z)
-
-end
-
-function CheckWaypoints()
-
-	trackFinished = true
-
-	for i = 0, (wpCount-1) do
-
-		g1X, g1Y = GetGearPosition(CurrentHedgehog)
-		g2X, g2Y = wpX[i], wpY[i]
-
-		g1X = g1X - g2X
-		g1Y = g1Y - g2Y
-		dist = (g1X*g1X) + (g1Y*g1Y)
-
-		--if i == 0 then
-		--	AddCaption(dist .. "/" .. (wpRad*wpRad) )
-		--end
-
-		if dist < (wpRad*wpRad) then
-			--AddCaption("howdy")
-			wpActive[i] = true
-			wpCol[i] = GetClanColor(GetHogClan(CurrentHedgehog)) -- new				--GetClanColor(1)
-			SetVisualGearValues(wpCirc[i], wpX[i], wpY[i], 20, 100, 0, 10, 0, wpRad, 5, wpCol[i])
-		end
-
-		if wpActive[i] == false then
-			trackFinished = false
-		end
-
-	end
-
-	return(trackFinished)
-
-end
-
-function AdjustScores()
-
-	--[[if bestTime == nil then
-		bestTime = 100000
-		bestClan = 10
-		bestTimeComment = "N/A"
-	else
-		bestTimeComment = (bestTime/1000) ..loc("s")
-	end]]
-
-	if bestTime == nil then
-		bestTime = 100000
-		bestClan = 10
-		bestTimeComment = "N/A"
-	end
-
-	newScore = false
-
-	-- update this clan's time if the new track is better
-	for i = 0, (numTeams-1) do
-		if teamClan[i] == GetHogClan(CurrentHedgehog) then
-			if trackTime < teamScore[i] then
-				teamScore[i] = trackTime
-				newScore = true
-			else
-				newScore = false
-			end
-		end
-	end
-
-	--bestTime = 100000
-	--bestClan = 10
-
-	-- find the best time out of those so far
-	for i = 0, (numTeams-1) do
-		if teamScore[i] < bestTime then
-			bestTime = teamScore[i]
-			bestClan = teamClan[i]
-		end
-	end
-
-	if bestTime ~= 100000 then
-		bestTimeComment = (bestTime/1000) ..loc("s")
-	end
-
-	if newScore == true then
-		if trackTime == bestTime then -- best time of the race
-			ShowMission("RACER", loc("TRACK COMPLETED"), loc("NEW RACE RECORD: ") .. (trackTime/1000) ..loc("s") .. "|" .. loc("WINNING TIME: ") .. bestTimeComment, 0, 4000)
-		else	-- best time for the clan
-			ShowMission("RACER", loc("TRACK COMPLETED"), loc("NEW CLAN RECORD: ") .. (trackTime/1000) ..loc("s") .. "|" .. loc("WINNING TIME: ") .. bestTimeComment, 4, 4000)
-		end
-	else -- not any kind of new score
-		ShowMission("RACER", loc("TRACK COMPLETED"), loc("TIME: ") .. (trackTime/1000) ..loc("s") .. "|" .. loc("WINNING TIME: ") .. bestTimeComment, -amSkip, 4000)
-	end
-
-end
-
-function CheckForNewRound()
-
-	if GetHogClan(CurrentHedgehog) == firstClan then
-
-		roundNumber = roundNumber + 1
-
-		for i = 0, 7 do
-				if teamNameArr[i] ~= " " then				-- teamScore[teamClan[i]]
-					teamComment[i] = teamNameArr[i] .. ": " .. (teamScore[i]/1000) .. loc("s|")
-				elseif teamNameArr[i] == " " then
-					teamComment[i] = "|"
-				end
-		end
-		ShowMission("RACER", loc("STATUS UPDATE"), loc("Rounds Complete") .. ": " .. roundNumber .. "/" .. roundLimit .. "|" .. " " .. "|" .. loc("Best Team Times: ") .. "|" .. teamComment[0] .. teamComment[1] .. teamComment[2] .. teamComment[3] .. teamComment[4] .. teamComment[5] .. teamComment[6] .. teamComment[7], 0, 1600)
-
-		-- end game if its at round limit
-		if roundNumber == roundLimit then
-			for i = 0, (numhhs-1) do
-				if GetHogClan(hhs[i]) ~= bestClan then
-					SetEffect(hhs[i], heResurrectable, false)
-					SetHealth(hhs[i],0)
-				end
-			end
-			gameOver = true
-			TurnTimeLeft = 1
-		end
-
-	end
-
-end
-
-function DisableTumbler()
-	stopMovement = true
-	upOn = false
-	down = false
-	leftOn = false
-	rightOn = false
-	boosterOn = false
-end
-
-----------------------------------
--- GAME METHODS / EVENT HANDLERS
-----------------------------------
-
-function onGameInit()
-	--Theme = "Hell"
-	--GameFlags
-	--GameFlags = gfDisableWind
-end
-
-
-function onGameStart()
-	RebuildTeamInfo()
-	ShowMission("RACER", "", "", 4, 4000)
-end
-
-function onHJump()
-	if (shotsLeft > 0) and (CurrentHedgehog ~= nil) and (stopMovement == false) and (tumbleStarted == true) then -- seems to not work with a hedgehog nil chek
-
-		shotsLeft = shotsLeft - 1
-		morte = AddGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), gtShell, 0, 0, 0, 1)
-		AddCaption(loc("Shots Left: ") .. shotsLeft)
-
-
-		-- based on player movement already
-		CopyPV(CurrentHedgehog, morte) -- new addition
-
-		--x2
-		x,y = GetGearVelocity(morte)
-		x = x*2
-		y = y*2
-		SetGearVelocity(morte, x, y)
-
-		--- or based on keys?
-		--[[x = 0
-		y = 0
-
-		launchPower = 0.5
-
-		if leftOn == true then
-			x = x - launchPower
-		end
-		if rightOn == true then
-			x = x + launchPower
-		end
-
-		if upOn == true then
-			y = y - launchPower
-		end
-		if downOn == true then
-			y = y + launchPower
-		end
-
-		SetGearVelocity(morte, x, y)]]
-
-
-	end
-end
-
-function onLJump()
-
-
-	if (wpCount < wpLimit) and (CurrentHedgehog ~= nil) and (stopMovement == false) and (tumbleStarted == true) and (gameBegun == false) then -- seems to not work with a hedgehog nil chek
-
-		wpX[wpCount] = GetX(CurrentHedgehog)
-		wpY[wpCount] = GetY(CurrentHedgehog)
-		wpCol[wpCount] = 0xffffffff
-		wpCirc[wpCount] = AddVisualGear(wpX[wpCount],wpY[wpCount],vgtCircle,0,true)
-																		--100	  --0		--75	--wpCol[wpCount]
-		SetVisualGearValues(wpCirc[wpCount], wpX[wpCount], wpY[wpCount], 20, 100, 0, 10, 0, wpRad, 5, wpCol[wpCount])
-
-		wpCount = wpCount + 1
-
-		AddCaption(loc("Waypoint placed.") .. " " .. loc("Available points remaining: ") .. (wpLimit-wpCount))
-
-		if wpCount == wpLimit then
-			AddCaption(loc("Race complexity limit reached."))
-			DisableTumbler()
-		end
-
-	end
-
-
-	if (boosterFuel > 0) and (CurrentHedgehog ~= nil) and (stopMovement == false) and (tumbleStarted == true) and (gameBegun == true) then
-
-		if boosterOn == false then
-			boosterOn = true
-		else
-			boosterOn = false
-		end
-
-	end
-
-end
-
-function onLeft()
-	if (CurrentHedgehog ~= nil) and (stopMovement == false) then
-		leftOn = true
-	end
-end
-
-function onRight()
-	if (CurrentHedgehog ~= nil) and (stopMovement == false) then
-		rightOn = true
-	end
-end
-
-function onUp()
-	if (CurrentHedgehog ~= nil) and (stopMovement == false) then
-		upOn = true
-	end
-end
-
-function onDown()
-	if (CurrentHedgehog ~= nil) and (stopMovement == false) then
-		downOn = true
-	end
-end
-
-function onDownUp()
-	downOn = false
-end
-function onUpUp()
-	upOn = false
-end
-function onLeftUp()
-	leftOn = false
-end
-function onRightUp()
-	rightOn = false
-end
-
-function onNewTurn()
-
-	CheckForNewRound()
-
-	--if gameOver == false then
-		shotsLeft = shotsMax
-		stopMovement = false
-		tumbleStarted = false
-		boosterOn = false
-		boosterFuel = 75
-		SetTag(AddGear(0, 0, gtATSmoothWindCh, 0, 0, 0, 1), boosterFuel)
-		--SetInputMask(band(0xFFFFFFFF, bnot(gmAnimate+gmAttack+gmDown+gmHJump+gmLeft+gmLJump+gmPrecise+gmRight+gmSlot+gmSwitch+gmTimer+gmUp+gmWeapon)))
-		--AddGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), gtGrenade, 0, 0, 0, 1)
-	--end
-
-
-
-	-- Set the waypoints to unactive on new round
-	for i = 0,(wpCount-1) do
-		wpActive[i] = false
-		wpCol[i] = 0xffffffff
-		SetVisualGearValues(wpCirc[i], wpX[i], wpY[i], 20, 100, 0, 10, 0, wpRad, 5, wpCol[i])
-	end
-
-	-- Handle Starting Stage of Game
-	if (gameOver == false) and (gameBegun == false) then
-		if wpCount >= 3 then
-			gameBegun = true
-			racerActive = true
-			roundNumber = 0 -- 0
-			firstClan = GetHogClan(CurrentHedgehog)
-			ShowMission("RACER", loc("GAME BEGUN!!!"), loc("Complete the track as fast as you can!"), 2, 4000)
-		else
-			ShowMission("RACER", loc("NOT ENOUGH WAYPOINTS"), loc("Place more waypoints using [ENTER]"), 2, 4000)
-		end
-	end
-
-	if gameOver == true then
-		gameBegun = false
-		stopMovement = true
-		tumbleStarted = false
-	end
-
-end
-
-function onGameTick()
-
-	-- start the player tumbling with a boom once their turn has actually begun
-	if tumbleStarted == false then
-		if (TurnTimeLeft > 0) and (TurnTimeLeft ~= TurnTime) then
-			AddCaption("Good to go!")
-			tumbleStarted = true
-			racerActive = true
-			trackTime = 0
-			TimeLeft = 60
-
-			-- if the gamehas started put the player in the middle of the first
-			--waypoint that was placed
-			if gameBegun == true then
-				SetGearPosition(CurrentHedgehog, wpX[0], wpY[0])
-				AddGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), gtGrenade, 0, 0, 0, 1)
-				FollowGear(CurrentHedgehog)
-			else -- otherwise just start him tumbling from wherever he is
-				AddGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), gtGrenade, 0, 0, 0, 1)
-			end
-
-		end
-	end
-
-	-- has the player started his tumbling spree?
-	if (CurrentHedgehog ~= nil) and (tumbleStarted == true) then
-
-		--AddCaption(LOC_NOT("Speed: ") .. GetSpeed())
-
-		-- if the RACE has started, show tracktimes and keep tabs on waypoints
-		if (racerActive == true) and (gameBegun == true) then
-
-			trackTime = trackTime + 1
-
-			wpCheckCounter = wpCheckCounter + 1
-			if (wpCheckCounter == 100) then
-
-				AddCaption(loc("Track Time: ") .. (trackTime/1000) .. loc("s") )
-				wpCheckCounter = 0
-				if (CheckWaypoints() == true) then
-					AdjustScores()
-					racerActive = false
-					DisableTumbler()
-				end
-
-			end
-
-		end
-
-		if boosterOn == true then
-			boosterTimer = boosterTimer + 1
-			if boosterTimer == 150 then --200
-				boosterTimer = 0
-				boosterFuel = boosterFuel - 1
-				SetTag(AddGear(0, 0, gtATSmoothWindCh, 0, 0, 0, 1), boosterFuel)
-				if boosterFuel == 0 then
-					boosterOn = false
-				end
-			end
-		end
-
-		-- Calculate and display turn time
-		TimeLeftCounter = TimeLeftCounter + 1
-		if TimeLeftCounter == 1000 then
-			TimeLeftCounter = 0
-			TimeLeft = TimeLeft - 1
-
-			if TimeLeft >= 0 then
-				--TurnTimeLeft = TimeLeft
-				--AddCaption(LOC_NOT("Time Left: ") .. TimeLeft)
-			end
-
-		end
-
-		-- if the player has expended his tunbling time, stop him tumbling
-		if TimeLeft == 0 then
-			DisableTumbler()
-		end
-
-
-		-- handle movement based on IO
-		moveTimer = moveTimer + 1
-		if moveTimer == 100 then -- 100
-			moveTimer = 0
-
-			-- keep in mind gravity is acting on the hog
-			-- so his down is more powerful than his up
-
-			dx, dy = GetGearVelocity(CurrentHedgehog)
-
-			dxlimit = 0.4 --0.4
-			dylimit = 0.4 --0.4
-
-			if boosterOn == true then
-
-				--flame trail, now removed
-				AddGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), gtFlame, 0, 0, 0, 0)
-				--tempE = AddVisualGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), vgtDust, 0, false)
-
-				dxlimit = dxlimit + boosterPower
-				dylimit = dylimit + boosterPower
-			else
-				tempE = AddVisualGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), vgtDust, 0, false)
-				g1, g2, g3, g4, g5, g6, g7, g8, g9, g10 = GetVisualGearValues(tempE)
-				SetVisualGearValues(tempE, g1, g2, g3, g4, g5, g6, g7, g8, g9, GetClanColor(GetHogClan(CurrentHedgehog)) )
-			end
-
-			if dx > dxlimit then
-				dx = dxlimit
-			end
-			if dy > dylimit then
-				dy = dylimit
-			end
-			if dx < -dxlimit then
-				dx = -dxlimit
-			end
-			if dy < -dylimit then
-				dy = -dylimit
-			end
-
-
-			dxPower = 0.1 --0.1
-			dyPower = 0.1 --0.1
-
-			if leftOn == true then
-				dx = dx - dxPower
-			end
-			if rightOn == true then
-				dx = dx + dxPower
-			end
-
-			if upOn == true then
-				dy = dy - dyPower -- -0.1 -- new addition
-			end
-			if downOn == true then
-				dy = dy + dyPower
-			end
-
-			--if leftOn == true then
-			--	dx = dx - 0.04
-			--end
-			--if rightOn == true then
-			--	dx = dx + 0.04
-			--end
-
-			--if upOn == true then
-			--	dy = dy - 0.1
-			--end
-			--if downOn == true then
-			--	dy = dy + 0.06
-			--end
-
-			SetGearVelocity(CurrentHedgehog, dx, dy)
-
-		end
-
-	end
-
-end
-
-function onGearDamage(gear, damage)
-	--if gear == CurrentHedgehog then
-		-- You are now tumbling
-	--end
-end
-
-function onGearResurrect(gear)
-
-	AddVisualGear(GetX(gear), GetY(gear), vgtBigExplosion, 0, false)
-
-	-- if the player stops and "dies" or flies into water, stop him tumbling
-	if gear == CurrentHedgehog then
-		DisableTumbler()
-	end
-
-end
-
-function onGearAdd(gear)
-
-	if GetGearType(gear) == gtHedgehog then
-		hhs[numhhs] = gear
-		numhhs = numhhs + 1
-		SetEffect(gear, heResurrectable, true)
-	end
-
-end
-
-function onGearDelete(gear)
-	--not needed today, yet
-
-	--sticky camera
-	if CurrentHedgehog ~= nil then
-		FollowGear(CurrentHedgehog)
-	end
-
-end
--- a/share/hedgewars/Data/Scripts/Multiplayer/No_Jumping.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Scripts/Multiplayer/No_Jumping.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -15,7 +15,7 @@
 end
 
 function onGearAdd(gear)
-	
+
 	if (GetGearType(gear) == gtJetpack) or (GetGearType(gear) == gtRope) or (GetGearType(gear) == gtParachute) then
 		specialGear = gear
 		SetInputMask(band(0xFFFFFFFF, bnot(gmHJump)))
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/share/hedgewars/Data/Scripts/Multiplayer/Racer.cfg	Fri Sep 16 18:17:16 2011 +0200
@@ -0,0 +1,2 @@
+Shoppa
+Shoppa
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/share/hedgewars/Data/Scripts/Multiplayer/Racer.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -0,0 +1,625 @@
+
+------------------------------------------
+-- RACER 0.4
+-- map-independant racing script
+-- by mikade
+-----------------------------------------
+
+-----------------------------------
+--0.1: took all the code from crazy racer and scrapped most of it
+-----------------------------------
+
+-- Removed tumbler system
+-- Removed extra adds like boosters etc
+-- Added experimental waypoint placement system
+-- More user feedback
+-- Reduced race complexity limit to 5 waypoints
+-- stop placement at complexity limit reached and end turn
+-- guys dont keep racing after dying
+-- invulnerable feasibility
+-- reverted time keeping method
+-- reduced feedback display time
+-- colour-coded addcaptions
+-- cleaned up code
+-- support for more players properly added
+-- tardis fix
+-- remove airstrikes
+
+-- i think the remainder 0 .456 sec of the tracktime isnt getting reset on newturn
+
+-- update feedback
+
+-------
+-- 0.2
+-------
+
+-- allow gameflags
+-- extend time to 90s
+-- remove other air-attack based weps
+-- turn off water rise for sd
+
+-------
+-- 0.3
+-------
+
+-- prevent WP being placed in land
+-- prevent waypoints being placed outside border
+
+-------
+-- 0.4
+-------
+
+-- update user feedback
+-- add more sounds
+
+-----------------------------
+-- SCRIPT BEGINS
+-----------------------------
+
+loadfile(GetDataPath() .. "Scripts/Locale.lua")()
+
+------------------
+-- Got Variables?
+------------------
+
+local fMod = 1000000 -- 1
+local roundLimit = 3
+local roundNumber = 0
+local firstClan = 10
+
+local fastX = {}
+local fastY = {}
+local fastCount = 0
+local fastIndex = 0
+local fastColour
+
+local currX = {}
+local currY = {}
+local currCount = 0
+
+--------------------------
+-- hog and team tracking variales
+--------------------------
+
+local numhhs = 0 -- store number of hedgehogs
+local hhs = {} -- store hedgehog gears
+
+local numTeams --  store the number of teams in the game
+local teamNameArr = {}	-- store the list of teams
+local teamClan = {}
+local teamSize = {}	-- store how many hogs per team
+local teamIndex = {} -- at what point in the hhs{} does each team begin
+
+local teamComment = {}
+local teamScore = {}
+
+-------
+-- racer vars
+--------
+
+local cGear = nil
+local gTimer = 0
+
+local bestClan = nil
+local bestTime = nil
+
+local gameBegun = false
+local gameOver = false
+local racerActive = false
+local trackTime = 0
+local wpCheckCounter = 0
+
+local wpCirc = {}
+local wpX = {}
+local wpY = {}
+local wpCol = {}
+local wpActive = {}
+local wpRad = 450 --75
+local wpCount = 0
+local wpLimit = 5
+
+-------------------
+-- general methods
+-------------------
+
+function RebuildTeamInfo()
+
+
+	-- make a list of individual team names
+	for i = 0, (TeamsCount-1) do
+		teamNameArr[i] = " " -- = i
+		teamSize[i] = 0
+		teamIndex[i] = 0
+		teamScore[i] = 100000
+	end
+	numTeams = 0
+
+	for i = 0, (numhhs-1) do
+
+		z = 0
+		unfinished = true
+		while(unfinished == true) do
+
+			newTeam = true
+			tempHogTeamName = GetHogTeamName(hhs[i]) -- this is the new name
+
+			if tempHogTeamName == teamNameArr[z] then
+				newTeam = false
+				unfinished = false
+			end
+
+			z = z + 1
+
+			if z == TeamsCount then
+				unfinished = false
+				if newTeam == true then
+					teamNameArr[numTeams] = tempHogTeamName
+					numTeams = numTeams + 1
+				end
+			end
+
+		end
+
+	end
+
+	-- find out how many hogs per team, and the index of the first hog in hhs
+	for i = 0, (numTeams-1) do
+		for z = 0, (numhhs-1) do
+			if GetHogTeamName(hhs[z]) == teamNameArr[i] then
+				teamClan[i] = GetHogClan(hhs[z])
+				if teamSize[i] == 0 then
+					teamIndex[i] = z -- should give starting index
+				end
+				teamSize[i] = teamSize[i] + 1
+				--add a pointer so this hog appears at i in hhs
+			end
+		end
+
+	end
+
+end
+
+
+-----------------
+-- RACER METHODS
+-----------------
+
+function CheckWaypoints()
+
+	trackFinished = true
+
+	for i = 0, (wpCount-1) do
+
+		g1X, g1Y = GetGearPosition(CurrentHedgehog)
+		g2X, g2Y = wpX[i], wpY[i]
+
+		g1X = g1X - g2X
+		g1Y = g1Y - g2Y
+		dist = (g1X*g1X) + (g1Y*g1Y)
+
+		--if i == 0 then
+		--	AddCaption(dist .. "/" .. (wpRad*wpRad) )
+		--end
+
+		NR = (48/100*wpRad)/2
+
+		if dist < (NR*NR) then
+		--if dist < (wpRad*wpRad) then
+			--AddCaption("howdy")
+			wpActive[i] = true
+			wpCol[i] = GetClanColor(GetHogClan(CurrentHedgehog)) -- new				--GetClanColor(1)
+			SetVisualGearValues(wpCirc[i], wpX[i], wpY[i], 20, 100, 1, 10, 0, wpRad, 5, wpCol[i])
+
+			wpRem = 0
+			for k = 0, (wpCount-1) do
+				if wpActive[k] == false then
+					wpRem = wpRem + 1
+				end
+			end
+
+			AddCaption(loc("Way-Points Remaining") .. ": " .. wpRem,0xffba00ff,capgrpAmmoinfo)
+
+		end
+
+		if wpActive[i] == false then
+			trackFinished = false
+		end
+
+	end
+
+	return(trackFinished)
+
+end
+
+function AdjustScores()
+
+	if bestTime == nil then
+		bestTime = 100000
+		bestClan = 10
+		bestTimeComment = "N/A"
+	end
+
+	newScore = false
+
+	-- update this clan's time if the new track is better
+	for i = 0, (numTeams-1) do
+		if teamClan[i] == GetHogClan(CurrentHedgehog) then
+			if trackTime < teamScore[i] then
+				teamScore[i] = trackTime
+				newScore = true
+			else
+				newScore = false
+			end
+		end
+	end
+
+	--bestTime = 100000
+	--bestClan = 10
+
+	-- find the best time out of those so far
+	for i = 0, (numTeams-1) do
+		if teamScore[i] < bestTime then
+			bestTime = teamScore[i]
+			bestClan = teamClan[i]
+		end
+	end
+
+	if bestTime ~= 100000 then
+		bestTimeComment = (bestTime/1000) ..loc("s")
+	end
+
+	if newScore == true then
+		if trackTime == bestTime then -- best time of the race
+			ShowMission(loc("RACER"),
+			loc("TRACK COMPLETED"),
+			loc("NEW RACE RECORD: ") .. (trackTime/1000) ..loc("s") .. "|" ..
+			loc("WINNING TIME: ") .. bestTimeComment, 0, 4000)
+			PlaySound(sndHomerun)
+		else	-- best time for the clan
+			ShowMission(loc("RACER"),
+			loc("TRACK COMPLETED"),
+			loc("NEW CLAN RECORD: ") .. (trackTime/1000) ..loc("s") .. "|" ..
+			loc("WINNING TIME: ") .. bestTimeComment, 4, 4000)
+		end
+	else -- not any kind of new score
+		ShowMission(loc("RACER"),
+		loc("TRACK COMPLETED"),
+		loc("TIME: ") .. (trackTime/1000) ..loc("s") .. "|" ..
+		loc("WINNING TIME: ") .. bestTimeComment, -amSkip, 4000)
+		PlaySound(sndHellish)
+	end
+
+
+	--------
+	--new
+	--------
+
+	if bestTime == trackTime then
+		--AddCaption("wooooooooooooooooooooooooooooo")
+
+		fastColour = GetClanColor(GetHogClan(CurrentHedgehog))
+
+		for i = 0, (currCount-1) do
+			fastX[i] = currX[i]
+			fastY[i] = currY[i]
+		end
+
+		fastCount = currCount
+		fastIndex = 0
+
+		--currCount = 0 -- is this needed?
+
+	else
+		currCount = 0
+		fastIndex = 0
+	end
+
+
+end
+
+function CheckForNewRound()
+
+	if GetHogClan(CurrentHedgehog) == firstClan then
+
+		roundNumber = roundNumber + 1
+
+		totalComment = ""
+		for i = 0, (TeamsCount-1) do
+				if teamNameArr[i] ~= " " then				-- teamScore[teamClan[i]]
+					teamComment[i] = teamNameArr[i] .. ": " .. (teamScore[i]/1000) .. loc("s|")
+					totalComment = totalComment .. teamComment[i]
+				elseif teamNameArr[i] == " " then
+					teamComment[i] = "|"
+				end
+		end
+
+		ShowMission(	loc("RACER"),
+				loc("STATUS UPDATE"),
+				loc("Rounds Complete: ") .. roundNumber .. "/" .. roundLimit .. "|" .. " " .. "|" ..
+				loc("Best Team Times: ") .. "|" .. totalComment, 0, 4000)
+
+		-- end game if its at round limit
+		if roundNumber == roundLimit then
+			for i = 0, (numhhs-1) do
+				if GetHogClan(hhs[i]) ~= bestClan then
+					SetEffect(hhs[i], heResurrectable, false)
+					SetHealth(hhs[i],0)
+				end
+			end
+			gameOver = true
+			TurnTimeLeft = 1
+		end
+
+	end
+
+end
+
+function DisableTumbler()
+	currCount = 0
+	fastIndex = 0
+	TurnTimeLeft = 0
+	racerActive = false -- newadd
+end
+
+function HandleGhost()
+
+	-- get the current xy of the racer at this point
+	currX[currCount] = GetX(CurrentHedgehog)
+	currY[currCount] = GetY(CurrentHedgehog)
+	currCount = currCount + 1
+
+	-- draw a ping of smoke where the fastest player was at this point
+	if (fastCount ~= 0) and (fastIndex < fastCount) then
+
+		fastIndex = fastIndex + 1
+
+		tempE = AddVisualGear(fastX[fastIndex], fastY[fastIndex], vgtSmoke, 0, false)
+		g1, g2, g3, g4, g5, g6, g7, g8, g9, g10 = GetVisualGearValues(tempE)
+		SetVisualGearValues(tempE, g1, g2, g3, g4, g5, g6, g7, g8, g9, fastColour )
+
+		--AddCaption("fC: " .. fastIndex .. " / " .. fastCount)
+
+	else
+
+		--AddCaption("excep fC: " .. fastIndex .. " / " .. fastCount)
+
+	end
+
+
+
+end
+
+----------------------------------
+-- GAME METHODS / EVENT HANDLERS
+----------------------------------
+
+function onGameInit()
+	GameFlags = GameFlags + gfInfAttack + gfInvulnerable
+	CaseFreq = 0
+	TurnTime = 90000
+	WaterRise = 0
+end
+
+
+function onGameStart()
+	RebuildTeamInfo()
+
+	ShowMission	(
+				loc("RACER"),
+				loc("a Hedgewars mini-game"),
+
+				loc("Build a track and race.") .. "|" ..
+				loc("Round Limit:") .. " " .. roundLimit .. "|" ..
+
+				"", 4, 4000
+				)
+
+
+end
+
+function PlaceWayPoint(x,y)
+
+	if (wpCount < wpLimit) then -- seems to not work with a hedgehog nil chek
+
+		wpX[wpCount] = x
+		wpY[wpCount] = y
+		wpCol[wpCount] = 0xffffffff
+		wpCirc[wpCount] = AddVisualGear(wpX[wpCount],wpY[wpCount],vgtCircle,0,true)
+																		--100
+		SetVisualGearValues(wpCirc[wpCount], wpX[wpCount], wpY[wpCount], 20, 100, 1, 10, 0, wpRad, 5, wpCol[wpCount])
+
+		wpCount = wpCount + 1
+
+		AddCaption(loc("Waypoint placed.") .. " " .. loc("Available points remaining: ") .. (wpLimit-wpCount))
+
+	end
+
+end
+
+function onNewTurn()
+
+	CheckForNewRound()
+
+	racerActive = false
+
+	trackTime = 0
+
+	currCount = 0 -- hopefully this solves problem
+	AddAmmo(CurrentHedgehog, amAirAttack, 0)
+	gTimer = 0
+
+	-- Set the waypoints to unactive on new round
+	for i = 0,(wpCount-1) do
+		wpActive[i] = false
+		wpCol[i] = 0xffffffff
+		SetVisualGearValues(wpCirc[i], wpX[i], wpY[i], 20, 100, 1, 10, 0, wpRad, 5, wpCol[i])
+	end
+
+	-- Handle Starting Stage of Game
+	if (gameOver == false) and (gameBegun == false) then
+		if wpCount >= 3 then
+			gameBegun = true
+			roundNumber = 0
+			firstClan = GetHogClan(CurrentHedgehog)
+			ShowMission(loc("RACER"),
+			loc("GAME BEGUN!!!"),
+			loc("Complete the track as fast as you can!"), 2, 4000)
+		else
+			ShowMission(loc("RACER"),
+			loc("NOT ENOUGH WAYPOINTS"),
+			loc("Place more waypoints using the 'Air Attack' weapon."), 2, 4000)
+			AddAmmo(CurrentHedgehog, amAirAttack, 4000)
+		end
+	end
+
+	if gameOver == true then
+		gameBegun = false
+		racerActive = false -- newadd
+	end
+
+	AddAmmo(CurrentHedgehog, amTardis, 0)
+	AddAmmo(CurrentHedgehog, amDrillStrike, 0)
+	AddAmmo(CurrentHedgehog, amMineStrike, 0)
+	AddAmmo(CurrentHedgehog, amNapalm, 0)
+	AddAmmo(CurrentHedgehog, amPiano, 0)
+
+end
+
+function onGameTick()
+
+	-- airstrike detected, convert this into a potential waypoint spot
+	if cGear ~= nil then
+		x,y = GetGearTarget(cGear)
+		
+		DeleteGear(cGear)
+
+		if TestRectForObstacle(x-20, y-20, x+20, y+20, true) then
+			AddCaption(loc("Please place the way-point in the open, within the map boundaries."))
+			PlaySound(sndDenied)
+		elseif (y > WaterLine-50) then
+			AddCaption(loc("Please place the way-point further from the waterline."))
+			PlaySound(sndDenied)
+		else
+			PlaceWayPoint(x, y)
+			if wpCount == wpLimit then
+				AddCaption(loc("Race complexity limit reached."))
+				DisableTumbler()
+			end
+		end
+
+	end
+
+
+	-- start the player tumbling with a boom once their turn has actually begun
+	if racerActive == false then
+
+		if (TurnTimeLeft > 0) and (TurnTimeLeft ~= TurnTime) then
+
+			-- if the gamehas started put the player in the middle of the first
+			--waypoint that was placed
+			if gameBegun == true then
+				AddCaption(loc("Good to go!"))
+				racerActive = true
+				trackTime = 0
+
+				SetGearPosition(CurrentHedgehog, wpX[0], wpY[0])
+				AddGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), gtGrenade, 0, 0, 0, 1)
+				FollowGear(CurrentHedgehog)
+				ShowMission("...", "...", "...", 2, 1)
+
+			else
+				-- still in placement mode
+			end
+
+		end
+	end
+
+
+
+	-- has the player started his tumbling spree?
+	if (CurrentHedgehog ~= nil) then
+
+		--airstrike conversion used to be here
+
+		-- if the RACE has started, show tracktimes and keep tabs on waypoints
+		if (racerActive == true) and (gameBegun == true) then
+
+			--ghost
+			gTimer = gTimer + 1
+			if gTimer == 15 then
+				gTimer = 0
+				HandleGhost()
+			end
+
+			trackTime = trackTime + 1
+
+			wpCheckCounter = wpCheckCounter + 1
+			if (wpCheckCounter == 100) then
+
+				wpCheckCounter = 0
+				AddCaption(trackTime/1000,GetClanColor(GetHogClan(CurrentHedgehog)),capgrpMessage2)
+
+				if (CheckWaypoints() == true) then
+					AdjustScores()
+					racerActive = false
+					DisableTumbler()
+				end
+
+			end
+
+		end
+
+
+
+		-- if the player has expended his tunbling time, stop him tumbling
+		if TurnTimeLeft <= 1 then
+			DisableTumbler()
+		end
+
+	end
+
+end
+
+function onGearResurrect(gear)
+
+	AddVisualGear(GetX(gear), GetY(gear), vgtBigExplosion, 0, false)
+
+	-- if the player stops and "dies" or flies into water, stop him racing
+	--[[if gear == CurrentHedgehog then
+		DisableTumbler()
+		ShowMission(loc("RACER"),
+		loc("TRACK FAILED!"),
+		loc("WINNING TIME: ") .. bestTimeComment, -amSkip, 4000)
+	end]]
+
+end
+
+function onGearAdd(gear)
+
+	if GetGearType(gear) == gtHedgehog then
+		hhs[numhhs] = gear
+		numhhs = numhhs + 1
+		SetEffect(gear, heResurrectable, true)
+	end
+
+	if GetGearType(gear) == gtAirAttack then
+		cGear = gear
+	end
+
+end
+
+function onGearDelete(gear)
+
+	if GetGearType(gear) == gtAirAttack then
+		cGear = nil
+	end
+
+end
+
+--[[function onAmmoStoreInit()
+	SetAmmo(amRope, 9, 0, 0, 0)
+	SetAmmo(amJetpack, 9, 0, 0, 0)
+	SetAmmo(amSkip, 9, 0, 0, 0)
+end]]
+
+
--- a/share/hedgewars/Data/Scripts/Multiplayer/Space_Invasion.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Scripts/Multiplayer/Space_Invasion.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -5,7 +5,7 @@
 ---------------------------------------------------
 ---------------------------------------------------
 ---------------------------------------------------
---- Space Invasion Code Follows (0.8)
+--- Space Invasion Code Follows (0.9)
 ---------------------------------------------------
 ---------------------------------------------------
 -- VERSION HISTORY
@@ -73,7 +73,7 @@
 -- delete explosives in DeleteFarFlungBarrel rather than explode them on map boundaries to save on performance
 -- utilized the improved AddCaption to tint / prevent overrides
 -- temporarily disabled bugged sort that displays teams according to their score
--- reluctantly changed the colour of the bonus circ to purple 
+-- reluctantly changed the colour of the bonus circ to purple
 -- standarized point notation
 -- added some missing locs
 -- commented out remaining WriteLnToConsoles for the meanwhile with the prefix "nw"
@@ -86,13 +86,13 @@
 -- Boss Slayer (Destroy 2 blue circles for +25 points)
 
 -- Shield Master (disolve 5 shells for +10 points)
--- Shield Miser (don't use your shield at all +20 points)
+-- Shield Miser (don't use your shield at all (2.5*roundkills)+2 points)
 
 -- Depleted Kamikaze! (kamikaze into a blue/red circ when you are out of ammo) 5pts
 -- Timed Kamikaze! (kamikaze into a blue/red circ when you only have 5s left) 10pts
 -- Kamikaze Expert (combination of the above two) 15pts
 
--- Multi-shot (destroy more than 1 invader with a single bullet) 5pts
+-- Multi-shot (destroy more than 1 invader with a single bullet) 15pts
 -- X-Hit Combo (destroy another invader in less than 3 seconds) chainLength*2 points
 
 -- Accuracy Bonus (80% accuracy at the end of your turn with more than 5 shots fired) 15pts
@@ -106,6 +106,22 @@
 -- added a HUD for turntimeleft, ammo, shield
 -- shieldhealth hits 0 properly
 
+------------------------
+-- version 0.8.1
+------------------------
+
+-- stop hiding non-existant 4th Tag
+-- redraw HUD on screen resolution change
+
+------------------------
+-- version 0.9
+------------------------
+-- time for more 'EXPERIMENTS' mwahahahahahaha D:
+-- (hopefully) balanced Shield Miser
+-- bosses are no longer a redunkulous 50 points, but toned down to 30
+-- experimental radar (it's INTERACTIVE and math-heavy :D) (visual gears are safe... right? D:)
+-- bugfix and balance for multishot
+
 --------------------------
 --notes for later
 --------------------------
@@ -121,7 +137,7 @@
 capgrpAmmostate
 -----------------
 AddCaption( chainLength .. LOC_NOT("-chain! +") .. chainLength*2 .. LOC_NOT(" points!"),0xffba00ff,capgrpAmmostate)
-AddCaption(LOC_NOT("Multi-shot! +5 points!"),0xffba00ff,capgrpAmmostate) 
+AddCaption(LOC_NOT("Multi-shot! +15 points!"),0xffba00ff,capgrpAmmostate)
 
 -----------------
 capgrpAmmoinfo
@@ -138,7 +154,7 @@
 AddCaption(LOC_NOT("Accuracy Bonus! +15 points!"),0xffba00ff,capgrpVolume)
 
 -----------------
-capgrpMessage 
+capgrpMessage
 -----------------
 AddCaption(LOC_NOT("Ammo Depleted!"),0xff0000ff,capgrpMessage)
 AddCaption(LOC_NOT("Ammo: ") .. primShotsLeft)
@@ -158,7 +174,7 @@
 AddCaption(LOC_NOT("Timed Kamikaze! +10 points!"),0xffba00ff,capgrpMessage)
 
 -----------------
-capgrpMessage2 
+capgrpMessage2
 -----------------
 AddCaption(LOC_NOT("Drone Hunter! +10 points!"),0xffba00ff,capgrpMessage2)
 AddCaption(LOC_NOT("Ammo Maniac! +5 points!"),0xffba00ff,capgrpMessage2)
@@ -213,6 +229,7 @@
 --local teamBlue = {}
 --local teamOrange = {}
 --local teamGreen = {}
+local roundKills = 0
 local RK = 0
 local GK = 0
 local BK = 0
@@ -220,7 +237,7 @@
 local SK = 0
 local shieldMiser = true
 local chainCounter = 0
-local chainLength = 0 
+local chainLength = 0
 local shotsFired = 0
 local shotsHit = 0
 
@@ -267,6 +284,13 @@
 local vCirc = {}
 local vCCount = 0
 
+local rCirc = {}
+local rCircX = {}
+local rCircY = {}
+local rAlpha = 255
+local rPingTimer = 0
+local radShotsLeft = 0
+
 local vCircActive = {}
 local vCircHealth = {}
 local vType = {}
@@ -301,31 +325,31 @@
 
 function HideTags()
 
-	for i = 0, 3 do 	
+	for i = 0, 2 do
 		SetVisualGearValues(vTag[i],0,0,0,0,0,1,0, 0, 240000, 0xffffff00)
 	end
 
 end
 
 function DrawTag(i)
-	
+
 	zoomL = 1.3
 
 	xOffset = 40
 
 	if i == 0 then
-		yOffset = 40	
+		yOffset = 40
 		tCol = 0xffba00ff
 		tValue = TimeLeft
 	elseif i == 1 then
-		zoomL = 1.1		
-		yOffset = 70	
+		zoomL = 1.1
+		yOffset = 70
 		tCol = 0x00ff00ff
 		tValue = primShotsLeft
 	elseif i == 2 then
-		zoomL = 1.1		
+		zoomL = 1.1
 		xOffset = 40 + 35
-		yOffset = 70		
+		yOffset = 70
 		tCol = 0xa800ffff
 		tValue = shieldHealth - 80
 	end
@@ -333,7 +357,7 @@
 	DeleteVisualGear(vTag[i])
 	vTag[i] = AddVisualGear(0, 0, vgtHealthTag, 0, false)
 	g1, g2, g3, g4, g5, g6, g7, g8, g9, g10 = GetVisualGearValues(vTag[i])
-	SetVisualGearValues	(	
+	SetVisualGearValues	(
 				vTag[i], 		--id
 				-(ScreenWidth/2) + xOffset,	--xoffset
 				ScreenHeight - yOffset, --yoffset
@@ -420,6 +444,8 @@
 
 function AwardKills(t)
 
+	roundKills = roundKills + 1
+	
 	for i = 0,(TeamsCount-1) do
 		if teamClan[i] == GetHogClan(CurrentHedgehog) then
 			teamCircsKilled[i] = teamCircsKilled[i] + 1
@@ -621,8 +647,8 @@
 			(GetX(gear) > 6200) or
 			(GetY(gear) < -3400)
 		then
-			AddVisualGear(GetX(gear), GetY(gear), vgtBigExplosion, 0, false)			
-			DeleteGear(gear)			
+			AddVisualGear(GetX(gear), GetY(gear), vgtBigExplosion, 0, false)
+			DeleteGear(gear)
 			--SetHealth(gear, 0)
 			--WriteLnToConsole("I'm setting barrel ID " .. getGearValue(gear,"ID") .. " to 0 health because it's been flung too close to the map edges. at Game Time: " .. GameTime .. "; luaTicks: " .. luaGameTicks)
 		end
@@ -644,8 +670,8 @@
 	-- Fire Barrel
 	if (primShotsLeft > 0) and (CurrentHedgehog ~= nil) and (stopMovement == false) and (tumbleStarted == true) then
 
-		shotsFired = shotsFired +1		
-		
+		shotsFired = shotsFired +1
+
 		morte = AddGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), gtExplosives, 0, 0, 0, 1)
 
 		primShotsLeft = primShotsLeft - 1
@@ -702,6 +728,18 @@
 	end
 end
 
+function onHJump()
+
+	if (CurrentHedgehog ~= nil) and (stopMovement == false) and (tumbleStarted == true) and 
+	(rAlpha == 255) and (radShotsLeft > 0) then
+		rPingTimer = 0
+		rAlpha = 0
+		radShotsLeft = radShotsLeft -1
+		AddCaption(loc("Pings left:") .. " " .. radShotsLeft,GetClanColor(GetHogClan(CurrentHedgehog)),capgrpMessage)
+	end
+
+end
+
 -----------------
 -- movement keys
 -----------------
@@ -750,8 +788,8 @@
 	MinesNum = 0
 	Explosives = 0
 
-	for i = 0, 3 do 	
-		vTag[0] = AddVisualGear(0, 0, vgtHealthTag, 0, false)	
+	for i = 0, 3 do
+		vTag[0] = AddVisualGear(0, 0, vgtHealthTag, 0, false)
 	end
 
 	HideTags()
@@ -780,6 +818,7 @@
 				loc("Movement: [Up], [Down], [Left], [Right]") .. "|" ..
 				loc("Fire") .. ": " .. loc("[Left Shift]") .. "|" ..
 				loc("Toggle Shield") .. ": " .. loc("[Enter]") .. "|" ..
+				loc("Radar Ping") .. ": " .. loc("[Backspace]") .. "|" ..
 
 				--" " .. "|" ..
 				--LOC_NOT("Invaders List: ") .. "|" ..
@@ -797,10 +836,21 @@
 
 end
 
+function onScreenResize()
+
+	-- redraw Tags so that their screen locations are updated
+	if (CurrentHedgehog ~= nil) and (tumbleStarted == true) then
+			DrawTag(0)
+			DrawTag(1)
+			DrawTag(2)
+	end
+
+end
 
 function onNewTurn()
 
 	primShotsLeft = primShotsMax
+	radShotsLeft = 2
 	stopMovement = false
 	tumbleStarted = false
 	beam = false
@@ -811,6 +861,7 @@
 	BK = 0
 	OK = 0
 	SK = 0
+	roundKills = 0
 	shieldMiser = true
 	shotsFired = 0
 	shotsHit = 0
@@ -835,7 +886,7 @@
 		tumbleStarted = false
 		SetMyCircles(false)
 	end
-	
+
 	HideTags()
 
 	---------------
@@ -862,8 +913,8 @@
 
 function onGameTick()
 
-	
-	--WriteLnToConsole("Start of GameTick")	
+
+	--WriteLnToConsole("Start of GameTick")
 	luaGameTicks = luaGameTicks + 1 -- GameTime
 
 	HandleCircles()
@@ -919,6 +970,7 @@
 			tumbleStarted = true
 			TimeLeft = (TurnTime/1000)	--45
 			FadeAlpha = 0
+			rAlpha = 255
 			AddGear(GetX(CurrentHedgehog), GetY(CurrentHedgehog), gtGrenade, 0, 0, 0, 1)
 			DrawTag(0)
 			DrawTag(1)
@@ -955,9 +1007,9 @@
 		if PlayerIsFine() == false then
 			TimeLeft = 0
 		end
-		
+
 		--WriteLnToConsole("successfully checked playerIsFine")
-		
+
 		if (TimeLeft == 0) then
 			if (stopMovement == false) then	--time to stop the player
 				stopMovement = true
@@ -968,11 +1020,19 @@
 				rightOn = false
 				SetMyCircles(false)
 				HideTags()
+				rAlpha = 255
 				--nw WriteLnToConsole("Player is out of luck")
 
 				if shieldMiser == true then
-					AddCaption(loc("Shield Miser!") .. " +20 " .. loc("points") .. "!",0xffba00ff,capgrpAmmoinfo)
-					AwardPoints(20)
+					
+					p = (roundKills*2.5) - ((roundKills*2.5)%1) + 2
+					--p = (roundKills*2.5) + 2
+					--if (p%2 ~= 0) then
+					--	p = p -0.5					
+					--end
+
+					AddCaption(loc("Shield Miser!") .." +" .. p .." ".. loc("points") .. "!",0xffba00ff,capgrpAmmoinfo)
+					AwardPoints(p)
 				end
 
 				if ((shotsHit / shotsFired * 100) >= 80) and (shotsFired > 4) then
@@ -985,16 +1045,16 @@
 		-------------------------------
 		-- Player is still in luck
 		-------------------------------
-			
+
 
 			--WriteLnToConsole("about to do chainCounter checks")
 			if chainCounter > 0 then
-				chainCounter = chainCounter -1 
+				chainCounter = chainCounter -1
 				if chainCounter == 0 then
 					chainLength = 0
 				end
 			end
-				
+
 			-- handle movement based on IO
 			moveTimer = moveTimer + 1
 			if moveTimer == 100 then -- 100
@@ -1063,7 +1123,7 @@
 	end
 
 	--WriteLnToConsole("End of GameTick")
-
+	
 end
 
 function onGearResurrect(gear)
@@ -1149,8 +1209,47 @@
 ------------------------------------------------------------
 ------------------------------------------------------------
 
-
-
+function DoHorribleThings(cUID)
+
+	-- maybe	
+	-- add a check to draw it inside the circ and not past it if
+	-- it is closer than 150 or w/e
+
+	-- work out the distance to the target	
+	g1X, g1Y = GetGearPosition(CurrentHedgehog)
+	g2X, g2Y = vCircX[cUID], vCircY[cUID]
+	q = g1X - g2X				
+	w = g1Y - g2Y				
+	r = math.sqrt( (q*q) + (w*w) )	--alternate
+	
+
+	opp = w	
+	if opp < 0 then
+		opp = opp*-1
+	end
+
+	-- work out the angle (theta) to the target
+	t = math.deg ( math.asin(opp / r) )
+		
+	-- based on the radius of the radar, calculate what x/y displacement should be	
+	NR = 150 -- radius at which to draw circs
+	NX = math.cos( math.rad(t) ) * NR
+	NY = math.sin( math.rad(t) ) * NR	
+		
+	-- displace xy based on where this thing actually is
+	if q > 0 then
+		rCircX[cUID] = g1X - NX
+	else
+		rCircX[cUID] = g1X + NX
+	end
+
+	if w > 0 then
+		rCircY[cUID] = g1Y - NY
+	else
+		rCircY[cUID] = g1Y + NY
+	end
+	
+end
 
 function PlayerIsFine()
 	return (playerIsFine)
@@ -1213,6 +1312,10 @@
 		vCCount = vCCount +1
 		vCirc[i] = AddVisualGear(0,0,vgtCircle,0,true)
 
+		rCirc[i] = AddVisualGear(0,0,vgtCircle,0,true)
+		rCircX[i] = 0
+		rCircY[i] = 0
+
 		vCircDX[i] = 0
 		vCircDY[i] = 0
 
@@ -1240,6 +1343,9 @@
 		vCircCol[i] = 0xff00ffff
 
 		SetVisualGearValues(vCirc[i], vCircX[i], vCircY[i], vCircMinA[i], vCircMaxA[i], vCircType[i], vCircPulse[i], vCircFuckAll[i], vCircRadius[i], vCircWidth[i], vCircCol[i])
+
+		SetVisualGearValues(rCirc[i], 0, 0, 100, 255, 1, 10, 0, 40, 3, vCircCol[i])
+
 	end
 
 	pShield = AddVisualGear(0,0,vgtCircle,0,true)
@@ -1340,7 +1446,7 @@
 
 		elseif (vType[i] == "blueboss") then
 			PlaySound(sndHellishImpact3)
-			AddCaption(loc("Boss defeated!") .. " +50 " .. loc("points") .. "!", 0x0050ffff,capgrpMessage)
+			AddCaption(loc("Boss defeated!") .. " +30 " .. loc("points") .. "!", 0x0050ffff,capgrpMessage)
 
 			morte = AddGear(vCircX[i], vCircY[i], gtExplosives, 0, 0, 0, 1)
 			SetHealth(morte, 0)
@@ -1431,7 +1537,7 @@
 			vCircRadMax[i] = 180*5
 			vCircWidth[i] = 1
 			vCounterLim[i] = 2000
-			vCircScore[i] = 50
+			vCircScore[i] = 30
 			vCircHealth[i] = 3
 		else
 		--elseif r == 1 then
@@ -1464,6 +1570,11 @@
 	g1, g2, g3, g4, g5, g6, g7, g8, g9, g10 = GetVisualGearValues(vCirc[i])
 	SetVisualGearValues(vCirc[i], vCircX[i], vCircY[i], g3, g4, g5, g6, g7, vCircRadius[i], vCircWidth[i], vCircCol[i]-0x000000ff)
 	-- - -0x000000ff
+
+	g1, g2, g3, g4, g5, g6, g7, g8, g9, g10 = GetVisualGearValues(rCirc[i])
+	SetVisualGearValues(rCirc[i], 0, 0, g3, g4, g5, g6, g7, g8, g9, vCircCol[i]-0x000000ff)
+	
+
 	vCircActive[i] = true -- new
 
 	--nw WriteLnToConsole("CIRC " .. i .. ": X: " .. vCircX[i] .. "; Y: " .. vCircY[i])
@@ -1565,7 +1676,9 @@
 
 					circsHit = circsHit + 1
 					if circsHit > 1 then
-						AddCaption(loc("Multi-shot!") .. " +5 " .. loc("points") .. "!",0xffba00ff,capgrpAmmostate) 
+						AddCaption(loc("Multi-shot!") .. " +15 " .. loc("points") .. "!",0xffba00ff,capgrpAmmostate)
+						AwardPoints(15)
+						circsHit = 0
 					end
 
 					shotsHit = shotsHit + 1
@@ -1638,6 +1751,8 @@
 		g1Y = g1Y - g2Y
 		dist = (g1X*g1X) + (g1Y*g1Y)
 
+		--DoHorribleThings(i, g1X, g1Y, g2X, g2Y, dist)
+
 		--nw WriteLnToConsole("Calcs done. Dist to CurrentHedgehog is " .. dist)
 
 		-- calculate my real radius if I am an aura
@@ -1688,7 +1803,6 @@
 
 function HandleCircles()
 
-
 	--[[if CirclesAreGo == true then
 
 		--CheckDistances()
@@ -1702,8 +1816,27 @@
 
 	end]]
 
+	
+	if rAlpha ~= 255 then
+		
+		rPingTimer = rPingTimer + 1
+		if rPingTimer == 100 then
+			rPingTimer = 0	
+			
+			rAlpha = rAlpha + 5
+			if rAlpha >= 255 then
+				rAlpha = 255
+			end	
+		end
+	
+	end
+
 	for i = 0,(vCCount-1) do
 
+		--if (vCircActive[i] == true) then
+			SetVisualGearValues(rCirc[i], rCircX[i], rCircY[i], 100, 255, 1, 10, 0, 40, 3, vCircCol[i]-rAlpha)	
+		--end
+
 		vCounter[i] = vCounter[i] + 1
 		if vCounter[i] >= vCounterLim[i] then
 
@@ -1853,6 +1986,11 @@
 		for i = 0,(vCCount-1) do
 			vCircX[i] = vCircX[i] + vCircDX[i]
 			vCircY[i] = vCircY[i] + vCircDY[i]
+
+			if (CurrentHedgehog ~= nil) and (rAlpha ~= 255) then			
+				DoHorribleThings(i)--(i, g1X, g1Y, g2X, g2Y, dist)				
+			end
+
 		end
 
 		if (TimeLeft == 0) and (tumbleStarted == true) then
@@ -1862,12 +2000,12 @@
 				FadeAlpha = 255
 			end
 
-			--new			
+			--new
 			--if FadeAlpha == 1 then
-			--	AddCaption("GOT IT")				
+			--	AddCaption("GOT IT")
 			--	for i = 0,(vCCount-1) do
 			--		g1, g2, g3, g4, g5, g6, g7, g8, g9, g10 = GetVisualGearValues(vCirc[i])
-			--		vCircCol[i] = g10	
+			--		vCircCol[i] = g10
 			--	end
 			--end
 
--- a/share/hedgewars/Data/Scripts/Multiplayer/The_Specialists.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Scripts/Multiplayer/The_Specialists.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -259,42 +259,42 @@
 	if (CurrentHedgehog ~= nil) then
 
 		currName = GetHogName(CurrentHedgehog)
-		
+
 		if (currName ~= lastName) and (switchStage > 100) then
 			AddCaption(loc("Switched to ") .. currName .. "!")
-			AssignAmmo()		
+			AssignAmmo()
 		end
 
-		if (TurnTimeLeft > 0) and (TurnTimeLeft ~= TurnTime) and (switchStage < 100) then			
-			
-			AddCaption(loc("Prepare yourself") .. ", " .. currName .. "!") 
+		if (TurnTimeLeft > 0) and (TurnTimeLeft ~= TurnTime) and (switchStage < 100) then
+
+			AddCaption(loc("Prepare yourself") .. ", " .. currName .. "!")
 
 			hogCounter = 0
 			runOnHogsInTeam(CountHog, GetHogTeamName(CurrentHedgehog) )
 
 			if hogCounter > 1 then
 
-				switchStage = switchStage + 1	
-			
+				switchStage = switchStage + 1
+
 				if switchStage == 1 then
 					AddAmmo(CurrentHedgehog, amSwitch, 1)
-				
+
 				elseif switchStage == 2 then
 					ParseCommand("setweap " .. string.char(amSwitch))
 				elseif switchStage == 3 then
-					SetGearMessage(CurrentHedgehog,gmAttack) 
+					SetGearMessage(CurrentHedgehog,gmAttack)
 				elseif switchStage == 4 then
 					switchStage = 110
 					AddAmmo(CurrentHedgehog, amSwitch, 0)
 				end
-			
+
 			else
 				switchStage = 110
 			end
 
 
-		end		
-		
+		end
+
 		lastName = currName
 
 	end
@@ -307,12 +307,12 @@
                 hhs[numhhs] = gear
                 numhhs = numhhs + 1
         elseif (GetGearType(gear) == gtMine) and (started == true) then
-		SetTimer(gear,5000)	
+		SetTimer(gear,5000)
 	end
-	
+
 	if (GetGearType(gear) == gtHedgehog) or (GetGearType(gear) == gtResurrector) then
 		trackGear(gear)
-	end 
+	end
 
 
 end
@@ -320,7 +320,7 @@
 function onGearDelete(gear)
 	if (GetGearType(gear) == gtHedgehog) or (GetGearType(gear) == gtResurrector) then
 		trackDeletion(gear)
-	end 
+	end
 end
 
 function onAmmoStoreInit()
--- a/share/hedgewars/Data/Scripts/Multiplayer/Tumbler.lua	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Scripts/Multiplayer/Tumbler.lua	Fri Sep 16 18:17:16 2011 +0200
@@ -1,6 +1,6 @@
 ------------------------------------
 -- TUMBLER
--- v.0.7
+-- v.0.7.1
 ------------------------------------
 
 loadfile(GetDataPath() .. "Scripts/Locale.lua")()
@@ -110,6 +110,12 @@
 -- Performance tweaks
 -- Variety of small gameplay changes
 
+------------------------
+-- version 0.7.1
+------------------------
+
+-- redraw HUD on screen resolution change
+
 ---------------------------
 -- some other ideas/things
 ---------------------------
@@ -194,37 +200,37 @@
 
 function HideTags()
 
-	for i = 0, 3 do 	
+	for i = 0, 3 do
 		SetVisualGearValues(vTag[i],0,0,0,0,0,1,0, 0, 240000, 0xffffff00)
 	end
 
 end
 
 function DrawTag(i)
-	
+
 	zoomL = 1.3
 
 	xOffset = 40
 
 	if i == 0 then
-		yOffset = 40	
+		yOffset = 40
 		tCol = 0xffba00ff --0xffed09ff --0xffba00ff
 		tValue = TimeLeft
 	elseif i == 1 then
-		zoomL = 1.1		
-		yOffset = 70	
+		zoomL = 1.1
+		yOffset = 70
 		tCol = wepCol[0]
 		tValue = wepAmmo[0]
 	elseif i == 2 then
-		zoomL = 1.1		
+		zoomL = 1.1
 		xOffset = 40 + 35
-		yOffset = 70		
+		yOffset = 70
 		tCol = wepCol[1]
 		tValue = wepAmmo[1]
 	elseif i == 3 then
-		zoomL = 1.1		
+		zoomL = 1.1
 		xOffset = 40 + 70
-		yOffset = 70		
+		yOffset = 70
 		tCol = wepCol[2]
 		tValue = wepAmmo[2]
 	end
@@ -232,7 +238,7 @@
 	DeleteVisualGear(vTag[i])
 	vTag[i] = AddVisualGear(0, 0, vgtHealthTag, 0, false)
 	g1, g2, g3, g4, g5, g6, g7, g8, g9, g10 = GetVisualGearValues(vTag[i])
-	SetVisualGearValues	(	
+	SetVisualGearValues	(
 				vTag[i], 		--id
 				-(ScreenWidth/2) + xOffset,	--xoffset
 				ScreenHeight - yOffset, --yoffset
@@ -272,19 +278,19 @@
 			DeleteGear(gear)
 			AddCaption(wep[0] .. " " .. loc("ammo extended!"), wepCol[0], capgrpAmmoinfo )
 			DrawTag(1)
-			
+
 			barrelsEaten = barrelsEaten + 1
 			if barrelsEaten == 5 then
 				AddCaption(loc("Achievement Unlocked") .. ": " .. loc("Barrel Eater!"),0xffba00ff,capgrpMessage2)
 			end
-		
+
 		elseif (GetGearType(gear) == gtMine) then
 			wepAmmo[1] = wepAmmo[1] + 1
 			PlaySound(sndShotgunReload)
 			DeleteGear(gear)
 			AddCaption(wep[1] .. " " .. loc("ammo extended!"), wepCol[1], capgrpAmmoinfo )
 			DrawTag(2)
-			
+
 			minesEaten = minesEaten + 1
 			if minesEaten == 5 then
 				AddCaption(loc("Achievement Unlocked") .. ": " .. loc("Mine Eater!"),0xffba00ff,capgrpMessage2)
@@ -308,7 +314,7 @@
 		if GetHealth(gear) > 0 then
 
 			AddCaption(loc("Tumbling Time Extended!"), 0xffba00ff, capgrpMessage2 )
-			
+
 			TimeLeft = TimeLeft + HealthCaseAmount  --5 --5s
 			DrawTag(0)
 			--PlaySound(sndShotgunReload)
@@ -436,31 +442,31 @@
 
 	mineSpawn = MinesNum
 	if mineSpawn > 4 then
-		mineSpawn = 4	
+		mineSpawn = 4
 	end
 
 	barrelSpawn = Explosives
 	if barrelSpawn > 4 then
-		barrelSpawn = 4	
+		barrelSpawn = 4
 	end
 
 	--MinesNum = 0
 	--Explosives = 0
 
-	for i = 0, 3 do 	
-		vTag[0] = AddVisualGear(0, 0, vgtHealthTag, 0, false)	
+	for i = 0, 3 do
+		vTag[0] = AddVisualGear(0, 0, vgtHealthTag, 0, false)
 	end
 
 	HideTags()
 
 	wep[0] = loc("Barrel Launcher")
-	wep[1] = loc("Mine Deployer")	
+	wep[1] = loc("Mine Deployer")
 	wep[2] = loc("Flamer")
 
 	wepCol[0] = 0x78818eff
 	wepCol[1] = 0xa12a77ff
 	wepCol[2] = 0xf49318ff
-	
+
 	wepCount = 3
 
 end
@@ -493,6 +499,16 @@
 
 end
 
+function onScreenResize()
+
+	-- redraw Tags so that their screen locations are updated
+	if (CurrentHedgehog ~= nil) and (tumbleStarted == true) then
+		for i = 0, 3 do
+			DrawTag(i)
+		end
+	end
+
+end
 
 function onNewTurn()
 
@@ -528,7 +544,7 @@
 
 	--reset ammo counts
 	wepAmmo[0] = 2
-	wepAmmo[1] = 1 
+	wepAmmo[1] = 1
 	wepAmmo[2] = 50 -- 50000 -- 50
 	wepIndex = 2
 	ChangeWeapon()
@@ -563,7 +579,7 @@
 			SetHealth(CurrentHedgehog, GetHealth(CurrentHedgehog) + 47) -- new
 			for i = 0, 3 do
 				DrawTag(i)
-			end			
+			end
 		end
 	end
 
Binary file share/hedgewars/Data/Themes/Art/LandBackTex.png has changed
Binary file share/hedgewars/Data/Themes/Castle/LandBackTex.png has changed
Binary file share/hedgewars/Data/Themes/Digital/LandTex.png has changed
Binary file share/hedgewars/Data/Themes/Digital/Sky.png has changed
Binary file share/hedgewars/Data/Themes/Golf/Bag.png has changed
Binary file share/hedgewars/Data/Themes/Golf/Ball.png has changed
Binary file share/hedgewars/Data/Themes/Golf/BlueWater.png has changed
Binary file share/hedgewars/Data/Themes/Golf/Car.png has changed
Binary file share/hedgewars/Data/Themes/Golf/Chunk.png has changed
Binary file share/hedgewars/Data/Themes/Golf/Clouds.png has changed
Binary file share/hedgewars/Data/Themes/Golf/Club2.png has changed
Binary file share/hedgewars/Data/Themes/Golf/Flake.png has changed
Binary file share/hedgewars/Data/Themes/Golf/LandBackTex.png has changed
Binary file share/hedgewars/Data/Themes/Golf/LandTex.png has changed
Binary file share/hedgewars/Data/Themes/Golf/Sky.png has changed
Binary file share/hedgewars/Data/Themes/Golf/SkyL.png has changed
Binary file share/hedgewars/Data/Themes/Golf/SkyR.png has changed
Binary file share/hedgewars/Data/Themes/Golf/Tee.png has changed
Binary file share/hedgewars/Data/Themes/Golf/horizont.png has changed
--- a/share/hedgewars/Data/Themes/Golf/theme.cfg	Fri Sep 16 17:36:05 2011 +0200
+++ b/share/hedgewars/Data/Themes/Golf/theme.cfg	Fri Sep 16 18:17:16 2011 +0200
@@ -1,13 +1,14 @@
 sky = 34, 67, 135
 border = 38, 114, 35
-water-top = $54, $5C, $9D
-water-bottom = $34, $3C, $7D
-water-opacity = $80
+water-top = 72, 105, 127
+water-bottom = 37, 76, 91
+water-opacity = 128
 music = Golf.ogg
 clouds = 9
 object = Hole, 2, 0, 31, 123, 1, 1, 31, 0, 40, 27
 object = Car, 1, 78, 320, 80, 30, 1, 0, 0, 330, 220
-object = Club, 2, 180, 175, 5, 1, 2, 189, 155, 15, 20, 0, 0, 100, 100
+object = Club, 3, 180, 175, 5, 1, 2, 189, 155, 15, 20, 0, 0, 100, 100
+object = Club2, 1, 126, 26, 1, 1, 2, 0, 0, 20, 30, 240, 23, 15, 10
 object = Flag1, 1, 0, 305, 15, 5, 1, 20, 0, 103, 260
 object = Flag2, 1, 40, 305, 10, 4, 1, 0, 0, 53, 270
 object = Flag3, 1, 0, 280, 12, 7, 1, 30, 0, 112, 260