mirror of
https://github.com/vcmi/vcmi.git
synced 2024-12-24 22:14:36 +02:00
Support for hota victory conditions
This commit is contained in:
parent
a84666edf6
commit
d4728f78ce
@ -169,6 +169,15 @@
|
||||
"vcmi.randomMapTab.widgets.teamAlignmentsLabel" : "Team Alignments",
|
||||
"vcmi.randomMapTab.widgets.roadTypesLabel" : "Road Types",
|
||||
|
||||
// Custom victory conditions for H3 campaigns and HotA maps
|
||||
"vcmi.map.victoryCondition.daysPassed.toOthers" : "The enemy has managed to survive till this day. Victory is theirs!",
|
||||
"vcmi.map.victoryCondition.daysPassed.toSelf" : "Congratulations! You have managed to survive. Victory is yours!",
|
||||
"vcmi.map.victoryCondition.eliminateMonsters.toOthers" : "The enemy has defeated all of the monsters plaguing this land and claims victory!",
|
||||
"vcmi.map.victoryCondition.eliminateMonsters.toSelf" : "Congratulations! You have defeated all of the monsters plaguing this land and can claim victory!",
|
||||
"vcmi.map.victoryCondition.collectArtifacts.message" : "Acquire Three Artifacts"
|
||||
"vcmi.map.victoryCondition.angelicAlliance.toSelf" : "Congratulations! All your enemies have been defeated and you have Angelic Alliance! Victory is yours!"
|
||||
"vcmi.map.victoryCondition.angelicAlliance.message" : "Defeat All Enemies and create Angelic Alliance"
|
||||
|
||||
// few strings from WoG used by vcmi
|
||||
"vcmi.stackExperience.description" : "» S t a c k E x p e r i e n c e D e t a i l s «\n\nCreature Type ................... : %s\nExperience Rank ................. : %s (%i)\nExperience Points ............... : %i\nExperience Points to Next Rank .. : %i\nMaximum Experience per Battle ... : %i%% (%i)\nNumber of Creatures in stack .... : %i\nMaximum New Recruits\n without losing current Rank .... : %i\nExperience Multiplier ........... : %.2f\nUpgrade Multiplier .............. : %.2f\nExperience after Rank 10 ........ : %i\nMaximum New Recruits to remain at\n Rank 10 if at Maximum Experience : %i",
|
||||
"vcmi.stackExperience.rank.0" : "Basic",
|
||||
|
@ -31,22 +31,29 @@
|
||||
"defeatIconIndex" : 1,
|
||||
"defeatString" : "core.lcdesc.2",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 9, 64, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 13, 63, 0 ], "type" : 34 } ]
|
||||
]
|
||||
]
|
||||
[ "noneOf", [ "control", { "position" : [ 9, 64, 0 ], "type" : 34 } ] ]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf", [ "control", { "position" : [ 13, 63, 0 ], "type" : 34 } ] ]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"standardDefeat" : {
|
||||
"condition" : [ "daysWithoutTown", { "value" : 7 } ],
|
||||
@ -148,7 +155,7 @@
|
||||
}
|
||||
},
|
||||
"victoryIconIndex" : 0,
|
||||
"victoryString" : "Acquire sword, breastplate and shield"
|
||||
"victoryString" : "vcmi.map.victoryCondition.collectArtifacts.message"
|
||||
},
|
||||
"data/ab:3" : { // Maker of Sorrows
|
||||
"defeatIconIndex" : 1,
|
||||
@ -194,23 +201,47 @@
|
||||
"defeatIconIndex" : 1,
|
||||
"defeatString" : "core.lcdesc.2",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 7, 66, 0 ], "type" : 34 } ], // Catherine
|
||||
[ "control", { "position" : [ 18, 68, 0 ], "type" : 34 } ], // Roland
|
||||
[ "control", { "position" : [ 58, 12, 0 ], "type" : 34 } ] //Gelu
|
||||
]
|
||||
[ "control", { "position" : [ 7, 66, 0 ], "type" : 34 } ] // Catherine
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 18, 68, 0 ], "type" : 34 } ] // Roland
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive3" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 58, 12, 0 ], "type" : 34 } ] //Gelu
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"specialVictory" : {
|
||||
"condition" : [
|
||||
@ -240,23 +271,47 @@
|
||||
"defeatIconIndex" : 2,
|
||||
"defeatString" : "core.lcdesc.3",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 4, 3, 0 ], "type" : 34 } ], // Gelu
|
||||
[ "control", { "position" : [ 12, 63, 0 ], "type" : 34 } ], // Catherine
|
||||
[ "control", { "position" : [ 63, 51, 0 ], "type" : 34 } ] // Roland
|
||||
]
|
||||
[ "control", { "position" : [ 4, 3, 0 ], "type" : 34 } ] // Gelu
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 12, 63, 0 ], "type" : 34 } ] // Catherine
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive3" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 63, 51, 0 ], "type" : 34 } ] // Roland
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"specialDefeat" : {
|
||||
"condition" : [
|
||||
@ -494,24 +549,61 @@
|
||||
"defeatIconIndex" : 2,
|
||||
"defeatString" : "core.lcdesc.3",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 10, 59, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 4, 63, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 15, 63, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 10, 66, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 10, 59, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 4, 63, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive3" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 15, 63, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive4" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 10, 66, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"specialDefeat" : {
|
||||
"condition" : [
|
||||
@ -549,24 +641,61 @@
|
||||
"defeatIconIndex" : 1,
|
||||
"defeatString" : "core.lcdesc.2",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 94, 60, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 93, 51, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 85, 64, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [100, 63, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 94, 60, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 93, 51, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive3" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 85, 64, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive4" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [100, 63, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"standardDefeat" : {
|
||||
"condition" : [ "daysWithoutTown", { "value" : 7 } ],
|
||||
@ -592,24 +721,61 @@
|
||||
"defeatIconIndex" : 2,
|
||||
"defeatString" : "core.lcdesc.3",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 34, 38, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 32, 7, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 8, 63, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 65, 63, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 34, 38, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 32, 7, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive3" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 8, 63, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive4" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 65, 63, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"specialDefeat" : {
|
||||
"condition" : [
|
||||
@ -634,10 +800,10 @@
|
||||
"specialVictory" : {
|
||||
"condition" : [ "destroy", { "type" : 54} ],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"messageToSend" : "vcmi.map.victoryCondition.eliminateMonsters.toOthers",
|
||||
"type" : "victory"
|
||||
},
|
||||
"message" : "Congratulations! Area around your town is now secure!"
|
||||
"message" : "vcmi.map.victoryCondition.eliminateMonsters.toSelf"
|
||||
}
|
||||
},
|
||||
"victoryIconIndex" : 7,
|
||||
@ -730,10 +896,10 @@
|
||||
[ "destroy", { "type" : 54} ]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "You has been vanquished!",
|
||||
"messageToSend" : "vcmi.map.victoryCondition.eliminateMonsters.toOthers",
|
||||
"type" : "victory"
|
||||
},
|
||||
"message" : "Congratulations! You have defeated all of the monsters plaguing this land!"
|
||||
"message" : "vcmi.map.victoryCondition.eliminateMonsters.toSelf"
|
||||
}
|
||||
|
||||
},
|
||||
@ -819,10 +985,10 @@
|
||||
[ "daysPassed", { "value" : 112 } ]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"messageToSend" : "vcmi.map.victoryCondition.daysPassed.toOthers",
|
||||
"type" : "victory"
|
||||
},
|
||||
"message" : "Congratulations! You have survived long enough for help to arrive. Victory is yours!"
|
||||
"message" : "vcmi.map.victoryCondition.daysPassed.toSelf"
|
||||
},
|
||||
|
||||
},
|
||||
@ -833,22 +999,33 @@
|
||||
"defeatIconIndex" : 1,
|
||||
"defeatString" : "core.lcdesc.2",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 19, 60, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 17, 60, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 19, 60, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 17, 60, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"specialVictory" : {
|
||||
"condition" : [ "haveArtifact", { "type" : 54 } ],
|
||||
@ -874,22 +1051,33 @@
|
||||
"defeatIconIndex" : 1,
|
||||
"defeatString" : "core.lcdesc.2",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 25, 30, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 25, 30, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 25, 30, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 25, 30, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"specialVictory" : {
|
||||
"condition" : [
|
||||
@ -919,22 +1107,33 @@
|
||||
"defeatIconIndex" : 1,
|
||||
"defeatString" : "core.lcdesc.2",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 55, 17, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 53, 17, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 55, 17, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 53, 17, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"specialVictory" : {
|
||||
"condition" : [
|
||||
@ -1124,22 +1323,33 @@
|
||||
"defeatIconIndex" : 1,
|
||||
"defeatString" : "core.lcdesc.2",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 56, 54, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 65, 53, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 56, 54, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 65, 53, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"standardDefeat" : {
|
||||
"condition" : [ "daysWithoutTown", { "value" : 7 } ],
|
||||
@ -1165,22 +1375,33 @@
|
||||
"defeatIconIndex" : 1,
|
||||
"defeatString" : "core.lcdesc.2",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 65, 25, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 67, 25, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 65, 25, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 67, 25, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"standardDefeat" : {
|
||||
"condition" : [ "daysWithoutTown", { "value" : 7 } ],
|
||||
@ -1258,22 +1479,33 @@
|
||||
"defeatIconIndex" : 1,
|
||||
"defeatString" : "core.lcdesc.2",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 57, 12, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 25, 11, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 57, 12, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 25, 11, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"specialVictory" : {
|
||||
"condition" : [
|
||||
@ -1303,22 +1535,33 @@
|
||||
"defeatIconIndex" : 1,
|
||||
"defeatString" : "core.lcdesc.2",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 54, 6, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 13, 6, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 54, 6, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 13, 6, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"standardDefeat" : {
|
||||
"condition" : [ "daysWithoutTown", { "value" : 7 } ],
|
||||
@ -1344,22 +1587,33 @@
|
||||
"defeatIconIndex" : 1,
|
||||
"defeatString" : "core.lcdesc.2",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 34, 10, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 36, 10, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 34, 10, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 36, 10, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"specialVictory" : {
|
||||
"condition" : [
|
||||
@ -1389,22 +1643,33 @@
|
||||
"defeatIconIndex" : 3,
|
||||
"defeatString" : "core.lcdesc.0",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 21, 10, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 44, 9, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 21, 10, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 44, 9, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"specialVictory" : {
|
||||
"condition" : [
|
||||
@ -1430,28 +1695,39 @@
|
||||
}
|
||||
},
|
||||
"victoryIconIndex" : 0,
|
||||
"victoryString" : "Acquire Three Artifacts"
|
||||
"victoryString" : "vcmi.map.victoryCondition.collectArtifacts.message"
|
||||
},
|
||||
"data/final:9" : { // Barbarian Brothers
|
||||
"defeatIconIndex" : 3,
|
||||
"defeatString" : "core.lcdesc.0",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 66, 70, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 70, 66, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 66, 70, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 70, 66, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"specialVictory" : {
|
||||
"condition" : [
|
||||
@ -1477,30 +1753,67 @@
|
||||
}
|
||||
},
|
||||
"victoryIconIndex" : 0,
|
||||
"victoryString" : "Acquire Three Artifacts"
|
||||
"victoryString" : "vcmi.map.victoryCondition.collectArtifacts.message"
|
||||
},
|
||||
"data/final:10" : { // Union
|
||||
"defeatIconIndex" : 3,
|
||||
"defeatString" : "core.lcdesc.0",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 7, 13, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 9, 15, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 6, 103, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 9, 105, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 7, 13, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 9, 15, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive3" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 6, 103, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive4" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 9, 105, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"standardDefeat" : {
|
||||
"condition" : [ "daysWithoutTown", { "value" : 7 } ],
|
||||
@ -1521,34 +1834,71 @@
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "victory"
|
||||
},
|
||||
"message" : "Congratulations! All your enemies have been defeated and you have Angelic Alliance! Victory is yours!"
|
||||
"message" : "vcmi.map.victoryCondition.angelicAlliance.toSelf"
|
||||
}
|
||||
},
|
||||
"victoryIconIndex" : 11,
|
||||
"victoryString" : "Defeat All Enemies and create Angelic Alliance"
|
||||
"victoryString" : "vcmi.map.victoryCondition.angelicAlliance.message"
|
||||
},
|
||||
"data/final:11" : { // Fall of Sandro
|
||||
"defeatIconIndex" : 2,
|
||||
"defeatString" : "core.lcdesc.3",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroesMustSurvive1" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "allOf",
|
||||
[ "control", { "position" : [ 14, 53, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 21, 69, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 38, 59, 0 ], "type" : 34 } ],
|
||||
[ "control", { "position" : [ 66, 60, 0 ], "type" : 34 } ]
|
||||
]
|
||||
[ "control", { "position" : [ 14, 53, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "One of your heroes has suffered defeat - your quest is over!"
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive2" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 21, 69, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive3" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 38, 59, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"heroesMustSurvive4" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
[ "noneOf",
|
||||
[ "control", { "position" : [ 66, 60, 0 ], "type" : 34 } ]
|
||||
]
|
||||
],
|
||||
"effect" : {
|
||||
"messageToSend" : "core.genrltxt.5",
|
||||
"type" : "defeat"
|
||||
},
|
||||
"message" : "core.genrltxt.253"
|
||||
},
|
||||
"specialDefeat" : {
|
||||
"condition" : [
|
||||
@ -1586,7 +1936,7 @@
|
||||
"defeatIconIndex" : 2,
|
||||
"defeatString" : "core.lcdesc.3",
|
||||
"triggeredEvents" : {
|
||||
"heroesMustSurvive" : {
|
||||
"heroMustSurvive" : {
|
||||
"condition" : [
|
||||
"allOf",
|
||||
[ "isHuman", { "value" : 1 } ],
|
||||
|
@ -341,7 +341,6 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
specialVictory.description.clear(); // TODO: display in quest window
|
||||
|
||||
mapHeader->victoryIconIndex = static_cast<ui16>(vicCondition);
|
||||
mapHeader->victoryMessage.appendTextID(TextIdentifier("core.vcdesc", static_cast<size_t>(vicCondition) + 1).get());
|
||||
|
||||
bool allowNormalVictory = reader->readBool();
|
||||
bool appliesToAI = reader->readBool();
|
||||
@ -373,6 +372,8 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
specialVictory.effect.toOtherMessage.appendTextID("core.genrltxt.281");
|
||||
specialVictory.onFulfill.appendTextID("core.genrltxt.280");
|
||||
specialVictory.trigger = EventExpression(cond);
|
||||
|
||||
mapHeader->victoryMessage.appendTextID("core.vcdesc.1");
|
||||
break;
|
||||
}
|
||||
case EVictoryConditionType::GATHERTROOP:
|
||||
@ -384,6 +385,8 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
specialVictory.effect.toOtherMessage.appendTextID("core.genrltxt.277");
|
||||
specialVictory.onFulfill.appendTextID("core.genrltxt.6");
|
||||
specialVictory.trigger = EventExpression(cond);
|
||||
|
||||
mapHeader->victoryMessage.appendTextID("core.vcdesc.2");
|
||||
break;
|
||||
}
|
||||
case EVictoryConditionType::GATHERRESOURCE:
|
||||
@ -395,6 +398,8 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
specialVictory.effect.toOtherMessage.appendTextID("core.genrltxt.279");
|
||||
specialVictory.onFulfill.appendTextID("core.genrltxt.278");
|
||||
specialVictory.trigger = EventExpression(cond);
|
||||
|
||||
mapHeader->victoryMessage.appendTextID("core.vcdesc.3");
|
||||
break;
|
||||
}
|
||||
case EVictoryConditionType::BUILDCITY:
|
||||
@ -410,6 +415,8 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
specialVictory.effect.toOtherMessage.appendTextID("core.genrltxt.283");
|
||||
specialVictory.onFulfill.appendTextID("core.genrltxt.282");
|
||||
specialVictory.trigger = EventExpression(oper);
|
||||
|
||||
mapHeader->victoryMessage.appendTextID("core.vcdesc.4");
|
||||
break;
|
||||
}
|
||||
case EVictoryConditionType::BUILDGRAIL:
|
||||
@ -423,6 +430,8 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
specialVictory.effect.toOtherMessage.appendTextID("core.genrltxt.285");
|
||||
specialVictory.onFulfill.appendTextID("core.genrltxt.284");
|
||||
specialVictory.trigger = EventExpression(cond);
|
||||
|
||||
mapHeader->victoryMessage.appendTextID("core.vcdesc.5");
|
||||
break;
|
||||
}
|
||||
case EVictoryConditionType::BEATHERO:
|
||||
@ -434,6 +443,8 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
specialVictory.effect.toOtherMessage.appendTextID("core.genrltxt.253");
|
||||
specialVictory.onFulfill.appendTextID("core.genrltxt.252");
|
||||
specialVictory.trigger = EventExpression(cond);
|
||||
|
||||
mapHeader->victoryMessage.appendTextID("core.vcdesc.6");
|
||||
break;
|
||||
}
|
||||
case EVictoryConditionType::CAPTURECITY:
|
||||
@ -445,6 +456,8 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
specialVictory.effect.toOtherMessage.appendTextID("core.genrltxt.250");
|
||||
specialVictory.onFulfill.appendTextID("core.genrltxt.249");
|
||||
specialVictory.trigger = EventExpression(cond);
|
||||
|
||||
mapHeader->victoryMessage.appendTextID("core.vcdesc.7");
|
||||
break;
|
||||
}
|
||||
case EVictoryConditionType::BEATMONSTER:
|
||||
@ -456,6 +469,8 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
specialVictory.effect.toOtherMessage.appendTextID("core.genrltxt.287");
|
||||
specialVictory.onFulfill.appendTextID("core.genrltxt.286");
|
||||
specialVictory.trigger = EventExpression(cond);
|
||||
|
||||
mapHeader->victoryMessage.appendTextID("core.vcdesc.8");
|
||||
break;
|
||||
}
|
||||
case EVictoryConditionType::TAKEDWELLINGS:
|
||||
@ -467,6 +482,8 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
specialVictory.effect.toOtherMessage.appendTextID("core.genrltxt.289");
|
||||
specialVictory.onFulfill.appendTextID("core.genrltxt.288");
|
||||
specialVictory.trigger = EventExpression(oper);
|
||||
|
||||
mapHeader->victoryMessage.appendTextID("core.vcdesc.9");
|
||||
break;
|
||||
}
|
||||
case EVictoryConditionType::TAKEMINES:
|
||||
@ -477,6 +494,8 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
specialVictory.effect.toOtherMessage.appendTextID("core.genrltxt.291");
|
||||
specialVictory.onFulfill.appendTextID("core.genrltxt.290");
|
||||
specialVictory.trigger = EventExpression(cond);
|
||||
|
||||
mapHeader->victoryMessage.appendTextID("core.vcdesc.10");
|
||||
break;
|
||||
}
|
||||
case EVictoryConditionType::TRANSPORTITEM:
|
||||
@ -488,6 +507,8 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
specialVictory.effect.toOtherMessage.appendTextID("core.genrltxt.293");
|
||||
specialVictory.onFulfill.appendTextID("core.genrltxt.292");
|
||||
specialVictory.trigger = EventExpression(cond);
|
||||
|
||||
mapHeader->victoryMessage.appendTextID("core.vcdesc.11");
|
||||
break;
|
||||
}
|
||||
case EVictoryConditionType::HOTA_ELIMINATE_ALL_MONSTERS:
|
||||
@ -495,9 +516,12 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
EventCondition cond(EventCondition::DESTROY);
|
||||
cond.objectType = Obj::MONSTER;
|
||||
|
||||
specialVictory.effect.toOtherMessage.appendRawString("Defeat all monsters"); // Eliminate all monsters on the map
|
||||
specialVictory.onFulfill.appendRawString("You have defeated all of the monsters plaguing this land!");
|
||||
specialVictory.effect.toOtherMessage.appendTextID("vcmi.map.victoryCondition.eliminateMonsters.toOthers");
|
||||
specialVictory.onFulfill.appendTextID("vcmi.map.victoryCondition.eliminateMonsters.toSelf");
|
||||
specialVictory.trigger = EventExpression(cond);
|
||||
|
||||
mapHeader->victoryMessage.appendTextID("core.vcdesc.12");
|
||||
mapHeader->victoryIconIndex = 12;
|
||||
break;
|
||||
}
|
||||
case EVictoryConditionType::HOTA_SURVIVE_FOR_DAYS:
|
||||
@ -505,9 +529,12 @@ void CMapLoaderH3M::readVictoryLossConditions()
|
||||
EventCondition cond(EventCondition::DAYS_PASSED);
|
||||
cond.value = reader->readUInt32();
|
||||
|
||||
specialVictory.effect.toOtherMessage.appendRawString("Survive beyond a time limit"); // Survive by month %d, week %d, day %d.
|
||||
specialVictory.onFulfill.appendRawString("You have managed to survive!");
|
||||
specialVictory.effect.toOtherMessage.appendTextID("vcmi.map.victoryCondition.daysPassed.toOthers");
|
||||
specialVictory.onFulfill.appendTextID("vcmi.map.victoryCondition.daysPassed.toSelf");
|
||||
specialVictory.trigger = EventExpression(cond);
|
||||
|
||||
mapHeader->victoryMessage.appendTextID("core.vcdesc.13");
|
||||
mapHeader->victoryIconIndex = 13;
|
||||
break;
|
||||
}
|
||||
default:
|
||||
|
Loading…
Reference in New Issue
Block a user