IDK/src/jotunheim.py

408 lines
28 KiB
Python

jotunheim = (r"""
/\ /\ / / \ / \ /\ / \ ~~~~~~~~~~~~~~~~~~~~~~~
/ \ / \ / / \ /\ / \ / \ /\ / \ /\ ~~~~~~~~~~~~~~~~~~
/ \ /\ / \ /\ / / \ / \ / / / \ / \ / \ /\ ~~~~~~~~~~~~~~~~
/ \ / \ /\ / \ / \ /\ / \ / \ /\ / / \ / /\ / / \ ~~~~~~~~~~~~~~
/ /\ / / \ / / / \ / \ / \ /\ / / \ / \ / \ ~~~~~~~~~~~~
/ \ / / \ / / \ /\ / / / \ / \ / \ /\ \ ~~~~~~~~~~
/ \ / /\ / \ / / \ / \ / / \ /\ / \ / \ /\ \ ~~~~~~~~
/ \ / \ /\ \ / \ / \ /\ / / \ / \ / / / \ ~~~~~
/ / / \ ___ ### / \ / \ /\ / \ / \ /\ / / \ ~~~
/\ / / \ /O O\ ##### / ### / / \ \ / \ / \ /\ / / \ /\ ~~
/ \ /\ / / \ * |_ | |=| ##### / / \ / ~/ / \ / \ / \ ~
/ \ / ### \ |^|_| |=| / / \ ### ### ~/ / \ /\ / \ /\
/ \ ##### ### / ### \ ##### ##### ~/ / \ / \ / \ / \
\ / \ |=| ### ##### _______ ##### |=| |=| ~ / _ \ / \ /\ / /
\ \ ##### |=| /[] []\ |=| ### ~~~~ __/o\ / ## \ / \ /\ / /
\ /\ /\ |=| / \ ______ ##### ~~~~~ / | / #### / / \ / /
~ \ / \ /\ / \ ### /___________\ ### / \ |=| ### ~~~~~ |____| ## / / \ /
~~ / / \ / \ /\ ##### | | ##### /________\ ##### ~~~~~~ || / / \ /\
~~ / / \ / \ / \ /\ |=| |[] |]O[| []| |=| |<o> <o>| ### |=| ~~~~~ / / \__
~ / / \/ / / \ |___________| | __ | ##### ~~ _____ /\ / \
~ / / / \ * ### |__|__|__| |=| _ / \___ / \_ / \
~~~ /\ / / \ /\ ### ##### __/o\ / \ / \ / \
~~ / \__ / / \__ ##### |=| ### ### / o | /____________\ / \ ~
~~~ / \ /\ / \ |=| ##### ### ##### |____| | O O O | _ /\ ~~~
~~ / \ /\ / \__ / \ /\ ### |=| ##### |=| ## | _ | __/ \ / \_ ~~~
~ / \/ \__ / \ \ / \ ##### |=| ## #### ## |__|^|_______| / | / \ ~~
~ /\ / \ / \ /\ / \ |=| ## #### ## ## #### |____| / \ /\ ~~
/ \__ / \ \ / \ / \ _ #### ## #### || ## ## ## / \_ ~
/ * \ / \ /\ /\ / \ __/ \ ## || ## || #### ## #### /\ / \ ~
~~ \ / \ / \ \ /\ / | || || ## ## #### ## / \_ / \~
~~ \ /\ / \ / \ / \ |____| ## ## #### ## || ## || / \ ~~
~ /\ \/ \ /\ / \ \ /\ / \ #### #### ## #### || / \ /\ ~~~
~ / \ / \ / \ /\ / \/ \ ## ## ## || ## ______ / \_ ~~
/ \ / \ / \ / \ /\ / \ ## #### || || _ || / \ _ / \ ~~
/ \ /\ /\ \ / \ / \ / _ \ #### ## / \ /________\ / \ /\ / \ ~~~~
/\ / \ / \ / \ / \ / \ ## || ___ |_| |<o> <o>| |_| / \_ ~~~~
/ \ / \ / \ / \ |_| || /[O]\ ___ | __ | /\ / \ /\ ~~
/\ / \ / \ /\ | | /<o>\ |__|__|__| / \_ / \ / \_ ~~~
\ \ /\ / \ ___ |___| | | / \ / \ ~~~
\ /\ /\ / \ / \ / \ |___| / \ /\ \ ~~
\ / \ / \ / \ / \ ______ |___| ______ _ /\ / \_ ~~
/\ / \ \ /\ / \ / \ ______ / \ / \ / \_ / \ /\ ~
/ \ \ \/ \ /________\ / \ /________\ |_| / \ / \ / \_ ~
/ \ _ / \ | | _______________ /________\ |<o> <o>| / \ / \
/ /\ \ / \ / \ | o o o o| / Utgard \ | [] [] | | _ | /\ /\ / /\ \
/ \ |_| * |________| / () () () () \ | | |__|^|___| / \_ / \_ / \_
/ \ /\ /___________________\ |________| / _ \ / \ / \
/ \/ \ ______ |_/ \_/ \_/ \_| / / \ \/ /\ \/ \
/ \ _ / \ ### |I| |I| _ |I| |I| ______ |_| _/ \
/ \ / \ /________\ ##### |I|* |I|/_\|I| |I| / \ / \ /\
/\ |_| ___ |<o> <o>| ### |I| |I|[^]|I| |I| ### /________\ _ \ _/ \
/ \ /\ * /<o>\ | | /-\ ##### ||]O[| | / \ /\ / \
/ \ \ | | |________| ### ### ### | | |_| _/ \ / \
/ \ \ /\ |___| ### ##### ##### /-\ |________| /\ / \ /\
\/ \ ##### |=| |=| _/ \ / _/ \
/\ / \ ~~~~~~~ ### ### / \ / \
/ \ /\ / ~~~~~~~~~~|----* ### /-\ ### ### ### ##### / \ /\ / \ /\
/ \ / \ ~~~~~~~~~~~~~~| ##### ##### ? ##### ##### ### _/ \ _/ \
\/ \ ~~~~~~~~~~~~~~~| ### |=| |=| ### /-\ / \ /\ / \
~~~ / \~~~~~~~~~~~~~~~|---- /-\ ### ~~~ /-\ / _/ \ / \
~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~ ### ##### _~/~\~_ ### ___ / \
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ##### ### ### /~~|~|~~\ ##### /<o>\ /\ \
~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ### ##### /-\ \_______/ ### | | /\ _/ \ /\ /\
~~~~~~~~~~~~~~~~~~~~~~~~~~ /-\ ### ### |=======| /-\ |___| _/ \ / \ _/ \ _/ \
~~~~~~~~~~~~~~~~~~~~~~~ /-\ ##### * ### /~ \/ / \ / \
~~~~~~~~~~~~~~~~~~~~ ### ### ### ##### /~ / \/ ## \
~~~~~~~~~~~~~~~~ ##### ##### ### /-\ ___ ### ### ~~ ## ####
~~~~~~~~~~~~ __ ### ### ##### /[O]\ ##### /-\ ~~ #### ## ######
~~~~~~~~~~~ /()\ /-\ /-\ ### ___ | | ___ ___ ### ~~~ ###### #### ########
~~~~~~~~~~ | =| /-\ /O O\ |___| /<o>\ /() \ /-\ ~~~ ######## ###### ## ######
~~~~~~~~~ |= | ? ### | | * | | | | ~~~~ ###### ######## #### ####
~~~~~~~~ | =| ### ##### |___| |___| |___| ~~~~~~~ #### ###### ###### |--|
~~~~~~ * |= | ##### ### ___ ~~~~~~~~~~ ## |--| #### ########|--|
~~~~~ /____\ ### /-\ /<o>\ ~~~~~~~~~~~~~~~~ #### |--| |--| ######
~~~~~ ~~~~~~~~ /-\ | | ~~~~~~~~~~~~~~~~~ | ## ## ### |--| ## #### ##
~~~~ ~~~~~~~~~~~~~~~~~ *|___| ~~~~~~~~~~~~~~~~ | #### || ##### ## #### |--| ####
~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~ ## ## | ## ##### #### ###### |--| ######
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |~~~~~~~~~~~~~~~~~~~ ## #### #### | || ### ###### ######## ########
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| |~~~~~~~~~~~~~~ | #### ## /\ /\ | ### |_| ######## ###### ######
~~~~~~~~~~~~~~~~~~~~ # ~~~~~| |~~ | /\ #### | ## ##### ###### #### ####
~~~~~~~~~~~~~~ ### # |==| () /\ () | #### ##### #### |--| ## |--|
~~~~~~~~~ ##### ### | /__\ __ /__\ | ## ### |--| |--| #### |--|
~~~~~~ # ### # ##### | | |___/()\___| | | || |_| |--| ######
~~~~~ ### __ |-| ### ### | ## |[]| [] [] |[]| | ### ### ######## ##
~~~~ # ##### /()\ ##### |-| |#### | | __ | | | ##### ##### ## ###### ####
~~~~ ### ### | \____ ### # | /\ |__|___|^^|___|__| ## | ##### ##### #### #### ######
~~~~ ##### |-| | |]O[|\ |-| ### | ? #### | ### ### ###### ## |--| ########
~~~~ ### | _ | ##### | * /\ | |_| |_| ######## #### |--| ######
~~~~~ |-| |____|^|_| # ### # | # # | ### ###### ###### ####
~~~~~~ ### |-| ### |==|==|==|===| |=|==|==|==|==| ##### ## #### ######## |--|
~~~~~~~~~ # ##### ##### ### ##### #### |--| ###### |--|
~~~~~~~~~~~~ ### # ### ### # # ### ##### ### ###### |--| #### ##
~~~~~~~~~~~~~ ##### ### |-| # |-| ### ### ##### ##### |_| ######## |--| ####
~~~~~~~~~~~~~~ ### # ##### ### ##### ##### ##### ### ### ### ###### |--| ######
~~~~~~~~~~~~~~~ |-| ### ### ##### ### ### ### ##### |_| ### ##### #### ## ## ########
~~~~~~~~~~~~~~ ##### |-| ### |-| |-| |_| ##### ##### ##### |--| #### #### ######
~~~~~~~~~~~~~ ### |-| ### ##### ### |--| ###### ###### ####
~~~~~ ~~~~ |-| ~~~~~ # ### |_| ### ### |_| ######## ########|--|
~~~~ * ~~ ~~~~~~~ ~~~~~~~~~~ ### ##### ##### |_| ### ###### ###### |--|
~~~ ~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~ # ##### ##### ##### ### ##### #### ## ####
~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ### ### ### ### ### ##### ##### |--| #### |--|
~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ##### |-| |_| ##### |_| ##### ### |--| ######|--|
~~~ ~~~~~~~~~~~~~~ ~~~~~~~~~~ ### ##### ### |_| ######## ##
~~~~ ~~~~~~~~~~~~ ~~~~~~~~ # |-| ### ### ### ### |_| ## ###### ####
~~~~~ # ~~~~~ # ~~~~~~ ### ##### |_| ##### ##### #### #### ######
~~~~~ ### # ~~ ### ~~~~~ ##### ##### ##### ##### ### ###### |--| ########
~~~~ ##### ### ##### ### ### ### ### ##### ######## |--| ######
~~~ ### ##### ### ### |-| ### |_| |_| |_| ##### ###### #### ##
~~ |-| ### |-| ##### ##### ### ### ### #### ## |--| ####
~~ |-| _ ##### ##### ##### |_| ##### |--| #### |--| ######
~~ ## ## __/o\ ### ### ### ##### ### ##### |--| ###### ########
~~~ #### #### / o | |_| |_| ### ##### ### ##### ### ######## ######
~~~~~ ## ## |____| ### ########## ### |_| ##### |_| ###### ## #### ~
~~~~~~~ || ___ || ## ##### ##### ### ##### ### ### ### #### #### |--| ~
~~~~~~~~ /o o\ #### ##### ### |_| ##### |_|##### ##### |--| ###### |--| ~
~~~~~~~~ |___| ~~~ ## ### ### ### |_| ### ##### ### ##### ## |--| ######## ~
~~~~~ ~(~)~ || ## |_| ##### ##### ### |_| ### ### ##### ### #### ###### ~~
~~~ (_____) #### ##### ##### ##### ##### |_| ##### |_| ###### ## #### ~~
~~ _ |-----| ## ### ### ### ##### ### ##### ### ### ######## #### |--| ~~
~~~ /-\ _ || ##### |_| |_| ### ### ##### ### ##### |_| ###### ###### |--| ~~
~~~~ |_| __/o\ ~~~~ ##### ### ##### |_| ##### |_| ### ##### ### #### ######## ~~~~~~
~~~~~~ / o | ~~~~~~~~~ ### ##### ##### ### ##### ### ##### |--| ###### ~~~~~~
~~~~~~~~ |____| ~~~~~~~~~~~~~~ |_| ##### ### |_| ##### |_| ##### |--| #### ~~~~~~~~~~
~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~ ### |_| ### ~~~~ ### |--| ~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|_| ~~~~~~~~~~~~~~~~|_| ~~~~~~~~~|_|~~~~~~~~~~~~|--|~~~~~~~~~~~~~~""",
# Autres mondes (Jotunheim = 5)
(11, 120, 1, 56, 42), # Vanaheim
# Maisons
(29, 11, 31, 19, 14),
(88, 25, 32, 14, 24),
(89, 45, 33, 30, 24),
(60, 50, 34, 34, 29), # Utgard
(64, 85, 35, 24, 19), # Manoir du sud (1/2)
(65, 85, 35, 25, 19), # Manoir du sud (2/2)
(23, 88, 36, 19, 14), # Auberge
)
# * : (25; 10)
# * : (39; 20)
# * : (3; 28)
# * : (34; 45)
# * : (53; 49)
# * : (19; 51)
# * : (34; 56)
# * : (64; 64)
# * : (54; 70)
# * : (8; 72)
# * : (40; 75)
# * : (72; 87)
# * : (6; 98)
def jotunheim_po(coords):
if coords == (60, 57): return [0, "Un bruit de fontaine monte a vos oreilles. A travers les arbres, l'immense palais de Thrym se dresse. Les enormes colonnes qui entourent le batiments sont a elles seules des symboles de demesures. Aux alentours se dresse quelques maisons tout aussi imposantes et enorme, mais moins travaillee."]
elif coords == (23, 70): return [0, "Face a la mer, sur une langue de terre, le phare se dresse, eclairant puissemment le large pour signaler l'estuaire."]
elif coords == (60, 86): return [0, "Un imposant manoir se tient devant vous, flanque de deux tours surmontees de domes en ardoise brillantes, l'ensemble est perce de multiples et larges ouvertures. Le parc autour se compose de quelques arbres et est delimite au nord par le fleuve."]
def jotunheim_npc(data, stat):
coords = data[2], data[3]
# Utarg
if coords == (34, 56): return {
"base": [0, "Utarg, pour vous servir."],
36: [0, "Utarg, vous me cherchiez ?\n1. Oui, Thrym m'a demande de vous donner ceci [VOUS LUI DONNEZ LA LETTRE].\n2. Quelles sont les relations entre les Geants et les Ases ?", 2],
37: [3, "[UTARG LIT LE BILLET.] Hum. Thrym me demande de detacher une garnison et de me rendre a Vanaheim. On se retrouve a l'auberge."],
38: [-2, "Plusieurs differents ont eloignes les Ases des Geants : meutres, enlevements, traitrises... Ce serait long a expliquer."]
}
h_31 = (r"""
|=====||=====|===========|======||=====|
| /__\ | | /__\ |
| |==| | _ | |==| |
| (_) | |
| |_| | * __ |
| ____ | | | |
| |____| | |__| |
| | _ | | | |
|============| (_) | |__| |
| | |_| | |
| |=============|
| | |
| | |
| | | |
|============|====|^|====|=============|""",
(19, 14, 5, 29, 11)) # * : (28, 4)
def h_31_npc(data, stat):
pass
h_32 = (r"""
|=============================|
|=============================|
| |
| |
| |============================|
| ____ ____ |=====____==========____=====|
| \__/ \__/ * \__/ \__/ |
| | | | | | | | | |
| | | | | | | | | |
| |__| |__| |__| |__| |
| |
| |
| |
| |
| |
| ____ ____ ____ ____ |
| \__/ \__/ \__/ \__/ |
| | | | | | | | | |
| | | | | | | | | |
| |__| |__| |__| |__| |
| |============================|
| |============================|
| |
|============| |==============|
|============|^|==============| """,
(14, 24, 5, 88, 25)) # * : (28, 6)
def h_32_npc(data, stat):
pass
h_33 = (r"""
|=======|---|=======| |=======|---|=======|
|=======|---|=======| |=======|---|=======|
| /_____\ | | /_____\ |
| |=====| |===|]O[|==|]O[|===| |=====| |
| |==================| |
| _ _ * |
| (~) (~) |
| __ __ |_| * |_| __ __ |
| | | | | | | | | |
| |__| |__| |__| |__| |
| | | | | | | | | |
| |__| |__| _ _ |__| |__| |
| | | | | (~) (~) | | | | |
| |__| |__| |_| |_| |__| |__| |
| |
| |
| |
| _ _ _ _ |
| (~) (~) (~) (~) |
| |_| |_| |_| |_| |
| |
| |
| |
|============================| |===========================|
|=[]=[]=[]=[]=[]=[]=[]=[]=[]=|^|=[]=[]=[]=[]=[]=[]=[]=[]=[]|""",
(30, 24, 5, 89, 45)) # * : (48, 5) * : (24, 7)
def h_33_npc(data, stat):
pass
h_34 = (r"""
|======================| |======================|
|======================| |======================|
| | | |
| | | |
| |============| |
| |============| |
| ####### * ####### |
| ######### ######### |
| ######### ######### |
| ######### ######### |
| ####### __ __ ####### |
| (==) (==) |
| |TT| |TT| |
| |__| |__| |
| ~~~ ~~~ |
| ~~(~)~~ ~~(~)~~ |
| /~~~T~~~\ /~~~T~~~\ |
| \=======/ __ __ \=======/ |
| (==) (==) |
| |TT| |TT| |
| |__| |__| |
| ####### ####### |
| ######### ######### |
| ######### ######### |
| ____######## ____ ____ ########____ |
| |II|####### |II| |II| #######|II| |
|==|II|================|II| |II|================|II|==|
|==|II|================|II| |II|================|II|==|
|II| |II| |II| |II|
|II| |II|/|^=|\|II| |II| """,
(34, 29, 5, 60, 50)) # * : (26, 6)
def h_34_npc(data, stat):
coords = data[2], data[3]
if coords == (26, 6):
if not (360 <= stat[4] <= 1200):
return [0, "Reviens quand il fera jour s'il te plait."]
else: return {
"base": [0, "Thyrm, roi des Geants. Bienvenue a Utgard."],
34: [0, "Bonjour, je suis Thyrm, bienvenue a Utgard.\n1. Freyja m'a charge de vous dire qu'Odin a declare la guerre aux Vanes.", 1],
35: [1, "De part le mariage entre Gerd et Freyr, nos liens avec les Vanes sont forts. Par respect pour eux et en souvenir de notre histoire mouvemente avec les Ases, j'accepte d'aider Freyja et les siens. [THRYM SAISIT UNE LETTRE ET GRIFONNA QUELQUES MOTS AVANT DE VOUS LA TENDRE.] En sortant dirige-toi vers Westri, vers la jetee, tu trouveras Utarg. Donne-lui ce mot."]
}
h_35 = (r"""
|================================================|
|==|/\|=|/\|=|/\|=|/\|=|/\|=|/\|=|/\|=|/\|=|/\|==|
| |
| _ _ |
| ### (~) (~) ### |
| ##### * |=| |=| ##### |
| ### ### |
| |=| |=| |
| ### _ _ ### |
| ##### (~) (~) ##### |
| ### |=| |=| ### |
| |=| |=| |
| ### ### |
| ##### _ _ ##### |
| ### (~) (~) ### |
| |=| |=| |=| |=| |
| |
| |
|======================\ /======================|
|==|/\|=|/\|=|/\|=|/\|=/^^\=|/\|=|/\|=|/\|=|/\|==|""",
(24, 19, 5, 0, 0),
(25, 19, 5, 0, 0)) # * : (17, 5)
def h_35_npc(data, stat):
coords = data[2], data[3]
xp = data[0]
if coords == (17, 5):
if xp == 14: return [8, 8, 5, 5, 80], "Gullveig", 15, 1
elif xp == 15: return [0, "[VOUS REGARDEZ LA DEPOUILLE DESARTICULEE DE LA MAGICIENNE, ODIN SERA CONTENT.]"]
else: return {
"base": [0, "Gullveig, magicienne Vane, pour te servir."],
44: [0, "Gullveig, magicienne Vane, besoin de quelque chose ?\n1. Pouvez-vous dechiffre ces runes pour moi ?\n2. Non, excusez-moi.", 2],
45: [11, "Bien sur. [GULLVEIG REGARDA LE CROQUIS DES RUNES] Hum... je ne suis pas sure de ce que cela veut dire, si je traduit dans notre alphabet cela donne 'kvasir'."],
46: [-2, "Reviens quand tu veux !"],
50: [0, "Ah {} ! Besoin de quelque chose ?\n1.C'est Sagriel qui m'envoie, elle a besoin d'une potion d'eternelle jeunesse.\n2. Non, rien, merci.".format(stat[5]), 2],
51: [3, "Oui, bien sur ! [GULLVEIG VOUS TEND UNE FIOLE REMPLIE D'UN LIQUIDE AMBRE.]", 0, (1, -10)],
52: [-2, "Reviens quand tu veux !"],
}
h_36 = (r"""
|======================================|
| |
| _ _ _ _ |
| (_) *(_) (_) (_) |
| |_| |_| |_| |_| |
| |
| |
|=================| |====== =======|
| | | [I] [I] |
| +---+ +---+ | | /|\ /|\ |
| | | | | | * |
| | | | | | |
| +---+ * +---+ | | [====] [====] |
| | | [====] [====] |
|=================|^^|=================|""",
(19, 14, 5, 23, 88),
(20, 14, 5, 23, 88)) # * : (11, 3) * : (27, 10) * : (9, 12)
def h_36_npc(data, stat):
coords = data[2], data[3]
if coords == (27, 10):
if not (300 <= stat[4] <= 1380): return [0, "Je suis desole, nous somme ferme la nuit."]
if stat[9] == -1 or data[0] == stat[9]:
stat[9] = data[0]
return [0, "Vous voulez quelque-chose ?\n1. Je mangerai bien un truc [-4 PO]\n2. Il vous reste une chambre ? [-12 PO]", 2]
if data[0] == stat[9] + 1:
stat[9] = -1
if stat[1] < 4: return [-1, "Reviens quand tu auras de quoi me payer."]
return [-1, "Et voila ! [LE TAVERNIER POSA UNE ASSIETTE FUMANTE DEVANT VOUS ET UN VERRE DE VIN]", 0, (0, 5), (1, -4)]
if data[0] == stat[9] + 2:
stat[9] = -1
if 360 < stat[4] < 1140: return [-2, "Il est trop tot, reviens vers 19h."]
elif stat[1] < 12: return [-2, "Tu n'as pas assez."]
stat[4] = 360
return [-2, "Oui, au premier etage, au bout du couloir sur votre droite. [VOUS SUIVEZ LES INDICATIONS DU TAVERNIER ET TROUVEZ VOTRE CHAMBRE. VOUS SOMBREZ DANS LES BRAS DE NOTT.]", 0, (0, 15), (1, -12)]