ソースを参照

Additional checks in RoomOfConsciousness (#5685)

Atemo 4 年 前
コミット
6524315b74
2 ファイル変更78 行追加45 行削除
  1. 16 17
      npc/re/instances/RitualOfBlessing.txt
  2. 62 28
      npc/re/instances/RoomOfConsciousness.txt

+ 16 - 17
npc/re/instances/RitualOfBlessing.txt

@@ -726,23 +726,22 @@ OnInstanceInit:
 2@mir,97,77,7	duplicate(dummy_npc_rituel_disabled)	Skia Nerius#skia02	4_EP16_SKIA
 
 
-2@mir,96,83,0	script	dummy_npc_rituel	-1,{ end; }
-2@mir,101,88,4	duplicate(dummy_npc_rituel)	Kronecker G. Heine#gran1	4_EP16_GRANZ
-2@mir,97,71,7	duplicate(dummy_npc_rituel)	Levuiere Wigner#louvier1	4_EP16_LOUVIERE
-2@mir,100,71,7	duplicate(dummy_npc_rituel)	Jurgen Wigner#jurgen01	4_M_4THPRIN1
-2@mir,97,68,7	duplicate(dummy_npc_rituel)	Isaac Wigner#isaac01	4_EP16_ISAAC
-2@mir,100,68,7	duplicate(dummy_npc_rituel)	Katrin Wigner#kath01	4_EP16_POE
-2@mir,103,80,2	duplicate(dummy_npc_rituel)	Catherine D. Geoborg#ca1	4_EP16_EGEO
-2@mir,106,80,2	duplicate(dummy_npc_rituel)	Ernst Geoborg#ernst01	4_M_2NDPRIN1
-2@mir,103,77,2	duplicate(dummy_npc_rituel)	Po Richard#po01	4_M_6THPRIN1
-2@mir,103,74,2	duplicate(dummy_npc_rituel)	Maximilian Roegenburg#m1	4_EP16_MAX
-2@mir,106,74,2	duplicate(dummy_npc_rituel)	Wolf Roegenburg#wolf01	4_EP16_WOLF
-2@mir,101,94,0	duplicate(dummy_npc_rituel)	Peter Heine#peter01	4_M_3RDPRIN1
-2@mir,100,77,7	duplicate(dummy_npc_rituel)	Spica Nerius#spica01	4_EP16_SPICA
-2@mir,106,71,2	duplicate(dummy_npc_rituel)	Agnes Roegenburg#agnes0_1	4_EP16_AGNES
-2@mir,100,74,7	duplicate(dummy_npc_rituel)	Ian Walther#ian01	1_M_JOBTESTER
-2@mir,97,74,7	duplicate(dummy_npc_rituel)	Isenhonor Walther#eisen	4_M_1STPRIN1
-2@mir,103,71,2	duplicate(dummy_npc_rituel)	Helmut Roegenburg#helmu	4_EP16_HELMUT
+2@mir,101,88,4	duplicate(dummy_npc)	Kronecker G. Heine#gran1	4_EP16_GRANZ
+2@mir,97,71,7	duplicate(dummy_npc)	Levuiere Wigner#louvier1	4_EP16_LOUVIERE
+2@mir,100,71,7	duplicate(dummy_npc)	Jurgen Wigner#jurgen01	4_M_4THPRIN1
+2@mir,97,68,7	duplicate(dummy_npc)	Isaac Wigner#isaac01	4_EP16_ISAAC
+2@mir,100,68,7	duplicate(dummy_npc)	Katrin Wigner#kath01	4_EP16_POE
+2@mir,103,80,2	duplicate(dummy_npc)	Catherine D. Geoborg#ca1	4_EP16_EGEO
+2@mir,106,80,2	duplicate(dummy_npc)	Ernst Geoborg#ernst01	4_M_2NDPRIN1
+2@mir,103,77,2	duplicate(dummy_npc)	Po Richard#po01	4_M_6THPRIN1
+2@mir,103,74,2	duplicate(dummy_npc)	Maximilian Roegenburg#m1	4_EP16_MAX
+2@mir,106,74,2	duplicate(dummy_npc)	Wolf Roegenburg#wolf01	4_EP16_WOLF
+2@mir,101,94,0	duplicate(dummy_npc)	Peter Heine#peter01	4_M_3RDPRIN1
+2@mir,100,77,7	duplicate(dummy_npc)	Spica Nerius#spica01	4_EP16_SPICA
+2@mir,106,71,2	duplicate(dummy_npc)	Agnes Roegenburg#agnes0_1	4_EP16_AGNES
+2@mir,100,74,7	duplicate(dummy_npc)	Ian Walther#ian01	1_M_JOBTESTER
+2@mir,97,74,7	duplicate(dummy_npc)	Isenhonor Walther#eisen	4_M_1STPRIN1
+2@mir,103,71,2	duplicate(dummy_npc)	Helmut Roegenburg#helmu	4_EP16_HELMUT
 
 2@mir,101,10,0	script	to_prt_lib	WARPNPC,1,1,{
 	if (isbegin_quest(7693) == 1) {

+ 62 - 28
npc/re/instances/RoomOfConsciousness.txt

@@ -31,6 +31,8 @@
 
 OnInstanceInit:
 	'map_name$ = instance_mapname("1@mir");
+	'step = 0;
+
 	disablenpc instance_npcname("Bijou#2mir");
 
 	disablenpc instance_npcname("Fenrir#3mir");
@@ -81,6 +83,8 @@ OnInstanceInit:
 1@mir,100,94,7	script	Iris#2mir	4_F_IRIS,{
 	if (is_party_leader() == false)	// it shouldn't happen
 		end;
+	if ('step != 0)
+		end;
 	mes "[Iris]";
 	mes "This...this must be...";
 	mes "Ymir's Heart!";
@@ -133,8 +137,11 @@ OnInstanceInit:
 	mes "~Grunts~ When did all the legionnaires get here?";
 	close2;
 	cutin "",255;
-	donpcevent instance_npcname("eq#mir1") + "::OnEvent";
-	disablenpc instance_npcname("Iris#2mir");
+	if ('step == 0) {
+		'step = 1;
+		donpcevent instance_npcname("eq#mir1") + "::OnEvent";
+		disablenpc instance_npcname("Iris#2mir");
+	}
 	end;
 }
 
@@ -189,7 +196,8 @@ OnTimer6200:
 
 OnMobDead2:
 	'skeleton_wave[1]--;
-	if ('skeleton_wave[1] == 0) {
+	if ('skeleton_wave[1] == 0 && 'step == 1) {
+		'step = 2;
 		mapannounce 'map_name$, "Fenrir: Phew! I think we've done here.", bc_map,0xFFFF00,FW_NORMAL,12;
 		enablenpc instance_npcname("Fenrir#3mir");
 		enablenpc instance_npcname("Iris#3mir");
@@ -202,6 +210,8 @@ OnMobDead2:
 1@mir,103,85,1	script	Iris#3mir	4_F_IRIS,{
 	if (is_party_leader() == false)	// it shouldn't happen
 		end;
+	if ('step != 2)
+		end;
 	mes "[Bijou]";
 	mes "~Chuckles~ I think you're not that bad for a human.";
 	next;
@@ -241,7 +251,10 @@ OnMobDead2:
 	mes "I'll stop Bijou from taking Ymir's Heart. You go ahead and take care of that huge monster!";
 	close2;
 	cutin "",255;
-	donpcevent instance_npcname("eq#mir2") + "::OnEvent";
+	if ('step == 2) {
+		'step = 3;
+		donpcevent instance_npcname("eq#mir2") + "::OnEvent";
+	}
 	end;
 }
 
@@ -282,6 +295,9 @@ OnTimer9000:
 	stopnpctimer;
 	end;
 OnMobDead:
+	if ('step != 3)
+		end;
+	'step = 4;
 	stopnpctimer;
 	donpcevent instance_npcname("eq#mir3") + "::OnStop";
 	if ('random_letter$ != "")
@@ -394,6 +410,8 @@ OnStop:
 1@mir,100,90,7	script	Iris#4mir	4_F_IRIS,{
 	if (is_party_leader() == false)	// it shouldn't happen
 		end;
+	if ('step != 4)
+		end;
 	mes "[Iris]";
 	mes "Was that it...? Has it gone now?";
 	mes "So what's left now is...";
@@ -427,7 +445,10 @@ OnStop:
 	mes "And horribly painfully...!!";
 	close2;
 	cutin "",255;
-	donpcevent instance_npcname("eq#mir4") + "::OnEvent";
+	if ('step == 4) {
+		'step = 5;
+		donpcevent instance_npcname("eq#mir4") + "::OnEvent";
+	}
 	end;
 }
 
@@ -451,6 +472,9 @@ OnTimer1000:
 	donpcevent instance_npcname("eq#mir4") + "::OnMobDead";
 	end;
 OnMobDead:
+	if ('step != 5)
+		end;
+	'step = 6;
 	killmonster 'map_name$, instance_npcname("eq#mir4") + "::OnMobDead";
 	stopnpctimer;
 	enablenpc instance_npcname("Fenrir#5mir");
@@ -463,6 +487,8 @@ OnMobDead:
 1@mir,103,90,1	script	Fenrir#5mir	4_F_FENRIR,{
 	if (is_party_leader() == false)	// it shouldn't happen
 		end;
+	if ('step != 6)
+		end;
 	mes "[Fenrir]";
 	mes "~Groans~ I can't believe nothing seems to work!";
 	next;
@@ -655,7 +681,10 @@ OnMobDead:
 	mes "...Be careful. She's about to attack!";
 	close2;
 	cutin "",255;
-	donpcevent instance_npcname("eq#mir5") + "::OnEvent";
+	if ('step == 6) {
+		'step = 7;
+		donpcevent instance_npcname("eq#mir5") + "::OnEvent";
+	}
 	end;
 }
 
@@ -693,6 +722,9 @@ OnTimer7000:
 	stopnpctimer;
 	end;
 OnMobDead:
+	if ('step != 7)
+		end;
+	'step = 8;
 	stopnpctimer;
 	donpcevent instance_npcname("eq#mir3") + "::OnStop";
 	donpcevent instance_npcname("eq#mir6") + "::OnStop";
@@ -729,6 +761,8 @@ OnStop:
 1@mir,100,95,5	script	Iris#6mir	4_F_IRIS,{
 	if (is_party_leader() == false)	// it shouldn't happen
 		end;
+	if ('step != 8)
+		end;
 	mes "[Iris]";
 	mes "~Grunts~";
 	next;
@@ -842,40 +876,40 @@ OnStop:
 	end;
 }
 
-1@mir,100,40,5	script	Iris#1mir	4_F_IRIS,{ end; }
-1@mir,103,94,1	duplicate(Iris#1mir)	Fenrir#2mir	4_F_FENRIR
-1@mir,102,98,3	duplicate(Iris#1mir)	Bijou#2mir	4_F_BIJOU
+1@mir,100,40,5	duplicate(dummy_npc)	Iris#1mir	4_F_IRIS
+1@mir,103,94,1	duplicate(dummy_npc)	Fenrir#2mir	4_F_FENRIR
+1@mir,102,98,3	duplicate(dummy_npc)	Bijou#2mir	4_F_BIJOU
 
-1@mir,100,85,7	duplicate(Iris#1mir)	Fenrir#3mir	4_F_FENRIR
-1@mir,102,88,3	duplicate(Iris#1mir)	Bijou#3mir	4_F_BIJOU
-1@mir,101,95,1	duplicate(Iris#1mir)	Renovated Amdarais#3mir	3448
+1@mir,100,85,7	duplicate(dummy_npc)	Fenrir#3mir	4_F_FENRIR
+1@mir,102,88,3	duplicate(dummy_npc)	Bijou#3mir	4_F_BIJOU
+1@mir,101,95,1	duplicate(dummy_npc)	Renovated Amdarais#3mir	3448
 
 1@mir,94,73,3	duplicate(Fenrir#boss1a)	Fenrir#boss1b	4_F_FENRIR,2,2
 1@mir,112,73,3	duplicate(Fenrir#boss1a)	Fenrir#boss1c	4_F_FENRIR,2,2
 1@mir,103,60,3	duplicate(Fenrir#boss1a)	Fenrir#boss1d	4_F_FENRIR,2,2
 
-1@mir,100,80,5	duplicate(Iris#1mir)	Iris#boss1a	4_F_IRIS
-1@mir,91,73,5	duplicate(Iris#1mir)	Iris#boss1b	4_F_IRIS
-1@mir,109,73,5	duplicate(Iris#1mir)	Iris#boss1c	4_F_IRIS
-1@mir,100,60,5	duplicate(Iris#1mir)	Iris#boss1d	4_F_IRIS
+1@mir,100,80,5	duplicate(dummy_npc)	Iris#boss1a	4_F_IRIS
+1@mir,91,73,5	duplicate(dummy_npc)	Iris#boss1b	4_F_IRIS
+1@mir,109,73,5	duplicate(dummy_npc)	Iris#boss1c	4_F_IRIS
+1@mir,100,60,5	duplicate(dummy_npc)	Iris#boss1d	4_F_IRIS
 
 1@mir,103,76,3	duplicate(Fenrir#boss1a)	Fenrir#boss2a	4_F_FENRIR,2,2
 1@mir,94,70,3	duplicate(Fenrir#boss1a)	Fenrir#boss2b	4_F_FENRIR,2,2
 1@mir,112,70,3	duplicate(Fenrir#boss1a)	Fenrir#boss2c	4_F_FENRIR,2,2
 1@mir,103,63,3	duplicate(Fenrir#boss1a)	Fenrir#boss2d	4_F_FENRIR,2,2
 
-1@mir,100,76,5	duplicate(Iris#1mir)	Iris#boss2a	4_F_IRIS
-1@mir,91,70,5	duplicate(Iris#1mir)	Iris#boss2b	4_F_IRIS
-1@mir,109,70,5	duplicate(Iris#1mir)	Iris#boss2c	4_F_IRIS
-1@mir,100,63,5	duplicate(Iris#1mir)	Iris#boss2d	4_F_IRIS
+1@mir,100,76,5	duplicate(dummy_npc)	Iris#boss2a	4_F_IRIS
+1@mir,91,70,5	duplicate(dummy_npc)	Iris#boss2b	4_F_IRIS
+1@mir,109,70,5	duplicate(dummy_npc)	Iris#boss2c	4_F_IRIS
+1@mir,100,63,5	duplicate(dummy_npc)	Iris#boss2d	4_F_IRIS
 
-1@mir,102,95,3	duplicate(Iris#1mir)	Bijou#4mir	4_F_BIJOU
-1@mir,103,90,1	duplicate(Iris#1mir)	Fenrir#4mir	4_F_FENRIR
+1@mir,102,95,3	duplicate(dummy_npc)	Bijou#4mir	4_F_BIJOU
+1@mir,103,90,1	duplicate(dummy_npc)	Fenrir#4mir	4_F_FENRIR
 
-1@mir,102,95,3	duplicate(Iris#1mir)	Bijou#5mir	4_F_BIJOU
-1@mir,99,95,5	duplicate(Iris#1mir)	Sarah#5mir	4_F_SARAH
-1@mir,100,90,7	duplicate(Iris#1mir)	Iris#5mir	4_F_IRIS
+1@mir,102,95,3	duplicate(dummy_npc)	Bijou#5mir	4_F_BIJOU
+1@mir,99,95,5	duplicate(dummy_npc)	Sarah#5mir	4_F_SARAH
+1@mir,100,90,7	duplicate(dummy_npc)	Iris#5mir	4_F_IRIS
 
-1@mir,102,95,3	duplicate(Iris#1mir)	Bijou#6mir	4_F_BIJOU
-1@mir,104,95,3	duplicate(Iris#1mir)	Sarah#6mir	4_F_SARAH
-1@mir,103,90,1	duplicate(Iris#1mir)	Fenrir#6mir	4_F_FENRIR
+1@mir,102,95,3	duplicate(dummy_npc)	Bijou#6mir	4_F_BIJOU
+1@mir,104,95,3	duplicate(dummy_npc)	Sarah#6mir	4_F_SARAH
+1@mir,103,90,1	duplicate(dummy_npc)	Fenrir#6mir	4_F_FENRIR