Initial release of Illusion of Frozen (#7464)

* Implemented the main quest, daily quests and exchange npcs related to illusion of frozen (Walkthrough Conversion)
This commit is contained in:
Atemo 2023-01-19 16:54:22 +01:00 committed by GitHub
parent 7acdcd391c
commit b40469f881
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 2048 additions and 260 deletions

View File

@ -92210,20 +92210,295 @@ Body:
Rate: 7000
# - Id: 3791
# AegisName: JP_E_MONSTER_73
# - Id: 3792
# AegisName: ILL_GAZETI
# - Id: 3793
# AegisName: ILL_SNOWIER
# - Id: 3794
# AegisName: ILL_ICE_TITAN
# - Id: 3795
# AegisName: ILL_ICEICLE
# - Id: 3796
# AegisName: ILL_KTULLANUX
# - Id: 3797
# AegisName: ILL_FROZEN_KN
# - Id: 3798
# AegisName: ILL_FROZEN_GC
- Id: 3792
AegisName: ILL_GAZETI
Name: Angry Gazeti
Level: 126
Hp: 117139
BaseExp: 6755
JobExp: 6454
Attack: 2290
Attack2: 366
Defense: 141
MagicDefense: 42
Str: 125
Agi: 54
Vit: 64
Int: 56
Dex: 144
Luk: 62
AttackRange: 10
SkillRange: 10
ChaseRange: 12
Size: Medium
Race: Demon
Element: Water
ElementLevel: 1
WalkSpeed: 190
AttackDelay: 576
AttackMotion: 370
DamageMotion: 270
Ai: 20
Modes:
Detector: true
Drops:
- Item: Frozen_Stone_Fragment
Rate: 1000
- Item: Bradium
Rate: 200
- Item: Cold_Ice
Rate: 100
- Item: Cap_
Rate: 50
- Item: Bullet_Case_Fleeze
Rate: 100
- Item: AngerGazeti_Card
Rate: 1
StealProtected: true
- Id: 3793
AegisName: ILL_SNOWIER
Name: Angry Snowier
Level: 129
Hp: 105290
BaseExp: 7106
JobExp: 6711
Attack: 1750
Attack2: 330
Defense: 195
MagicDefense: 78
Str: 136
Agi: 88
Vit: 97
Int: 78
Dex: 103
Luk: 71
AttackRange: 2
SkillRange: 10
ChaseRange: 12
Size: Large
Race: Formless
Element: Water
ElementLevel: 2
WalkSpeed: 220
AttackDelay: 936
AttackMotion: 1020
DamageMotion: 420
Ai: 04
Drops:
- Item: Snowball
Rate: 1000
- Item: Ice_Heart
Rate: 700
- Item: Mistic_Frozen
Rate: 100
- Item: Combo_Battle_Glove
Rate: 50
- Item: Light_Granule
Rate: 300
- Item: AngerSnowier_Card
Rate: 1
StealProtected: true
- Id: 3794
AegisName: ILL_ICE_TITAN
Name: Angry Ice Titan
Level: 133
Hp: 137656
BaseExp: 7519
JobExp: 7132
Attack: 1988
Attack2: 298
Defense: 644
MagicDefense: 44
Str: 181
Agi: 70
Vit: 119
Int: 61
Dex: 124
Luk: 56
AttackRange: 1
SkillRange: 10
ChaseRange: 12
Size: Large
Race: Formless
Element: Water
ElementLevel: 3
WalkSpeed: 250
AttackDelay: 861
AttackMotion: 660
DamageMotion: 144
Drops:
- Item: SpritJewel
Rate: 1000
- Item: Ice_Piece
Rate: 700
- Item: Frozen_Rose
Rate: 200
- Item: Huuma_Fluttering_Snow
Rate: 50
- Item: Elder_Branch
Rate: 300
- Item: AngerIceTitan_Card
Rate: 1
StealProtected: true
- Id: 3795
AegisName: ILL_ICEICLE
Name: Solid Icicle
Level: 135
Hp: 1012
BaseExp: 200
JobExp: 200
Attack: 1553
Attack2: 1
Defense: 50
MagicDefense: 35
Str: 199
Agi: 1
Vit: 1
Int: 1
Dex: 244
Luk: 1
AttackRange: 3
SkillRange: 10
ChaseRange: 12
Size: Small
Race: Formless
Element: Water
ElementLevel: 2
WalkSpeed: 1000
AttackDelay: 1344
Drops:
- Item: Frozen_Stone_Fragment
Rate: 200
Index: 0
- Item: Frozen_Stone_Fragment
Rate: 200
Index: 1
- Item: Frozen_Stone_Fragment
Rate: 200
Index: 2
- Item: Frozen_Stone_Fragment
Rate: 200
Index: 3
- Item: Frozen_Stone_Fragment
Rate: 200
Index: 4
- Item: Frozen_Stone_Fragment
Rate: 200
Index: 5
- Item: Frozen_Stone_Fragment
Rate: 200
Index: 6
- Item: Frozen_Stone_Fragment
Rate: 200
Index: 7
StealProtected: true
- Id: 3796
AegisName: ILL_KTULLANUX
Name: Awakened Ktullanux
Level: 135
Hp: 13521442
BaseExp: 2777284
JobExp: 1937023
Attack: 5754
Attack2: 2680
Defense: 129
MagicDefense: 78
Str: 125
Agi: 156
Vit: 70
Int: 165
Dex: 262
Luk: 142
AttackRange: 3
SkillRange: 10
ChaseRange: 12
Size: Large
Race: Brute
Element: Water
ElementLevel: 4
WalkSpeed: 400
AttackDelay: 432
AttackMotion: 840
DamageMotion: 216
Ai: 21
Class: Boss
Modes:
Mvp: true
MvpDrops:
- Item: Yggdrasilberry
Rate: 5000
Index: 0
- Item: Yggdrasilberry
Rate: 5000
Index: 1
- Item: IllusionStone
Rate: 5000
Drops:
- Item: Ktullanux_Eye
Rate: 4000
- Item: Clack_Of_Servival
Rate: 1000
- Item: Herald_Of_GOD
Rate: 1000
- Item: Huuma_Fluttering_Snow
Rate: 1000
- Item: AwakenKtullanux_Card
Rate: 1
StealProtected: true
- Id: 3797
AegisName: ILL_FROZEN_KN
Name: ILL_FROZEN_KN
Level: 1
Hp: 100
Defense: 100
MagicDefense: 99
SkillRange: 10
ChaseRange: 12
Size: Medium
Race: Formless
Element: Neutral
ElementLevel: 1
WalkSpeed: 1000
AttackDelay: 500
AttackMotion: 500
DamageMotion: 500
Modes:
NORANDOMWALK: true
IGNOREMELEE: true
IGNOREMAGIC: true
IGNORERANGED: true
IGNOREMISC: true
KNOCKBACKIMMUNE: true
TELEPORTBLOCK: true
STATUSIMMUNE: true
SKILLIMMUNE: true
- Id: 3798
AegisName: ILL_FROZEN_GC
Name: ILL_FROZEN_GC
Level: 1
Hp: 100
Defense: 100
MagicDefense: 99
SkillRange: 10
ChaseRange: 12
Size: Medium
Race: Formless
Element: Neutral
ElementLevel: 1
WalkSpeed: 1000
AttackDelay: 500
AttackMotion: 500
DamageMotion: 500
Modes:
NORANDOMWALK: true
IGNOREMELEE: true
IGNOREMAGIC: true
IGNORERANGED: true
IGNOREMISC: true
KNOCKBACKIMMUNE: true
TELEPORTBLOCK: true
STATUSIMMUNE: true
SKILLIMMUNE: true
# - Id: 3799
# AegisName: ILL_ASSULTER
# - Id: 3800

View File

@ -12863,6 +12863,55 @@
3765,Deranged Adventurer@NPC_TALK,idle,682,10,2500,0,35000,yes,self,always,0,,,,,,,53
3765,Deranged Adventurer@NPC_TALK,idle,682,10,2500,0,30000,yes,self,always,0,,,,,,,54
// Illusion frozen
3792,ILL_GAZETI@CR_AUTOGUARD,idle,249,5,1500,0,30000,yes,self,always,0,,,,,,,
3792,ILL_GAZETI@MG_COLDBOLT,chase,14,5,2000,0,5000,no,target,always,0,,,,,,,
3792,ILL_GAZETI@MG_COLDBOLT,attack,14,9,2000,0,5000,no,target,always,0,,,,,,,
3792,ILL_GAZETI@NPC_GUIDEDATTACK,attack,172,2,500,0,20000,no,target,always,0,,,,,,,
3792,ILL_GAZETI@NPC_WATERATTACK,attack,184,4,2000,0,5000,no,target,always,0,,,,,,,
3793,ILL_SNOWIER@NPC_WATERATTACK,attack,184,5,500,500,5000,no,target,always,0,,,,,,,
3793,ILL_SNOWIER@NPC_CRITICALSLASH,attack,170,1,500,0,5000,yes,target,always,0,,,,,,,
3793,ILL_SNOWIER@SM_BASH,attack,5,7,1000,0,5000,yes,target,always,0,,,,,,,
3793,ILL_SNOWIER@WZ_FROSTNOVA,attack,88,1,10000,1500,20000,no,self,always,0,,,,,,,
3793,ILL_SNOWIER@SM_ENDURE,attack,8,5,5000,0,5000,yes,self,longrangeattacked,0,,,,,,,
3793,ILL_SNOWIER@BS_HAMMERFALL,attack,110,4,1500,1000,4000,no,target,myhpltmaxrate,50,,,,,,,
3793,ILL_SNOWIER@CR_AUTOGUARD,attack,249,5,1000,0,300000,yes,self,myhpltmaxrate,50,,,,,,,
3794,ILL_ICE_TITAN@MG_FROSTDIVER,chase,15,9,10000,800,5000,no,target,always,0,,,,,,,
3794,ILL_ICE_TITAN@MG_FROSTDIVER,attack,15,9,2000,800,5000,no,target,always,0,,,,,,,
3794,ILL_ICE_TITAN@NPC_COMBOATTACK,attack,171,4,1000,700,5000,no,target,always,0,,,,,,36,
3794,ILL_ICE_TITAN@NPC_WATERATTACK,attack,184,4,2000,0,5000,no,target,always,0,,,,,,29,
3794,ILL_ICE_TITAN@BS_HAMMERFALL,attack,110,5,500,1500,5000,no,target,always,0,,,,,,,
3794,ILL_ICE_TITAN@NPC_MAGICMIRROR,attack,671,1,200,500,30000,no,self,myhpltmaxrate,50,,,,,,,
3796,ILL_KTULLANUX@NPC_ALLHEAL,idle,687,1,10000,0,20000,yes,self,myhpltmaxrate,90,,,,,,,
3796,ILL_KTULLANUX@NPC_WATERATTACK,attack,184,10,1000,500,5000,no,target,always,0,,,,,,,
3796,ILL_KTULLANUX@NPC_JACKFROST,attack,720,5,1000,1500,35000,no,self,always,0,,,,,,,
3796,ILL_KTULLANUX@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
3796,ILL_KTULLANUX@AL_TELEPORT,walk,26,1,5000,0,5000,yes,self,rudeattacked,0,,,,,,,
3796,ILL_KTULLANUX@NPC_CALLSLAVE,attack,352,1,10000,0,30000,yes,self,always,0,,,,,,,
3796,ILL_KTULLANUX@NPC_CALLSLAVE,idle,352,1,10000,0,30000,yes,self,always,0,,,,,,,
3796,ILL_KTULLANUX@NPC_SUMMONSLAVE,attack,196,1,10000,700,30000,no,self,slavele,3,,,,,,,
3796,ILL_KTULLANUX@NPC_SUMMONSLAVE,idle,196,1,10000,700,30000,no,self,slavele,3,,,,,,,
// 3796,ILL_KTULLANUX@NPC_WIDEFREEZE2,chase,763,5,10000,0,20000,yes,target,myhpltmaxrate,80,,,,,,32,
// 3796,ILL_KTULLANUX@NPC_WIDEFREEZE2,attack,763,5,10000,0,20000,yes,target,myhpltmaxrate,80,,,,,,32,
3796,ILL_KTULLANUX@SA_DISPELL,attack,289,5,10000,0,15000,yes,target,always,0,,,,,,,
3796,ILL_KTULLANUX@SA_DISPELL,chase,289,5,10000,0,15000,yes,target,always,0,,,,,,,
3796,ILL_KTULLANUX@NPC_ARMORBRAKE,attack,344,10,2000,0,5000,yes,target,always,0,,,,,,29,
3796,ILL_KTULLANUX@MG_FROSTDIVER,idle,15,40,5000,500,7000,no,target,longrangeattacked,0,,,,,,,
3796,ILL_KTULLANUX@MG_FROSTDIVER,chase,15,40,5000,500,7000,no,target,always,0,,,,,,,
3796,ILL_KTULLANUX@WZ_STORMGUST,chase,89,10,5000,500,20000,no,target,always,0,,,,,,,
3796,ILL_KTULLANUX@WZ_STORMGUST,attack,89,10,5000,1000,20000,no,target,always,0,,,,,,,
3796,ILL_KTULLANUX@WZ_WATERBALL,chase,86,10,5000,0,20000,yes,target,always,0,,,,,,,
3796,ILL_KTULLANUX@WZ_WATERBALL,attack,86,10,5000,0,20000,yes,target,always,0,,,,,,,
3796,ILL_KTULLANUX@WZ_FROSTNOVA,chase,88,10,5000,0,20000,yes,self,always,0,,,,,,,
3796,ILL_KTULLANUX@WZ_FROSTNOVA,attack,88,10,5000,0,20000,yes,self,always,0,,,,,,,
3796,ILL_KTULLANUX@NPC_POWERUP,attack,349,5,2000,0,100000,yes,self,always,0,,,,,,,
3796,ILL_KTULLANUX@NPC_POWERUP,attack,349,5,10000,0,25000,yes,self,myhpltmaxrate,30,,,,,,,
3796,ILL_KTULLANUX@NPC_AGIUP,attack,350,5,2000,0,100000,yes,self,always,0,,,,,,,
3796,ILL_KTULLANUX@NPC_AGIUP,attack,350,5,10000,0,25000,yes,self,myhpltmaxrate,30,,,,,,,
3796,ILL_KTULLANUX@NPC_CRITICALWOUND,attack,673,3,4000,0,50000,yes,target,always,0,,,,,,,
3796,ILL_KTULLANUX@NPC_MENTALBREAKER,attack,159,5,10000,0,5000,yes,target,skillused,490,,,,,,,
3796,ILL_KTULLANUX@WZ_WATERBALL,attack,86,10,10000,0,5000,yes,target,skillused,271,,,,,,,
// Poring Village instance
3810,MD_KING_PORING@SM_BASH,attack,5,3,1000,1000,9000,yes,target,always,0,,,,,,,60
3810,MD_KING_PORING@MG_FIREBALL,attack,17,3,1000,1000,9000,yes,target,always,0,,,,,,,61

View File

@ -8462,6 +8462,8 @@ Body:
- Id: 12411
Title: Come Back Tomorrow
TimeLimit: 4h
- Id: 12415
Title: Contract with Fantasy Ganghwa
- Id: 12416
Title: Contract with Emily
- Id: 12417
@ -9950,9 +9952,48 @@ Body:
- Id: 15093
Title: Promote the 13th Anniversary
TimeLimit: 4h
- Id: 15110
Title: Fighting Ice with Fire
- Id: 15111
Title: Hunt Furious Ice Titans
Targets:
- Mob: ILL_ICE_TITAN
Count: 10
- Id: 15112
Title: Direct Approach
Targets:
- Mob: ILL_FROZEN_GC
Count: 1
- Id: 15113
Title: Direct Approach
Targets:
- Mob: ILL_FROZEN_KN
Count: 1
- Id: 15114
Title: Catch a Strange Lizard
Targets:
- Mob: ILL_KTULLANUX
Count: 1
- Id: 15115
Title: Bride and Jace
Title: Vrid and Zeith
TimeLimit: 4h
- Id: 15116
Title: Clear the Illusion of the Frozen
- Id: 15117
Title: Hunt Furious Gazetis
Targets:
- Mob: ILL_GAZETI
Count: 10
- Id: 15118
Title: Hunt Furious Snowiers
Targets:
- Mob: ILL_SNOWIER
Count: 10
- Id: 15119
Title: Hunt Hard Icicles
Targets:
- Mob: ILL_ICEICLE
Count: 10
- Id: 15128
Title: Chocolate Delivery Complete
TimeLimit: 4h

View File

@ -7,6 +7,7 @@
//= 1.0 Initial release of Illusion of Moonlight [crazyarashi]
//= 1.1 Cleanup and improvements [Everade]
//= 1.2 Added Illusion of Vampire enchanter [Capuche]
//= 1.3 Added Illusion of Frozen enchanter [Capuche]
//============================================================
//============================================================
@ -613,3 +614,724 @@ OnProgress:
progressbar_npc "000000",1;
end;
}
//============================================================
//= Illusion of Frozen
//============================================================
// illusion exchange npc - trade items for illusion gears
ice_dun02,153,18,3 script Illusion Stone Research 4_M_ALCHE_B,{
disable_items;
mes "[Illusion Stone Researcher]";
mes "Ah, Illusion Stones are truly mysterious...";
next;
switch( select( "What are you doing here?", "Upgrade weapon.", "Upgrade armor." ) ) {
case 1:
mes "[Illusion Stone Researcher]";
mes "I'm here to find some Illusion Stones that I need for my research.";
next;
mes "[Illusion Stone Researcher]";
mes "This cave is very mysterious, but I'm not strong enough to explore it by myself.";
mes "If you go in there, could you procure some things for me?";
next;
mes "[Illusion Stone Researcher]";
mes "In exchange, I'll improve your equipment.";
mes "What do you say?";
close;
case 2:
setarray .@reward_id[0],
13337, // Huuma_Flutter_Snow_IL
1846; // Combo_Battle_Glove_IL
setarray .@reward_name$[0],
getitemname(.@reward_id[0]),
getitemname(.@reward_id[1]);
mes "[Illusion Stone Researcher]";
mes "The following is the list of equipment I can handle.";
mes "<ITEM>" + .@reward_name$[0] + "<INFO>" + .@reward_id[0] + "</INFO></ITEM>";
mes "<ITEM>" + .@reward_name$[1] + "<INFO>" + .@reward_id[1] + "</INFO></ITEM>";
next;
mes "[Illusion Stone Researcher]";
mes "Make sure ^4d4dffyour equipment is refined to at least +9^000000 before bringing it to me.";
mes "Make sure you're ^4d4dffequipped with the item that you want to improve^000000.";
next;
mes "[Illusion Stone Researcher]";
mes "As you may have guessed, your equipment will transform into something new after this.";
mes "In other words, ^4d4dffit'll lose its current Refining and Upgrade levels.^000000";
next;
mes "[Illusion Stone Researcher]";
mes "And I need ^4d4dffIllusion Stones and some other materials^000000 to upgrade your equipment.";
mes "Pick an item you want. I'll tell you what I need.";
next;
.@s = select( .@reward_name$[0], .@reward_name$[1], "Cancel." ) - 1;
switch(.@s) {
case 0: // Huuma_Flutter_Snow_IL
.@eq_req = 13314; // Huuma_Fluttering_Snow
.@part = EQI_HAND_R;
setarray .@items_req[0],
25271,100, // IllusionStone
25300,20; // KTULLANUXsEye
break;
case 1: // Combo_Battle_Glove_IL
.@eq_req = 1822; // Combo_Battle_Glove
.@part = EQI_HAND_R;
setarray .@items_req[0],
25271,100, // IllusionStone
25299,100; // Snowball
break;
case 2:
end;
}
break;
case 3:
setarray .@reward_id[0],
28922, // Herald_Of_GOD_IL
20847, // Clack_Of_Servival_IL
19223; // Cap_IL
setarray .@reward_name$[0],
getitemname(.@reward_id[0]),
getitemname(.@reward_id[1]),
getitemname(.@reward_id[2]);
mes "[Illusion Stone Researcher]";
mes "The following is the list of equipment I can handle.";
mes "<ITEM>" + .@reward_name$[0] + "<INFO>" + .@reward_id[0] + "</INFO></ITEM>";
mes "<ITEM>" + .@reward_name$[1] + "<INFO>" + .@reward_id[1] + "</INFO></ITEM>";
mes "<ITEM>" + .@reward_name$[2] + "<INFO>" + .@reward_id[2] + "</INFO></ITEM>";
next;
mes "[Illusion Stone Researcher]";
mes "Make sure ^4d4dffyour equipment is refined to at least +9^000000 before bringing it to me.";
mes "Make sure you're ^4d4dffequipped with the item that you want to improve^000000.";
next;
mes "[Illusion Stone Researcher]";
mes "As you may have guessed, your equipment will transform into something new after this.";
mes "In other words, ^4d4dffit'll lose its current Refining and Upgrade levels.^000000";
mes "Are you ready?";
next;
.@s = select( .@reward_name$[0], .@reward_name$[1], .@reward_name$[2], "Cancel." ) - 1;
switch(.@s) {
case 0: // Herald_Of_GOD_IL
.@eq_req = 2128; // Herald_Of_GOD_
.@part = EQI_HAND_L;
setarray .@items_req[0],
25271,100, // IllusionStone
25298,300; // SpritJewel
break;
case 1: // Clack_Of_Servival_IL
.@eq_req = 2509; // Clack_Of_Servival
.@part = EQI_GARMENT;
setarray .@items_req[0],
25271,100, // IllusionStone
25297,200; // Frozen_PieceOfRock
break;
case 2: // Cap_IL
.@eq_req = 2227; // Cap_
.@part = EQI_HEAD_TOP;
setarray .@items_req[0],
25271,50, // IllusionStone
25297,100; // Frozen_PieceOfRock
break;
case 3:
end;
}
break;
}
mes "[Illusion Stone Researcher]";
mes "For that equipment, I need the following materials.";
mes "^4d4fff +9 " + getitemname(.@eq_req) + "";
mes "" + .@items_req[1] + " " + getitemname(.@items_req[0]) + "";
mes "" + .@items_req[3] + " " + getitemname(.@items_req[2]) + "^000000";
mes "Do you want to continue?";
next;
if (select( "Continue.", "I'll bring those materials." ) == 2) {
mes "[Illusion Stone Researcher]";
mes "Come back when you're ready.";
close;
}
if (countitem(.@items_req[0]) < .@items_req[1] || countitem(.@items_req[2]) < .@items_req[3]) {
mes "[Illusion Stone Researcher]";
mes "You don't have all the materials.";
close;
}
.@equip_id = getequipid(.@part);
if (.@equip_id == -1) {
mes "[Illusion Stone Researcher]";
if (.@part == EQI_HAND_R)
mes "Where's your weapon?";
else
mes "Why don't you go wear that equipment first?";
close;
}
if (.@equip_id != .@eq_req) {
mes "[Illusion Stone Researcher]";
mes "Please equip a ^4d4fff+9 " + getitemname(.@eq_req) + ".^000000";
close;
}
if (getequiprefinerycnt(.@part) < 9) {
mes "[Illusion Stone Researcher]";
mes "I can only upgrade equipment that is ^4d4fffrefined to at least +9.^000000";
close;
}
mes "[Illusion Stone Researcher]";
mes "There you go.";
delequip .@part;
delitem .@items_req[0], .@items_req[1];
delitem .@items_req[2], .@items_req[3];
getitem .@reward_id[.@s],1;
close;
}
// illusion enhancing - enhance the illusion gears
// note: unknown enhance rate
prontera,90,115,5 script Illusion Enchanter#0 4_GEFFEN_09,3,3,{
if (checkweight(1201,1) == 0 || MaxWeight - Weight < 2000) {
mes "I'm overweight. I'd better lighten my bag first.";
close;
}
disable_items;
if (isbegin_quest(12415) == 0) {
mes "[Illusion Enchanter]";
mes "Oh, do you have Illusion equipment?";
next;
select("No. I don't even know what Illusion equipment is.");
mes "[Illusion Enchanter]";
mes "Oops, I'm sorry. I should've introduced myself first.";
next;
mes "[Illusion Enchanter]";
mes "I'm a chemist specializing in the study of Illusion Stones, which have been circulating among adventurers.";
next;
select("Illusion Stones?");
mes "[Illusion Enchanter]";
mes "You don't know, don't you? They're the hottest trend these days.";
next;
select("I don't care about trends.");
mes "[Illusion Enchanter]";
mes "You must have heard about the strange places that have sprung up here and there lately. Illusion Stones are only found in those places,";
next;
mes "[Illusion Enchanter]";
mes "and their atomic structure is unlike any mineral I've seen. *Blah Blah* ...Their chemical chains... *Blah Blah*";
next;
select("(Uh-oh, he's zoning out!)");
mes "[Illusion Enchanter]";
mes "Anyway, I can enchant equipment that is exchanged for or purchased with Illusion Stones. I call them the Illusion equipment.";
next;
select("(He has no sense when it comes to names.)");
mes "[Illusion Enchanter]";
mes "This equipment at least responds positively to Illusion Stones, or it has the potential to be enchanted successfully.";
next;
mes "[Illusion Enchanter]";
mes "Explore the worlds of illusions, collect Illusion Stones, and exchange them for equipment. I can enchant the equipment for you.";
next;
mes "[Illusion Enchanter]";
mes "This benefits both of us. I need Illusion Stones for my studies, and you need powerful equipment for your adventures.";
next;
mes "[Illusion Enchanter]";
mes "That said, my service is not for free. It requires a few Illusion Stones and Zeny.";
next;
mes "[Illusion Enchanter]";
mes "If you're interested, how'd you like to get a membership for my service? You can get discounts that way!";
next;
if (select( "Sure!", "Not interested." ) == 2) {
mes "[Illusion Enchanter]";
mes "Okay, but let me know if you change your mind.";
close;
}
mes "[Illusion Enchanter]";
mes "Alright, then I'll add you to my member list. I hope you'll have some Illusion equipment next time I see you.";
setquest 12415;
completequest 12415;
close;
}
mes "[Illusion Enchanter]";
mes "I can enchant Illusion equipment.";
next;
switch( select( "How much do you charge?", "Add stats to Illusion equipment.", "Reset enchanted Illusion equipment." ) ) {
case 1:
mes "[Illusion Enchanter]";
mes "First, let me tell you that I can only enchant certain types of Illusion equipment.";
next;
mes "[Illusion Enchanter]";
mes "Up to 2 sockets can be enchanted, and enchanting each socket requires 5 Illusion Stones. You can reset enchanted Illusion equipment at any time.";
next;
mes "[Illusion Enchanter]";
mes "Enchanting never fails, but resetting sometimes failes. Even modern science can't change that.";
next;
mes "[Illusion Enchanter]";
mes "Resetting requires a different amount of Zeny depending on the success chance you choose. Select the menu if you'd like to see the available payment options.";
close;
case 2:
.@reset = false;
break;
case 3:
.@reset = true;
break;
}
setarray .@location[0], EQI_HAND_R, EQI_ARMOR, EQI_SHOES, EQI_GARMENT, EQI_ACC_R, EQI_ACC_L, EQI_HEAD_TOP, EQI_HAND_L;
.@s = select( "Right-handed Weapon", "Armor", "Shoes", "Garment", "Right Accessory", "Left accessory", "Helm (Upper)", "Left-handed Weapon/Shield" ) - 1;
.@loc = .@location[.@s];
.@eq_id = getequipid(.@loc);
switch(.@eq_id) {
// Illusion of Moonlight
case 15195: // Puente_Robe_IL
case 16063: // Long_Mace_IL
case 19209: // Nurse_Cap_IL
case 20838: // Muffler_IL
case 19210: // Apple_Of_Archer_IL
case 22133: // Shoes_IL
case 26007: // Spectral_Spear_IL
case 26109: // Staff_Of_Bordeaux_IL
case 28725: // Moonlight_Sword_IL
// Illusion of Vampire
case 28022: // Infiltrator_IL
case 28023: // Ghoul_Leg_IL
case 2039: // Wizardy_Staff_IL
case 18149: // Balistar_IL
case 28612: // Book_Of_The_Apo_IL
case 20840: // Cape_Of_Ancient_Lord_IL
case 28508: // Skul_Ring_IL
case 28509: // Ring_IL
// Illusion of Frozen
case 1846: // Combo_Battle_Glove_IL
case 13337: // Huuma_Flutter_Snow_IL
case 19223: // Cap_IL
case 28922: // Herald_Of_GOD_IL
case 20847: // Clack_Of_Servival_IL
// Illusion of Teddy bear
case 28745: // Illusion_Counter_Dagger
case 28244: // Illusion_Gate_Keeper_DD
case 2051: // Illusion_Survivor's_Staff
case 22190: // Illusion_Boots
case 19344: // Illusion_Hot_blooded_Headband
// Illusion of Turtle
case 13469: // Illusion_Immaterial_Sword
case 1326: // Illusion_War_Axe
case 32005: // Illusion_Pole_Axe
case 13338: // Illusion_Wing_Shuriken
case 16065: // Illusion_Iron_Driver
case 19247: // Illusion_Fancy_Flower
// Illusion of Twins
case 450182: // Sprint_Mail_IL
case 470066: // Sprint_Shoes_IL
case 490120: // Sprint_Ring_IL
case 490121: // Sprint_Glove_IL
case 550030: // Thorn_Staff_IL
case 550031: // Dea_Staff_IL
case 530015: // Gelerdria_IL
case 500030: // Excalibur_IL
case 620010: // Doom_Slayer_IL
case 510034: // Ancient_Dagger_IL
case 460017: // Guard_IL
case 460018: // Siver_Guard_IL
// Illusion of Luanda
case 28626: // Illusion_Tablet
case 18174: // Illusion_Hunter_Bow
case 19366: // Illusion_Goibne_Helm
case 15348: // Illusion_Goibne_Armor
case 20923: // Illusion_Goibne_Spaulders
case 22192: // Illusion_Goibne's_Greaves
// Illusion of Labyrinth
case 19428: // Illusion_Morpheus's_Hood
case 20948: // Illusion_Morpheus's_Shawl
case 32238: // Illusion_Morpheus's_Ring
case 32239: // Illusion_Morpheus's_Bracelet
case 28254: // Illusion_Butcher
case 21050: // Illusion_Tae_Goo_Lyeon
case 32301: // Illusion_Gold_Lux
case 28762: // Illusion_Bazerald
// Illusion of underwater
case 570008: // Electronic_Guitar_IL
case 580008: // Electric_Eel_IL
case 630006: // Brionac_IL
case 610012: // KatarOfCold_Icicle_IL
case 600011: // Death_Guidance_IL
case 630007: // Zephyrus_IL
case 450144: // Saint_Robe_IL
case 450145: // Water_Sprits_Armor_IL
case 450146: // Chain_Mail_IL
case 400053: // Morrigane's_Helm_IL
case 480054: // Morrigane's_Manteau_IL
case 490069: // Morrigane's_Belt_IL
case 490070: // Morrigane's_Pendant_IL
break;
case -1:
mes "[Illusion Enchanter]";
mes "You must be equipped with an item in the selected location to have it enchanted.";
close;
default:
mes "[Illusion Enchanter]";
mes "This equipment is not from a world of fantastic illusions. I'm offended that you even showed it to me.";
close;
}
for ( .@i = 0; .@i < MAX_ITEM_RDM_OPT-1; ++.@i ) {
if (getequiprandomoption(.@loc, .@i, ROA_ID) > 0) {
mes "^ff0000Random options are checked for that equipment. The equipment cannot be enchanted.^000000";
close;
}
}
.@weapon_lvl = getequipweaponlv(.@loc);
.@loc_enchant = .@loc; // variable for enhancing function
switch(.@weapon_lvl) {
case 0:
break;
case 1:
case 2:
case 3:
if (.@loc_enchant == EQI_HAND_L)
.@loc_enchant = EQI_HAND_R; // the equipment is a weapon so the enchantments must be for weapons
break;
default: // illusion weapon level 4 can't be enhanced
mes "[Illusion Enchanter]";
mes "This is the best of all Illusion equipment. There's no technology available in this day and age that can enchant it. Even the most skilled enchanter can't do that.";
next;
mes "[Illusion Enchanter]";
mes "Well, not unless he's willing to risk his mental and physical health.";
next;
mes "[Illusion Enchanter]";
mes "But who knows? Maybe someday you'll meet someone who is talented enough to handle this precious equipment.";
close;
}
.@refine = getequiprefinerycnt(.@loc);
.@card[0] = getequipcardid(.@loc,0);
.@card[1] = getequipcardid(.@loc,1);
.@card[2] = getequipcardid(.@loc,2);
.@card[3] = getequipcardid(.@loc,3);
switch(.@reset) {
case false:
.@item_req = 25271; // IllusionStone
.@item_req_count = 5;
if (.@card[2] > 0 && .@card[3] > 0) {
mes "[Illusion Enchanter]";
mes "This equipment is already enchanted to the maximum limit.";
close;
}
if (.@weapon_lvl > 0) {
mes "[Illusion Enchanter]";
mes "What kind of effect would you like to add?";
next;
.@weapon_enchant_type = select( "Melee", "Ranged", "Magic" );
}
mes "[Illusion Enchanter]";
if (.@card[3] > 0) {
.@slot = 2;
.@string$ = "second";
}
else {
.@slot = 3;
.@string$ = "first";
}
mes "I'll try to enchant the " + .@string$ + " ability for your item. ^ff0000Its existing Refining level and cards will not be damaged. It will not be destroyed, even if this attempt fails.^000000 Do you want to continue?";
next;
if (select( "I'll come back later.", "Sure!" ) == 1) {
mes "[Illusion Enchanter]";
mes "No problem. Come back if you change your mind.";
close;
}
if (countitem(.@item_req) < .@item_req_count) {
mes "[Illusion Enchanter]";
mes "This item requires " + .@item_req_count + " " + getitemname(.@item_req) + ", and you don't have all that I need from you.";
close;
}
// anti-hack
if (callfunc("F_IsEquipIDHack", .@loc, .@eq_id) || callfunc("F_IsEquipCardHack", .@loc, .@card[0], .@card[1], .@card[2], .@card[3]) || callfunc("F_IsEquipRefineHack", .@loc, .@refine))
close;
.@card[.@slot] = callsub( S_Enchant, .@loc_enchant, .@slot, .@weapon_enchant_type );
delitem .@item_req, .@item_req_count;
delequip .@loc;
getitem2 .@eq_id,1,1,.@refine,0,.@card[0],.@card[1],.@card[2],.@card[3];
mes "[Illusion Enchanter]";
mes "It's done. Please check.";
specialeffect2 EF_REPAIRWEAPON;
close;
case true:
if (!F_IsCharm(.@card[2]) || !F_IsCharm(.@card[3])) {
mes "[Illusion Enchanter]";
mes "Only fully enchanted items can be reset. Please enchant it twice, and if you still want to reset it, then bring it to me.";
close;
}
mes "[Illusion Enchanter]";
mes "Your resetting chance varies, depending on the amount of Zeny you pay. What would you like to do?";
next;
.@s = select( "I'll come back later.", "100,000 Zeny (50%)", "200,000 Zeny (60%)", "300,000 Zeny (70%)", "400,000 Zeny (80%)", "500,000 Zeny (90%)" ) - 1;
if (.@s == 0) {
mes "[Illusion Enchanter]";
mes "No problem. Come back if you change your mind.";
close;
}
.@cost = 100000 * .@s;
.@rate = 40 + 10 * .@s;
if (Zeny < .@cost) {
mes "[Illusion Enchanter]";
mes "You don't have enough money.";
close;
}
// anti-hack
if (callfunc("F_IsEquipIDHack", .@loc, .@eq_id) || callfunc("F_IsEquipCardHack", .@loc, .@card[0], .@card[1], .@card[2], .@card[3]) || callfunc("F_IsEquipRefineHack", .@loc, .@refine))
close;
Zeny -= .@cost;
delequip .@loc;
if (rand(100) < .@rate) {
getitem2 .@eq_id,1,1,.@refine,0,.@card[0],.@card[1],0,0;
mes "[Illusion Enchanter]";
mes "It's done. Please check.";
specialeffect2 EF_REPAIRWEAPON;
close;
}
mes "[Illusion Enchanter]";
mes "Ah, that was unfortunate. Well, you can't always be lucky.";
specialeffect2 EF_LORD;
close;
}
end;
S_Enchant:
.@slot = getarg(1);
switch( getarg(0)) { // location
case EQI_HAND_R:
switch( getarg(2)) {// weapon enchant type
case 1:// Melee
switch( .@slot ) {
case 2:
case 3:
// <item ID>, <rate> (unknown)
setarray .@item[0],
4700, 1, // Strength1
4701, 1, // Strength2
4702, 1, // Strength3
4703, 1, // Strength4
4720, 1, // Dexterity1
4721, 1, // Dexterity2
4722, 1, // Dexterity3
4723, 1, // Dexterity4
4750, 1, // Luck1
4751, 1, // Luck2
4752, 1, // Luck3
4753, 1, // Luck4
4808, 1, // Fighting_Spirit4
4809, 1, // Fighting_Spirit3
4810, 1, // Fighting_Spirit2
4811, 1, // Fighting_Spirit1
4820, 1, // Fighting_Spirit5
29081, 1, // Expect1Lv
29082, 1, // Expect2Lv
29083, 1, // Expect3Lv
29084, 1, // Expect4Lv
29085, 1, // Expect5Lv
29061, 1, // Ambition1Lv
29062, 1, // Ambition2Lv
29063, 1, // Ambition3Lv
29064, 1, // Ambition4Lv
29065, 1, // Ambition5Lv
4807, 1, // Atk_Speed1
4842, 1; // Atk_Speed2
break;
default:
return 0;
}
break;
case 2:// Ranged
switch( .@slot ) {
case 2:
case 3:
// <item ID>, <rate>
setarray .@item[0],
4730, 1, // Agility1
4731, 1, // Agility2
4732, 1, // Agility3
4733, 1, // Agility4
4720, 1, // Dexterity1
4721, 1, // Dexterity2
4722, 1, // Dexterity3
4723, 1, // Dexterity4
4750, 1, // Luck1
4751, 1, // Luck2
4752, 1, // Luck3
4753, 1, // Luck4
4807, 1, // Atk_Speed1
4842, 1, // Atk_Speed2
4832, 1, // Expert_Archer1
4833, 1, // Expert_Archer2
4834, 1, // Expert_Archer3
4835, 1, // Expert_Archer4
4836, 1, // Expert_Archer5
29091, 1, // ArchLine1Lv
29092, 1, // ArchLine2Lv
29093, 1, // ArchLine3Lv
29094, 1, // ArchLine4Lv
29095, 1, // ArchLine5Lv
29071, 1, // Tab1Lv
29072, 1, // Tab2Lv
29073, 1, // Tab3Lv
29074, 1, // Tab4Lv
29075, 1; // Tab5Lv
break;
default:
return 0;
}
break;
case 3:// Magic
switch( .@slot ) {
case 2:
case 3:
// <item ID>, <rate>
setarray .@item[0],
4710, 1, // Inteligence1
4711, 1, // Inteligence2
4712, 1, // Inteligence3
4713, 1, // Inteligence4
4720, 1, // Dexterity1
4721, 1, // Dexterity2
4722, 1, // Dexterity3
4723, 1, // Dexterity4
4750, 1, // Luck1
4751, 1, // Luck2
4752, 1, // Luck3
4753, 1, // Luck4
4812, 1, // Spell4
4813, 1, // Spell3
4814, 1, // Spell2
4815, 1, // Spell1
4826, 1, // Spell5
4805, 1, // Heal_Amount2
4850, 1; // Heal_Amount3
break;
default:
return 0;
}
break;
default:
return 0;
}
break;
case EQI_ARMOR:
case EQI_SHOES:
case EQI_GARMENT:
case EQI_HAND_L:
case EQI_HEAD_TOP:
switch( .@slot ) {
case 2:
case 3:
// <item ID>, <rate>
setarray .@item[0],
4700, 700, // Strength1
4701, 600, // Strength2
4702, 500, // Strength3
4703, 200, // Strength4
4740, 700, // Vitality1
4741, 600, // Vitality2
4742, 500, // Vitality3
4743, 200, // Vitality4
4710, 700, // Inteligence1
4711, 600, // Inteligence2
4712, 500, // Inteligence3
4713, 200, // Inteligence4
4750, 700, // Luck1
4751, 600, // Luck2
4752, 500, // Luck3
4753, 200, // Luck4
4994, 10, // Rune of Strength Lv 1
4995, 10, // Rune of Strength Lv 2
4997, 10, // Rune of Agility Lv 1
4998, 10, // Rune of Agility Lv 2
29009, 10, // Rune of Vitality Lv 1
29010, 10, // Rune of Vitality Lv 2
29000, 10, // Rune of Intellect Lv 1
29001, 10, // Rune of Intellect Lv 2
29003, 10, // Rune of Dexterity Lv 1
29004, 10, // Rune of Dexterity Lv 2
29006, 10, // Rune of Luck Lv 1
29007, 10, // Rune of Luck Lv 2
4861, 700, // MHP1
4862, 600, // MHP2
4867, 440, // MHP3
4868, 100, // MHP4
4992, 10, // HPAbsorb1_Supplement_Reactor
4993, 10, // SPAbsorb1_Supplement_Reactor
29208, 10, // SP_Absorption_2
29210, 10; // HP_Absorption_23
break;
default:
return 0;
}
break;
case EQI_ACC_L:
case EQI_ACC_R:
switch( .@slot ) {
case 2:
case 3:
// <item ID>, <rate>
setarray .@item[0],
4700, 576, // Strength1
4701, 460, // Strength2
4702, 115, // Strength3
4703, 11, // Strength4
4730, 576, // Agility1
4731, 460, // Agility2
4732, 115, // Agility3
4733, 11, // Agility4
4740, 576, // Vitality1
4741, 460, // Vitality2
4742, 115, // Vitality3
4743, 11, // Vitality4
4710, 576, // Inteligence1
4711, 460, // Inteligence2
4712, 115, // Inteligence3
4713, 11, // Inteligence4
4720, 576, // Dexterity1
4721, 460, // Dexterity2
4722, 115, // Dexterity3
4723, 11, // Dexterity4
4750, 576, // Luck1
4751, 460, // Luck2
4752, 115, // Luck3
4753, 11, // Luck4
4928, 576, // SP10
4870, 460, // SP25
4800, 345, // SP50
4871, 115, // SP75
4801, 11, // SP100
4795, 576, // HP100
4796, 460, // HP200
4797, 345, // HP300
4798, 115, // HP400
4799, 11; // HP500
break;
default:
return 0;
}
break;
default:
return 0;
}
.@size = getarraysize(.@item);
for ( .@i = 0; .@i < .@size; .@i += 2 )
.@total_rate += .@item[.@i+1];
.@r = rand(.@total_rate);
for ( .@i = 0; .@i < .@size; .@i += 2 ) {
.@rate_tmp += .@item[.@i+1];
if (.@r < .@rate_tmp)
break;
}
return .@item[.@i];
OnTouch:
if (isbegin_quest(12415) == 0)
npctalk "Illusion Enchanter: Come talk to me if you're interested in the Illusion equipment!", "", bc_self;
end;
}

View File

@ -1,16 +0,0 @@
//===== rAthena Script =======================================
//= Illusion of Vampire
//===== Description: =========================================
//= Illusion of Vampire monster spawn script.
//===== Changelog: ===========================================
//= 1.0 Initial Release [Everade]
//============================================================
gef_d01_i monster White Plant 1082,12
gef_d01_i monster Blue Plant 1079,2
gef_d01_i monster Matt Drainliar 3750,25
gef_d01_i monster Living Dead 3751,10
gef_d01_i monster Starving Living Dead 3752,20
gef_d01_i monster Living Dead 3753,30
gef_d01_i monster Sweet Nightmare 3754,25
gef_d01_i monster Black Mushroom 3755,15

View File

@ -11,6 +11,7 @@
//= 1.3 More accurate spawns [Playtester]
//= 1.4 Corrected MVP spawn variance. [L0ne_W0lf]
//= 1.5 Correct Spawn by Navigation's mob data. [attackjom]
//= 1.6 Added Illusion of Vampire [Everade]
//============================================================
//==================================================
@ -69,3 +70,15 @@ gef_dun03,0,0 monster Wind Ghost 1263,5,5000
gef_dun03,0,0 monster Hellion Revenant 1626,1,600000,300000
gef_dun03,0,0 monster Shining Plant 1083,5,1800000,900000
gef_dun03,0,0 monster White Plant 1082,18,180000,90000
//==================================================
// gef_d01_i - Illusion of Vampire
//==================================================
gef_d01_i monster White Plant 1082,12
gef_d01_i monster Blue Plant 1079,2
gef_d01_i monster Matt Drainliar 3750,25
gef_d01_i monster Living Dead 3751,10
gef_d01_i monster Starving Living Dead 3752,20
gef_d01_i monster Living Dead 3753,30
gef_d01_i monster Sweet Nightmare 3754,25
gef_d01_i monster Black Mushroom 3755,15

View File

@ -11,6 +11,7 @@
//= 1.1 More accurate spawns [Playtester]
//= 1.2 Removed Ktullanux spawn, quest implemented [L0ne_W0lf]
//= 1.3 Correct Spawn by Navigation's mob data. [attackjom]
//= 1.4 Added Illusion of Frozen. [Capuche]
//============================================================
//==================================================
@ -37,3 +38,11 @@ ice_dun03,0,0 monster Ice Titan 1777,70,5000
ice_dun03,0,0 monster Gazeti 1778,42,5000
ice_dun03,0,0 monster Iceicle 1789,32,5000
ice_dun03,0,0 monster Snowier 1775,15,5000
//==================================================
// ice_d03_i - Illusion of Frozen
//==================================================
ice_d03_i monster Angry Gazeti 3792,30
ice_d03_i monster Angry Snowier 3793,30
ice_d03_i monster Angry Ice Titan 3794,20
ice_d03_i monster Solid Icicle 3795,20

View File

@ -1,52 +0,0 @@
//===== rAthena Script =======================================
//= Illusion of Moonlight
//===== Description: =========================================
//= Illusion of Moonlight monster spawn script.
//===== Additional Comments: =================================
//= 1.0 Initial Release [crazyarashi]
//= 1.1 Added missing boss kill label [Everade]
//============================================================
pay_d03_i monster Blue Plant 1079,1
pay_d03_i monster Green Plant 1080,1,5000,0
pay_d03_i monster Yellow Plant 1081,1,5000,0
pay_d03_i monster White Plant 1082,5,5000,0
pay_d03_i monster Whisper 1185,1,5000,0
pay_d03_i,154,112 monster Whisper 1185,1,5000,0
pay_d03_i,161,117 monster Whisper 1185,1,5000,0
pay_d03_i,84,63 monster Whisper 1185,1,5000,0
pay_d03_i,81,61 monster Whisper 1185,1,5000,0
pay_d03_i monster Resentful Munak 3760,20,5000,0
pay_d03_i monster Resentful Bongun 3761,20,5000,0
pay_d03_i monster Resentful Sohee 3762,20,5000,0
pay_d03_i monster Resentful Soldier 3763,15
pay_d03_i monster Deranged Adventurer 3765,5,15000,0
pay_d03_i,55,75 monster Wizard of the Truth 3764,1,30000,0
pay_d03_i monster Angry Nine Tail 3759,10,5000,0,"illusion_mob#moonlight::OnKill"
- script illusion_mob#moonlight -1,{
end;
OnKill:
if (.mvp_spawn == 1)
end;
.kill_count += 1;
if (.kill_count > 1000) {
if (rand(100) < 10) // !todo Confirm chance
donpcevent strnpcinfo(0)+"::OnBossSpawn";
}
end;
OnBossSpawn:
.mvp_spawn = 1;
.kill_count = 0;
monster "pay_d03_i",0,0,"Angry Moonlight Flower",3758,1,"illusion_mob#moonlight::OnBossKill";
mapannounce "pay_d03_i", "Angry Moonlight Flower: Who dares bully us again? They're in a lot of trouble!", bc_map, "0x70dbdb";
end;
OnBossKill:
.mvp_spawn = 0;
.kill_count = 0;
end;
}

View File

@ -11,6 +11,8 @@
//= 1.2 Small spawn update [Playtester]
//= 1.3 Corrected MVP spawn variance. [L0ne_W0lf]
//= 1.4 Correct Spawn by Navigation's mob data. [attackjom]
//= 1.5 Added Illusion of Moonlight [crazyarashi]
//= 1.6 Added missing boss kill label [Everade]
//============================================================
//==================================================
@ -149,3 +151,50 @@ pay_dun04,0,0 monster Red Plant 1078,10,180000,90000
pay_dun04,107,206,5,5 monster White Plant 1082,2,180000,90000
pay_dun04,28,110,10,10 monster White Plant 1082,2,180000,90000
pay_dun04,190,207,5,5 monster White Plant 1082,2,180000,90000
//==================================================
// pay_d03_i - Illusion of Moonlight
//==================================================
pay_d03_i monster Blue Plant 1079,1
pay_d03_i monster Green Plant 1080,1,5000,0
pay_d03_i monster Yellow Plant 1081,1,5000,0
pay_d03_i monster White Plant 1082,5,5000,0
pay_d03_i monster Whisper 1185,1,5000,0
pay_d03_i,154,112 monster Whisper 1185,1,5000,0
pay_d03_i,161,117 monster Whisper 1185,1,5000,0
pay_d03_i,84,63 monster Whisper 1185,1,5000,0
pay_d03_i,81,61 monster Whisper 1185,1,5000,0
pay_d03_i monster Resentful Munak 3760,20,5000,0
pay_d03_i monster Resentful Bongun 3761,20,5000,0
pay_d03_i monster Resentful Sohee 3762,20,5000,0
pay_d03_i monster Resentful Soldier 3763,15
pay_d03_i monster Deranged Adventurer 3765,5,15000,0
pay_d03_i,55,75 monster Wizard of the Truth 3764,1,30000,0
pay_d03_i monster Angry Nine Tail 3759,10,5000,0,"illusion_mob#moonlight::OnKill"
- script illusion_mob#moonlight -1,{
end;
OnKill:
if (.mvp_spawn == 1)
end;
.kill_count += 1;
if (.kill_count > 1000) {
if (rand(100) < 10) // !todo Confirm chance
donpcevent strnpcinfo(0)+"::OnBossSpawn";
}
end;
OnBossSpawn:
.mvp_spawn = 1;
.kill_count = 0;
monster "pay_d03_i",0,0,"Angry Moonlight Flower",3758,1,"illusion_mob#moonlight::OnBossKill";
mapannounce "pay_d03_i", "Angry Moonlight Flower: Who dares bully us again? They're in a lot of trouble!", bc_map, "0x70dbdb";
end;
OnBossKill:
.mvp_spawn = 0;
.kill_count = 0;
end;
}

File diff suppressed because it is too large Load Diff

View File

@ -25,7 +25,6 @@ npc: npc/re/mobs/dungeons/dew_dun.txt
npc: npc/re/mobs/dungeons/dic_dun.txt
npc: npc/re/mobs/dungeons/ecl_tdun.txt
npc: npc/re/mobs/dungeons/ein_dun.txt
npc: npc/re/mobs/dungeons/gef_d01_i.txt
npc: npc/re/mobs/dungeons/gef_dun.txt
npc: npc/re/mobs/dungeons/gefenia.txt
npc: npc/re/mobs/dungeons/glastheim.txt
@ -50,7 +49,6 @@ npc: npc/re/mobs/dungeons/mosk_dun.txt
npc: npc/re/mobs/dungeons/nyd_dun.txt
npc: npc/re/mobs/dungeons/odin.txt
npc: npc/re/mobs/dungeons/orcsdun.txt
npc: npc/re/mobs/dungeons/pay_d03_i.txt
npc: npc/re/mobs/dungeons/pay_dun.txt
npc: npc/re/mobs/dungeons/prt_maze.txt
npc: npc/re/mobs/dungeons/prt_prison.txt