diff options
author | Jesusaves <cpntb1@ymail.com> | 2022-04-20 23:01:10 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2022-04-20 23:01:10 -0300 |
commit | d91cc72896f0aff6b731286606a09b89a722dd66 (patch) | |
tree | a7ed4cccdd583e9c19a4c0edd6c60e9ff7eb9a4d | |
parent | cb29b4ed730c770887d9da017754d62afa7d719c (diff) | |
download | serverdata-d91cc72896f0aff6b731286606a09b89a722dd66.tar.gz serverdata-d91cc72896f0aff6b731286606a09b89a722dd66.tar.bz2 serverdata-d91cc72896f0aff6b731286606a09b89a722dd66.tar.xz serverdata-d91cc72896f0aff6b731286606a09b89a722dd66.zip |
Make High Council Room more lively.
-rw-r--r-- | npc/003-0-1/guards.txt | 12 | ||||
-rw-r--r-- | npc/003-0-2/_import.txt | 1 | ||||
-rw-r--r-- | npc/003-0-2/saves.txt | 166 | ||||
-rw-r--r-- | npc/029-0/event.txt | 2 |
4 files changed, 180 insertions, 1 deletions
diff --git a/npc/003-0-1/guards.txt b/npc/003-0-1/guards.txt index b1e04658c..0c34c5217 100644 --- a/npc/003-0-1/guards.txt +++ b/npc/003-0-1/guards.txt @@ -5,6 +5,8 @@ // Magic Council Guard 003-0-1,50,24,0 script Guard#00301A NPC_BRGUARD_SPEAR,{ + if ($MOST_HEROIC$ == strcharinfo(0)) + goto L_Hero; if (getgmlevel()) goto L_Sponsor; if ($FIRESOFSTEAM) @@ -22,6 +24,16 @@ mesc l("There's nothing in the Magic Council Room, though. It's just a perk."); close; +L_Hero: + mesn; + mesq l("Greetings, %s. Do you have business on the Alliance Council Room?", strcharinfo(0)); + mesc l("Warp to Council room?"); + if (askyesno() == ASK_YES) { + warp "003-0-2", 34, 42; + } + closeclientdialog; + close; + L_Sponsor: mesn; mesq l("Alliance members (sponsors) are allowed inside the Council Room."); diff --git a/npc/003-0-2/_import.txt b/npc/003-0-2/_import.txt index 7d5bc1b31..155164515 100644 --- a/npc/003-0-2/_import.txt +++ b/npc/003-0-2/_import.txt @@ -3,3 +3,4 @@ "npc/003-0-2/_warps.txt", "npc/003-0-2/manastone.txt", "npc/003-0-2/misc.txt", +"npc/003-0-2/saves.txt", diff --git a/npc/003-0-2/saves.txt b/npc/003-0-2/saves.txt new file mode 100644 index 000000000..29aa77e67 --- /dev/null +++ b/npc/003-0-2/saves.txt @@ -0,0 +1,166 @@ +// TMW2 scripts. +// Authors: +// Jesusalva +// Description: +// Alliance High Council + +003-0-2,22,24,0 script HC Jesusalva NPC_LOF_NOBLEMAN,{ + mesn l("Councilor Jesusalva"); + mesq l("Greetings, %s %s, to the Alliance High Council.", ($MOST_HEROIC$ == strcharinfo(0) ? l("Great Hero") : (ACADEMIC_RANK ? academicrank() : lg("miss", "mister"))), strcharinfo(0)); + next; + mesn l("Councilor Jesusalva"); + mesq l("I am currently in charge of overseeing the world state and the Monster King advancements, as well as planning and dealing with emergencies. The Alliance High Council is currently composed by %s members and %s honorary ones.", l("five"), l("two")); + next; + mesn l("Councilor Jesusalva"); + mesq l("If you found anything which requires immediate attention, like broken roads which lead nowhere, or cliffs with weird collisions, invisible rocks, scamming NPCs or the sorts, please write down a [@@%s|ticket@@] and I'll see it. If the interface is too difficult to use, you can also do so [@@%s|here@@] or send an email to %s.", "https://gitlab.com/TMW2/serverdata/-/issues", "https://discord.gg/BQNTe68", "bug@tmw2.org"); + if (.saul && .jak1 && .lawn && .craz) + close; + next; + mesn l("Councilor Jesusalva"); + mesq l("The other councilors?"); + if (!.saul) + mes l("─ Saulc should be on his residence, going over the plans again."); + if (!.jak1) + mes l("─ Jak1 should be on the Mirror Lake or verifying the troops."); + if (!.lawn) + mes l("─ LawnCable is likely on his room doing research, I wouldn't disturb him if I were you."); + if (!.craz) + mes l("─ Crazyfefe is likely patrolling the world, aiding Constables and catching criminals."); + close; + +OnDeloc: + if (isin("003-0-2", 20, 20, 49, 37)) { + slide 35, 38; + sleep2(200); + dispbottom l("The High Council is now on session, you were forced to leave the meeting chamber."); + } + end; + +OnInit: + .sex = G_MALE; + .distance = 5; + .session = false; + .saul = false; + .jak1 = false; + .lawn = false; + .craz = false; + +OnMinute33: + disablenpc "HC Saulc"; + disablenpc "HC Jak1"; + disablenpc "HC LawnCable"; + disablenpc "HC Crazyfefe"; + .jak1 = false; + .lawn = false; + .craz = false; + + // Define who will be at Council Room + .@r = rand2(100); + + if (.session) { + .@r -= 5; + .session = false; + disablenpc "High Council Secretary"; + delcells "HCouncilGate"; + npctalk "The council is dismissed!"; + } + + if (.@r >= 97 && !$FIRESOFSTEAM) { + // Council Session + enablenpc "HC Saulc"; + enablenpc "HC Jak1"; + enablenpc "HC LawnCable"; + enablenpc "HC Crazyfefe"; + enablenpc "High Council Secretary"; + setcells "003-0-2", 32, 35, 37, 37, 1, "HCouncilGate"; + npctalk "The council is now in session."; + maptimer("003-0-2", 100, "HC Jesusalva::OnDeloc"); + end; + // TODO: Council - make the NPCs speak etc + } + + // Not a council session, so some members may show up + if (.@r % 30) { + enablenpc "HC LawnCable"; + .lawn = true; + } + + if (.@r % 10) { + enablenpc "HC Jak1"; + .jak1 = true; + } + + if (.@r % 5) { + enablenpc "HC Crazyfefe"; + .craz = true; + } + + if (.@r % 2) { + enablenpc "HC Saulc"; + .saul = true; + } + end; +} + +003-0-2,34,27,0 script HC Saulc NPC_HALBERDBARBARIAN,{ + mesn l("Councilor Saulc"); + mesq l("These battle plans are all wrong; They trace routes on the Canyon which doesn't exist..."); + close; + +OnInit: + .sex = G_MALE; + .distance = 5; + end; +} + +003-0-2,22,30,0 script HC Jak1 NPC_LOF_DOCTOR,{ + mesn l("Councilor Jak1"); + mesq l("Why everything is so broken, couldn't the Monster King try to do less collateral damage?! These things will take years to be fixed!"); + close; + +OnInit: + .sex = G_MALE; + .distance = 5; + end; +} + +003-0-2,47,24,0 script HC LawnCable NPC_BLACKALCHEMIST,{ + mesn l("Councilor LawnCable"); + mesq l("Maybe if... No... Hmm... I better try this the next time I'm at my laboratory..."); + close; + +OnInit: + .sex = G_MALE; + .distance = 5; + end; +} + +003-0-2,47,30,0 script HC Crazyfefe NPC_LOF_RICH,{ + mesn l("Councilor Crazyfefe"); + mesq l("I want to arrest the Monster King one day, but until then, I'm happy getting rid of petty scammers, spammers, and general evildoers."); + close; + +OnInit: + .sex = G_MALE; + .distance = 5; + end; +} + +// NPC_BLACKWIZARD NPC_MIRAJ +// NPC_BELLA » Secretary +// When the council is in session, a lock raises +// And Bella explains the council is in session, to come back later +// NPCs may also speak stuff randomly + +003-0-2,32,38,0 script High Council Secretary NPC_BELLA,{ + mesn; + mesq l("Greetings. The council is currently in session, no one is allowed in the inner chambers."); + close; + +OnInit: + .sex = G_MALE; + .distance = 5; + disablenpc .name$; + end; +} + diff --git a/npc/029-0/event.txt b/npc/029-0/event.txt index 08a40d2e8..dad86dfa6 100644 --- a/npc/029-0/event.txt +++ b/npc/029-0/event.txt @@ -256,7 +256,7 @@ L_PowerUp: // Chose a stage (NO TTL) mesc l("Please select where you left off on Main Quest."); mesc l("The one with a star (*) is advised."); - mesc l("It is NOT advised for new players to skip parts of the Main Quest."); + mesc l("It is NOT advised for new players to skip parts of the Main Quest."), 1; mesc l("Skipping will FORSAKE rewards for the quest and related; So choose wisely!"); mes ""; menuint |