QTfrontend/util/namegen.h
author Wuzzy <almikes@aol.com>
Sat, 15 Apr 2017 04:28:00 +0200
changeset 12258 8e9603088f99
parent 12253 07f67ee424dc
child 12300 ac57d564efce
permissions -rw-r--r--
Make all hogs say Yessir taunt on their turn start (replaces revenge taunts) Rationale: The taunts Illgetyou, JustYouWait were fairly odd and almost always inapproriate to the situation as most voicepacks clearly assume these to be used for revenge only (e.g. “You'll gonna pay for that.” was played at turn start because of this.).
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1907
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
     1
/*
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
     2
 * Hedgewars, a free turn based strategy game
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
     3
 * Copyright (c) 2009 Martin Minarik <ttsmj@pokec.sk>
11046
47a8c19ecb60 more copyright fixes
sheepluva
parents: 10108
diff changeset
     4
 * Copyright (c) 2004-2015 Andrey Korotaev <unC0Rr@gmail.com>
1907
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
     5
 *
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
     6
 * This program is free software; you can redistribute it and/or modify
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
     7
 * it under the terms of the GNU General Public License as published by
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
     8
 * the Free Software Foundation; version 2 of the License
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
     9
 *
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    10
 * This program is distributed in the hope that it will be useful,
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    13
 * GNU General Public License for more details.
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    14
 *
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    15
 * You should have received a copy of the GNU General Public License
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    16
 * along with this program; if not, write to the Free Software
10108
c68cf030eded update FSF address. note: two sdl include files (by Sam Lantinga) still have the old FSF address in their copyright - but I ain't gonna touch their copyright headers
sheepluva
parents: 9998
diff changeset
    17
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
1907
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    18
 */
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    19
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    20
#ifndef NAMEGEN_H
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    21
#define NAMEGEN_H
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    22
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    23
#include <QString>
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    24
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    25
class HWForm;
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    26
class HWTeam;
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    27
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    28
class HWNamegen
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    29
{
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    30
    public:
12253
07f67ee424dc Add buttons to randomize hats and hog names only
Wuzzy <almikes@aol.com>
parents: 12252
diff changeset
    31
        enum RandomTeamMode
07f67ee424dc Add buttons to randomize hats and hog names only
Wuzzy <almikes@aol.com>
parents: 12252
diff changeset
    32
        {
07f67ee424dc Add buttons to randomize hats and hog names only
Wuzzy <almikes@aol.com>
parents: 12252
diff changeset
    33
            rtmEverything = 0,
07f67ee424dc Add buttons to randomize hats and hog names only
Wuzzy <almikes@aol.com>
parents: 12252
diff changeset
    34
            rtmHogNames = 1,
07f67ee424dc Add buttons to randomize hats and hog names only
Wuzzy <almikes@aol.com>
parents: 12252
diff changeset
    35
            rtmHats = 2
07f67ee424dc Add buttons to randomize hats and hog names only
Wuzzy <almikes@aol.com>
parents: 12252
diff changeset
    36
        };
1907
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    37
12250
5206f9a803d1 Allow to randomize team name, flag, grave, voice and fort seperately
Wuzzy <almikes@aol.com>
parents: 12249
diff changeset
    38
        static void teamRandomTeamName(HWTeam & team);
12249
45c83c88ac4b Refactor team name generator
Wuzzy <almikes@aol.com>
parents: 12247
diff changeset
    39
        static void teamRandomGrave(HWTeam & team);
45c83c88ac4b Refactor team name generator
Wuzzy <almikes@aol.com>
parents: 12247
diff changeset
    40
        static void teamRandomFort(HWTeam & team);
45c83c88ac4b Refactor team name generator
Wuzzy <almikes@aol.com>
parents: 12247
diff changeset
    41
        static void teamRandomFlag(HWTeam & team);
45c83c88ac4b Refactor team name generator
Wuzzy <almikes@aol.com>
parents: 12247
diff changeset
    42
        static void teamRandomVoice(HWTeam & team);
45c83c88ac4b Refactor team name generator
Wuzzy <almikes@aol.com>
parents: 12247
diff changeset
    43
        static void teamRandomHogName(HWTeam & team, const int HedgehogNumber);
12253
07f67ee424dc Add buttons to randomize hats and hog names only
Wuzzy <almikes@aol.com>
parents: 12252
diff changeset
    44
        static void teamRandomEverything(HWTeam & team, const enum RandomTeamMode mode);
07f67ee424dc Add buttons to randomize hats and hog names only
Wuzzy <almikes@aol.com>
parents: 12252
diff changeset
    45
        static void teamRandomHats(HWTeam & team);
12249
45c83c88ac4b Refactor team name generator
Wuzzy <almikes@aol.com>
parents: 12247
diff changeset
    46
45c83c88ac4b Refactor team name generator
Wuzzy <almikes@aol.com>
parents: 12247
diff changeset
    47
    private:
45c83c88ac4b Refactor team name generator
Wuzzy <almikes@aol.com>
parents: 12247
diff changeset
    48
        HWNamegen();
45c83c88ac4b Refactor team name generator
Wuzzy <almikes@aol.com>
parents: 12247
diff changeset
    49
12252
a6e0977be914 Fix non-matching team name when generating random teams
Wuzzy <almikes@aol.com>
parents: 12250
diff changeset
    50
        static QString getRandomTeamName(int kind);
12247
09010333c947 Randomize forts and graves in new teams
Wuzzy <almikes@aol.com>
parents: 11893
diff changeset
    51
        static QString getRandomGrave();
09010333c947 Randomize forts and graves in new teams
Wuzzy <almikes@aol.com>
parents: 11893
diff changeset
    52
        static QString getRandomFort();
09010333c947 Randomize forts and graves in new teams
Wuzzy <almikes@aol.com>
parents: 11893
diff changeset
    53
        static QString getRandomFlag();
09010333c947 Randomize forts and graves in new teams
Wuzzy <almikes@aol.com>
parents: 11893
diff changeset
    54
        static QString getRandomVoice();
1907
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    55
6024
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
    56
        static QList<QStringList> TypesTeamnames;
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
    57
        static QList<QStringList> TypesHatnames;
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
    58
        static bool typesAvailable;
5114
a05081bc2769 Improved random name generation (now a random fort and random grave is choosen
Jonathan@Jonathan-PC.fritz.box
parents: 4976
diff changeset
    59
6024
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
    60
        static bool loadTypes();
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
    61
        static QStringList dictContents(const QString filename);
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
    62
        static QStringList dictsForHat(const QString hatname);
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6015
diff changeset
    63
12249
45c83c88ac4b Refactor team name generator
Wuzzy <almikes@aol.com>
parents: 12247
diff changeset
    64
        static void teamRandomHogName(HWTeam & team, const int HedgehogNumber, const QStringList & dict);
1907
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    65
};
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    66
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    67
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    68
a104432e8301 Random team generator rework by ttsmj
unc0rr
parents:
diff changeset
    69
#endif