QTfrontend/hwconsts.cpp.in
author sheepluva
Tue, 21 Jan 2014 18:02:37 +0100
changeset 10036 3be36d2fdca6
parent 9998 736015b847e3
child 10074 66cab76eb56f
permissions -rw-r--r--
use new API for changing GameFlags
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
9998
736015b847e3 update copyright to 2014
sheepluva
parents: 9080
diff changeset
     3
 * Copyright (c) 2004-2014 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
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    16
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
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;
6737
ce5fbd98370f - Increase server version number due to rooms list protocol changes
unc0rr
parents: 6579
diff changeset
    40
int cMinServerVersion = 1;
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 );
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
    44
int cAmmoNumber = cDefaultAmmoStore->size() / 4;
2369
c3eb11f1ab3a Implement probability editor for weapon schemes (engine doesn't support that yet)
unc0rr
parents: 2177
diff changeset
    45
1967
213d368a002f Predefine some ammo schemes
unc0rr
parents: 1966
diff changeset
    46
QList< QPair<QString, QString> > cDefaultAmmos =
3971
5c82ee165ed5 minor stuff
koda
parents: 3963
diff changeset
    47
        QList< QPair<QString, QString> >()
5c82ee165ed5 minor stuff
koda
parents: 3963
diff changeset
    48
        << 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
    49
        << 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
    50
            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
    51
            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
    52
        << 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
    53
            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
    54
            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
    55
        << 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
    56
            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
    57
            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
    58
        << 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
    59
            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
    60
            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
    61
        << 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
    62
            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
    63
            AMMOLINE_MINES_DELAY AMMOLINE_MINES_CRATE ))
4231
f2eb9ac629e4 added two games modes and one weaponset
koda
parents: 4212
diff changeset
    64
        << 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
    65
            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
    66
            AMMOLINE_PORTALS_DELAY AMMOLINE_PORTALS_CRATE ))
8605
2865389fec96 add 'One of Everything' in the weaponsets, from nemo's idea
koda
parents: 8323
diff changeset
    67
        << qMakePair(QString("One of Everything"), QString(
2865389fec96 add 'One of Everything' in the weaponsets, from nemo's idea
koda
parents: 8323
diff changeset
    68
            AMMOLINE_ONEEVERY_QT AMMOLINE_ONEEVERY_PROB
2865389fec96 add 'One of Everything' in the weaponsets, from nemo's idea
koda
parents: 8323
diff changeset
    69
            AMMOLINE_ONEEVERY_DELAY AMMOLINE_ONEEVERY_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
    70
        ;
616
00928b3cf505 Use same team colors everywhere
unc0rr
parents: 608
diff changeset
    71
5201
7b9aa7aac336 * moved colours and default port from .cpp.in to .h
koda
parents: 5200
diff changeset
    72
unsigned int colors[] = HW_TEAMCOLOR_ARRAY;
654
1019b8fa8638 Finish asking host/port dialog implementation
unc0rr
parents: 616
diff changeset
    73
1019b8fa8638 Finish asking host/port dialog implementation
unc0rr
parents: 616
diff changeset
    74
QString * netHost = new QString();
5201
7b9aa7aac336 * moved colours and default port from .cpp.in to .h
koda
parents: 5200
diff changeset
    75
quint16 netPort = NETGAME_DEFAULT_PORT;
1415
6fbfee0e113a Allow build without net game server: introduce -DWITH_SERVER configuration parameter
unc0rr
parents: 1263
diff changeset
    76
6579
fc52f7c22c9b GCI task: season greetings
valnut
parents: 5289
diff changeset
    77
int season = SEASON_NONE;
fc52f7c22c9b GCI task: season greetings
valnut
parents: 5289
diff changeset
    78
int years_since_foundation = 0;