QTfrontend/hwconsts.cpp.in
author Wuzzy <Wuzzy2@mail.ru>
Thu, 15 Mar 2018 21:15:16 +0100
changeset 13221 02bf6902eeb0
parent 12258 41af2274953d
child 13486 4ef83bcb850b
permissions -rw-r--r--
Remove Qt SVG and Qt OpenGL as hard dependencies Qt SVG is not used in the frontend (no SVGs are rendered). Neither is Qt OpenGL used. Qt OpenGL is discouraged anyway.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     1
/*
1066
1f1b3686a2b0 Update copyright headers a bit
unc0rr
parents: 1021
diff changeset
     2
 * Hedgewars, a free turn based strategy game
11046
47a8c19ecb60 more copyright fixes
sheepluva
parents: 10599
diff changeset
     3
 * Copyright (c) 2004-2015 Andrey Korotaev <unC0Rr@gmail.com>
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     4
 *
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     5
 * This program is free software; you can redistribute it and/or modify
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     6
 * it under the terms of the GNU General Public License as published by
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     7
 * the Free Software Foundation; version 2 of the License
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     8
 *
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     9
 * This program is distributed in the hope that it will be useful,
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    12
 * GNU General Public License for more details.
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    13
 *
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    14
 * You should have received a copy of the GNU General Public License
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    15
 * 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: 10083
diff changeset
    16
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    17
 */
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    18
7130
fcab1fd02bc6 - Allow switching colors with mouse wheel
unc0rr
parents: 6958
diff changeset
    19
#include <QStandardItemModel>
fcab1fd02bc6 - Allow switching colors with mouse wheel
unc0rr
parents: 6958
diff changeset
    20
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    21
#include "hwconsts.h"
8608
50cc0131b109 move weapons line away from hwconsts.h so that modifying it doesn't needlessly recompile everything, introduce a way to try documenting which weapons each number represents
koda
parents: 8605
diff changeset
    22
#include "weapons.h"
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    23
8646
e31044b7fbba on linux assume datapath is always relative to cmake_install_prefix, unless you provide an absolute path; on win32/osx hardcode engine path to default installation prefixes (it gets overridden at runtime so it works even if you move the data folder)
koda
parents: 8636
diff changeset
    24
// cDataDir gets 'Data' appended later (in main.cpp)
e31044b7fbba on linux assume datapath is always relative to cmake_install_prefix, unless you provide an absolute path; on win32/osx hardcode engine path to default installation prefixes (it gets overridden at runtime so it works even if you move the data folder)
koda
parents: 8636
diff changeset
    25
QString * cDataDir = new QString("${HEDGEWARS_DATADIR}");
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    26
QString * cProtoVer = new QString("${HEDGEWARS_PROTO_VER}");
8090
38d9cc60b14c cleanup revision section, make hg launch tolerant to config errors, drop deprecated exec_prog for desktop configuration in favour of execute_process
koda
parents: 7258
diff changeset
    27
QString * cVersionString = new QString("${HEDGEWARS_VERSION}");
8650
18807b6302c8 version variables confom to naming convention
koda
parents: 8646
diff changeset
    28
QString * cRevisionString = new QString("${HEDGEWARS_REVISION}");
18807b6302c8 version variables confom to naming convention
koda
parents: 8646
diff changeset
    29
QString * cHashString = new QString("${HEDGEWARS_HASH}");
8613
82c649dfc7c3 split cVersionString into its three separate components (version, revision, hash) and apply the new values sensibly on the frontend (esp. title, info and feedback)
koda
parents: 8608
diff changeset
    30
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    31
8323
ab0b618bdf13 get executable directory at runtime rather than configure time
koda
parents: 8090
diff changeset
    32
QDir * bindir = new QDir();
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    33
QDir * cfgdir = new QDir();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    34
QDir * datadir = new QDir();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    35
3932
2fc211f60015 Engine:
smaxx
parents: 3876
diff changeset
    36
bool custom_config = false;
2fc211f60015 Engine:
smaxx
parents: 3876
diff changeset
    37
bool custom_data = false;
2fc211f60015 Engine:
smaxx
parents: 3876
diff changeset
    38
5200
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    39
int cMaxTeams = 8;
10074
66cab76eb56f Mutual authentication: client side
unc0rr
parents: 9998
diff changeset
    40
int cMinServerVersion = 3;
3865
0b1c426b035f Frontend:
smaxx
parents: 3836
diff changeset
    41
5200
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    42
QString * cDefaultAmmoStore = new QString( AMMOLINE_DEFAULT_QT AMMOLINE_DEFAULT_PROB
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    43
                                           AMMOLINE_DEFAULT_DELAY AMMOLINE_DEFAULT_CRATE );
11763
59e979b1408f Add empty weapons scheme (instead of default) when using “New” button
Wuzzy <almikes@aol.com>
parents: 11046
diff changeset
    44
QString * cEmptyAmmoStore =   new QString( AMMOLINE_EMPTY_QT AMMOLINE_EMPTY_PROB
59e979b1408f Add empty weapons scheme (instead of default) when using “New” button
Wuzzy <almikes@aol.com>
parents: 11046
diff changeset
    45
                                           AMMOLINE_EMPTY_DELAY AMMOLINE_EMPTY_CRATE );
2860
13a53315ae18 Awesome patch from TheException - adds editing of weapon delay and crate count. Tiy might want to tweak the crate graphic, could make be smaller or less overlappy.
nemo
parents: 2473
diff changeset
    46
int cAmmoNumber = cDefaultAmmoStore->size() / 4;
2369
c3eb11f1ab3a Implement probability editor for weapon schemes (engine doesn't support that yet)
unc0rr
parents: 2177
diff changeset
    47
1967
213d368a002f Predefine some ammo schemes
unc0rr
parents: 1966
diff changeset
    48
QList< QPair<QString, QString> > cDefaultAmmos =
3971
5c82ee165ed5 minor stuff
koda
parents: 3963
diff changeset
    49
        QList< QPair<QString, QString> >()
5c82ee165ed5 minor stuff
koda
parents: 3963
diff changeset
    50
        << qMakePair(QString("Default"), *cDefaultAmmoStore)
5200
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    51
        << qMakePair(QString("Crazy"),       QString(
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    52
            AMMOLINE_CRAZY_QT AMMOLINE_CRAZY_PROB
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    53
            AMMOLINE_CRAZY_DELAY AMMOLINE_CRAZY_CRATE ))
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    54
        << qMakePair(QString("Pro Mode"),    QString(
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    55
            AMMOLINE_PROMODE_QT AMMOLINE_PROMODE_PROB
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    56
            AMMOLINE_PROMODE_DELAY AMMOLINE_PROMODE_CRATE ))
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    57
        << qMakePair(QString("Shoppa"),      QString(
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    58
            AMMOLINE_SHOPPA_QT AMMOLINE_SHOPPA_PROB
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    59
            AMMOLINE_SHOPPA_DELAY AMMOLINE_SHOPPA_CRATE ))
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    60
        << qMakePair(QString("Clean Slate"), QString(
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    61
            AMMOLINE_CLEAN_QT AMMOLINE_CLEAN_PROB
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    62
            AMMOLINE_CLEAN_DELAY AMMOLINE_CLEAN_CRATE ))
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    63
        << qMakePair(QString("Minefield"),   QString(
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    64
            AMMOLINE_MINES_QT AMMOLINE_MINES_PROB
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    65
            AMMOLINE_MINES_DELAY AMMOLINE_MINES_CRATE ))
4231
f2eb9ac629e4 added two games modes and one weaponset
koda
parents: 4212
diff changeset
    66
        << qMakePair(QString("Thinking with Portals"), QString(
5200
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    67
            AMMOLINE_PORTALS_QT AMMOLINE_PORTALS_PROB
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    68
            AMMOLINE_PORTALS_DELAY AMMOLINE_PORTALS_CRATE ))
8605
2865389fec96 add 'One of Everything' in the weaponsets, from nemo's idea
koda
parents: 8323
diff changeset
    69
        << qMakePair(QString("One of Everything"), QString(
2865389fec96 add 'One of Everything' in the weaponsets, from nemo's idea
koda
parents: 8323
diff changeset
    70
            AMMOLINE_ONEEVERY_QT AMMOLINE_ONEEVERY_PROB
2865389fec96 add 'One of Everything' in the weaponsets, from nemo's idea
koda
parents: 8323
diff changeset
    71
            AMMOLINE_ONEEVERY_DELAY AMMOLINE_ONEEVERY_CRATE ))
10083
b20f9481e5cb Make highlander configurable using weapons, commit weaponset mimicking old values
nemo
parents: 10074
diff changeset
    72
        << qMakePair(QString("Highlander"), QString(
b20f9481e5cb Make highlander configurable using weapons, commit weaponset mimicking old values
nemo
parents: 10074
diff changeset
    73
            AMMOLINE_HIGHLANDER_QT AMMOLINE_HIGHLANDER_PROB
b20f9481e5cb Make highlander configurable using weapons, commit weaponset mimicking old values
nemo
parents: 10074
diff changeset
    74
            AMMOLINE_HIGHLANDER_DELAY AMMOLINE_HIGHLANDER_CRATE ))
12258
41af2274953d Add HedgeEditor schemes as recommended on https://hedgewars.org/HedgeEditor
Wuzzy <almikes@aol.com>
parents: 11811
diff changeset
    75
        << qMakePair(QString("Construction Mode"),   QString(
10549
6b08a29cadea Add scheme and weaponset for Construction Mode.
mikade <redgrinner@gmail.com>
parents: 10108
diff changeset
    76
            AMMOLINE_CONSTRUCTION_QT AMMOLINE_CONSTRUCTION_PROB
6b08a29cadea Add scheme and weaponset for Construction Mode.
mikade <redgrinner@gmail.com>
parents: 10108
diff changeset
    77
            AMMOLINE_CONSTRUCTION_DELAY AMMOLINE_CONSTRUCTION_CRATE ))
12258
41af2274953d Add HedgeEditor schemes as recommended on https://hedgewars.org/HedgeEditor
Wuzzy <almikes@aol.com>
parents: 11811
diff changeset
    78
        << qMakePair(QString("Shoppa Pro"), QString(
10599
918d6da025a6 weapon set: Shoppa Pro
sheepluva
parents: 10549
diff changeset
    79
            AMMOLINE_SHOPPAPRO_QT AMMOLINE_SHOPPAPRO_PROB
918d6da025a6 weapon set: Shoppa Pro
sheepluva
parents: 10549
diff changeset
    80
            AMMOLINE_SHOPPAPRO_DELAY AMMOLINE_SHOPPAPRO_CRATE ))
12258
41af2274953d Add HedgeEditor schemes as recommended on https://hedgewars.org/HedgeEditor
Wuzzy <almikes@aol.com>
parents: 11811
diff changeset
    81
        << qMakePair(QString("HedgeEditor"), QString(
41af2274953d Add HedgeEditor schemes as recommended on https://hedgewars.org/HedgeEditor
Wuzzy <almikes@aol.com>
parents: 11811
diff changeset
    82
            AMMOLINE_HEDGEEDITOR_QT AMMOLINE_HEDGEEDITOR_PROB
41af2274953d Add HedgeEditor schemes as recommended on https://hedgewars.org/HedgeEditor
Wuzzy <almikes@aol.com>
parents: 11811
diff changeset
    83
            AMMOLINE_HEDGEEDITOR_DELAY AMMOLINE_HEDGEEDITOR_CRATE ))
5200
7440fe992e73 * move ammo lines from .cpp.in to .h so that it is readable from the ios frontend (and who knows, maybe from other frontends as well)
koda
parents: 5049
diff changeset
    84
        ;
616
00928b3cf505 Use same team colors everywhere
unc0rr
parents: 608
diff changeset
    85
5201
7b9aa7aac336 * moved colours and default port from .cpp.in to .h
koda
parents: 5200
diff changeset
    86
unsigned int colors[] = HW_TEAMCOLOR_ARRAY;
654
1019b8fa8638 Finish asking host/port dialog implementation
unc0rr
parents: 616
diff changeset
    87
1019b8fa8638 Finish asking host/port dialog implementation
unc0rr
parents: 616
diff changeset
    88
QString * netHost = new QString();
5201
7b9aa7aac336 * moved colours and default port from .cpp.in to .h
koda
parents: 5200
diff changeset
    89
quint16 netPort = NETGAME_DEFAULT_PORT;
1415
6fbfee0e113a Allow build without net game server: introduce -DWITH_SERVER configuration parameter
unc0rr
parents: 1263
diff changeset
    90
6579
fc52f7c22c9b GCI task: season greetings
valnut
parents: 5289
diff changeset
    91
int season = SEASON_NONE;
fc52f7c22c9b GCI task: season greetings
valnut
parents: 5289
diff changeset
    92
int years_since_foundation = 0;