QTfrontend/team.h
author koda
Thu, 17 Jun 2010 19:57:51 +0200
changeset 3513 f589230fa21b
parent 3381 f8800c44b3de
child 3758 80007c41c35e
permissions -rw-r--r--
now it's possible to select the scheme file in the ifrontendfix a type about loading an image (iphone file system IS case senstive) add rotation for iphone build too make the ifrontend work again with 3.0 sdk reworked openalbridge following most of an old implementation by Smaxx and making it more modular -- now sources are limited but the memory extension and cleanup is todo nil'd many variables in engine that were causing intialization problems

/*
 * Hedgewars, a free turn based strategy game
 * Copyright (c) 2005-2010 Andrey Korotaev <unC0Rr@gmail.com>
 * Copyright (c) 2007 Igor Ulyanov <iulyanov@gmail.com>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; version 2 of the License
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
 */

#ifndef TEAM_H
#define TEAM_H

#include <QColor>
#include <QString>
#include "binds.h"
#include "achievements.h"

class HWForm;
class GameUIConfig;

class HWTeamConstructException
{
};

struct HWHog
{
    QString Name;
    QString Hat;
    int Rounds, Kills, Deaths, Suicides;
};

class HWTeam
{
    public:
        HWTeam(const QString & teamname);
        HWTeam(const QStringList& strLst);
        HWTeam();

        bool isNetTeam() const;

        QString TeamName;
        QString Grave;
        QString Fort;
        QString Flag;
        QString Voicepack;
        QString Owner;
        int Rounds;
        int Wins;
        HWHog Hedgehogs[8];
        unsigned int AchievementProgress[MAX_ACHIEVEMENTS];
        unsigned int difficulty;
        BindAction binds[BINDS_NUMBER];

        unsigned char numHedgehogs;
        QColor teamColor;

        bool LoadFromFile();
        bool DeleteFile();
        bool SaveToFile();
        bool FileExists();
        void SetToPage(HWForm * hwform);
        void GetFromPage(HWForm * hwform);
        QStringList TeamGameConfig(quint32 InitHealth) const;

        bool operator==(const HWTeam& t1) const;
        bool operator<(const HWTeam& t1) const;
    private:
        bool m_isNetTeam;
        QString OldTeamName;

};

#endif