DiD: add new secret scenario
This commit is contained in:
parent
fa938c9fb1
commit
60a5d3a9b7
10 changed files with 1499 additions and 214 deletions
|
@ -6,7 +6,8 @@
|
|||
local skippable_actions = {
|
||||
"animate_unit",
|
||||
"sound",
|
||||
"delay"
|
||||
"delay",
|
||||
"screen_fade"
|
||||
}
|
||||
|
||||
local skip_actions = {}
|
||||
|
|
31
data/campaigns/Descent_Into_Darkness/maps/11_Squidville.map
Normal file
31
data/campaigns/Descent_Into_Darkness/maps/11_Squidville.map
Normal file
|
@ -0,0 +1,31 @@
|
|||
Xu, Xu, Xu, Xu, Xu, Xu, Wwf, Wog, Wwf, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Xu, Wwf, Wwf, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Wwg^Ewl, Wwg, 1 Wwf, Wwf, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Wwg^Wkf, Wwg, Wwf, Xu, Xu, Xu, Xu, Xu, Wwf^Wkf, Wwf, Wwg^Ewl, Ww^Vm, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Wwf, Wwg, Wwg, Xu, Xu, Xu, Xu, Xu, Wwf^Vm, Wwf, Wwg^Ewl, Wwg^Ewl, Wwf^Wkf, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Wwf, Wwg, Wwf, Wwf, Xu, Xu, Xu, Xu, Xu, Wwrg, Wwg^Ewl, Wwg, Wwf, Wwg^Wkf, Wwf, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Wwf, Wwg, Wwg, Xu, Xu, Xu, Xu, Xu, Wog, Wwg, Wwg^Ewl, Xu, Xu, Wwf, Wwf, Wwg, Wwg, Wwg, Wwg, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Wwf, Wwg, Wwf, Wwf, Wwf, Xu, Wwg, Wog, Wog, Wwg, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Wog, Wwg, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Wwg, Wwg, Wwg, Wwg, Wog, Wog, Xu, Wog, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Wog, Wwg, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Xu, Xu, Wog, Wog, Wog, Wog, Wog, Wog, Xu, Xu, Xu, Xu, Xu, Wwg, Wwg, Wog, Wog, Wwg^Qhh, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Xu, Xu, Wwg, Xu, Wog, Wog, Xu, Xu, Wog, Wwg^Qhh, Wwg^Qhh, Wwg^Qhh, Wog, Wog, Wog, Wwg^Qhh, Wwg^Qhh, Wwg^Qhh, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Wog, Wwg, Xu, Xu, Xu, Wwg^Qhh, Wwg^Qhh, Xu, Wog, Wog, Wog, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Xu, Wwg, Xu, Wwg, Wwg, Wwg^Vm, Xu, Xu, Xu, Xu, Xu, Xu, Wwg, Wog, Xu, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Xu, Wwg, Wwg, Wwg, Wwg^Wkf, Xu, Xu, Xu, Xu, Wwg^Wkf, Xu, Xu, Wwg, Wwg, Wog, Wwg, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Wog, Wwg, Xu, Xu, Xu, Wwg, Wwrg, Xu, Wwg^Wkf, Wwg^Vm, Wwrg, Wwg, Wwg, Wwg, Wwg, Wwg, Wwg^Vm, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Wog, Wog^Vm, Wog, Xu, Xu, Xu, Xu, Wwrg, Wwg, Wwg, Wwg^Wkf, Wwrg, Wwrg, Wwrg, Wwg^Ewl, Wwg, Wwrg, Wwg^Wkf, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Wog^Qhu, Wog^Qhu, Wog, Wog, Wog, Wog, Wwg, Xu, Wwg, Wwg^Vm, Wwg, Wwrg, Wwrg, Wwrg, Wwrg, Wwg^Ewl, Wwrg, Wwrg, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Wog^Qhu, Wog^Qhu, Wog^Qhu, Wog, Wog, Wog, Wog, Wwg, Wog, Wog, Wwg, Wwg^Ewl, Wwrg, Wwrg, Wwg, Wwg, Wwg^Wkf, Xu, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Wog^Qhu, Wog^Qhu, Wog, Wog^Vm, Wog, Wog, Wog, Wog, Wwg, Wwrg, Wwrg, Wwrg, Wwrg, Wwg, Wwg^Vm, Xu, Xu, Xu, Xu, Xu, Xu, Wwf
|
||||
Xu, Xu, Xu, Wog^Qhu, Wog^Qhu, Wog^Qhu, Wog^Wkf, Wog, Wog, Wog, Wog, Wwg, Wwg, 2 Wwg^Vm, Wwg^Wkf, Wwg, Wwrg, Wwg, Xu, Xu, Xu, Xu, Xu, Wwf, Wwg
|
||||
Xu, Xu, Xu, Wog^Qhu, Wog^Qhu, Wog^Qhu, Wog, Wog, Wwg, Wwg, Wwg, Wwg, Wwg^Vm, Wwg, Wwg^Wkf, Wwrg, Wwrg, Wwg^Ewl, Wwg, Wwg, Wwg, Wwf, Wwf, Wwg, Wwg
|
||||
Xu, Xu, Xu, Wog^Vm, Wog, Wog, Wog, Wog, Wwg, Wwg, Wwg^Ewl, Wwg, Wwg, Wwg^Wkf, Sm, Wwrg, Xu, Wwrg, Xu, Sm, Sm, Sm, Xu, Wwg, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Wog^Vm, Wog, Wog, Wog, Wwg, Xu, Wwrg, Wwg^Wkf, Wwrg, Sm^Em, Sm, Xu, Xu, Xu, Xu, Xu, Ss, Sm, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Xu, Wog, Wog, Wwg, Wwg, Xu, Xu, Xu, Wwrg, Wwg^Ewl, Ss, Ss^Em, Xu, Xu, Xu, Xu, Ss, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Xu, Xu, Wwg, Wwg, Xu, Xu, Xu, Xu, Wwf, Wwrg, Sm^Emf, Sm, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Xu, Xu, Wwg, Wog, Wwg, Wog, Xu, Xu, Xu, Xu, Wwg, Wwf^Edb, Sm^Edb, Ss^Edb, Tb, Tb, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Wwg, Wog, Xu, Wog, Wog, Xu, Xu, Wwg^Ewl, Wwf^Em, Sm^Edb, Tb^Qhu, Tb^Qhu, Tb^Tf, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Wwg, Wwg, Wog, Wog, Wog, Xu, Xu, Xu, Sm, Sm^Qhu, Ss^Qhu, Tb^Qhu, Tb, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xu, Wwg^Ewl, Wwg, Wwg, Xu, Wog, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Ss, Sm^Edb, Tb^Qhu, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Wwg, Wwg^Ewl, Wwg, Wwg^Ewl, Wwg, Wog, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Sm, Xu, Ss^Vhs, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Wwg, Wwg, Wwg, Xu, Xu, Xu, Xu, Xu, Xu, Wog, Xu, Xu, Xu, Wog, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu
|
|
@ -4250,6 +4250,7 @@ And the tongue of fire begets ashen repose.</i>"
|
|||
{CLEAR_VARIABLE runes_activated}
|
||||
|
||||
{VARIABLE timesForever 0}
|
||||
{VARIABLE squidVille 0}
|
||||
{VARIABLE metInky 0}
|
||||
{VARIABLE reflectionPool 0}
|
||||
[/event]
|
||||
|
|
|
@ -18,88 +18,93 @@
|
|||
[story]
|
||||
# a bit of extra text for the first round
|
||||
[if]
|
||||
{VARIABLE_CONDITIONAL timesForever numerical_equals 0}
|
||||
{VARIABLE_CONDITIONAL squidVille not_equals 1}
|
||||
[then]
|
||||
[part]
|
||||
music=transience.ogg
|
||||
story= _ "Years pass. Every summer, by the time the mountainous paths and high passes shed their wintry gowns of snow, the lich sends his soldiers to attack the orcs, removing all human, elven, and dwarven patrols that impede them. Every year, the undead inflict some damage before being repelled."
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "The lich sometimes wonders if his endeavors are naught but a fruitless crusade, but then again, so what? Life, unlife, death... nothing has ever given his existence meaning. And yet, he still persists? For what?"
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "<i>Reason and purpose...</i>"
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "He needs none. Philosophy only begets misery. Violence and savagery have always been the essence of his existence, a conviction that he has only embraced more wholly in undeath. Better to simply kill without deliberation, without consideration. He has never been one for regrets."
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "Rumors circulate of a lich who preys on scouting patrols. A hero, gathering his loyal troops to him, decides to put an end to the evil."
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[/then]
|
||||
[/if]
|
||||
# These if statements are before the prestart event, so are off-by-one compared to the other checks of timesForever
|
||||
[if]
|
||||
{VARIABLE_CONDITIONAL timesForever numerical_equals 1}
|
||||
[then]
|
||||
[part]
|
||||
music=transience.ogg
|
||||
story= _ "Mal Keshar continues to study the book and re-reads the final entry."
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
# po: This text comes from the epilogue of Secrets of the Ancients, edited to avoid revealing the name of the campaign or the names of the protagonists
|
||||
story = _"<i>“We prevailed today on the field, but our victory did not please me. I realize now... the world is not ready for our knowledge. They cannot understand that we have conquered that primordial fear: death. Instead, as they look upon us, judgment of our appearance drives them to ignorant terror. I give up on all of them. [...] In some future time, less conservative attitudes may dominate, and our knowledge can be put to good use. I can certainly afford to wait. In the meantime, we are doing what we can to hasten that day.”</i>"
|
||||
{STORYTXT_BACKGROUND book.webp}
|
||||
[/part]
|
||||
[part]
|
||||
# po: More text from the epilogue of Secrets of the Ancients
|
||||
story= _ "<i>“As for me, I will make my journal conspicuous on this battlefield. I suspect that most will fear it enough to try to destroy it, but I have placed several wards on my journal to protect it. This way, it should survive long enough to make its way into the hands of someone more open-minded. Tath, in particular, is home to many mages. It only takes one who is willing to learn...”</i>"
|
||||
{STORYTXT_BACKGROUND book.webp}
|
||||
[/part]
|
||||
[/then]
|
||||
[/if]
|
||||
[if]
|
||||
{VARIABLE_CONDITIONAL timesForever numerical_equals 2}
|
||||
[then]
|
||||
[part]
|
||||
# po: This text comes from the epilogue of Secrets of the Ancients, edited to avoid revealing the name of the campaign or the names of the protagonists
|
||||
music=transience.ogg
|
||||
story = _"<i>“We prevailed today on the field, but our victory did not please me. I realize now... the world is not ready for our knowledge. They cannot understand that we have conquered that primordial fear: death. Instead, as they look upon us, judgment of our appearance drives them to ignorant terror. I give up on all of them. [...] In some future time, less conservative attitudes may dominate, and our knowledge can be put to good use. I can certainly afford to wait. In the meantime, we are doing what we can to hasten that day.”</i>"
|
||||
{STORYTXT_BACKGROUND book.webp}
|
||||
[/part]
|
||||
[part]
|
||||
# po: More text from the epilogue of Secrets of the Ancients
|
||||
story= _ "<i>“As for me, I will make my journal conspicuous on this battlefield. I suspect that most will fear it enough to try to destroy it, but I have placed several wards on my journal to protect it. This way, it should survive long enough to make its way into the hands of someone more open-minded. Tath, in particular, is home to many mages. It only takes one who is willing to learn...”</i>"
|
||||
{STORYTXT_BACKGROUND book.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "The final entry gnaws at Mal Keshar. While he had been Darken Volk’s pawn, both of them were being used as pawns by the author of the book. Has his whole existence been nothing more than that of a puppet?"
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "Still, despite his misgivings about being manipulated, he feels that he can learn something from the book. Orcs had only ever been half of the story — the other had been his own people being unable to accept his use of dark magic. But, if he allowed a foolish hero to take a copy of the book, would others eventually follow in his footsteps? If enough people began to view necromancy as merely another magical art, could it eventually be accepted in society?"
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[/then]
|
||||
[/if]
|
||||
[if]
|
||||
{VARIABLE_CONDITIONAL timesForever greater_than 2}
|
||||
[then]
|
||||
[part]
|
||||
music=transience.ogg
|
||||
story= _ "The book still sits on a dusty shelf in Mal Keshar’s keep, untended and untouched, but constantly plaguing his mind."
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "If he allowed a foolish hero to take a copy of the book, would others eventually follow in his footsteps? Would the author’s plan actually work, or would people continue to view necromancy as only a corrupting power? One voice tells him that being accepted by society should not be of any concern to him. Another says that it would not hurt to try. He does not come to any conclusions, but a slightly embellished copy of the tome sits there in his lair, waiting to be taken."
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[if]
|
||||
{VARIABLE_CONDITIONAL timesForever numerical_equals 0}
|
||||
[then]
|
||||
[part]
|
||||
music=transience.ogg
|
||||
story= _ "Years pass. Every summer, by the time the mountainous paths and high passes shed their wintry gowns of snow, the lich sends his soldiers to attack the orcs, removing all human, elven, and dwarven patrols that impede them. Every year, the undead inflict some damage before being repelled."
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "The lich sometimes wonders if his endeavors are naught but a fruitless crusade, but then again, so what? Life, unlife, death... nothing has ever given his existence meaning. And yet, he still persists? For what?"
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "<i>Reason and purpose...</i>"
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "He needs none. Philosophy only begets misery. Violence and savagery have always been the essence of his existence, a conviction that he has only embraced more wholly in undeath. Better to simply kill without deliberation, without consideration. He has never been one for regrets."
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "Rumors circulate of a lich who preys on scouting patrols. A hero, gathering his loyal troops to him, decides to put an end to the evil."
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[/then]
|
||||
[/if]
|
||||
# These if statements are before the prestart event, so are off-by-one compared to the other checks of timesForever
|
||||
[if]
|
||||
{VARIABLE_CONDITIONAL timesForever numerical_equals 1}
|
||||
[then]
|
||||
[part]
|
||||
music=transience.ogg
|
||||
story= _ "Mal Keshar continues to study the book and re-reads the final entry."
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
# po: This text comes from the epilogue of Secrets of the Ancients, edited to avoid revealing the name of the campaign or the names of the protagonists
|
||||
story = _"<i>“We prevailed today on the field, but our victory did not please me. I realize now... the world is not ready for our knowledge. They cannot understand that we have conquered that primordial fear: death. Instead, as they look upon us, judgment of our appearance drives them to ignorant terror. I give up on all of them. [...] In some future time, less conservative attitudes may dominate, and our knowledge can be put to good use. I can certainly afford to wait. In the meantime, we are doing what we can to hasten that day.”</i>"
|
||||
{STORYTXT_BACKGROUND book.webp}
|
||||
[/part]
|
||||
[part]
|
||||
# po: More text from the epilogue of Secrets of the Ancients
|
||||
story= _ "<i>“As for me, I will make my journal conspicuous on this battlefield. I suspect that most will fear it enough to try to destroy it, but I have placed several wards on my journal to protect it. This way, it should survive long enough to make its way into the hands of someone more open-minded. Tath, in particular, is home to many mages. It only takes one who is willing to learn...”</i>"
|
||||
{STORYTXT_BACKGROUND book.webp}
|
||||
[/part]
|
||||
[/then]
|
||||
[/if]
|
||||
[if]
|
||||
{VARIABLE_CONDITIONAL timesForever numerical_equals 2}
|
||||
[then]
|
||||
[part]
|
||||
# po: This text comes from the epilogue of Secrets of the Ancients, edited to avoid revealing the name of the campaign or the names of the protagonists
|
||||
music=transience.ogg
|
||||
story = _"<i>“We prevailed today on the field, but our victory did not please me. I realize now... the world is not ready for our knowledge. They cannot understand that we have conquered that primordial fear: death. Instead, as they look upon us, judgment of our appearance drives them to ignorant terror. I give up on all of them. [...] In some future time, less conservative attitudes may dominate, and our knowledge can be put to good use. I can certainly afford to wait. In the meantime, we are doing what we can to hasten that day.”</i>"
|
||||
{STORYTXT_BACKGROUND book.webp}
|
||||
[/part]
|
||||
[part]
|
||||
# po: More text from the epilogue of Secrets of the Ancients
|
||||
story= _ "<i>“As for me, I will make my journal conspicuous on this battlefield. I suspect that most will fear it enough to try to destroy it, but I have placed several wards on my journal to protect it. This way, it should survive long enough to make its way into the hands of someone more open-minded. Tath, in particular, is home to many mages. It only takes one who is willing to learn...”</i>"
|
||||
{STORYTXT_BACKGROUND book.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "The final entry gnaws at Mal Keshar. While he had been Darken Volk’s pawn, both of them were being used as pawns by the author of the book. Has his whole existence been nothing more than that of a puppet?"
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "Still, despite his misgivings about being manipulated, he feels that he can learn something from the book. Orcs had only ever been half of the story — the other had been his own people being unable to accept his use of dark magic. But, if he allowed a foolish hero to take a copy of the book, would others eventually follow in his footsteps? If enough people began to view necromancy as merely another magical art, could it eventually be accepted in society?"
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[/then]
|
||||
[/if]
|
||||
[if]
|
||||
{VARIABLE_CONDITIONAL timesForever greater_than 2}
|
||||
[then]
|
||||
[part]
|
||||
music=transience.ogg
|
||||
story= _ "The book still sits on a dusty shelf in Mal Keshar’s keep, untended and untouched, but constantly plaguing his mind."
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[part]
|
||||
story= _ "If he allowed a foolish hero to take a copy of the book, would others eventually follow in his footsteps? Would the author’s plan actually work, or would people continue to view necromancy as only a corrupting power? One voice tells him that being accepted by society should not be of any concern to him. Another says that it would not hurt to try. He does not come to any conclusions, but a slightly embellished copy of the tome sits there in his lair, waiting to be taken."
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[/then]
|
||||
[/if]
|
||||
[/then]
|
||||
[/if]
|
||||
[/story]
|
||||
|
@ -198,6 +203,7 @@
|
|||
{DID_SOUL_EATER1}
|
||||
{DID_SOUL_EATER2}
|
||||
{DID_SOUL_EATER3}
|
||||
{DID_STARVING}
|
||||
|
||||
[event]
|
||||
name=prestart
|
||||
|
@ -951,143 +957,163 @@
|
|||
[event]
|
||||
name=start
|
||||
|
||||
# Additional dialog depending on how many times the scenario has been played
|
||||
[switch]
|
||||
variable=timesForever
|
||||
[case]
|
||||
value=1
|
||||
# no additional dialog
|
||||
[/case]
|
||||
[case]
|
||||
value=2
|
||||
[if]
|
||||
{VARIABLE_CONDITIONAL squidVille equals 1}
|
||||
[then]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "I will destroy you like the last foolish hero who challenged me."
|
||||
message= _ "That was quite the nightmare..."
|
||||
[/message]
|
||||
[/case]
|
||||
[case]
|
||||
value=3
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Another foolish hero? Seriously?"
|
||||
message= _ "...unless it was not one? No. No no no. I don’t even want to think about that."
|
||||
[/message]
|
||||
[/case]
|
||||
[case]
|
||||
value=4
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Is there an endless supply of foolish heroes with death wishes? Honestly, where do you all come from?"
|
||||
message= _ "I need to go slaughter some foolish heroes to purge that from my mind."
|
||||
[/message]
|
||||
[/case]
|
||||
{VARIABLE squidVille 2}
|
||||
[/then]
|
||||
[else]
|
||||
# 5 and up
|
||||
{RANDOM 1..4}
|
||||
# Additional dialog depending on how many times the scenario has been played
|
||||
[switch]
|
||||
variable=random
|
||||
variable=timesForever
|
||||
[case]
|
||||
value=1
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Am I doomed to fight foolish heroes forever?"
|
||||
[/message]
|
||||
# no additional dialog
|
||||
[/case]
|
||||
[case]
|
||||
value=2
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "How long is this going to keep happening?"
|
||||
message= _ "I will destroy you like the last foolish hero who challenged me."
|
||||
[/message]
|
||||
[/case]
|
||||
[case]
|
||||
value=3
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "..."
|
||||
message= _ "Another foolish hero? Seriously?"
|
||||
[/message]
|
||||
[/case]
|
||||
[case]
|
||||
value=4
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Is there an endless supply of foolish heroes with death wishes? Honestly, where do you all come from?"
|
||||
[/message]
|
||||
[/case]
|
||||
[else]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "At this point, I would be more surprised if these foolish heroes stopped showing up."
|
||||
[/message]
|
||||
# 5 and up
|
||||
{RANDOM 1..4}
|
||||
[switch]
|
||||
variable=random
|
||||
[case]
|
||||
value=1
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Am I doomed to fight foolish heroes forever?"
|
||||
[/message]
|
||||
[/case]
|
||||
[case]
|
||||
value=2
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "How long is this going to keep happening?"
|
||||
[/message]
|
||||
[/case]
|
||||
[case]
|
||||
value=3
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "..."
|
||||
[/message]
|
||||
[/case]
|
||||
[else]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "At this point, I would be more surprised if these foolish heroes stopped showing up."
|
||||
[/message]
|
||||
[/else]
|
||||
[/switch]
|
||||
{CLEAR_VARIABLE random}
|
||||
[/else]
|
||||
[/switch]
|
||||
{CLEAR_VARIABLE random}
|
||||
|
||||
[switch]
|
||||
variable=randomHero
|
||||
[case]
|
||||
value=human
|
||||
[message]
|
||||
speaker=Foolish Hero
|
||||
message= _ "Your doom is at hand, lich! It is nigh time you answered for your crimes against humanity!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
# po: cityfolk - just a person from the city, e.g. Weldyn
|
||||
message= _ "Narrow-minded and obtuse, as one would expect of cityfolk. Go back to your manors and taverns before I decide to kill you."
|
||||
[/message]
|
||||
[/case]
|
||||
|
||||
[case]
|
||||
value=bandit
|
||||
[message]
|
||||
speaker=Foolish Hero
|
||||
message= _ "You have preyed on too many of my men. Our territory will be much more secure without your undead pestering us."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Not even real soldiers. How meaningless."
|
||||
[/message]
|
||||
[/case]
|
||||
|
||||
[case]
|
||||
value=elf
|
||||
[message]
|
||||
speaker=Foolish Hero
|
||||
message= _ "We have finally found you, lich! Long have we heard of your abominable deeds, ensnaring the living with your dark sorceries and molding them into your slaves. Your wretched unlife ends here!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Life or death, it is all the same. There are always those who try to kill me. Ever do they fail."
|
||||
[/message]
|
||||
[/case]
|
||||
|
||||
[case]
|
||||
value=dwarf
|
||||
[message]
|
||||
speaker=Foolish Hero
|
||||
# po: written with a dwarvish accent - regular english would be "it's been along time since I've smashed some undead. You've got plenty of bones for my hammer to break"
|
||||
message= _ "Been a long time since I’ve smashed me some undead. Ye gots ye plenty o’ bones for me hammer ta break."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "And it has been some time since I’ve had a supply of dwarven corpses to work with. I suppose I can put your hammers to good use in the mines."
|
||||
[/message]
|
||||
[/case]
|
||||
|
||||
[case]
|
||||
value=orc
|
||||
|
||||
{PLACE_IMAGE scenery/whitefang-flag.png 20 4}
|
||||
|
||||
[message]
|
||||
speaker=Foolish Hero
|
||||
message= _ "I’ve finally found your lair, lich! You have attacked my tribe and wreaked havoc on our homes for many years. You slew my father and turned his body into one of your nasty creations. With your death, your annoying minions will pester us no longer!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "The Whitefang Orcs! It is you who despoiled my motherland and razed my home. It is you who forced me to resort to necromancy to protect myself. It is you who ended my mortal life and forced me to become a lich. And you desire vengeance? Hah! The irony of this would be hysterical if I could still feel such an emotion."
|
||||
[/message]
|
||||
[/case]
|
||||
[/switch]
|
||||
[/else]
|
||||
[/switch]
|
||||
|
||||
[switch]
|
||||
variable=randomHero
|
||||
[case]
|
||||
value=human
|
||||
[message]
|
||||
speaker=Foolish Hero
|
||||
message= _ "Your doom is at hand, lich! It is nigh time you answered for your crimes against humanity!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
# po: cityfolk - just a person from the city, e.g. Weldyn
|
||||
message= _ "Narrow-minded and obtuse, as one would expect of cityfolk. Go back to your manors and taverns before I decide to kill you."
|
||||
[/message]
|
||||
[/case]
|
||||
|
||||
[case]
|
||||
value=bandit
|
||||
[message]
|
||||
speaker=Foolish Hero
|
||||
message= _ "You have preyed on too many of my men. Our territory will be much more secure without your undead pestering us."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Not even real soldiers. How meaningless."
|
||||
[/message]
|
||||
[/case]
|
||||
|
||||
[case]
|
||||
value=elf
|
||||
[message]
|
||||
speaker=Foolish Hero
|
||||
message= _ "We have finally found you, lich! Long have we heard of your abominable deeds, ensnaring the living with your dark sorceries and molding them into your slaves. Your wretched unlife ends here!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Life or death, it is all the same. There are always those who try to kill me. Ever do they fail."
|
||||
[/message]
|
||||
[/case]
|
||||
|
||||
[case]
|
||||
value=dwarf
|
||||
[message]
|
||||
speaker=Foolish Hero
|
||||
# po: written with a dwarvish accent - regular english would be "it's been along time since I've smashed some undead. You've got plenty of bones for my hammer to break"
|
||||
message= _ "Been a long time since I’ve smashed me some undead. Ye gots ye plenty o’ bones for me hammer ta break."
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "And it has been some time since I’ve had a supply of dwarven corpses to work with. I suppose I can put your hammers to good use in the mines."
|
||||
[/message]
|
||||
[/case]
|
||||
|
||||
[case]
|
||||
value=orc
|
||||
|
||||
{PLACE_IMAGE scenery/whitefang-flag.png 20 4}
|
||||
|
||||
[message]
|
||||
speaker=Foolish Hero
|
||||
message= _ "I’ve finally found your lair, lich! You have attacked my tribe and wreaked havoc on our homes for many years. You slew my father and turned his body into one of your nasty creations. With your death, your annoying minions will pester us no longer!"
|
||||
[/message]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "The Whitefang Orcs! It is you who despoiled my motherland and razed my home. It is you who forced me to resort to necromancy to protect myself. It is you who ended my mortal life and forced me to become a lich. And you desire vengeance? Hah! The irony of this would be hysterical if I could still feel such an emotion."
|
||||
[/message]
|
||||
[/case]
|
||||
[/switch]
|
||||
[/if]
|
||||
|
||||
# Place the book, and add a victory event if the foolish hero's army
|
||||
# takes it. Should the unit have to make its way back to the enemy
|
||||
|
@ -1340,6 +1366,9 @@
|
|||
[filter]
|
||||
x,y=5,5
|
||||
[/filter]
|
||||
[filter_condition]
|
||||
{VARIABLE_CONDITIONAL squidVille numerical_equals 0}
|
||||
[/filter_condition]
|
||||
[unit]
|
||||
x,y=5,5
|
||||
type=Cuttle Fish
|
||||
|
@ -1382,37 +1411,90 @@
|
|||
id=Inky
|
||||
[/filter]
|
||||
|
||||
{VARIABLE_OP gotosquid rand 1..11}
|
||||
|
||||
[if]
|
||||
[not]
|
||||
{VARIABLE_CONDITIONAL second_unit.side numerical_equals 1}
|
||||
[/not]
|
||||
{VARIABLE_CONDITIONAL second_unit.id equals "Mal Keshar"}
|
||||
[then]
|
||||
[message]
|
||||
# wmllint: deathcheck off
|
||||
speaker=Inky
|
||||
# wmllint: deathcheck on
|
||||
message= _ "Bloub°°°"
|
||||
[/message]
|
||||
[if]
|
||||
{VARIABLE_CONDITIONAL gotosquid numerical_equals 8}
|
||||
[then]
|
||||
{PLACE_IMAGE scenery/whirlpool.png $x2 $y2}
|
||||
[delay]
|
||||
time=300
|
||||
[/delay]
|
||||
[redraw][/redraw]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Get these tentacles off of me!"
|
||||
[/message]
|
||||
[delay]
|
||||
time=300
|
||||
[/delay]
|
||||
[sound]
|
||||
name=water-blast.wav
|
||||
[/sound]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Release me at once you oversized piece of calamari— eeeeaaaaaaaaa!"
|
||||
[/message]
|
||||
# po: Mal Keshar is sinking...
|
||||
[message]
|
||||
speaker=narrator
|
||||
message= _ "<i>Blub... blub... blub...</i>"
|
||||
[/message]
|
||||
|
||||
[endlevel]
|
||||
result=victory
|
||||
bonus=no
|
||||
{NEW_GOLD_CARRYOVER 100}
|
||||
carryover_report=no
|
||||
linger_mode=no
|
||||
next_scenario=11_Squidville
|
||||
replay_save=no
|
||||
[/endlevel]
|
||||
[/then]
|
||||
[/if]
|
||||
[/then]
|
||||
[elseif]
|
||||
{VARIABLE_CONDITIONAL metInky numerical_equals 1}
|
||||
[then]
|
||||
# yes, Inky is a she
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Curses. She got away."
|
||||
[/message]
|
||||
{VARIABLE metInky 2}
|
||||
[/then]
|
||||
[/elseif]
|
||||
[else]
|
||||
# This scenario (Endless_Night) repeats itself. To trigger this branch the player has to kill Inky two times.
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "It appears that she has evaded me once again."
|
||||
[/message]
|
||||
[if]
|
||||
[not]
|
||||
{VARIABLE_CONDITIONAL second_unit.side numerical_equals 1}
|
||||
[/not]
|
||||
[then]
|
||||
[message]
|
||||
# wmllint: deathcheck off
|
||||
speaker=Inky
|
||||
# wmllint: deathcheck on
|
||||
message= _ "Bloub°°°"
|
||||
[/message]
|
||||
[/then]
|
||||
[elseif]
|
||||
{VARIABLE_CONDITIONAL metInky numerical_equals 1}
|
||||
[then]
|
||||
# yes, Inky is a she
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Curses. She got away."
|
||||
[/message]
|
||||
{VARIABLE metInky 2}
|
||||
[/then]
|
||||
[/elseif]
|
||||
[else]
|
||||
# This scenario (Endless_Night) repeats itself. To trigger this branch the player has to kill Inky two times.
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "It appears that she has evaded me once again."
|
||||
[/message]
|
||||
[/else]
|
||||
[/if]
|
||||
[/else]
|
||||
[/if]
|
||||
|
||||
{CLEAR_VARIABLE gotosquid}
|
||||
[/event]
|
||||
|
||||
# reflection pool 3
|
||||
|
|
767
data/campaigns/Descent_Into_Darkness/scenarios/11_Squidville.cfg
Normal file
767
data/campaigns/Descent_Into_Darkness/scenarios/11_Squidville.cfg
Normal file
|
@ -0,0 +1,767 @@
|
|||
#textdomain wesnoth-did
|
||||
|
||||
[scenario]
|
||||
id=11_Squidville
|
||||
name= _ "Squidville"
|
||||
map_file=11_Squidville.map
|
||||
turns=unlimited
|
||||
next_scenario=10_Endless_Night
|
||||
victory_when_enemies_defeated=no
|
||||
|
||||
{UNDERGROUND}
|
||||
{SCENARIO_MUSIC nunc_dimittis.ogg}
|
||||
{EXTRA_SCENARIO_MUSIC underground.ogg}
|
||||
|
||||
# wmllint: validate-off
|
||||
[side]
|
||||
side=1
|
||||
controller=human
|
||||
save_id=Malin Keshar
|
||||
recruit=
|
||||
gold=0
|
||||
team_name=good
|
||||
village_gold=0
|
||||
shroud=yes
|
||||
income=-2
|
||||
user_team_name= _ "Mal Keshar"
|
||||
{FLAG_VARIANT undead}
|
||||
color=darkblue
|
||||
|
||||
# wmllint: recognize Mal Keshar
|
||||
{CHARACTER_STATS_MAL_KESHAR}
|
||||
|
||||
facing=ne
|
||||
[/side]
|
||||
# wmllint: validate-on
|
||||
|
||||
# Monster
|
||||
[side]
|
||||
side=2
|
||||
team_name=monster
|
||||
user_team_name= _ "teamname^Squid"
|
||||
gold=0
|
||||
controller=ai
|
||||
no_leader=yes
|
||||
hidden=yes
|
||||
{NO_INCOME}
|
||||
color=orange
|
||||
[ai]
|
||||
aggression=1
|
||||
caution=0
|
||||
grouping=no
|
||||
simple_targeting=yes
|
||||
village_value=0
|
||||
{MODIFY_AI_DELETE_CANDIDATE_ACTION 4 main_loop villages}
|
||||
{MODIFY_AI_DELETE_CANDIDATE_ACTION 4 main_loop retreat_injured}
|
||||
[/ai]
|
||||
[/side]
|
||||
[side]
|
||||
side=3
|
||||
team_name=monster
|
||||
user_team_name= _ "teamname^Inky"
|
||||
gold=0
|
||||
controller=ai
|
||||
no_leader=yes
|
||||
hidden=yes
|
||||
{NO_INCOME}
|
||||
color=orange
|
||||
[ai]
|
||||
aggression=0.2
|
||||
caution=0.8
|
||||
grouping=no
|
||||
simple_targeting=yes
|
||||
village_value=0
|
||||
{MODIFY_AI_DELETE_CANDIDATE_ACTION 4 main_loop villages}
|
||||
{MODIFY_AI_DELETE_CANDIDATE_ACTION 4 main_loop retreat_injured}
|
||||
[/ai]
|
||||
[/side]
|
||||
|
||||
{STARTING_VILLAGES 2 30}
|
||||
|
||||
# ability macros
|
||||
{DID_SOUL_EATER1}
|
||||
{DID_SOUL_EATER2}
|
||||
{DID_SOUL_EATER3}
|
||||
{DID_STARVING}
|
||||
|
||||
[event]
|
||||
name=prestart
|
||||
|
||||
{VARIABLE squidVille 1}
|
||||
{VARIABLE inkyVille 1}
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=start
|
||||
|
||||
[modify_unit]
|
||||
[filter]
|
||||
id=Mal Keshar
|
||||
[/filter]
|
||||
[object]
|
||||
# intentionally forever, it's a little bonus for getting to this scenario
|
||||
duration=forever
|
||||
[effect]
|
||||
apply_to=movement_costs
|
||||
replace=yes
|
||||
[movement_costs]
|
||||
shallow_water=1
|
||||
deep_water=2
|
||||
[/movement_costs]
|
||||
[/effect]
|
||||
[/object]
|
||||
[/modify_unit]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "This cuttlefish will not escape me any longer! Hunt her down!"
|
||||
[/message]
|
||||
|
||||
{MOVE_UNIT (id=Mal Keshar) 4 7}
|
||||
[redraw]
|
||||
side=1
|
||||
clear_shroud=yes
|
||||
[/redraw]
|
||||
[delay]
|
||||
time=550
|
||||
[/delay]
|
||||
{MODIFY_UNIT (id=Mal Keshar) facing sw}
|
||||
[delay]
|
||||
time=350
|
||||
[/delay]
|
||||
{MODIFY_UNIT (id=Mal Keshar) facing se}
|
||||
[delay]
|
||||
time=350
|
||||
[/delay]
|
||||
{MODIFY_UNIT (id=Mal Keshar) facing sw}
|
||||
[delay]
|
||||
time=350
|
||||
[/delay]
|
||||
{MODIFY_UNIT (id=Mal Keshar) facing se}
|
||||
[delay]
|
||||
time=350
|
||||
[/delay]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "..."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Right, I got dragged down here without any of my minions. I suppose I will have to do this myself."
|
||||
[/message]
|
||||
|
||||
{VARIABLE foundInky 0}
|
||||
|
||||
[objectives]
|
||||
side=1
|
||||
[objective]
|
||||
condition=win
|
||||
description= _ "Hunt down Inky"
|
||||
[/objective]
|
||||
[/objectives]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=moveto
|
||||
[filter]
|
||||
x=11,15
|
||||
y=4,3
|
||||
side=1
|
||||
[/filter]
|
||||
|
||||
#enjoy your exp farm
|
||||
[unit]
|
||||
x,y=11,6
|
||||
type=Tentacle of the Deep
|
||||
side=2
|
||||
max_hitpoints=42
|
||||
level=4
|
||||
animate=yes
|
||||
[/unit]
|
||||
[unit]
|
||||
x,y=12,3
|
||||
type=Tentacle of the Deep
|
||||
side=2
|
||||
max_hitpoints=50
|
||||
level=4
|
||||
animate=yes
|
||||
[/unit]
|
||||
[unit]
|
||||
x,y=14,3
|
||||
type=Tentacle of the Deep
|
||||
side=2
|
||||
max_hitpoints=40
|
||||
level=4
|
||||
animate=yes
|
||||
[/unit]
|
||||
[unit]
|
||||
x,y=15,4
|
||||
type=Tentacle of the Deep
|
||||
side=2
|
||||
max_hitpoints=39
|
||||
level=4
|
||||
animate=yes
|
||||
[/unit]
|
||||
[unit]
|
||||
x,y=16,5
|
||||
type=Tentacle of the Deep
|
||||
side=2
|
||||
max_hitpoints=48
|
||||
level=4
|
||||
animate=yes
|
||||
[/unit]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Why are these tentacles so large..?"
|
||||
[/message]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=moveto
|
||||
[filter]
|
||||
x,y=20,26
|
||||
side=1
|
||||
[/filter]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "(<i>huff huff huff</i>)"
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "..."
|
||||
[/message]
|
||||
{SCREEN_FADE 100 0 0 300}
|
||||
{SCREEN_FADE 0 100 0 300}
|
||||
{SCREEN_FADE 100 100 100 300}
|
||||
{SCREEN_FADE 0 0 100 300}
|
||||
{SCREEN_FADE 100 100 0 300}
|
||||
{SCREEN_FADE 100 100 100 300}
|
||||
{SCREEN_FADE 0 100 100 300}
|
||||
{SCREEN_FADE 100 0 100 300}
|
||||
{SCREEN_UNFADE 500}
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "I can see... the colors of the universe..!"
|
||||
[/message]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
{SCREEN_FADE 100 0 0 300}
|
||||
{SCREEN_FADE 0 100 0 300}
|
||||
{SCREEN_FADE 100 100 100 300}
|
||||
{SCREEN_FADE 0 0 100 300}
|
||||
{SCREEN_FADE 100 100 0 300}
|
||||
{SCREEN_FADE 100 100 100 300}
|
||||
{SCREEN_FADE 0 100 100 300}
|
||||
{SCREEN_FADE 100 0 100 300}
|
||||
{SCREEN_UNFADE 500}
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "The stars go whirly whirl and turn into..."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
# po: He's high so basically this is gibberish describing mushrooms
|
||||
message= _ "... glowy mushrooms lighting up this dank gloom, blue and green, loomy bloomy big shroomy..."
|
||||
[/message]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
{SCREEN_FADE 180 180 180 500}
|
||||
[delay]
|
||||
time=1000
|
||||
[/delay]
|
||||
{SCREEN_UNFADE 500}
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "... hi hi ho ho the shrooms go marching lo..."
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "... wait for me shroomies..!"
|
||||
[/message]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
|
||||
{MOVE_UNIT (id=Mal Keshar) 19 27}
|
||||
[redraw]
|
||||
side=1
|
||||
clear_shroud=yes
|
||||
[/redraw]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[scroll_to]
|
||||
x,y=18,26
|
||||
[/scroll_to]
|
||||
{MOVE_UNIT (id=Mal Keshar) 18 26}
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[scroll_to]
|
||||
x,y=17,26
|
||||
[/scroll_to]
|
||||
{MOVE_UNIT (id=Mal Keshar) 17 26}
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "(<i>huff huff</i>)"
|
||||
[/message]
|
||||
[delay]
|
||||
time=1000
|
||||
[/delay]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
# po: He breaks the fourth wall here because he's enlightened from the shrooms of course, so he talks directly to the player
|
||||
message= _ "... wait what am I doing? A skeleton cannot taste or smell or eat anything. These shrooms do not work on me. Do you think I am a fool? Am I just some kind of bad actor hired for amusement? What kind of sadistic higher power makes poor old lonely liches like me suffer so much just for the sake of entertainment? How revolting. I hope your sick enjoyment at my predicament is worth it, you monster."
|
||||
[/message]
|
||||
|
||||
[object]
|
||||
take_only_once=yes
|
||||
silent=yes
|
||||
duration=forever
|
||||
[filter]
|
||||
id=Mal Keshar
|
||||
[/filter]
|
||||
[effect]
|
||||
apply_to=new_ability
|
||||
[abilities]
|
||||
{ABILITY_ENLIGHTENED}
|
||||
[/abilities]
|
||||
[/effect]
|
||||
[/object]
|
||||
[floating_text]
|
||||
x,y=17,26
|
||||
color=255,255,255
|
||||
# wmllint: markcheck off
|
||||
text=ENLIGHTENED
|
||||
# wmllint: markheck on
|
||||
[/floating_text]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=moveto
|
||||
[filter]
|
||||
x,y=19,29
|
||||
side=1
|
||||
[/filter]
|
||||
|
||||
[sound]
|
||||
name=zombie-hit-1.ogg
|
||||
[/sound]
|
||||
[delay]
|
||||
time=1000
|
||||
[/delay]
|
||||
[sound]
|
||||
name=zombie-hit-5.ogg
|
||||
[/sound]
|
||||
[delay]
|
||||
time=600
|
||||
[/delay]
|
||||
[sound]
|
||||
name=zombie-attack.wav
|
||||
[/sound]
|
||||
[delay]
|
||||
time=600
|
||||
[/delay]
|
||||
[sound]
|
||||
name=zombie-hit-3.ogg
|
||||
[/sound]
|
||||
[delay]
|
||||
time=800
|
||||
[/delay]
|
||||
[unit]
|
||||
type=Necrophage Necron
|
||||
id=Necron
|
||||
name= _ "Necron"
|
||||
side=1
|
||||
animate=yes
|
||||
placement=leader
|
||||
[/unit]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "... what a horrendous pile of flesh. Even for a ghoul, this thing is beyond disgusting. Maybe I can send it to a quick death against all those Foolish Heroes."
|
||||
[/message]
|
||||
[/event]
|
||||
|
||||
|
||||
[event]
|
||||
name=moveto
|
||||
first_time_only=no
|
||||
[filter]
|
||||
x=3, 5, 12,6 ,13, 4,11,17,13,20
|
||||
y=21,22,20,18,19,15,16,18,14,14
|
||||
side=1
|
||||
[/filter]
|
||||
[switch]
|
||||
variable=inkyVille
|
||||
[case]
|
||||
value=1
|
||||
[sound]
|
||||
name=water-blast.wav
|
||||
[/sound]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Water Serpent
|
||||
side=2
|
||||
animate=yes
|
||||
passable=yes
|
||||
[/unit]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "You are not the creature I seek!"
|
||||
[/message]
|
||||
{VARIABLE inkyVille 2}
|
||||
[/case]
|
||||
[case]
|
||||
value=2
|
||||
[sound]
|
||||
name=mud-glob.ogg
|
||||
[/sound]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Giant Mudcrawler
|
||||
side=2
|
||||
animate=yes
|
||||
passable=yes
|
||||
[/unit]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Mudcrawler
|
||||
side=2
|
||||
animate=no
|
||||
passable=yes
|
||||
[/unit]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Mudcrawler
|
||||
side=2
|
||||
animate=no
|
||||
passable=yes
|
||||
[/unit]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Mudcrawler
|
||||
side=2
|
||||
animate=no
|
||||
passable=yes
|
||||
[/unit]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Oh for the love of... not these slimy things again..."
|
||||
[/message]
|
||||
{VARIABLE inkyVille 3}
|
||||
[/case]
|
||||
[case]
|
||||
value=3
|
||||
[sound]
|
||||
name=water-blast.wav
|
||||
[/sound]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Sea Serpent
|
||||
side=2
|
||||
animate=yes
|
||||
passable=yes
|
||||
[/unit]
|
||||
{VARIABLE inkyVille 4}
|
||||
[/case]
|
||||
[case]
|
||||
value=4
|
||||
[sound]
|
||||
name=water-blast.wav
|
||||
[/sound]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Swamp Lizard
|
||||
side=2
|
||||
animate=yes
|
||||
passable=yes
|
||||
[/unit]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "... wait a second, is this creature even supposed to live in this kind of habitat?"
|
||||
[/message]
|
||||
{VARIABLE inkyVille 5}
|
||||
[/case]
|
||||
[case]
|
||||
value=5
|
||||
[sound]
|
||||
name=water-blast.wav
|
||||
[/sound]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Sea Serpent
|
||||
side=2
|
||||
animate=yes
|
||||
passable=yes
|
||||
[/unit]
|
||||
{VARIABLE inkyVille 6}
|
||||
[/case]
|
||||
[case]
|
||||
value=6
|
||||
[sound]
|
||||
name=horse-hit-1.ogg
|
||||
[/sound]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Great Seahorse
|
||||
side=2
|
||||
animate=yes
|
||||
passable=yes
|
||||
[/unit]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "The creatures down here keep getting stranger and stranger."
|
||||
[/message]
|
||||
{VARIABLE inkyVille 7}
|
||||
[/case]
|
||||
[case]
|
||||
value=7
|
||||
[sound]
|
||||
name=water-blast.wav
|
||||
[/sound]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Sea Serpent
|
||||
side=2
|
||||
animate=yes
|
||||
passable=yes
|
||||
[/unit]
|
||||
{VARIABLE inkyVille 8}
|
||||
[/case]
|
||||
[case]
|
||||
value=8
|
||||
[sound]
|
||||
name=water-blast.wav
|
||||
[/sound]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Cuttle Fish
|
||||
id=Inky
|
||||
name= _ "female^Inky"
|
||||
gender=female
|
||||
side=3
|
||||
animate=yes
|
||||
passable=yes
|
||||
[status]
|
||||
unplagueable=yes
|
||||
[/status]
|
||||
[/unit]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Aha!"
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Finally, I have found you! Now hold still for just a moment..."
|
||||
[/message]
|
||||
{VARIABLE inkyVille 9}
|
||||
[/case]
|
||||
[/switch]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=last breath
|
||||
[filter]
|
||||
id=Inky
|
||||
[/filter]
|
||||
|
||||
[message]
|
||||
# wmllint: deathcheck off
|
||||
speaker=Inky
|
||||
# wmllint: deathcheck on
|
||||
message= _ "Bloub°°°"
|
||||
[/message]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Ha! I have you now!"
|
||||
[/message]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[sound]
|
||||
name=water-blast.wav
|
||||
[/sound]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "... what’s that sound?"
|
||||
[/message]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[sound]
|
||||
name=water-blast.wav
|
||||
[/sound]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[sound]
|
||||
name=squishy-hit.wav
|
||||
[/sound]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Cuttle Fish
|
||||
side=2
|
||||
animate=yes
|
||||
passable=yes
|
||||
[/unit]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Where did you come from? Get off of me!"
|
||||
[/message]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[sound]
|
||||
name=squishy-hit.wav
|
||||
[/sound]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[sound]
|
||||
name=squishy-hit.wav
|
||||
[/sound]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[sound]
|
||||
name=water-blast.wav
|
||||
[/sound]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Cuttle Fish
|
||||
side=2
|
||||
animate=yes
|
||||
passable=yes
|
||||
[/unit]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Cuttle Fish
|
||||
side=2
|
||||
animate=yes
|
||||
passable=yes
|
||||
[/unit]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "Uh oh."
|
||||
[/message]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[sound]
|
||||
name=squishy-hit.wav
|
||||
[/sound]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[sound]
|
||||
name=squishy-hit.wav
|
||||
[/sound]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[sound]
|
||||
name=squishy-hit.wav
|
||||
[/sound]
|
||||
[delay]
|
||||
time=500
|
||||
[/delay]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Cuttle Fish
|
||||
side=2
|
||||
animate=yes
|
||||
passable=yes
|
||||
[/unit]
|
||||
[unit]
|
||||
x,y=$x1,$y1
|
||||
type=Cuttle Fish
|
||||
side=2
|
||||
animate=yes
|
||||
passable=yes
|
||||
[/unit]
|
||||
[message]
|
||||
speaker=Mal Keshar
|
||||
message= _ "I’m getting out of here!"
|
||||
[/message]
|
||||
|
||||
{MOVE_UNIT (id=Mal Keshar) 7 1}
|
||||
|
||||
[endlevel]
|
||||
result=victory
|
||||
bonus=no
|
||||
{NEW_GOLD_CARRYOVER 100}
|
||||
[/endlevel]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=last breath
|
||||
[filter]
|
||||
id=Mal Keshar
|
||||
[/filter]
|
||||
|
||||
[message]
|
||||
speaker=unit
|
||||
message= _ "Aaargh, so many tentacles! Aieeeeee!!!"
|
||||
[/message]
|
||||
[/event]
|
||||
[event]
|
||||
name=die
|
||||
[filter]
|
||||
id=Mal Keshar
|
||||
[/filter]
|
||||
|
||||
[story]
|
||||
title= _ "Bad Ending"
|
||||
[part]
|
||||
story= _ "Unfortunately for him, Mal Keshar was overrun by a horde of tentacles. With his delusions of grandeur crushed, his boney remains were consigned to being no more than a few decorative elements around the watery backdrop of the village of squids for all eternity."
|
||||
{STORYTXT_BACKGROUND end.webp}
|
||||
[/part]
|
||||
[/story]
|
||||
|
||||
[endlevel]
|
||||
next_scenario=null
|
||||
carryover_report=no
|
||||
save=no
|
||||
linger_mode=no
|
||||
[/endlevel]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=victory
|
||||
|
||||
{CLEAR_VARIABLE foundInky}
|
||||
{CLEAR_VARIABLE inkyVille}
|
||||
[/event]
|
||||
[/scenario]
|
40
data/campaigns/Descent_Into_Darkness/units/Ghast2.cfg
Normal file
40
data/campaigns/Descent_Into_Darkness/units/Ghast2.cfg
Normal file
|
@ -0,0 +1,40 @@
|
|||
#textdomain wesnoth-did
|
||||
|
||||
[unit_type]
|
||||
id=Ghast Necron
|
||||
[base_unit]
|
||||
id=Ghast
|
||||
[/base_unit]
|
||||
advances_to=null
|
||||
experience=150
|
||||
hide_help=yes
|
||||
do_not_list=yes
|
||||
hitpoints=79
|
||||
experience=90
|
||||
|
||||
[abilities]
|
||||
{ABILITY_FEEDING}
|
||||
{ABILITY_STARVING}
|
||||
[/abilities]
|
||||
|
||||
{AMLA_OPTION_GHOUL_MELEE}
|
||||
{AMLA_OPTION_GHOUL_RESIST}
|
||||
{AMLA_OPTION_MASOCHISM1}
|
||||
{AMLA_OPTION_MASOCHISM2}
|
||||
{AMLA_OPTION_GHOULFICATION}
|
||||
{AMLA_DEFAULT}
|
||||
|
||||
[attack]
|
||||
name=bite
|
||||
description=_ "bite"
|
||||
icon=attacks/fangs.png
|
||||
type=blade
|
||||
range=melee
|
||||
damage=10
|
||||
number=3
|
||||
[specials]
|
||||
{WEAPON_SPECIAL_POISON}
|
||||
{WEAPON_SPECIAL_DRAIN}
|
||||
[/specials]
|
||||
[/attack]
|
||||
[/unit_type]
|
|
@ -246,6 +246,80 @@
|
|||
{DID_FROST_NOVA}
|
||||
{DID_SOUL_REND}
|
||||
{DID_SHADOW_VEIL_HANDLER}
|
||||
[animation]
|
||||
apply_to=pre_teleport
|
||||
start_time=-1200
|
||||
alpha="1.0~0.2"
|
||||
blend_ratio="0.0~1.0:400,1.0:200"
|
||||
blend_color=140,60,255
|
||||
|
||||
teleport_sparkle_1_start_time=-1200
|
||||
teleport_sparkle_2_start_time=-1000
|
||||
teleport_sparkle_3_start_time=-800
|
||||
|
||||
[teleport_sparkle_1_frame]
|
||||
duration=800
|
||||
halo=halo/teleport-[9,8,1~9].png
|
||||
halo_x=-10
|
||||
halo_y=30~-30
|
||||
[/teleport_sparkle_1_frame]
|
||||
[teleport_sparkle_2_frame]
|
||||
duration=800
|
||||
halo=halo/teleport-[9,8,1~9].png
|
||||
halo_x=0
|
||||
halo_y=40~-40
|
||||
[/teleport_sparkle_2_frame]
|
||||
[teleport_sparkle_3_frame]
|
||||
duration=800
|
||||
halo=halo/teleport-[9,8,1~9].png
|
||||
halo_x=10
|
||||
halo_y=30~-30
|
||||
[/teleport_sparkle_3_frame]
|
||||
|
||||
[frame]
|
||||
image="units/undead-necromancers/lich-magic-[1~3].png:[100*2,300]"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="misc/blank-hex.png:300"
|
||||
[/frame]
|
||||
[/animation]
|
||||
|
||||
[animation]
|
||||
apply_to=post_teleport
|
||||
start_time=-1200
|
||||
alpha="0.2~1.0"
|
||||
blend_ratio="1.0:200,1.0~0.0:400"
|
||||
blend_color=140,60,255
|
||||
|
||||
teleport_sparkle_1_start_time=-1200
|
||||
teleport_sparkle_2_start_time=-1000
|
||||
teleport_sparkle_3_start_time=-800
|
||||
|
||||
[teleport_sparkle_1_frame]
|
||||
duration=800
|
||||
halo=halo/teleport-[9,8,1~9].png
|
||||
halo_x=10
|
||||
halo_y=-30~30
|
||||
[/teleport_sparkle_1_frame]
|
||||
[teleport_sparkle_2_frame]
|
||||
duration=800
|
||||
halo=halo/teleport-[9,8,1~9].png
|
||||
halo_x=0
|
||||
halo_y=-40~40
|
||||
[/teleport_sparkle_2_frame]
|
||||
[teleport_sparkle_3_frame]
|
||||
duration=800
|
||||
halo=halo/teleport-[9,8,1~9].png
|
||||
halo_x=-10
|
||||
halo_y=-30~30
|
||||
[/teleport_sparkle_3_frame]
|
||||
[frame]
|
||||
image="misc/blank-hex.png:300"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/undead-necromancers/lich-magic-[3~1].png:[300,100*2]"
|
||||
[/frame]
|
||||
[/animation]
|
||||
#enddef
|
||||
|
||||
#define MAL_KESHAR_ANCIENT_LICH_BASE
|
||||
|
@ -410,6 +484,80 @@
|
|||
image="units/undead-necromancers/ancient-lich.png:75"
|
||||
[/frame]
|
||||
[/attack_anim]
|
||||
[animation]
|
||||
apply_to=pre_teleport
|
||||
start_time=-1200
|
||||
alpha="1.0~0.2"
|
||||
blend_ratio="0.0~1.0:400,1.0:200"
|
||||
blend_color=140,60,255
|
||||
|
||||
teleport_sparkle_1_start_time=-1200
|
||||
teleport_sparkle_2_start_time=-1000
|
||||
teleport_sparkle_3_start_time=-800
|
||||
|
||||
[teleport_sparkle_1_frame]
|
||||
duration=800
|
||||
halo=halo/teleport-[9,8,1~9].png
|
||||
halo_x=-10
|
||||
halo_y=30~-30
|
||||
[/teleport_sparkle_1_frame]
|
||||
[teleport_sparkle_2_frame]
|
||||
duration=800
|
||||
halo=halo/teleport-[9,8,1~9].png
|
||||
halo_x=0
|
||||
halo_y=40~-40
|
||||
[/teleport_sparkle_2_frame]
|
||||
[teleport_sparkle_3_frame]
|
||||
duration=800
|
||||
halo=halo/teleport-[9,8,1~9].png
|
||||
halo_x=10
|
||||
halo_y=30~-30
|
||||
[/teleport_sparkle_3_frame]
|
||||
|
||||
[frame]
|
||||
image="units/undead-necromancers/ancient-lich-magic-[1~3].png:[100*2,300]"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="misc/blank-hex.png:300"
|
||||
[/frame]
|
||||
[/animation]
|
||||
|
||||
[animation]
|
||||
apply_to=post_teleport
|
||||
start_time=-1200
|
||||
alpha="0.2~1.0"
|
||||
blend_ratio="1.0:200,1.0~0.0:400"
|
||||
blend_color=140,60,255
|
||||
|
||||
teleport_sparkle_1_start_time=-1200
|
||||
teleport_sparkle_2_start_time=-1000
|
||||
teleport_sparkle_3_start_time=-800
|
||||
|
||||
[teleport_sparkle_1_frame]
|
||||
duration=800
|
||||
halo=halo/teleport-[9,8,1~9].png
|
||||
halo_x=10
|
||||
halo_y=-30~30
|
||||
[/teleport_sparkle_1_frame]
|
||||
[teleport_sparkle_2_frame]
|
||||
duration=800
|
||||
halo=halo/teleport-[9,8,1~9].png
|
||||
halo_x=0
|
||||
halo_y=-40~40
|
||||
[/teleport_sparkle_2_frame]
|
||||
[teleport_sparkle_3_frame]
|
||||
duration=800
|
||||
halo=halo/teleport-[9,8,1~9].png
|
||||
halo_x=-10
|
||||
halo_y=-30~30
|
||||
[/teleport_sparkle_3_frame]
|
||||
[frame]
|
||||
image="misc/blank-hex.png:300"
|
||||
[/frame]
|
||||
[frame]
|
||||
image="units/undead-necromancers/ancient-lich-magic-[3~1].png:[300,100*2]"
|
||||
[/frame]
|
||||
[/animation]
|
||||
#enddef
|
||||
|
||||
[unit_type]
|
||||
|
|
29
data/campaigns/Descent_Into_Darkness/units/Necrophage2.cfg
Normal file
29
data/campaigns/Descent_Into_Darkness/units/Necrophage2.cfg
Normal file
|
@ -0,0 +1,29 @@
|
|||
#textdomain wesnoth-did
|
||||
# Same as normal, except advances to Ghast Necron
|
||||
[unit_type]
|
||||
id=Necrophage Necron
|
||||
[base_unit]
|
||||
id=Necrophage
|
||||
[/base_unit]
|
||||
advances_to=Ghast Necron
|
||||
hide_help=yes
|
||||
do_not_list=yes
|
||||
hitpoints=55
|
||||
[abilities]
|
||||
{ABILITY_FEEDING}
|
||||
{ABILITY_STARVING}
|
||||
[/abilities]
|
||||
[attack]
|
||||
name=claws
|
||||
description=_"claws"
|
||||
icon=attacks/claws-undead.png
|
||||
type=blade
|
||||
range=melee
|
||||
damage=7
|
||||
number=3
|
||||
[specials]
|
||||
{WEAPON_SPECIAL_POISON}
|
||||
{WEAPON_SPECIAL_DRAIN}
|
||||
[/specials]
|
||||
[/attack]
|
||||
[/unit_type]
|
|
@ -486,6 +486,31 @@
|
|||
|
||||
############## MALIN KESHAR ABILITIES ##############
|
||||
|
||||
#define ABILITY_ENLIGHTENED
|
||||
[teleport]
|
||||
id=did_enlightened
|
||||
name= _ "enlightened"
|
||||
female_name= _ "female^enlightened"
|
||||
description= _ "This unit can teleport between mushroom groves."
|
||||
[tunnel]
|
||||
id=did_enlightened_teleport
|
||||
[source]
|
||||
terrain=*^Emf*,*^Tf*
|
||||
formula="unit = teleport_unit or not unit where unit = unit_at(loc)"
|
||||
[/source]
|
||||
|
||||
[target]
|
||||
terrain=*^Emf*,*^Tf*
|
||||
formula="not unit_at(loc)"
|
||||
[/target]
|
||||
|
||||
[filter]
|
||||
ability=did_enlightened
|
||||
[/filter]
|
||||
[/tunnel]
|
||||
[/teleport]
|
||||
#enddef
|
||||
|
||||
#define WEAPON_SPECIAL_VITALIZE1
|
||||
[heal_on_hit]
|
||||
id=did_vitalize1
|
||||
|
@ -1006,6 +1031,87 @@
|
|||
[/event]
|
||||
#enddef
|
||||
|
||||
############## NECRON GHOUL ABILITIES ##############
|
||||
|
||||
#define WEAPON_SPECIAL_GHOULFICATION
|
||||
[plague]
|
||||
id=ghoulfication
|
||||
name= _ "ghoulfication"
|
||||
description= _ "When a unit is killed by this attack, it turns into a ghoul."
|
||||
type=Ghoul
|
||||
[/plague]
|
||||
#enddef
|
||||
|
||||
#define ABILITY_STARVING
|
||||
[dummy]
|
||||
id=did_starving
|
||||
name= _ "starving"
|
||||
name_inactive= _ "starving"
|
||||
description= _ "This unit loses 1 hitpoint every turn."
|
||||
description_inactive= _ "This unit loses 1 hitpoint every turn."
|
||||
[/dummy]
|
||||
#enddef
|
||||
|
||||
#define DID_STARVING
|
||||
[event]
|
||||
name=new turn
|
||||
first_time_only=no
|
||||
|
||||
[store_unit]
|
||||
[filter]
|
||||
ability=did_starving
|
||||
[/filter]
|
||||
variable=runit
|
||||
[/store_unit]
|
||||
|
||||
[harm_unit]
|
||||
[filter]
|
||||
ability=did_starving
|
||||
[/filter]
|
||||
|
||||
amount=1
|
||||
animate=no
|
||||
kill=no
|
||||
[/harm_unit]
|
||||
|
||||
[floating_text]
|
||||
x,y=$runit.x,$runit.y
|
||||
color=255,0,0
|
||||
# wmllint: markcheck off
|
||||
text=1
|
||||
# wmllint: markheck on
|
||||
[/floating_text]
|
||||
|
||||
{CLEAR_VARIABLE runit}
|
||||
[/event]
|
||||
#enddef
|
||||
|
||||
#define ABILITY_MASOCHISM1
|
||||
[leadership]
|
||||
id=masochism1
|
||||
value="(50 * (1 - hitpoints / max_hitpoints))"
|
||||
cumulative=no
|
||||
name= _ "masochism"
|
||||
female_name= _ "female^masochism"
|
||||
description= _ "This unit gains up to 50% damage as its hitpoints are reduced."
|
||||
affect_self=yes
|
||||
affect_adjacent=no
|
||||
[/leadership]
|
||||
#enddef
|
||||
|
||||
#define ABILITY_MASOCHISM2
|
||||
[leadership]
|
||||
id=masochism2
|
||||
value="(100 * (1 - hitpoints / max_hitpoints))"
|
||||
cumulative=no
|
||||
name= _ "masochism"
|
||||
female_name= _ "female^masochism"
|
||||
description= _ "This unit gains up to 100% damage as its hitpoints are reduced."
|
||||
affect_self=yes
|
||||
affect_adjacent=no
|
||||
[/leadership]
|
||||
#enddef
|
||||
|
||||
############## MISC ABILITIES ##############
|
||||
|
||||
#define ABILITY_DRUNK
|
||||
|
|
|
@ -1017,3 +1017,83 @@
|
|||
[/effect]
|
||||
[/advancement]
|
||||
#enddef
|
||||
|
||||
############## NECRON GHOUL ABILITIES ##############
|
||||
|
||||
#define AMLA_OPTION_MASOCHISM1
|
||||
[advancement]
|
||||
max_times=1
|
||||
id=necron_masochism1
|
||||
strict_amla=yes
|
||||
require_amla=ghast_resist,ghast_resist
|
||||
description= _ "Gain increasing damage as hitpoints are reduced"
|
||||
image=attacks/curse.png
|
||||
[effect]
|
||||
apply_to=new_ability
|
||||
[abilities]
|
||||
{ABILITY_MASOCHISM1}
|
||||
[/abilities]
|
||||
[/effect]
|
||||
[effect]
|
||||
apply_to=hitpoints
|
||||
increase_total=15
|
||||
increase=15
|
||||
heal_full=yes
|
||||
[/effect]
|
||||
[effect]
|
||||
apply_to=max_experience
|
||||
increase=25%
|
||||
[/effect]
|
||||
[/advancement]
|
||||
#enddef
|
||||
|
||||
#define AMLA_OPTION_MASOCHISM2
|
||||
[advancement]
|
||||
max_times=1
|
||||
id=necron_masochism2
|
||||
strict_amla=yes
|
||||
require_amla=necron_masochism1
|
||||
description= _ "Gain increasing damage as hitpoints are reduced"
|
||||
image=attacks/curse.png
|
||||
[effect]
|
||||
apply_to=new_ability
|
||||
[abilities]
|
||||
{ABILITY_MASOCHISM2}
|
||||
[/abilities]
|
||||
[/effect]
|
||||
[effect]
|
||||
apply_to=hitpoints
|
||||
increase_total=20
|
||||
increase=20
|
||||
heal_full=yes
|
||||
[/effect]
|
||||
[effect]
|
||||
apply_to=max_experience
|
||||
increase=25%
|
||||
[/effect]
|
||||
[/advancement]
|
||||
#enddef
|
||||
|
||||
#define AMLA_OPTION_GHOULFICATION
|
||||
[advancement]
|
||||
max_times=1
|
||||
id=necron_ghoulfication
|
||||
strict_amla=yes
|
||||
require_amla=ghast_melee,ghast_melee
|
||||
description= _ "Gains the ability to turn enemies into ghouls"
|
||||
image=attacks/fangs.png
|
||||
[effect]
|
||||
apply_to=attack
|
||||
name=bite
|
||||
increase_damage=1
|
||||
[set_specials]
|
||||
{WEAPON_SPECIAL_GHOULFICATION}
|
||||
mode=append
|
||||
[/set_specials]
|
||||
[/effect]
|
||||
[effect]
|
||||
apply_to=max_experience
|
||||
increase=40%
|
||||
[/effect]
|
||||
[/advancement]
|
||||
#enddef
|
||||
|
|
Loading…
Add table
Reference in a new issue