QTfrontend/team.cpp
author nemo
Fri, 30 Sep 2011 22:33:28 -0400
changeset 6077 d8fa5a85d24f
parent 6060 fdfc01419815
child 6223 cc3eb9b7230f
permissions -rw-r--r--
This prevents girders from erasing landbacktex (square windows in tunnels and such), at the cost of requiring lfBasic and lfObject to be treated the same apart from graphically
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     1
/*
1066
1f1b3686a2b0 Update copyright headers a bit
unc0rr
parents: 607
diff changeset
     2
 * Hedgewars, a free turn based strategy game
4976
088d40d8aba2 Happy 2011 :)
koda
parents: 3844
diff changeset
     3
 * Copyright (c) 2005-2011 Andrey Korotaev <unC0Rr@gmail.com>
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     4
 *
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     5
 * This program is free software; you can redistribute it and/or modify
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     6
 * it under the terms of the GNU General Public License as published by
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     7
 * the Free Software Foundation; version 2 of the License
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     8
 *
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     9
 * This program is distributed in the hope that it will be useful,
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    12
 * GNU General Public License for more details.
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    13
 *
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    14
 * You should have received a copy of the GNU General Public License
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    15
 * along with this program; if not, write to the Free Software
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    16
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    17
 */
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    18
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    19
#include <QFile>
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    20
#include <QTextStream>
471
e1eb64ba5e9c Small cleanup, faster compilation as a result
unc0rr
parents: 468
diff changeset
    21
#include <QStringList>
e1eb64ba5e9c Small cleanup, faster compilation as a result
unc0rr
parents: 468
diff changeset
    22
#include <QLineEdit>
2874
3c7c2bf1ba38 A simple hat reservation mechanism. Can be worked around with a little effort, but to make it useful, you'd have to get everyone you played with to work around it too. Quite a bit of effort for a small reward feature.
nemo
parents: 2833
diff changeset
    23
#include <QCryptographicHash>
3333
560e2766c445 Frontend:
smxx
parents: 3236
diff changeset
    24
#include <QSettings>
5252
ded882439548 file association for mac!
koda
parents: 5204
diff changeset
    25
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    26
#include "team.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    27
#include "hwform.h"
1240
16b85f292030 Store selected hats in team config
unc0rr
parents: 1066
diff changeset
    28
#include "hats.h"
314
83773ccf4f09 client/server net pre-alpha
displacer
parents: 312
diff changeset
    29
1325
c8994d47f41d Adding teams now works
unc0rr
parents: 1293
diff changeset
    30
HWTeam::HWTeam(const QString & teamname) :
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    31
    m_difficulty(0),
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    32
    m_numHedgehogs(4),
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
    33
    m_isNetTeam(false)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    34
{
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    35
    m_name = teamname;
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    36
    OldTeamName = m_name;
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    37
    for (int i = 0; i < HEDGEHOGS_PER_TEAM; i++)
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
    38
    {
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    39
        m_hedgehogs[i].Name = (QLineEdit::tr("hedgehog %1").arg(i+1));
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    40
        m_hedgehogs[i].Hat = "NoHat";
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
    41
    }
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    42
    m_grave = "Statue";
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    43
    m_fort = "Plane";
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    44
    m_voicepack = "Default";
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    45
    m_flag = "hedgewars";
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
    46
    for(int i = 0; i < BINDS_NUMBER; i++)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
    47
    {
6024
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
    48
        m_binds[i].action = cbinds[i].action;
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
    49
        m_binds[i].strbind = cbinds[i].strbind;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
    50
    }
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    51
    m_rounds = 0;
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    52
    m_wins = 0;
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    53
    m_campaignProgress = 0;
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    54
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    55
353
5ec611d702a0 initial hedgehogs num fixed
displacer
parents: 352
diff changeset
    56
HWTeam::HWTeam(const QStringList& strLst) :
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    57
  m_numHedgehogs(4),
1325
c8994d47f41d Adding teams now works
unc0rr
parents: 1293
diff changeset
    58
  m_isNetTeam(true)
314
83773ccf4f09 client/server net pre-alpha
displacer
parents: 312
diff changeset
    59
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
    60
    // net teams are configured from QStringList
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
    61
    if(strLst.size() != 23) throw HWTeamConstructException();
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    62
    m_name = strLst[0];
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    63
    m_grave = strLst[1];
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    64
    m_fort = strLst[2];
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    65
    m_voicepack = strLst[3];
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    66
    m_flag = strLst[4];
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    67
    m_owner = strLst[5];
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    68
    m_difficulty = strLst[6].toUInt();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    69
    for(int i = 0; i < HEDGEHOGS_PER_TEAM; i++)
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
    70
    {
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    71
        m_hedgehogs[i].Name=strLst[i * 2 + 7];
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    72
        m_hedgehogs[i].Hat=strLst[i * 2 + 8];
2833
9c2accd92cc7 Check for empty hat, somehow claymore managed this, this should be a workaround pending figuring out how he did it.
nemo
parents: 2747
diff changeset
    73
// Somehow claymore managed an empty hat.  Until we figure out how, this should avoid a repeat
9c2accd92cc7 Check for empty hat, somehow claymore managed this, this should be a workaround pending figuring out how he did it.
nemo
parents: 2747
diff changeset
    74
// Checking net teams is probably pointless, but can't hurt.
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    75
        if (m_hedgehogs[i].Hat.isEmpty()) m_hedgehogs[i].Hat = "NoHat";
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
    76
    }
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    77
    m_rounds = 0;
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    78
    m_wins = 0;
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    79
    m_campaignProgress = 0;
314
83773ccf4f09 client/server net pre-alpha
displacer
parents: 312
diff changeset
    80
}
83773ccf4f09 client/server net pre-alpha
displacer
parents: 312
diff changeset
    81
1907
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents: 1840
diff changeset
    82
HWTeam::HWTeam() :
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    83
  m_difficulty(0),
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    84
  m_numHedgehogs(4),
1325
c8994d47f41d Adding teams now works
unc0rr
parents: 1293
diff changeset
    85
  m_isNetTeam(false)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    86
{
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    87
    m_name = QString("Team");
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    88
    for (int i = 0; i < HEDGEHOGS_PER_TEAM; i++)
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
    89
    {
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    90
        m_hedgehogs[i].Name.sprintf("hedgehog %d", i);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    91
        m_hedgehogs[i].Hat = "NoHat";
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
    92
    }
1840
4747f0232b88 ttsmj2's random teams patch
unc0rr
parents: 1683
diff changeset
    93
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    94
    m_grave = QString("Simple"); // default
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    95
    m_fort = QString("Island"); // default
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    96
    m_voicepack = "Default";
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
    97
    m_flag = "hedgewars";
1907
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents: 1840
diff changeset
    98
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
    99
    for(int i = 0; i < BINDS_NUMBER; i++)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   100
    {
6024
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
   101
        m_binds[i].action = cbinds[i].action;
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
   102
        m_binds[i].strbind = cbinds[i].strbind;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   103
    }
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   104
    m_rounds = 0;
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   105
    m_wins = 0;
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   106
    m_campaignProgress = 0;
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   107
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   108
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   109
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   110
bool HWTeam::loadFromFile()
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   111
{
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   112
    QSettings teamfile(cfgdir->absolutePath() + "/Teams/" + m_name + ".hwt", QSettings::IniFormat, 0);
3333
560e2766c445 Frontend:
smxx
parents: 3236
diff changeset
   113
    teamfile.setIniCodec("UTF-8");
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   114
    m_name = teamfile.value("Team/Name", m_name).toString();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   115
    m_grave = teamfile.value("Team/Grave", "Statue").toString();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   116
    m_fort = teamfile.value("Team/Fort", "Plane").toString();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   117
    m_voicepack = teamfile.value("Team/Voicepack", "Default").toString();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   118
    m_flag = teamfile.value("Team/Flag", "hedgewars").toString();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   119
    m_difficulty = teamfile.value("Team/Difficulty", 0).toInt();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   120
    m_rounds = teamfile.value("Team/Rounds", 0).toInt();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   121
    m_wins = teamfile.value("Team/Wins", 0).toInt();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   122
    m_campaignProgress = teamfile.value("Team/CampaignProgress", 0).toInt();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   123
    for(int i = 0; i < HEDGEHOGS_PER_TEAM; i++)
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   124
    {
3333
560e2766c445 Frontend:
smxx
parents: 3236
diff changeset
   125
        QString hh = QString("Hedgehog%1/").arg(i);
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   126
        m_hedgehogs[i].Name = teamfile.value(hh + "Name", QString("hedgehog %1").arg(i+1)).toString();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   127
        m_hedgehogs[i].Hat = teamfile.value(hh + "Hat", "NoHat").toString();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   128
        m_hedgehogs[i].Rounds = teamfile.value(hh + "Rounds", 0).toInt();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   129
        m_hedgehogs[i].Kills = teamfile.value(hh + "Kills", 0).toInt();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   130
        m_hedgehogs[i].Deaths = teamfile.value(hh + "Deaths", 0).toInt();
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   131
        m_hedgehogs[i].Suicides = teamfile.value(hh + "Suicides", 0).toInt();
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   132
    }
3333
560e2766c445 Frontend:
smxx
parents: 3236
diff changeset
   133
    for(int i = 0; i < BINDS_NUMBER; i++)
6024
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
   134
        m_binds[i].strbind = teamfile.value(QString("Binds/%1").arg(m_binds[i].action), cbinds[i].strbind).toString();
3344
b18a166e6ca4 Frontend:
smxx
parents: 3333
diff changeset
   135
    for(int i = 0; i < MAX_ACHIEVEMENTS; i++)
b18a166e6ca4 Frontend:
smxx
parents: 3333
diff changeset
   136
        if(achievements[i][0][0])
b18a166e6ca4 Frontend:
smxx
parents: 3333
diff changeset
   137
            AchievementProgress[i] = teamfile.value(QString("Achievements/%1").arg(achievements[i][0]), 0).toUInt();
b18a166e6ca4 Frontend:
smxx
parents: 3333
diff changeset
   138
        else
b18a166e6ca4 Frontend:
smxx
parents: 3333
diff changeset
   139
            break;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   140
    return true;
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   141
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   142
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   143
bool HWTeam::fileExists()
3381
f8800c44b3de Engine:
smxx
parents: 3359
diff changeset
   144
{
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   145
    QFile f(cfgdir->absolutePath() + "/Teams/" + m_name + ".hwt");
3381
f8800c44b3de Engine:
smxx
parents: 3359
diff changeset
   146
    return f.exists();
f8800c44b3de Engine:
smxx
parents: 3359
diff changeset
   147
}
f8800c44b3de Engine:
smxx
parents: 3359
diff changeset
   148
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   149
bool HWTeam::deleteFile()
3159
e5eff81d7635 Frontend:
smxx
parents: 2948
diff changeset
   150
{
e5eff81d7635 Frontend:
smxx
parents: 2948
diff changeset
   151
    if(m_isNetTeam)
e5eff81d7635 Frontend:
smxx
parents: 2948
diff changeset
   152
        return false;
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   153
    QFile cfgfile(cfgdir->absolutePath() + "/Teams/" + m_name + ".hwt");
3159
e5eff81d7635 Frontend:
smxx
parents: 2948
diff changeset
   154
    cfgfile.remove();
e5eff81d7635 Frontend:
smxx
parents: 2948
diff changeset
   155
    return true;
e5eff81d7635 Frontend:
smxx
parents: 2948
diff changeset
   156
}
e5eff81d7635 Frontend:
smxx
parents: 2948
diff changeset
   157
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   158
bool HWTeam::saveToFile()
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   159
{
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   160
    if (OldTeamName != m_name)
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   161
    {
3758
80007c41c35e Frontend:
smaxx
parents: 3697
diff changeset
   162
        QFile cfgfile(cfgdir->absolutePath() + "/Teams/" + OldTeamName + ".hwt");
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   163
        cfgfile.remove();
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   164
        OldTeamName = m_name;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   165
    }
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   166
    QSettings teamfile(cfgdir->absolutePath() + "/Teams/" + m_name + ".hwt", QSettings::IniFormat, 0);
3333
560e2766c445 Frontend:
smxx
parents: 3236
diff changeset
   167
    teamfile.setIniCodec("UTF-8");
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   168
    teamfile.setValue("Team/Name", m_name);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   169
    teamfile.setValue("Team/Grave", m_grave);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   170
    teamfile.setValue("Team/Fort", m_fort);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   171
    teamfile.setValue("Team/Voicepack", m_voicepack);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   172
    teamfile.setValue("Team/Flag", m_flag);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   173
    teamfile.setValue("Team/Difficulty", m_difficulty);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   174
    teamfile.setValue("Team/Rounds", m_rounds);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   175
    teamfile.setValue("Team/Wins", m_wins);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   176
    teamfile.setValue("Team/CampaignProgress", m_campaignProgress);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   177
    for(int i = 0; i < HEDGEHOGS_PER_TEAM; i++)
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   178
    {
3333
560e2766c445 Frontend:
smxx
parents: 3236
diff changeset
   179
        QString hh = QString("Hedgehog%1/").arg(i);
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   180
        teamfile.setValue(hh + "Name", m_hedgehogs[i].Name);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   181
        teamfile.setValue(hh + "Hat", m_hedgehogs[i].Hat);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   182
        teamfile.setValue(hh + "Rounds", m_hedgehogs[i].Rounds);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   183
        teamfile.setValue(hh + "Kills", m_hedgehogs[i].Kills);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   184
        teamfile.setValue(hh + "Deaths", m_hedgehogs[i].Deaths);
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   185
        teamfile.setValue(hh + "Suicides", m_hedgehogs[i].Suicides);
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   186
    }
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   187
    for(int i = 0; i < BINDS_NUMBER; i++)
6024
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
   188
        teamfile.setValue(QString("Binds/%1").arg(m_binds[i].action), m_binds[i].strbind);
3344
b18a166e6ca4 Frontend:
smxx
parents: 3333
diff changeset
   189
    for(int i = 0; i < MAX_ACHIEVEMENTS; i++)
b18a166e6ca4 Frontend:
smxx
parents: 3333
diff changeset
   190
        if(achievements[i][0][0])
b18a166e6ca4 Frontend:
smxx
parents: 3333
diff changeset
   191
            teamfile.setValue(QString("Achievements/%1").arg(achievements[i][0]), AchievementProgress[i]);
b18a166e6ca4 Frontend:
smxx
parents: 3333
diff changeset
   192
        else
b18a166e6ca4 Frontend:
smxx
parents: 3333
diff changeset
   193
            break;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   194
    return true;
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   195
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   196
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   197
QStringList HWTeam::teamGameConfig(quint32 InitHealth) const
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   198
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   199
    QStringList sl;
2874
3c7c2bf1ba38 A simple hat reservation mechanism. Can be worked around with a little effort, but to make it useful, you'd have to get everyone you played with to work around it too. Quite a bit of effort for a small reward feature.
nemo
parents: 2833
diff changeset
   200
    if (m_isNetTeam)
3c7c2bf1ba38 A simple hat reservation mechanism. Can be worked around with a little effort, but to make it useful, you'd have to get everyone you played with to work around it too. Quite a bit of effort for a small reward feature.
nemo
parents: 2833
diff changeset
   201
    {
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   202
        sl.push_back(QString("eaddteam %3 %1 %2").arg(m_color.rgb() & 0xffffff).arg(m_name).arg(QString(QCryptographicHash::hash(m_owner.toLatin1(), QCryptographicHash::Md5).toHex())));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   203
        sl.push_back("erdriven");
2874
3c7c2bf1ba38 A simple hat reservation mechanism. Can be worked around with a little effort, but to make it useful, you'd have to get everyone you played with to work around it too. Quite a bit of effort for a small reward feature.
nemo
parents: 2833
diff changeset
   204
    }
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   205
    else sl.push_back(QString("eaddteam %3 %1 %2").arg(m_color.rgb() & 0xffffff).arg(m_name).arg(playerHash));
606
9d800fdfd3bd Add ammostores in frontend, should help further ammostores implemetation
unc0rr
parents: 605
diff changeset
   206
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   207
    sl.push_back(QString("egrave " + m_grave));
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   208
    sl.push_back(QString("efort " + m_fort));
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   209
    sl.push_back(QString("evoicepack " + m_voicepack));
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   210
    sl.push_back(QString("eflag " + m_flag));
341
184230eb4151 - Store more team specific values in HWTeam
unc0rr
parents: 339
diff changeset
   211
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   212
    if (!m_isNetTeam)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   213
        for(int i = 0; i < BINDS_NUMBER; i++)
6024
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
   214
            if(!m_binds[i].strbind.isEmpty())
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
   215
                sl.push_back(QString("ebind " + m_binds[i].strbind + " " + m_binds[i].action));
341
184230eb4151 - Store more team specific values in HWTeam
unc0rr
parents: 339
diff changeset
   216
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   217
    for (int t = 0; t < m_numHedgehogs; t++)
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   218
    {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   219
      sl.push_back(QString("eaddhh %1 %2 %3")
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   220
               .arg(QString::number(m_difficulty),
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   221
                QString::number(InitHealth),
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   222
                m_hedgehogs[t].Name));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   223
      sl.push_back(QString("ehat %1")
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   224
               .arg(m_hedgehogs[t].Hat));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   225
    }
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2879
diff changeset
   226
    return sl;
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   227
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   228
352
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
   229
bool HWTeam::isNetTeam() const
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
   230
{
1325
c8994d47f41d Adding teams now works
unc0rr
parents: 1293
diff changeset
   231
  return m_isNetTeam;
352
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
   232
}
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
   233
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
   234
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   235
bool HWTeam::operator==(const HWTeam& t1) const {
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   236
  return m_name==t1.m_name;
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   237
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   238
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   239
bool HWTeam::operator<(const HWTeam& t1) const {
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   240
  return m_name<t1.m_name; // if names are equal - test if it is net team
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   241
}
1840
4747f0232b88 ttsmj2's random teams patch
unc0rr
parents: 1683
diff changeset
   242
4747f0232b88 ttsmj2's random teams patch
unc0rr
parents: 1683
diff changeset
   243
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   244
//// Methods for member inspection+modification ////
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   245
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   246
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   247
// name
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   248
QString HWTeam::name() const { return m_name; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   249
   void HWTeam::setName(const QString & name) { m_name = name; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   250
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   251
// single hedgehog
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   252
const HWHog & HWTeam::hedgehog(unsigned int idx) const { return m_hedgehogs[idx]; }
6024
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
   253
         void HWTeam::setHedgehog(unsigned int idx, HWHog hh) { m_hedgehogs[idx] = hh; }
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   254
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   255
// owner
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   256
QString HWTeam::owner() const { return m_owner; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   257
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   258
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   259
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   260
// difficulty
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   261
unsigned int HWTeam::difficulty() const { return m_difficulty; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   262
        void HWTeam::setDifficulty(unsigned int level) { m_difficulty = level; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   263
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   264
// color
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   265
QColor HWTeam::color() const { return m_color; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   266
  void HWTeam::setColor(const QColor & color) { m_color = color; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   267
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   268
6024
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
   269
// binds
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
   270
QString HWTeam::keyBind(unsigned int idx) const { return m_binds[idx].strbind; }
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
   271
   void HWTeam::bindKey(unsigned int idx, const QString & key) { m_binds[idx].strbind = key; }
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   272
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   273
// flag
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   274
void    HWTeam::setFlag(const QString & flag) { m_flag = flag; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   275
QString HWTeam::flag() const { return m_flag; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   276
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   277
// fort
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   278
void    HWTeam::setFort(const QString & fort) { m_fort = fort; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   279
QString HWTeam::fort() const { return m_fort; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   280
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   281
// grave
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   282
void HWTeam::setGrave(const QString & grave) { m_grave = grave; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   283
QString HWTeam::grave() const { return m_grave; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   284
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   285
// voicepack - getter/setter
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   286
void HWTeam::setVoicepack(const QString & voicepack) { m_voicepack = voicepack; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   287
QString HWTeam::voicepack() const { return m_voicepack; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   288
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   289
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   290
// campaignProgress - getter
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   291
unsigned int HWTeam::campaignProgress() const { return m_campaignProgress; };
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   292
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   293
// amount of hedgehogs
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   294
unsigned char HWTeam::numHedgehogs() const { return m_numHedgehogs; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   295
         void HWTeam::setNumHedgehogs(unsigned char num) { m_numHedgehogs = num; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   296
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   297
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   298
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   299
// rounds+wins - incrementors
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   300
void HWTeam::incRounds() { m_rounds++; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   301
void HWTeam::incWins() { m_wins++; }
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5907
diff changeset
   302