Moved the four-difficulty macros to core; wrote some new ones.

This commit is contained in:
Steven Panek 2011-09-12 08:28:15 +00:00
parent f2981582c0
commit 4fedbcece5
4 changed files with 61 additions and 67 deletions

View file

@ -11,6 +11,8 @@ Version 1.9.9+svn:
* Removed waypoints UI feature
* WML engine:
* Readded the liminal alignment
* Added four-difficulty versions of certain macros: QUANTITY4,
ON_DIFFICULTY4, TURNS4, GOLD4, INCOME4, and ATTACK_DEPTH4.
* Miscellaneous and bug fixes:
* Fixed compilation on all Debian architectures (Debian bug #636193)

View file

@ -65,36 +65,6 @@
[/clear_variable]
#enddef
#define QUANTITY4 NAME EASY_VALUE NORMAL_VALUE HARD_VALUE NIGHTMARE_VALUE
#ifdef EASY
{NAME}={EASY_VALUE}
#endif
#ifdef NORMAL
{NAME}={NORMAL_VALUE}
#endif
#ifdef HARD
{NAME}={HARD_VALUE}
#endif
#ifdef NIGHTMARE
{NAME}={NIGHTMARE_VALUE}
#endif
#enddef
#define TURNS4 EASY_AMOUNT NORMAL_AMOUNT HARD_AMOUNT NIGHTMARE_AMOUNT
{QUANTITY4 turns {EASY_AMOUNT} {NORMAL_AMOUNT} {HARD_AMOUNT} {NIGHTMARE_AMOUNT}}
#enddef
#define GOLD4 EASY_AMOUNT NORMAL_AMOUNT HARD_AMOUNT NIGHTMARE_AMOUNT
{QUANTITY4 gold {EASY_AMOUNT} {NORMAL_AMOUNT} {HARD_AMOUNT} {NIGHTMARE_AMOUNT}}
#enddef
#define INCOME4 EASY_AMOUNT NORMAL_AMOUNT HARD_AMOUNT NIGHTMARE_AMOUNT
{QUANTITY4 income {EASY_AMOUNT} {NORMAL_AMOUNT} {HARD_AMOUNT} {NIGHTMARE_AMOUNT}}
#enddef
#define SIDE_1
side=1
controller=human

View file

@ -30,43 +30,6 @@
[/if]
#enddef
## These macros support a fourth difficulty level, NIGHTMARE.
#macro to define a 'quantity' differently based on difficulty levels
#define QUANTITY4 NAME EASY_VALUE NORMAL_VALUE HARD_VALUE NIGHTMARE_VALUE
#ifdef EASY
{NAME}={EASY_VALUE}
#endif
#ifdef NORMAL
{NAME}={NORMAL_VALUE}
#endif
#ifdef HARD
{NAME}={HARD_VALUE}
#endif
#ifdef NIGHTMARE
{NAME}={NIGHTMARE_VALUE}
#endif
#enddef
#macro to define number of turns for different difficulty levels
#define TURNS4 EASY_AMOUNT NORMAL_AMOUNT HARD_AMOUNT NIGHTMARE_AMOUNT
{QUANTITY4 turns {EASY_AMOUNT} {NORMAL_AMOUNT} {HARD_AMOUNT} {NIGHTMARE_AMOUNT}}
#enddef
#macro which will let you go {GOLD w/x y z} to set
#the gold depending on newbie/easy/medium/hard - w/x/y/z
#define GOLD4 EASY_AMOUNT NORMAL_AMOUNT HARD_AMOUNT NIGHTMARE_AMOUNT
{QUANTITY4 gold {EASY_AMOUNT} {NORMAL_AMOUNT} {HARD_AMOUNT} {NIGHTMARE_AMOUNT}}
#enddef
#define INCOME4 EASY_AMOUNT NORMAL_AMOUNT HARD_AMOUNT NIGHTMARE_AMOUNT
{QUANTITY4 income {EASY_AMOUNT} {NORMAL_AMOUNT} {HARD_AMOUNT} {NIGHTMARE_AMOUNT}}
#enddef
#define STORY_PART_HAMEL SPEECH_STRING
{STORY_PART_SPEECH portraits/Hamel.png (_ "Hamel") {SPEECH_STRING} }
#enddef

View file

@ -18,6 +18,24 @@
#endif
#enddef
#define QUANTITY4 NAME EASY_VALUE NORMAL_VALUE HARD_VALUE NIGHTMARE_VALUE
#ifdef EASY
{NAME}={EASY_VALUE}
#endif
#ifdef NORMAL
{NAME}={NORMAL_VALUE}
#endif
#ifdef HARD
{NAME}={HARD_VALUE}
#endif
#ifdef NIGHTMARE
{NAME}={NIGHTMARE_VALUE}
#endif
#enddef
# No tab or space-based indentation for these macros to avoid trouble when these macros are used
# in the middle of a quoted string literal
#
@ -39,23 +57,60 @@
# wmlindent: stop ignoring
# wmlscope: prune ON_DIFFICULTY
# No tab or space-based indentation for these macros to avoid trouble when these macros are used
# in the middle of a quoted string literal
#
# wmlindent: start ignoring
# wmlscope: start conditionals
#ifdef EASY
#define ON_DIFFICULTY4 EASY_VALUE NORMAL_VALUE HARD_VALUE NIGHTMARE_VALUE
{EASY_VALUE}#enddef
#endif
#ifdef NORMAL
#define ON_DIFFICULTY4 EASY_VALUE NORMAL_VALUE HARD_VALUE NIGHTMARE_VALUE
{NORMAL_VALUE}#enddef
#endif
#ifdef HARD
#define ON_DIFFICULTY4 EASY_VALUE NORMAL_VALUE HARD_VALUE NIGHTMARE_VALUE
{HARD_VALUE}#enddef
#endif
#ifdef NIGHTMARE
#define ON_DIFFICULTY4 EASY_VALUE NORMAL_VALUE HARD_VALUE NIGHTMARE_VALUE
{NIGHTMARE_VALUE}#enddef
#endif
# wmlscope: stop conditionals
# wmlindent: stop ignoring
# wmlscope: prune ON_DIFFICULTY4
#define TURNS EASY_AMOUNT NORMAL_AMOUNT HARD_AMOUNT
# Macro to define number of turns for different difficulty levels.
{QUANTITY turns {EASY_AMOUNT} {NORMAL_AMOUNT} {HARD_AMOUNT}}
#enddef
#define TURNS4 EASY_AMOUNT NORMAL_AMOUNT HARD_AMOUNT NIGHTMARE_AMOUNT
{QUANTITY4 turns {EASY_AMOUNT} {NORMAL_AMOUNT} {HARD_AMOUNT} {NIGHTMARE_AMOUNT}}
#enddef
#define GOLD EASY_AMOUNT NORMAL_AMOUNT HARD_AMOUNT
# Macro which will let you say {GOLD x y z} to set
# starting gold depending on easy/medium/hard - x/y/z
{QUANTITY gold {EASY_AMOUNT} {NORMAL_AMOUNT} {HARD_AMOUNT}}
#enddef
#define GOLD4 EASY_AMOUNT NORMAL_AMOUNT HARD_AMOUNT NIGHTMARE_AMOUNT
{QUANTITY4 gold {EASY_AMOUNT} {NORMAL_AMOUNT} {HARD_AMOUNT} {NIGHTMARE_AMOUNT}}
#enddef
#define INCOME EASY_AMOUNT NORMAL_AMOUNT HARD_AMOUNT
# Macro which will let you say {GOLD x y z} to set
# per-turn income depending on easy/medium/hard - x/y/z
{QUANTITY income {EASY_AMOUNT} {NORMAL_AMOUNT} {HARD_AMOUNT}}
#enddef
#define INCOME4 EASY_AMOUNT NORMAL_AMOUNT HARD_AMOUNT NIGHTMARE_AMOUNT
{QUANTITY4 income {EASY_AMOUNT} {NORMAL_AMOUNT} {HARD_AMOUNT} {NIGHTMARE_AMOUNT}}
#enddef
#define NO_INCOME
# Used to specify when a side should not have any income
# every turn.
@ -68,6 +123,10 @@
{QUANTITY attack_depth {EASY_VALUE} {NORMAL_VALUE} {HARD_VALUE}}
#enddef
#define ATTACK_DEPTH4 EASY_VALUE NORMAL_VALUE HARD_VALUE NIGHTMARE_VALUE
{QUANTITY attack_depth {EASY_VALUE} {NORMAL_VALUE} {HARD_VALUE} {NIGHTMARE_VALUE}}
#enddef
#define NO_SCOUTS
# Macro to make an AI team not recruit scouts.
villages_per_scout=0