diff options
Diffstat (limited to 'npc')
-rw-r--r-- | npc/014-4/kamelot.txt | 11 | ||||
-rw-r--r-- | npc/042-10/ctrl.txt | 37 |
2 files changed, 43 insertions, 5 deletions
diff --git a/npc/014-4/kamelot.txt b/npc/014-4/kamelot.txt index 05a45459b..715a4f981 100644 --- a/npc/014-4/kamelot.txt +++ b/npc/014-4/kamelot.txt @@ -16,8 +16,8 @@ // 1 - Quest Assigned by Arthur (new players cannot enter anymore) // 2 - Guinevere dialog clear // 4 - Weapon Room cutscene seen - // 8 - Sewer Gate open - // 16 - Magic Seal Broken + // 8 - Magic Seal 01 Broken + // 16 - Magic Seal 02 Broken // 32 - Door opened // 64 - Boss defeated // $KAMELOT_KEYMASK [ guild_id ] = (bitmask) Keys and Lockpicks @@ -131,7 +131,7 @@ OnDebug: l("Quest - Skip Weapons Room"), l("Quest - Skip Krukan fight"), l("Quest - Find all Keys"), - "", + l("Quest - Unlock Boss Room"), "", "", l("Warp - Jump to Entrance"), // 10 @@ -150,6 +150,11 @@ OnDebug: KamelotCleanup(.@g); break; // We now order from bottom-up + case 7: + $KAMELOT_QUEST[.@g]=$KAMELOT_QUEST[.@g]|8; + $KAMELOT_QUEST[.@g]=$KAMELOT_QUEST[.@g]|16; + $KAMELOT_QUEST[.@g]=$KAMELOT_QUEST[.@g]|32; + mes "WARNING: Boss Room was unlocked"; case 6: $KAMELOT_KEYMASK[.@g]=$KAMELOT_KEYMASK[.@g]|1; $KAMELOT_KEYMASK[.@g]=$KAMELOT_KEYMASK[.@g]|2; diff --git a/npc/042-10/ctrl.txt b/npc/042-10/ctrl.txt index 7b79ce21d..6b595d7d5 100644 --- a/npc/042-10/ctrl.txt +++ b/npc/042-10/ctrl.txt @@ -28,7 +28,7 @@ OnTouch: OnTouch: .@g=getcharid(2); if (.@g < 1) percentheal -100, -100; - if (!($KAMELOT_QUEST[.@g] & 16) || !($KAMELOT_QUEST[.@g] & 32)) goto L_NoAccess; + if (!($KAMELOT_QUEST[.@g] & 8) || !($KAMELOT_QUEST[.@g] & 16) || !($KAMELOT_QUEST[.@g] & 32)) goto L_NoAccess; warp "042-11@"+.@g, 41, 56; // TODO Fire Events end; @@ -59,13 +59,23 @@ OnInit: OnTouch: .@g=getcharid(2); if (.@g < 1) percentheal -100, -100; - if (!($KAMELOT_QUEST[.@g] & 16)) goto L_NoAccess; + if (!($KAMELOT_QUEST[.@g] & 16) && !($KAMELOT_QUEST[.@g] & 8)) goto L_NoAccessBlock; + if (!($KAMELOT_QUEST[.@g] & 16) || !($KAMELOT_QUEST[.@g] & 8)) goto L_NoAccess; + // You can pass freely, so we do nothing end; L_NoAccess: slide 127, 36; + percentheal -5, -5; + dispbottom l("A powerful magic seal repeals you!"); + dispbottom l("It's weaker than before, probably only one is working right now."); + end; + +L_NoAccessBlock: + slide 127, 36; percentheal -10, -10; dispbottom l("A powerful magic seal repeals you!"); + dispbottom l("We need to find what powers these two seals and disable it."); end; } @@ -74,7 +84,30 @@ L_NoAccess: // TODO: Door Mechanism // TODO: Spawn monsters +042-10,128,85,0 script #Katazuli01 NPC_SUMMONING_CIRC,0,0,{ + dispbottom l("This is probably related to the magical seals."); + end; +OnInit: + .distance=2; + end; +OnTouch: + npctalk l("TODO FIXME"); // TODO FIXME + end; +} + +042-10,32,108,0 script #Katazuli02 NPC_SUMMONING_CIRC,0,0,{ + dispbottom l("This is probably related to the magical seals."); + end; + +OnInit: + .distance=2; + end; + +OnTouch: + npctalk l("TODO FIXME"); // TODO FIXME + end; +} |