summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.md5
-rw-r--r--npc/re/instances/ghost_palace.txt407
-rw-r--r--npc/re/instances/octopus_cave.txt290
-rw-r--r--src/map/script.c7
4 files changed, 370 insertions, 339 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b18826d20..2b1745233 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -9,6 +9,10 @@ and this project does not adhere to [Semantic Versioning](http://semver.org/spec
If you are reading this in a text editor, simply ignore this section
-->
+## [v2017.10.22-1] `October 22 2017` `PATCH 1`
+### Fixed
+- Fixed a wrong null pointer check in `logmes()`, which caused the command to never log and instead print debug information.
+
## [v2017.10.22] `October 22 2017`
### Added
- Added the script command `getmapinfo()`, which allows to obtain misc information about a map. (#1852)
@@ -32,4 +36,5 @@ If you are reading this in a text editor, simply ignore this section
- New versioning scheme and project changelogs/release notes (#1853)
[Unreleased]: https://github.com/HerculesWS/Hercules/compare/stable...master
+[v2017.10.22-1]: https://github.com/HerculesWS/Hercules/compare/v2017.10.22...v2017.10.22-1
[v2017.10.22]: https://github.com/HerculesWS/Hercules/compare/6b1fe2d...v2017.10.22
diff --git a/npc/re/instances/ghost_palace.txt b/npc/re/instances/ghost_palace.txt
index 6e77db2f8..e4ca12f99 100644
--- a/npc/re/instances/ghost_palace.txt
+++ b/npc/re/instances/ghost_palace.txt
@@ -35,7 +35,7 @@ dali02,44,129,5 script Unpleasent Royal Guard 4_M_SAKRAYROYAL,{
if (BaseLevel < 120) {
mes("[Unpleasent Royal Guard]");
mes("Althought I need help with a task, you are not strong enough to assist me, noob~!");
- next;
+ next();
mes("[Unpleasent Royal Guard]");
mes("Come back after when you have done some training and are at least level 120!");
close();
@@ -50,7 +50,7 @@ dali02,44,129,5 script Unpleasent Royal Guard 4_M_SAKRAYROYAL,{
mes("[Unpleasent Royal Guard]");
mes("Did the gate close?\r"
"Please enter the gate as soon as you can next time.");
- erasequest 1260;
+ erasequest(1260);
close();
}
mes("[Unpleasent Royal Guard]");
@@ -64,7 +64,7 @@ dali02,44,129,5 script Unpleasent Royal Guard 4_M_SAKRAYROYAL,{
mes("This is a solo instance. Please form a solo party before continuing.");
close();
}
- if (getcharid(CHAR_ID_CHAR) != getpartyleader(.@party_id,2)) {
+ if (getcharid(CHAR_ID_CHAR) != getpartyleader(.@party_id, 2)) {
mes("[Unpleasent Royal Guard]");
mes("I'm looking for adventurers to help me!\r"
"I want to talk to the team leader, can I?");
@@ -72,25 +72,25 @@ dali02,44,129,5 script Unpleasent Royal Guard 4_M_SAKRAYROYAL,{
}
mes("[Unpleasent Royal Guard]");
mes("I need some help, even from the likes of you.");
- next;
+ next();
mes("[Unpleasent Royal Guard]");
mes("In the middle of the battle the princess disappeared while I was guarding the palace.");
- next;
+ next();
mes("[Unpleasent Royal Guard]");
mes("You run ahead and i will catch up.\r"
"We must save her.");
- next;
+ next();
if (select("I will help.", "This is not a good time.") == 2) {
mes("[Unpleasent Royal Guard]");
mes("Even now all the royal guards are fighting and dying to the monsters.");
- next;
+ next();
mes("[Unpleasent Royal Guard]");
mes("We must save the princess no matter how much fear grips our hearts!");
close();
}
- .@instance = instance_create("Ghost Palace", .@party_id);
+ .@instance = instance_create(_("Ghost Palace"), .@party_id);
.@p_name$ = getpartyname(.@party_id);
- .@md_name$ = "Ghost Palace";
+ .@md_name$ = _("Ghost Palace");
if (.@instance < 0) {
mesf("Party Name: %s", .@p_name$);
mesf("Party Leader: %s", strcharinfo(PC_NAME));
@@ -100,7 +100,8 @@ dali02,44,129,5 script Unpleasent Royal Guard 4_M_SAKRAYROYAL,{
if (instance_attachmap("1@spa", .@instance) != "") {
instance_set_timeout(3600, 300, .@instance);
instance_init(.@instance);
- if (!questprogress(1260)) setquest 1260;
+ if (!questprogress(1260))
+ setquest(1260);
mes("[Unpleasent Royal Guard]");
mes("Thank You..\r"
"I will open the secret passage to ^0000FFGhost Palace.^000000\r"
@@ -117,23 +118,23 @@ dali02,41,134,0 script Interdimensional Device::gpportal PORTAL,{
if (BaseLevel < 120) {
mes("[Unpleasent Royal Guard]");
mes("Althought I need help with a task, you are not strong enough to assist me, noob~!");
- next;
+ next();
mes("[Unpleasent Royal Guard]");
mes("Come back after when you have done some training and are at least level 120!");
close();
}
if (questprogress(1261)) {
if (questprogress(1261, PLAYTIME) == 2) {
- erasequest 1261;
+ erasequest(1261);
if (questprogress(1260))
- erasequest 1260;
+ erasequest(1260);
end;
}
mes("[Unpleasent Royal Guard]");
mes("The monsters that attacked the palace are wandering around the secret entrance. It would be very bad if they spotted us... Please wait until the time limit for re-entrance passed.");
close();
}
- if (getcharid(CHAR_ID_CHAR) == getpartyleader(.@party_id,2) && !questprogress(1260)) {
+ if (getcharid(CHAR_ID_CHAR) == getpartyleader(.@party_id, 2) && !questprogress(1260)) {
mes("[Unpleasent Royal Guard]");
mes("I'm looking for adventurers to help me!\r"
"I want to talk to the team leader, can I?");
@@ -141,11 +142,11 @@ dali02,41,134,0 script Interdimensional Device::gpportal PORTAL,{
}
mes("[Unpleasent Royal Guard]");
mes("I can see the secret passage into the Palace... Are you ready to save the princess?!");
- next;
+ next();
if (select("Enter", "Stop") == 2) {
mes("[Unpleasent Royal Guard]");
mes("Even now all the royal guards are fighting and dying to the monsters.");
- next;
+ next();
mes("[Unpleasent Royal Guard]");
mes("We must save the princess no matter how much fear grips our hearts!");
close();
@@ -155,8 +156,9 @@ dali02,41,134,0 script Interdimensional Device::gpportal PORTAL,{
close();
}
mapannounce("dali", sprintf(_$("%s of the party, %s, is entering the Ghost Palace."), strcharinfo(PC_NAME), getpartyname(getcharid(CHAR_ID_PARTY))), bc_map, C_SPRINGGREEN);
- if (!questprogress(1260)) setquest 1260;
- setquest 1261;
+ if (!questprogress(1260))
+ setquest(1260);
+ setquest(1261);
warp("1@spa", 198, 188);
close();
}
@@ -165,35 +167,35 @@ dali02,41,134,0 script Interdimensional Device::gpportal PORTAL,{
mes("[King]");
mes("You are hereby appointed as the personal guard to Princess Tiara. I trust your loyalty above all else.");
npctalk(_("You are hereby appointed as the personal guard to Princess Tiara. I trust your loyalty above all else."), instance_npcname("King#gp1"));
- next;
+ next();
mes("[Lurid Royal Guard]");
mes("I will protect the Princess with my life.");
npctalk(_("I will protect the Princess with my life."), instance_npcname("Lurid Royal Guard#gp1"));
- next;
+ next();
mes("[King]");
mes("The marriage arrangements are going as planned. The prince is here to meet the princess.");
npctalk(_("The marriage arrangements are going as planned. The prince is here to meet the princess."), instance_npcname("King#gp1"));
- next;
+ next();
mes("[Lurid Royal Guard]");
mes("...Yes, your majesty.");
npctalk(_("...Yes, your majesty."), instance_npcname("Lurid Royal Guard#gp1"));
- next;
+ next();
mes("[King]");
mes("My gods, there are monsters in the castle! Get rid of them now!");
npctalk(_("My gods, there are monsters in the castle! Get rid of them now!"), instance_npcname("King#gp1"));
close2();
- donpcevent instance_npcname("#gp1control")+"::OnStart";
+ donpcevent(instance_npcname("#gp1control")+"::OnStart");
end;
}
1@spa,1,1,1 script #gp1control HIDDEN_NPC,{
end;
OnStart:
- hideonnpc instance_npcname("Lurid Royal Guard#gp1");
- hideonnpc instance_npcname("King#gp1");
- sleep 1000;
+ hideonnpc(instance_npcname("Lurid Royal Guard#gp1"));
+ hideonnpc(instance_npcname("King#gp1"));
+ sleep(1000);
OnSummon:
- sleep 2000;
+ sleep(2000);
.@map$ = instance_mapname("1@spa");
areamonster(.@map$, 182, 190, 214, 214, _("Cursed Sentinel"), CURSED_SENTINEL, 2, instance_npcname("#gp1control")+"::OnMyMobDead");
areamonster(.@map$, 182, 190, 214, 214, _("Cursed Solider"), CURSED_SOLDIER, 2, instance_npcname("#gp1control")+"::OnMyMobDead");
@@ -203,16 +205,16 @@ OnMyMobDead:
end;
if ('gp1 < 2) {
++'gp1;
- donpcevent instance_npcname("#gp1control")+"::OnSummon";
+ donpcevent(instance_npcname("#gp1control")+"::OnSummon");
end;
}
mapannounce(instance_mapname("1@spa"), _("The passage on 2nd floor in the palace of the ghost is open."), bc_map, C_YELLOW);
- enablenpc instance_npcname("#gp1warp");
- disablenpc instance_npcname("#gp1control");
+ enablenpc(instance_npcname("#gp1warp"));
+ disablenpc(instance_npcname("#gp1control"));
end;
OnInstanceInit:
'gp1 = 0;
- disablenpc instance_npcname("#gp1warp");
+ disablenpc(instance_npcname("#gp1warp"));
end;
}
@@ -221,53 +223,53 @@ OnInstanceInit:
mes("[Lurid Royal Guard]");
mes("Your Highness, the King has invited a prince from a neighboring country to be your betrothed. Be ready to meet him...");
npctalk(_("Your Highness, the King has invited a prince from a neighboring country to be your betrothed. Be ready to meet him..."), instance_npcname("Lurid Royal Guard#gp2"));
- next;
+ next();
mes("[Princess Tiara]");
mes("If...if a marriage is arranged what should I do ?");
npctalk(_("If...if a marriage is arranged what should I do ?"), instance_npcname("Tiara Princess#gp2"));
- next;
+ next();
mes("[Lurid Royal Guard]");
mes("The only thing I can do is protect you from physical harm.");
npctalk(_("The only thing I can do is protect you from physical harm."), instance_npcname("Lurid Royal Guard#gp2"));
- next;
+ next();
mes("[Princess Tiara]");
mes("Then, what can I do?");
npctalk(_("Then, what can I do?"), instance_npcname("Tiara Princess#gp2"));
- next;
+ next();
mes("[Lurid Royal Guard]");
mes("......");
mes("You must decide that for yourself your highness...");
npctalk(_("You must decide that for yourself your highness..."), instance_npcname("Lurid Royal Guard#gp2"));
- next;
+ next();
mes("[Princess Tiara]");
mes("Would it be easier for you if I were married and sent off to another country?");
npctalk(_("Would it be easier for you if I were married and sent off to another country?"), instance_npcname("Tiara Princess#gp2"));
- next;
+ next();
cutin("", 255);
mes("[Lurid Royal Guard]");
mes("I will alway stand by you and protect you forever.");
npctalk(_("I will alway stand by you and protect you forever."), instance_npcname("Lurid Royal Guard#gp2"));
- next;
+ next();
mes("[Princess Tiara]");
mes("Monsters in the castle? Protect me!");
npctalk(_("Monsters in the castle? Protect me!"), instance_npcname("Tiara Princess#gp2"));
- next;
+ next();
mes("[Lurid Royal Guard]");
mes("Step back, Let's go!");
npctalk(_("Step back, Let's go!"), instance_npcname("Lurid Royal Guard#gp2"));
close2();
- donpcevent instance_npcname("#gp2control")+"::OnStart";
+ donpcevent(instance_npcname("#gp2control")+"::OnStart");
end;
}
1@spa,1,1,1 script #gp2control HIDDEN_NPC,{
end;
OnStart:
- hideonnpc instance_npcname("Lurid Royal Guard#gp2");
- hideonnpc instance_npcname("Tiara Princess#gp2");
- sleep 1000;
+ hideonnpc(instance_npcname("Lurid Royal Guard#gp2"));
+ hideonnpc(instance_npcname("Tiara Princess#gp2"));
+ sleep(1000);
OnSummon:
- sleep 2000;
+ sleep(2000);
.@map$ = instance_mapname("1@spa");
areamonster(.@map$, 143, 96, 94, 143, _("Broken Mind"), BROKEN_MIND, 3, instance_npcname("#gp2control")+"::OnMyMobDead");
areamonster(.@map$, 143, 96, 94, 143, _("Floating Word"), FLOATING_WORD, 4, instance_npcname("#gp2control")+"::OnMyMobDead");
@@ -277,11 +279,11 @@ OnMyMobDead:
if (mobcount(instance_mapname("1@spa"), instance_npcname("#gp2control")+"::OnMyMobDead"))
end;
mapannounce(instance_mapname("1@spa"), _("The passage on the 3rd floor of the palace is open."), bc_map, C_YELLOW);
- enablenpc instance_npcname("#gp2warp");
- disablenpc instance_npcname("#gp2control");
+ enablenpc(instance_npcname("#gp2warp"));
+ disablenpc(instance_npcname("#gp2control"));
end;
OnInstanceInit:
- disablenpc instance_npcname("#gp2warp");
+ disablenpc(instance_npcname("#gp2warp"));
end;
}
@@ -289,29 +291,29 @@ OnInstanceInit:
mes("[King]");
mes("It was you who brought the monsters here, you want to get rid of me and have the princess for yourself?");
npctalk(_("It was you who brought the monsters here, you want to get rid of me and have the princess for yourself?"), instance_npcname("King#gp3"));
- next;
+ next();
mes("[Lurid Royal Guard]");
mes("It's a trap, you should trust me, your majesty!");
npctalk(_("It's a trap, you should trust me, your majesty!"), instance_npcname("Lurid Royal Guard#gp3"));
- next;
+ next();
mes("[King]");
mes("Shut up! You're betrayed me ! I trusted you... you must pay for your disgrace.");
npctalk(_("Shut up! You're betrayed me ! I trusted you... you must pay for your disgrace."), instance_npcname("King#gp3"));
- next;
+ next();
mes("[King]");
mes("You will suffer for the rest of your life.");
npctalk(_("You will suffer for the rest of your life."), instance_npcname("King#gp3"));
close2();
- donpcevent instance_npcname("#gp3control")+"::OnStart";
+ donpcevent(instance_npcname("#gp3control")+"::OnStart");
end;
}
1@spa,54,28,0 script #gp3warp WARPNPC,1,1,{
- if (!'gp5)
+ if (!'gp5) {
warp("1@spa", 218, 186);
- else {
+ } else {
if (questprogress(40024))
- completequest 40024;
+ completequest(40024);
mes("It is time to leave Palace of the ghost.\r"
"Everything is completed.\r"
"Everything will be vanished...");
@@ -332,7 +334,7 @@ OnInstanceInit:
1@spa,35,56,1 script Ominous Voice#gp3 4_TRACE,{
end;
OnStart:
- initnpctimer;
+ initnpctimer();
end;
OnTimer3000:
npctalk(_("Oh, faithful royal guard, you are trapped."));
@@ -356,32 +358,32 @@ OnTimer21000:
npctalk(_("Kukuku... What do you want boy?"));
end;
OnTimer24000:
- stopnpctimer;
- hideonnpc instance_npcname("Ominous Voice#gp3");
- hideonnpc instance_npcname("Lurid Royal Guard#gp3");
- donpcevent instance_npcname("#gp3control")+"::OnSummon";
+ stopnpctimer();
+ hideonnpc(instance_npcname("Ominous Voice#gp3"));
+ hideonnpc(instance_npcname("Lurid Royal Guard#gp3"));
+ donpcevent(instance_npcname("#gp3control")+"::OnSummon");
end;
}
1@spa,1,1,1 script #gp3control HIDDEN_NPC,{
end;
OnStart:
- hideonnpc instance_npcname("King#gp3");
- hideonnpc instance_npcname("Soldier#gp3_1");
- hideonnpc instance_npcname("Soldier#gp3_2");
- hideonnpc instance_npcname("Soldier#gp3_3");
- hideonnpc instance_npcname("Captain of the Guard#gp3");
- donpcevent instance_npcname("Ominous Voice#gp3")+"::OnStart";
+ hideonnpc(instance_npcname("King#gp3"));
+ hideonnpc(instance_npcname("Soldier#gp3_1"));
+ hideonnpc(instance_npcname("Soldier#gp3_2"));
+ hideonnpc(instance_npcname("Soldier#gp3_3"));
+ hideonnpc(instance_npcname("Captain of the Guard#gp3"));
+ donpcevent(instance_npcname("Ominous Voice#gp3")+"::OnStart");
end;
OnSummon:
- initnpctimer;
+ initnpctimer();
.@map$ = instance_mapname("1@spa");
'talkid[0] = areamonster(.@map$, 61, 63, 24, 24, _("Cursed Memory"), CURSED_MEMORY, 2 + 'gp3, instance_npcname("#gp3control")+"::OnMyMobDead");
'talkid[1] = areamonster(.@map$, 61, 63, 24, 24, _("Colorless Vow"), COLORLESS_VOW, 3 + 'gp3, instance_npcname("#gp3control")+"::OnMyMobDead");
'talkid[2] = areamonster(.@map$, 61, 63, 24, 24, _("Old Friendship"), OLD_FRIENDSHIP, 2 + 'gp3, instance_npcname("#gp3control")+"::OnMyMobDead");
end;
OnTimer2000:
- stopnpctimer;
+ stopnpctimer();
unittalk('talkid[0], _("Faithful Guards"));
unittalk('talkid[1], _("Run!"));
unittalk('talkid[2], _("Being framed..."));
@@ -390,21 +392,21 @@ OnMyMobDead:
if (mobcount(instance_mapname("1@spa"), instance_npcname("#gp3control")+"::OnMyMobDead"))
end;
if (!'gp3) {
- mapannounce instance_mapname("1@spa"), "The passage on the 4rd floor of the palace is open.", bc_map, C_YELLOW;
- enablenpc instance_npcname("#gp3warp");
- donpcevent instance_npcname("#gp4control")+"::OnSummon";
- disablenpc instance_npcname("#gp1warp");
+ mapannounce(instance_mapname("1@spa"), _("The passage on the 4rd floor of the palace is open."), bc_map, C_YELLOW);
+ enablenpc(instance_npcname("#gp3warp"));
+ donpcevent(instance_npcname("#gp4control")+"::OnSummon");
+ disablenpc(instance_npcname("#gp1warp"));
}
++'gp3;
- if ('gp3 < 5)
- donpcevent instance_npcname("#gp3control")+"::OnSummon";
- else {
- stopnpctimer;
- disablenpc instance_npcname("#gp3control");
+ if ('gp3 < 5) {
+ donpcevent(instance_npcname("#gp3control")+"::OnSummon");
+ } else {
+ stopnpctimer();
+ disablenpc(instance_npcname("#gp3control"));
}
end;
OnInstanceInit:
- disablenpc instance_npcname("#gp3warp");
+ disablenpc(instance_npcname("#gp3warp"));
'gp3 = 0;
end;
}
@@ -413,26 +415,26 @@ OnInstanceInit:
mes("[Lurid Royal Guard]");
mes("Where is Princess Tiara?");
npctalk(_("Where is Princess Tiara?"), instance_npcname("Lurid Royal Guard#gp4"));
- next;
+ next();
mes("[Visiting Prince]");
mes("You are too late... but you brought what I was looking for. Thanks for your help.");
npctalk(_("You are too late... but you brought what I was looking for. Thanks for your help."), instance_npcname("Visiting Prince#gp4"));
- next;
+ next();
mes("[Visiting Prince]");
mes("Cursed Thanatos Magic Trace! Are you ready to have a new master?");
npctalk(_("Cursed Thanatos Magic Trace! Are you ready to have a new master?"), instance_npcname("Visiting Prince#gp4"));
- next;
+ next();
cutin("tartanos", 3);
mes("[Thanatos Magic Trace]");
mes("How dare you!");
npctalk(_("How dare you!"), instance_npcname("Thanatos Magic Trace#gp4"));
- next;
+ next();
mes("[Visiting Prince]");
mes("Aah, aah!!!");
npctalk(_("Aah, aah!!!"), instance_npcname("Visiting Prince#gp4"));
close2();
cutin("", 255);
- donpcevent instance_npcname("#gp4control")+"::OnBoss";
+ donpcevent(instance_npcname("#gp4control")+"::OnBoss");
end;
}
@@ -442,56 +444,56 @@ OnStart:
end;
OnSummon:
.@map$ = instance_mapname("1@spa");
- areamonster(.@map$, 182, 217, 214, 188, _("Cursed Sentinel"), CURSED_SENTINEL, rand(2,3), instance_npcname("#gp4control")+"::OnMyMobDead");
- areamonster(.@map$, 182, 217, 214, 188, _("Sweet Slaughter"), SWEET_SLAUGHTER, rand(2,3), instance_npcname("#gp4control")+"::OnMyMobDead");
+ areamonster(.@map$, 182, 217, 214, 188, _("Cursed Sentinel"), CURSED_SENTINEL, rand(2, 3), instance_npcname("#gp4control")+"::OnMyMobDead");
+ areamonster(.@map$, 182, 217, 214, 188, _("Sweet Slaughter"), SWEET_SLAUGHTER, rand(2, 3), instance_npcname("#gp4control")+"::OnMyMobDead");
end;
OnMyMobDead:
if (mobcount(instance_mapname("1@spa"), instance_npcname("#gp4control")+"::OnMyMobDead"))
end;
++'gp4;
if ('gp4 > 3)
- donpcevent instance_npcname("#gp4control")+"::OnStory";
+ donpcevent(instance_npcname("#gp4control")+"::OnStory");
else
- donpcevent instance_npcname("#gp4control")+"::OnSummon";
+ donpcevent(instance_npcname("#gp4control")+"::OnSummon");
end;
OnStory:
for(.@i = 1; .@i <= 4; ++.@i)
- enablenpc instance_npcname("Soldier's Corpse#gp4_"+.@i);
- enablenpc instance_npcname("Captain's Corpse#gp4");
- enablenpc instance_npcname("King's Corpse#gp4");
- enablenpc instance_npcname("Lurid Royal Guard#gp4");
- enablenpc instance_npcname("Thanatos Magic Trace#gp4");
- enablenpc instance_npcname("Visiting Prince#gp4");
+ enablenpc(instance_npcname("Soldier's Corpse#gp4_"+.@i));
+ enablenpc(instance_npcname("Captain's Corpse#gp4"));
+ enablenpc(instance_npcname("King's Corpse#gp4"));
+ enablenpc(instance_npcname("Lurid Royal Guard#gp4"));
+ enablenpc(instance_npcname("Thanatos Magic Trace#gp4"));
+ enablenpc(instance_npcname("Visiting Prince#gp4"));
end;
OnBoss:
for(.@i = 1; .@i <= 4; ++.@i)
- hideonnpc instance_npcname("Soldier's Corpse#gp4_"+.@i);
- hideonnpc instance_npcname("Captain's Corpse#gp4");
- hideonnpc instance_npcname("King's Corpse#gp4");
- hideonnpc instance_npcname("Lurid Royal Guard#gp4");
- hideonnpc instance_npcname("Thanatos Magic Trace#gp4");
- hideonnpc instance_npcname("Visiting Prince#gp4");
- sleep 1000;
+ hideonnpc(instance_npcname("Soldier's Corpse#gp4_"+.@i));
+ hideonnpc(instance_npcname("Captain's Corpse#gp4"));
+ hideonnpc(instance_npcname("King's Corpse#gp4"));
+ hideonnpc(instance_npcname("Lurid Royal Guard#gp4"));
+ hideonnpc(instance_npcname("Thanatos Magic Trace#gp4"));
+ hideonnpc(instance_npcname("Visiting Prince#gp4"));
+ sleep(1000);
monster(instance_mapname("1@spa"), 197, 218, _("Torturous Redeemer"), TORTUROUS_REDEEMER, 1, instance_npcname("#gp4control")+"::OnBossDead");
end;
OnBossDead:
monster(instance_mapname("1@spa"), 197, 180, _("Sweet Slaughter"), SWEET_SLAUGHTER, 1, instance_npcname("#gp4control")+"::OnMobDead");
end;
OnMobDead:
- mapannounce instance_mapname("1@spa"), "The passage on the 5th floor of the palace is open.", bc_map, C_YELLOW;
- enablenpc instance_npcname("#gp4warp");
- donpcevent instance_npcname("#gp5control")+"::OnStart";
- disablenpc instance_npcname("#gp4control");
+ mapannounce(instance_mapname("1@spa"), _("The passage on the 5th floor of the palace is open."), bc_map, C_YELLOW);
+ enablenpc(instance_npcname("#gp4warp"));
+ donpcevent(instance_npcname("#gp5control")+"::OnStart");
+ disablenpc(instance_npcname("#gp4control"));
end;
OnInstanceInit:
- disablenpc instance_npcname("#gp4warp");
+ disablenpc(instance_npcname("#gp4warp"));
for(.@i = 1; .@i <= 4; ++.@i)
- disablenpc instance_npcname("Soldier's Corpse#gp4_"+.@i);
- disablenpc instance_npcname("Captain's Corpse#gp4");
- disablenpc instance_npcname("King's Corpse#gp4");
- disablenpc instance_npcname("Lurid Royal Guard#gp4");
- disablenpc instance_npcname("Thanatos Magic Trace#gp4");
- disablenpc instance_npcname("Visiting Prince#gp4");
+ disablenpc(instance_npcname("Soldier's Corpse#gp4_"+.@i));
+ disablenpc(instance_npcname("Captain's Corpse#gp4"));
+ disablenpc(instance_npcname("King's Corpse#gp4"));
+ disablenpc(instance_npcname("Lurid Royal Guard#gp4"));
+ disablenpc(instance_npcname("Thanatos Magic Trace#gp4"));
+ disablenpc(instance_npcname("Visiting Prince#gp4"));
'gp4 = 0;
end;
}
@@ -500,35 +502,35 @@ OnInstanceInit:
mes("[Princess Tiara]");
mes("You kept your promise.");
npctalk(_("You kept your promise."), instance_npcname("Tiara Princess#gp5"));
- next;
+ next();
mes("[Lurid Royal Guard]");
mes("princess!");
npctalk(_("princess"), instance_npcname("Lurid Royal Guard#gp5"));
- next;
+ next();
cutin("npc-tiara", 3);
mes("[Princess Tiara]");
mes("Thank you..now I can rest at beside you...");
npctalk(_("Thank you..now I can rest at beside you..."), instance_npcname("Tiara Princess#gp5"));
- next;
+ next();
mes("[Lurid Royal Guard]");
mes("No..NO!!!!!!");
npctalk(_("No..NO!!!!!!"), instance_npcname("Lurid Royal Guard#gp5"));
- next;
+ next();
mes("[The Voice of Princess Tiara]");
mes("I want to be with you forever in peace...forever...");
npctalk(_("I want to be with you forever in peace...forever..."), instance_npcname("Tiara Princess#gp5"));
- next;
+ next();
cutin("b-tiara", 3);
mes("[Lurid Royal Guard]");
mes("no.....Ahh ahh ahh!!!~!");
npctalk(_("no.....Ahh ahh ahh!!!~!"), instance_npcname("Lurid Royal Guard#gp5"));
- next;
+ next();
mes("[The Voice of Princess Tiara]");
mes("I love you...");
npctalk(_("I love you..."), instance_npcname("Tiara Princess#gp5"));
close2();
cutin("", 255);
- donpcevent instance_npcname("#gp5control")+"::OnStart2";
+ donpcevent(instance_npcname("#gp5control")+"::OnStart2");
end;
}
@@ -537,63 +539,63 @@ OnInstanceInit:
mes("[Lurid Royal Guard]");
mes("Are you satisfied..? Thanatos Magic Trace?");
npctalk(_("Are you satisfied..? Thanatos Magic Trace?"), instance_npcname("Sakray#gp5"));
- next;
+ next();
mes("[Thanatos Magic Trace]");
mes("I need more blood..Sakray, offer me his blood.");
npctalk(_("I need more blood..Sakray, offer me his blood."), instance_npcname("Thanatos Magic Trace#gp5"));
- next;
+ next();
mes("[Sakray]");
mes("Okay, that is good. A traveler.\r"
"Did you see?");
npctalk(_("Okay, that is good. A traveler. Did you see?"), instance_npcname("Sakray#gp5"));
- next;
+ next();
mesf("[%s]", strcharinfo(PC_NAME));
mes("Sakray, What do you want sympathy? Or is it a trap?");
unittalk(getcharid(CHAR_ID_ACCOUNT), _("Sakray, What do you want sympathy? Or is it a trap?"));
- next;
+ next();
mes("[Sakray]");
mes("Non...I did not need to make an effort to catch a novice.");
npctalk(_("Non...I did not need to make an effort to catch a novice."), instance_npcname("Sakray#gp5"));
- next;
+ next();
mesf("[%s]", strcharinfo(PC_NAME));
mes("If so... then why...?");
unittalk(getcharid(CHAR_ID_ACCOUNT), _("If so... then why...?"));
- next;
+ next();
cutin("cry-b", 3);
mes("[Sakray]");
mes("I wanted to get rid of a piece of humanity inside of me through you.");
npctalk(_("I wanted to get rid of a piece of humanity inside of me through you."), instance_npcname("Sakray#gp5"));
- next;
+ next();
mes("[Sakray]");
mes("I am quite satisfied with the result.");
- next;
+ next();
mes("[Thanatos Magic Trace]");
mes("Sakray, offer the blood to me now!");
npctalk(_("Sakray, offer the blood to me now!"), instance_npcname("Thanatos Magic Trace#gp5"));
- next;
+ next();
mes("[Sakray]");
mes("If you were me, what would you do?");
- next;
+ next();
mes("[Sakray]");
mes("Can you set yourself free from this curse?");
- next;
+ next();
mesf("[%s]", strcharinfo(PC_NAME));
mes("...");
unittalk(getcharid(CHAR_ID_ACCOUNT), _("..."));
- next;
+ next();
mes("[Sakray]");
mes("Heh heh... I will keep watching you until the day you grow up enough.");
- next;
+ next();
mes("[Sakray]");
mes("I am willing to hunt you later for Thanatos.");
- next;
+ next();
cutin("", 255);
mes("[Sakray]");
mes("Farewell then.");
close2();
- donpcevent instance_npcname("#gp5control")+"::OnEnd";
- hideonnpc instance_npcname("Sakray#gp5");
- hideonnpc instance_npcname("Thanatos Magic Trace#gp5");
+ donpcevent(instance_npcname("#gp5control")+"::OnEnd");
+ hideonnpc(instance_npcname("Sakray#gp5"));
+ hideonnpc(instance_npcname("Thanatos Magic Trace#gp5"));
end;
}
@@ -601,25 +603,25 @@ OnInstanceInit:
end;
OnStart:
stopnpctimer instance_npcname("#gp3control");
- disablenpc instance_npcname("#gp3control");
- killmonster instance_mapname("1@spa"), "All";
- disablenpc instance_npcname("#gp3warp");
- enablenpc instance_npcname("Lurid Royal Guard#gp5");
- enablenpc instance_npcname("Tiara Princess#gp5");
+ disablenpc(instance_npcname("#gp3control"));
+ killmonster(instance_mapname("1@spa"), "All");
+ disablenpc(instance_npcname("#gp3warp"));
+ enablenpc(instance_npcname("Lurid Royal Guard#gp5"));
+ enablenpc(instance_npcname("Tiara Princess#gp5"));
end;
OnStart2:
- hideonnpc instance_npcname("Lurid Royal Guard#gp5");
- hideonnpc instance_npcname("Tiara Princess#gp5");
- sleep 2000;
+ hideonnpc(instance_npcname("Lurid Royal Guard#gp5"));
+ hideonnpc(instance_npcname("Tiara Princess#gp5"));
+ sleep(2000);
OnSummon:
- initnpctimer;
+ initnpctimer();
.@map$ = instance_mapname("1@spa");
- 'talkid[0] = areamonster(.@map$, 61, 63, 24, 24, _("Forgotten Name"), FORGOTTEN_NAME, rand(1,2), instance_npcname("#gp5control")+"::OnMyMobDead");
+ 'talkid[0] = areamonster(.@map$, 61, 63, 24, 24, _("Forgotten Name"), FORGOTTEN_NAME, rand(1, 2), instance_npcname("#gp5control")+"::OnMyMobDead");
'talkid[1] = areamonster(.@map$, 61, 63, 24, 24, _("Colorless Vow"), COLORLESS_VOW, 2, instance_npcname("#gp5control")+"::OnMyMobDead");
- 'talkid[2] = areamonster(.@map$, 61, 63, 24, 24, _("Sweet Slaughter"), SWEET_SLAUGHTER, rand(1,2), instance_npcname("#gp5control")+"::OnMyMobDead");
+ 'talkid[2] = areamonster(.@map$, 61, 63, 24, 24, _("Sweet Slaughter"), SWEET_SLAUGHTER, rand(1, 2), instance_npcname("#gp5control")+"::OnMyMobDead");
end;
OnTimer2000:
- stopnpctimer;
+ stopnpctimer();
unittalk('talkid[0], _("What is this..??"));
unittalk('talkid[1], _("Wake up! look at us... We are monsters?"));
unittalk('talkid[2], _("Sakray killed the princess!"));
@@ -629,51 +631,51 @@ OnMyMobDead:
end;
++'gp5;
if ('gp5 > 2)
- donpcevent instance_npcname("#gp5control")+"::OnStory";
+ donpcevent(instance_npcname("#gp5control")+"::OnStory");
else
- donpcevent instance_npcname("#gp5control")+"::OnSummon";
+ donpcevent(instance_npcname("#gp5control")+"::OnSummon");
end;
OnBossDead:
- enablenpc instance_npcname("Sakray#gp5");
- enablenpc instance_npcname("Thanatos Magic Trace#gp5");
+ enablenpc(instance_npcname("Sakray#gp5"));
+ enablenpc(instance_npcname("Thanatos Magic Trace#gp5"));
end;
OnStory:
- stopnpctimer;
+ stopnpctimer();
'BossID = monster(instance_mapname("1@spa"), 44, 47, _("Torturous Redeemer"), E_TORTUROUS_REDEEMER, 1, instance_npcname("#gp5control")+"::OnBossDead");
unittalk('BossID, _("Thanatos Magic Trace! I will destroy you if I can't have you... Oh no! How could this be?"));
- sleep 3000;
- unitkill 'BossID;
+ sleep(3000);
+ unitkill('BossID);
end;
OnEnd:
- hideoffnpc instance_npcname("Voice of Princess Tiara");
- hideoffnpc instance_npcname("Voice of Sakray");
- hideoffnpc instance_npcname("Thanatos Magic Trace");
+ hideoffnpc(instance_npcname("Voice of Princess Tiara"));
+ hideoffnpc(instance_npcname("Voice of Sakray"));
+ hideoffnpc(instance_npcname("Thanatos Magic Trace"));
npctalk(_("What can I do for you?"), instance_npcname("Voice of Princess Tiara"));
- sleep 3000;
+ sleep(3000);
npctalk(_("I will always stand by you. Please reset beside me."), instance_npcname("Voice of Sakray"));
- sleep 3000;
+ sleep(3000);
npctalk(_("Your soul is mine until you find the blood that satisfies me.."), instance_npcname("Thanatos Magic Trace"));
- sleep 3000;
+ sleep(3000);
npctalk(_("Reset in the shadow with me."), instance_npcname("Voice of Sakray"));
- sleep 3000;
+ sleep(3000);
npctalk(_("In the dark forever..."), instance_npcname("Voice of Sakray"));
- sleep 3000;
+ sleep(3000);
mapannounce(instance_mapname("1@spa"), _("It is time to leave the Ghost Palace."), bc_map, C_YELLOW);
- enablenpc instance_npcname("King#gpend");
- enablenpc instance_npcname("#gp3warp");
- hideonnpc instance_npcname("Voice of Princess Tiara");
- hideonnpc instance_npcname("Voice of Sakray");
- hideonnpc instance_npcname("Thanatos Magic Trace");
+ enablenpc(instance_npcname("King#gpend"));
+ enablenpc(instance_npcname("#gp3warp"));
+ hideonnpc(instance_npcname("Voice of Princess Tiara"));
+ hideonnpc(instance_npcname("Voice of Sakray"));
+ hideonnpc(instance_npcname("Thanatos Magic Trace"));
end;
OnInstanceInit:
- disablenpc instance_npcname("Lurid Royal Guard#gp5");
- disablenpc instance_npcname("Tiara Princess#gp5");
- disablenpc instance_npcname("Thanatos Magic Trace#gp5");
- disablenpc instance_npcname("Sakray#gp5");
- disablenpc instance_npcname("King#gpend");
- hideonnpc instance_npcname("Voice of Princess Tiara");
- hideonnpc instance_npcname("Voice of Sakray");
- hideonnpc instance_npcname("Thanatos Magic Trace");
+ disablenpc(instance_npcname("Lurid Royal Guard#gp5"));
+ disablenpc(instance_npcname("Tiara Princess#gp5"));
+ disablenpc(instance_npcname("Thanatos Magic Trace#gp5"));
+ disablenpc(instance_npcname("Sakray#gp5"));
+ disablenpc(instance_npcname("King#gpend"));
+ hideonnpc(instance_npcname("Voice of Princess Tiara"));
+ hideonnpc(instance_npcname("Voice of Sakray"));
+ hideonnpc(instance_npcname("Thanatos Magic Trace"));
'gp5 = 0;
end;
}
@@ -682,34 +684,34 @@ OnInstanceInit:
mes("[King]");
mes("Hey there, are you alive?\r"
"I did not expect to meet someone alive");
- next;
+ next();
mes("[King]");
mes("Do you possibly have ^009900Gray Piece^000000?\r"
"Can you give it to me?\r"
"The old memory of faithful royal guard,\r"
"the memory of everyone he loved becomes broken pieces and are contained inside of them.");
- next;
+ next();
mes("[King]");
mes("Will you give ^009900Gray Piece^000000 to me?\r"
"The guilt is eating my soul.\r"
"My soul is stuck in ghost palace.");
- next;
+ next();
mes("[King]");
mes("I am collecting Sakray's abandoned memories from these shards.");
- next;
+ next();
mes("[King]");
mes("If you give any Gray Shards to me, I can make equipment for you.");
- next;
+ next();
mes("[King]");
mes("The cursed knight...\r"
"Please help me save the soul of Sakray.");
- next;
+ next();
setarray(.@items_list,
- Thanos_Sword, Thanos_Great_Sword, Thanos_Spear, Thanos_Long_Spear, Thanos_Staff, Thanos_Rod, Thanos_Bow,
- Thanos_Dagger, Thanos_Katar, Thanos_Knuckle, Thanos_Hammer, Thanos_Axe, Thanos_Violin, Thanos_Whip, Shield_Of_Gray,
- Armor_Of_Gray, Gray_Robe, Cloak_Of_Gray, Boots_Of_Gray, Gray_Helmet);
+ Thanos_Sword, Thanos_Great_Sword, Thanos_Spear, Thanos_Long_Spear, Thanos_Staff, Thanos_Rod, Thanos_Bow,
+ Thanos_Dagger, Thanos_Katar, Thanos_Knuckle, Thanos_Hammer, Thanos_Axe, Thanos_Violin, Thanos_Whip, Shield_Of_Gray,
+ Armor_Of_Gray, Gray_Robe, Cloak_Of_Gray, Boots_Of_Gray, Gray_Helmet);
- setarray .@cost, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 100, 100, 100, 100, 100, 100;
+ setarray(.@cost, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 100, 100, 100, 100, 100, 100);
.@menulist$ = "";
for (.@i = 0; .@i < getarraysize(.@items_list); ++.@i)
.@menulist$ += getitemname(.@items_list[.@i])+":";
@@ -721,19 +723,19 @@ OnInstanceInit:
"I believe collecting Gray Shards is the only method to save him.");
close();
}
- next;
+ next();
mes("[King]");
mesf("to make a ^FF0000%s^000000 \r"
"I need %d ^009900Gray Shard^000000", getitemname(.@items_list[.@choice]), .@cost[.@choice]);
- switch (select("Cancel", "hand over "+.@cost[.@choice]+" Gray Shard.")) {
+ switch (select("Cancel", sprintf(_$("hand over %d Gray Shard."), .@cost[.@choice]))) {
case 1:
- next;
+ next();
mes("[King]");
mes("Someday, Sakray will get out of curse for sure. I believe");
- next;
+ next();
break;
case 2:
- next;
+ next();
if (countitem(Gray_Shard) < .@cost[.@choice]) {
mes("[King]");
mes("You don't have enough Gray Shards.");
@@ -743,20 +745,20 @@ OnInstanceInit:
mes("[King]");
mesf("I will make a ^FF0000%s^000000 \r"
"with %d ^009900Gray Shard^000000", getitemname(.@items_list[.@choice]), .@cost[.@choice]);
- next;
+ next();
mes("[King]");
mes("You see a light through the folded hands of the king and it gradually takes on a shape.");
- next;
+ next();
mes("[King]");
mesf("All right, it is done.\r"
"Take this ^FF0000%s.^000000\r"
"Use it to confront Sakray and Thanatos.", getitemname(.@items_list[.@choice]));
- next;
+ next();
mes("[King]");
mes("The power requires a sacrifice.\r"
"Please be careful...");
delitem(Gray_Shard, .@cost[.@choice]);
- getitem .@items_list[.@choice], 1;
+ getitem(.@items_list[.@choice], 1);
close();
}
}
@@ -766,27 +768,33 @@ OnInstanceInit:
1@spa,198,201,1 script Lurid Royal Guard#gp1 4_M_SAKRAYROYAL,{
end;
}
+
1@spa,197,217,0 warp #gp1warp 1,1,1@spa,114,120
// 2nd floor npc's
1@spa,135,125,3 script Tiara Princess#gp2 4_F_MAYSEL,{
end;
}
+
1@spa,117,137,0 warp #gp2warp 1,1,1@spa,60,43
// 3rd floor npc's
1@spa,30,58,5 script Lurid Royal Guard#gp3 4_M_SAKRAY_TIED,{
end;
}
+
1@spa,28,52,0 script Captain of the Guard#gp3 4_M_KY_KNT,{
end;
}
+
1@spa,30,52,0 script Soldier#gp3_1 4_M_KY_SOLD,{
end;
}
+
1@spa,34,53,1 script Soldier#gp3_2 4_M_CRU_SOLD,{
end;
}
+
1@spa,25,53,0 script Soldier#gp3_3 4_M_CRU_SOLD,{
end;
}
@@ -795,43 +803,54 @@ OnInstanceInit:
1@spa,201,198,1 script Soldier's Corpse#gp4_1 4_M_DIEMAN,{
end;
}
+
1@spa,191,207,0 script Soldier's Corpse#gp4_2 4_M_DIEMAN,{
end;
}
+
1@spa,206,209,0 script Soldier's Corpse#gp4_3 4_M_DIEMAN,{
end;
}
+
1@spa,189,193,0 script Soldier's Corpse#gp4_4 4_M_DIEMAN,{
end;
}
+
1@spa,211,194,4 script Captain's Corpse#gp4 4_M_LIEMAN,{
end;
}
+
1@spa,194,214,5 script King's Corpse#gp4 4_M_TRISTAN,{
end;
}
+
1@spa,197,218,5 script Visiting Prince#gp4 4_M_KNIGHT_SILVER,{
end;
}
+
1@spa,197,218,0 script Thanatos Magic Trace#gp4 HIDDEN_WARP_NPC,{
end;
}
+
1@spa,178,186,0 warp #gp4warp 1,1,1@spa,30,57
// 5th floor npc's
1@spa,60,43,3 script Tiara Princess#gp5 4_F_MAYSEL,{
end;
}
+
1@spa,40,44,0 script Thanatos Magic Trace#gp5 HIDDEN_WARP_NPC,{
end;
}
+
1@spa,40,46,0 script Voice of Princess Tiara CLEAR_NPC,{
end;
}
+
1@spa,42,43,0 script Voice of Sakray CLEAR_NPC,{
end;
}
+
1@spa,40,41,0 script Thanatos Magic Trace CLEAR_NPC,{
end;
}
-
diff --git a/npc/re/instances/octopus_cave.txt b/npc/re/instances/octopus_cave.txt
index b134742c9..e4d8d4357 100644
--- a/npc/re/instances/octopus_cave.txt
+++ b/npc/re/instances/octopus_cave.txt
@@ -37,51 +37,52 @@
mal_dun01,151,235,5 script Starfish 4_ASTER,{
.@party_id = getcharid(CHAR_ID_PARTY);
- .@md_name$ = "Octopus Cave";
+ .@md_name$ = _("Octopus Cave");
if (!.@party_id) {
mes("[Starfish]");
mes("You alone is powerless, hehe! Better get someone to help you out. Make a party, and come back later.");
- close;
+ close();
}
if (getcharid(CHAR_ID_CHAR) != getpartyleader(.@party_id, 2)) {
mes("[Starfish]");
mes("Where is your leader, hehe. I don't talk to some random people. Bring your boss to me.");
- close;
+ close();
}
mes("[Starfish]");
mes("I am guarding here, hehe! It is just roughly blocked for now. But someday this cave must be sealed forever, hehe!");
- next;
- while(1) {
+ next();
+ while (true) {
switch (select("Ask what's going on.", "Ask to open the gate.", "Go to other location.")) {
case 1:
mes("[Starfish]");
mes("Lately, our Starfish lady is suffering with some issues, ooh ooh. Something bad happen in this peaceful place, hehe!");
- next;
+ next();
mes("[Starfish]");
mes("Weird looking limbs came out from the hole there, tried to kidnap our lady Starfish. Ooh Ooh.");
- next;
+ next();
mes("[Starfish]");
mes("It seems those limbs belong to that ugly octopus. That monster should be taken care of,\r"
"but it's hard for ourselves only to make it happen, hehe.");
- next;
+ next();
mes("[Starfish]");
mes("I want to find someone special, and ask to punish this ugly octopus.\r"
"I hope this octopus won't ever harass our lady, hehe.");
- next;
+ next();
mes("[Starfish]");
mes("Go catch that octopus and stick it to this pick. If you bring back the pick,\r"
"I will open this gate for a while. You should challenge if you are interested, hehe.");
- next;
+ next();
break;
case 2:
.@playtime = questprogress(4197, PLAYTIME);
if (.@playtime == 1) {
mes("[Starfish]");
mes("Octopus is not around now, hehe. Please come back later.");
- close;
+ close();
}
- if (.@playtime == 2) erasequest 4197;
+ if (.@playtime == 2)
+ erasequest(4197);
if (countitem(Octopus_Hunt_Stick)) {
.@instance = instance_create(.@md_name$, .@party_id);
if (.@instance < 0) {
@@ -90,12 +91,12 @@ mal_dun01,151,235,5 script Starfish 4_ASTER,{
mesf("Party leader is... %s.", strcharinfo(PC_NAME));
mesf("^0000FF%s^000000, I cannot open now, hehe.", .@md_name$);
mes("Now is not the time, please wait.");
- close;
+ close();
}
if (instance_attachmap("1@cash", .@instance) == "") {
mesf("^0000FF%s^000000 - Reservation Failed!", .@md_name$);
instance_destroy(.@instance);
- close;
+ close();
}
instance_set_timeout(3600, 300, .@instance);
instance_init(.@instance);
@@ -103,23 +104,23 @@ mal_dun01,151,235,5 script Starfish 4_ASTER,{
mes("[Starfish]");
mesf("I will open the gate for a while to ^0000FF%s^000000.", .@md_name$);
mes("Please catch that pervert octopus, and come back with it sticked to the pick, hehe.");
- close;
+ close();
}
mes("[Starfish]");
mes("Prepare a pick first, so you can thread that octopus with that pick.\r"
"Then, I will let you in for a while, hehe.");
- close;
+ close();
case 3:
mes("[Starfish]");
mes("This is not a good location, check someplace else.");
- close;
+ close();
}
}
}
mal_dun01,153,237,5 script Weird Entrance CLEAR_NPC,{
mes("There is a strange entrance blocked roughly with some boards.");
- next;
+ next();
switch (select("Go in.", "Stop.")) {
case 1:
if (countitem(Octopus_Hunt_Stick)) {
@@ -127,25 +128,26 @@ mal_dun01,153,237,5 script Weird Entrance CLEAR_NPC,{
if (questprogress(4197, PLAYTIME) == 1) {
mes("[Starfish]");
mes("Ah, now is not the time... Would you come back later? Hehe.");
- close;
+ close();
}
mes("[Starfish]");
mes("Shhh... Weird aura is coming from that entrance. Big trouble is waiting, if you go in now.");
- close;
+ close();
}
mapannounce("mal_dun01", sprintf(_$("%s party's %s member started to hunt the Octopus!"), getpartyname(getcharid(CHAR_ID_PARTY)), strcharinfo(PC_NAME)), bc_map, C_SPRINGGREEN);
- if (!questprogress(4197)) setquest 4197;
- warp "1@cash", 199, 99;
+ if (!questprogress(4197))
+ setquest(4197);
+ warp("1@cash", 199, 99);
end;
}
mes("[Starfish]");
mes("You should definitely prepare hunting stick if you want to punish the Octopus. Or I will not let you in! Hehe.");
- close;
+ close();
case 2:
mes("[Starfish]");
mes("Yes Yes, you better quit.");
- close;
+ close();
}
}
@@ -153,25 +155,25 @@ mal_dun01,153,237,5 script Weird Entrance CLEAR_NPC,{
1@cash,199,99,0 script oct_enter HIDDEN_WARP_NPC,4,4,{
end;
OnTouch:
- donpcevent instance_npcname("oct_enter_broad")+"::OnEnable";
- specialeffect EF_BASH;
- disablenpc instance_npcname("oct_enter");
+ donpcevent(instance_npcname("oct_enter_broad")+"::OnEnable");
+ specialeffect(EF_BASH);
+ disablenpc(instance_npcname("oct_enter"));
end;
}
1@cash,1,1,0 script oct_enter_broad FAKE_NPC,{
end;
OnInstanceInit:
- donpcevent instance_npcname("oct_enter_broad")+"::OnDisable";
+ donpcevent(instance_npcname("oct_enter_broad")+"::OnDisable");
end;
OnEnable:
- enablenpc instance_npcname("oct_enter_broad");
- donpcevent instance_npcname("oct_foot_4")+"::OnEnable";
- donpcevent instance_npcname("oct_mob_con")+"::OnEnable";
- initnpctimer;
+ enablenpc(instance_npcname("oct_enter_broad"));
+ donpcevent(instance_npcname("oct_foot_4")+"::OnEnable");
+ donpcevent(instance_npcname("oct_mob_con")+"::OnEnable");
+ initnpctimer();
end;
OnDisable:
- disablenpc instance_npcname("oct_enter_broad");
+ disablenpc(instance_npcname("oct_enter_broad"));
end;
OnTimer1000:
mapannounce(instance_mapname("1@cash"), _("Pervert Octopus : How dare you to come inside of my place!"), bc_map, C_YELLOW);
@@ -181,22 +183,22 @@ OnTimer4000:
end;
OnTimer7000:
mapannounce(instance_mapname("1@cash"), _("Pervert Octopus : My juniors~ There is your toy! Play with it~ kakaka"), bc_map, C_YELLOW);
- stopnpctimer;
- donpcevent instance_npcname("oct_enter_broad")+"::OnDisable";
+ stopnpctimer();
+ donpcevent(instance_npcname("oct_enter_broad")+"::OnDisable");
end;
}
1@cash,3,3,0 script oct_foot_4 FAKE_NPC,{
end;
OnInstanceInit:
- donpcevent instance_npcname("oct_foot_4")+"::OnDisable";
+ donpcevent(instance_npcname("oct_foot_4")+"::OnDisable");
end;
OnEnable:
- enablenpc instance_npcname("oct_foot_4");
- donpcevent instance_npcname("oct_foot1")+"::OnEnable";
- donpcevent instance_npcname("oct_foot2")+"::OnEnable";
- donpcevent instance_npcname("oct_foot3")+"::OnEnable";
- donpcevent instance_npcname("oct_foot4")+"::OnEnable";
+ enablenpc(instance_npcname("oct_foot_4"));
+ donpcevent(instance_npcname("oct_foot1")+"::OnEnable");
+ donpcevent(instance_npcname("oct_foot2")+"::OnEnable");
+ donpcevent(instance_npcname("oct_foot3")+"::OnEnable");
+ donpcevent(instance_npcname("oct_foot4")+"::OnEnable");
.@map$ = instance_mapname("1@cash");
monster(.@map$, 20, 114, _("Octopus Leg#1"), MD_OCTOPUS_LEG, 1, instance_npcname("oct_foot_4")+"::OnMyMobDead");
monster(.@map$, 88, 190, _("Octopus Leg#2"), MD_OCTOPUS_LEG, 1, instance_npcname("oct_foot_4")+"::OnMyMobDead");
@@ -204,15 +206,15 @@ OnEnable:
monster(.@map$, 372, 131, _("Octopus Leg#4"), MD_OCTOPUS_LEG, 1, instance_npcname("oct_foot_4")+"::OnMyMobDead");
end;
OnDisable:
- disablenpc instance_npcname("oct_foot_4");
+ disablenpc(instance_npcname("oct_foot_4"));
end;
OnMyMobDead:
.@map$ = instance_mapname("1@cash");
- if (mobcount(.@map$,instance_npcname("oct_foot_4")+"::OnMyMobDead") < 1) {
- donpcevent instance_npcname("oct_boss_con")+"::OnEnable";
+ if (mobcount(.@map$, instance_npcname("oct_foot_4")+"::OnMyMobDead") < 1) {
+ donpcevent(instance_npcname("oct_boss_con")+"::OnEnable");
mapannounce(.@map$, _("Hey you!! I'll personally take care of you all! Let's bring it on!"), bc_map, C_SPRINGGREEN);
- enablenpc instance_npcname("oct_boss_warp");
- instance_warpall .@map$, 199, 99;
+ enablenpc(instance_npcname("oct_boss_warp"));
+ instance_warpall(.@map$, 199, 99);
end;
}
mapannounce(.@map$, _("Arrgg!! That hurts!!! I need another strategy..."), bc_map, C_SPRINGGREEN);
@@ -222,12 +224,12 @@ OnMyMobDead:
1@cash,20,114,0 script oct_foot1 HIDDEN_WARP_NPC,6,6,{
end;
OnInstanceInit:
- donpcevent instance_npcname(strnpcinfo(NPC_NAME))+"::OnDisable";
+ donpcevent(instance_npcname(strnpcinfo(NPC_NAME))+"::OnDisable");
end;
OnEnable:
- enablenpc instance_npcname(strnpcinfo(NPC_NAME));
+ enablenpc(instance_npcname(strnpcinfo(NPC_NAME)));
.@label$ = instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead";
- .@i = atoi(charat(strnpcinfo(NPC_NAME),8));
+ .@i = atoi(charat(strnpcinfo(NPC_NAME), 8));
.@map$ = instance_mapname("1@cash");
switch (.@i) {
case 1:
@@ -249,7 +251,7 @@ OnEnable:
areamonster(.@map$, 123, 93, 127, 97, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
areamonster(.@map$, 113, 90, 115, 92, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$);
areamonster(.@map$, 103, 89, 105, 91, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$);
- areamonster(.@map$, 89, 90, 91,92, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$);
+ areamonster(.@map$, 89, 90, 91, 92, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$);
areamonster(.@map$, 74, 104, 76, 106, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$);
areamonster(.@map$, 74, 120, 76, 122, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$);
areamonster(.@map$, 83, 131, 87, 135, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
@@ -285,56 +287,57 @@ OnEnable:
}
end;
OnDisable:
- killmonster instance_mapname("1@cash"), instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"; // Not in official script.
- disablenpc instance_npcname(strnpcinfo(NPC_NAME));
+ killmonster(instance_mapname("1@cash"), instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); // Not in official script.
+ disablenpc(instance_npcname(strnpcinfo(NPC_NAME)));
end;
OnTouch:
- if (getd("."+strnpcinfo(NPC_NAME)+instance_id())) end;
- setd "."+strnpcinfo(NPC_NAME)+instance_id(),1;
- hideonnpc instance_npcname(strnpcinfo(NPC_NAME));
+ if (getd("."+strnpcinfo(NPC_NAME)+instance_id()))
+ end;
+ setd("."+strnpcinfo(NPC_NAME)+instance_id(), 1);
+ hideonnpc(instance_npcname(strnpcinfo(NPC_NAME)));
mapannounce(instance_mapname("1@cash"), _("Come out all my babies and help me out!"), bc_map, C_YELLOW);
- initnpctimer;
+ initnpctimer();
end;
OnTimer5000:
.@map$ = instance_mapname("1@cash");
mapannounce(.@map$, _("Let's give them a lesson!"), bc_map, C_YELLOW);
.@label$ = instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead";
- .@i = atoi(charat(strnpcinfo(NPC_NAME),8));
+ .@i = atoi(charat(strnpcinfo(NPC_NAME), 8));
switch (.@i) {
case 1:
- areamonster(.@map$, 18, 112, 22,116, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
- areamonster(.@map$, 18, 112, 22,116, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
+ areamonster(.@map$, 18, 112, 22, 116, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
+ areamonster(.@map$, 18, 112, 22, 116, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
break;
case 2:
- areamonster(.@map$, 86, 188, 90,192, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
- areamonster(.@map$, 96, 98, 100,102, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
+ areamonster(.@map$, 86, 188, 90, 192, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
+ areamonster(.@map$, 96, 98, 100, 102, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
break;
case 3:
- areamonster(.@map$, 305, 213, 309,217, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
- areamonster(.@map$, 305, 213, 309,217, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
+ areamonster(.@map$, 305, 213, 309, 217, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
+ areamonster(.@map$, 305, 213, 309, 217, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
break;
case 4:
- areamonster(.@map$, 370, 129, 374,133, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
- areamonster(.@map$, 370, 129, 374,133, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
+ areamonster(.@map$, 370, 129, 374, 133, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
+ areamonster(.@map$, 370, 129, 374, 133, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$);
break;
}
end;
OnTimer30000:
- setd "."+strnpcinfo(NPC_NAME)+instance_id(),0;
- stopnpctimer;
- .@i = atoi(charat(strnpcinfo(NPC_NAME),8));
- donpcevent instance_npcname("oct_foot_exit"+.@i)+"::OnEnable";
- donpcevent instance_npcname(strnpcinfo(NPC_NAME))+"::OnDisable";
+ setd("."+strnpcinfo(NPC_NAME)+instance_id(), 0);
+ stopnpctimer();
+ .@i = atoi(charat(strnpcinfo(NPC_NAME), 8));
+ donpcevent(instance_npcname("oct_foot_exit"+.@i)+"::OnEnable");
+ donpcevent(instance_npcname(strnpcinfo(NPC_NAME))+"::OnDisable");
end;
OnMyMobDead:
.@map$ = instance_mapname("1@cash");
- if (mobcount(.@map$,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead") < 1) {
+ if (mobcount(.@map$, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead") < 1) {
mapannounce(.@map$, _("You hurt my babies!!? You'll have to pay for this!!!"), bc_map, C_SPRINGGREEN);
- setd "."+strnpcinfo(NPC_NAME)+instance_id(),0;
- stopnpctimer;
- .@i = atoi(charat(strnpcinfo(NPC_NAME),8));
- donpcevent instance_npcname("oct_foot_exit"+.@i)+"::OnEnable";
- donpcevent instance_npcname(strnpcinfo(NPC_NAME))+"::OnDisable";
+ setd("."+strnpcinfo(NPC_NAME)+instance_id(), 0);
+ stopnpctimer();
+ .@i = atoi(charat(strnpcinfo(NPC_NAME), 8));
+ donpcevent(instance_npcname("oct_foot_exit"+.@i)+"::OnEnable");
+ donpcevent(instance_npcname(strnpcinfo(NPC_NAME))+"::OnDisable");
end;
}
end;
@@ -346,13 +349,13 @@ OnMyMobDead:
1@cash,16,117,0 script oct_foot_exit1 WARPNPC,2,2,{
end;
OnInstanceInit:
- disablenpc instance_npcname(strnpcinfo(NPC_NAME));
+ disablenpc(instance_npcname(strnpcinfo(NPC_NAME)));
end;
OnEnable:
- enablenpc instance_npcname(strnpcinfo(NPC_NAME));
+ enablenpc(instance_npcname(strnpcinfo(NPC_NAME)));
end;
OnTouch:
- warp instance_mapname("1@cash"), 198, 99;
+ warp(instance_mapname("1@cash"), 198, 99);
end;
}
1@cash,77,193,0 duplicate(oct_foot_exit1) oct_foot_exit2 WARPNPC,2,2
@@ -362,11 +365,11 @@ OnTouch:
1@cash,15,15,0 script oct_mob_con FAKE_NPC,{
end;
OnInstanceInit:
- donpcevent instance_npcname("oct_mob_con")+"::OnDisable";
+ donpcevent(instance_npcname("oct_mob_con")+"::OnDisable");
end;
OnEnable:
.@map$ = instance_mapname("1@cash");
- enablenpc instance_npcname("oct_mob_con");
+ enablenpc(instance_npcname("oct_mob_con"));
monster(.@map$, 32, 94, _("Hydra"), HYDRA, 1);
monster(.@map$, 41, 101, _("Hydra"), HYDRA, 1);
monster(.@map$, 35, 78, _("Hydra"), HYDRA, 1);
@@ -410,21 +413,21 @@ OnEnable:
areamonster(.@map$, 292, 97, 312, 117, _("Stapo"), STAPO, 1);
areamonster(.@map$, 355, 64, 375, 84, _("Stapo"), STAPO, 1);
areamonster(.@map$, 317, 17, 337, 37, _("Stapo"), STAPO, 1);
- donpcevent instance_npcname("oct_backattack1")+"::OnEnable";
- donpcevent instance_npcname("oct_backattack2")+"::OnEnable";
- donpcevent instance_npcname("oct_backattack3")+"::OnEnable";
- donpcevent instance_npcname("oct_backattack4")+"::OnEnable";
- donpcevent instance_npcname("oct_mob_con")+"::OnDisable";
+ donpcevent(instance_npcname("oct_backattack1")+"::OnEnable");
+ donpcevent(instance_npcname("oct_backattack2")+"::OnEnable");
+ donpcevent(instance_npcname("oct_backattack3")+"::OnEnable");
+ donpcevent(instance_npcname("oct_backattack4")+"::OnEnable");
+ donpcevent(instance_npcname("oct_mob_con")+"::OnDisable");
end;
OnDisable:
- disablenpc instance_npcname("oct_mob_con");
+ disablenpc(instance_npcname("oct_mob_con"));
end;
}
1@cash,45,53,0 script oct_backattack1 HIDDEN_WARP_NPC,3,3,{
end;
OnInstanceInit:
- disablenpc instance_npcname("oct_backattack1");
+ disablenpc(instance_npcname("oct_backattack1"));
end;
OnTouch:
.@map$ = instance_mapname("1@cash");
@@ -436,27 +439,28 @@ OnTouch:
monster(.@map$, 49, 50, _("Hydra"), HYDRA, 1);
monster(.@map$, 41, 53, _("Octopus's Henchman"), MD_OCTOPUS, 1);
mapannounce(.@map$, _("Don't let them break through, stop them!!!"), bc_map, C_SPRINGGREEN);
- specialeffect EF_BASH;
- disablenpc instance_npcname("oct_backattack1");
+ specialeffect(EF_BASH);
+ disablenpc(instance_npcname("oct_backattack1"));
end;
OnEnable:
- enablenpc instance_npcname("oct_backattack1");
+ enablenpc(instance_npcname("oct_backattack1"));
end;
}
1@cash,78,99,0 script oct_backattack2 HIDDEN_WARP_NPC,3,3,{
end;
OnInstanceInit:
- disablenpc instance_npcname("oct_backattack2");
+ disablenpc(instance_npcname("oct_backattack2"));
end;
OnTouch:
- if (getd("."+instance_id())) end;
- setd "."+instance_id(),1;
- initnpctimer;
+ if (getd("."+instance_id()))
+ end;
+ setd("."+instance_id(), 1);
+ initnpctimer();
.@map$ = instance_mapname("1@cash");
monster(.@map$, 71, 105, _("Octopus's Henchman"), MD_OCTOPUS, 1);
mapannounce(.@map$, _("Headquarters are empty, GO!!!"), bc_map, C_SPRINGGREEN);
- hideonnpc instance_npcname("oct_backattack2");
+ hideonnpc(instance_npcname("oct_backattack2"));
end;
OnTimer2000:
.@map$ = instance_mapname("1@cash");
@@ -477,21 +481,22 @@ OnTimer8000:
.@map$ = instance_mapname("1@cash");
monster(.@map$, 71, 105, _("Octopus's Henchman"), MD_OCTOPUS, 1);
mapannounce(.@map$, _("There is no time to lose, hurry up!!!"), bc_map, C_SPRINGGREEN);
- stopnpctimer;
+ stopnpctimer();
end;
OnEnable:
- enablenpc instance_npcname("oct_backattack2");
+ enablenpc(instance_npcname("oct_backattack2"));
end;
}
1@cash,299,144,0 script oct_backattack3 HIDDEN_WARP_NPC,3,3,{
end;
OnInstanceInit:
- disablenpc instance_npcname("oct_backattack3");
+ disablenpc(instance_npcname("oct_backattack3"));
end;
OnTouch:
- if (getd("."+instance_id())) end;
- setd "."+instance_id(),1;
+ if (getd("."+instance_id()))
+ end;
+ setd("."+instance_id(), 1);
.@map$ = instance_mapname("1@cash");
monster(.@map$, 293, 153, _("Octopus's Henchman"), MD_OCTOPUS, 1);
monster(.@map$, 294, 152, _("Octopus's Henchman"), MD_OCTOPUS, 1);
@@ -499,26 +504,27 @@ OnTouch:
monster(.@map$, 293, 151, _("Octopus's Henchman"), MD_OCTOPUS, 1);
monster(.@map$, 293, 152, _("Octopus's Henchman ?"), MD_MARSE, 1);
mapannounce(.@map$, _("Kakaka! Suprised??!!"), bc_map, C_SPRINGGREEN);
- initnpctimer;
- hideonnpc instance_npcname("oct_backattack3");
+ initnpctimer();
+ hideonnpc(instance_npcname("oct_backattack3"));
end;
OnTimer5000:
mapannounce(instance_mapname("1@cash"), _("... Looks like we have a spy among us."), bc_map, C_SPRINGGREEN);
- stopnpctimer;
+ stopnpctimer();
end;
OnEnable:
- enablenpc instance_npcname("oct_backattack3");
+ enablenpc(instance_npcname("oct_backattack3"));
end;
}
1@cash,336,36,0 script oct_backattack4 HIDDEN_WARP_NPC,3,3,{
end;
OnInstanceInit:
- disablenpc instance_npcname("oct_backattack4");
+ disablenpc(instance_npcname("oct_backattack4"));
end;
OnTouch:
- if (getd("."+instance_id())) end;
- setd "."+instance_id(),1;
+ if (getd("."+instance_id()))
+ end;
+ setd("."+instance_id(), 1);
.@map$ = instance_mapname("1@cash");
monster(.@map$, 332, 37, _("Octopus's Henchman"), MD_OCTOPUS, 1);
monster(.@map$, 332, 36, _("Octopus's Henchman"), MD_OCTOPUS, 1);
@@ -534,34 +540,34 @@ OnTouch:
monster(.@map$, 259, 40, _("Mercenary Squid"), MD_MARSE, 1);
monster(.@map$, 261, 40, _("Mercenary Squid"), MD_MARSE, 1);
mapannounce(.@map$, _("What a successful pincer tactic! The enemy is strong! Let's not lose yourselves! Anyway, where are all the mercenaries??"), bc_map, C_SPRINGGREEN);
- initnpctimer;
- hideonnpc instance_npcname("oct_backattack4");
+ initnpctimer();
+ hideonnpc(instance_npcname("oct_backattack4"));
end;
OnTimer5000:
mapannounce(instance_mapname("1@cash"), _("Mercenary Squid : eh...eh... wrong direction. No enemies are shown in this direction."), bc_map, C_SPRINGGREEN);
end;
OnTimer7000:
mapannounce(instance_mapname("1@cash"), _("Pervert Octopus : Fools! Can't you read the map??!! Useless!!"), bc_map, C_SPRINGGREEN);
- stopnpctimer;
+ stopnpctimer();
end;
OnEnable:
- enablenpc instance_npcname("oct_backattack4");
+ enablenpc(instance_npcname("oct_backattack4"));
end;
}
1@cash,2,2,0 script oct_boss_con FAKE_NPC,{
end;
OnInstanceInit:
- donpcevent instance_npcname("oct_boss_con")+"::OnDisable";
+ donpcevent(instance_npcname("oct_boss_con")+"::OnDisable");
end;
OnDisable:
- disablenpc instance_npcname("oct_boss_con");
+ disablenpc(instance_npcname("oct_boss_con"));
end;
OnEnable:
- enablenpc instance_npcname("oct_boss_con");
- donpcevent instance_npcname("oct_boss_foot")+"::OnEnable";
+ enablenpc(instance_npcname("oct_boss_con"));
+ donpcevent(instance_npcname("oct_boss_foot")+"::OnEnable");
monster(instance_mapname("1@cash"), 199, 188, _("Disgusting Octopus"), MD_GIANT_OCTOPUS, 1, instance_npcname("oct_boss_con")+"::OnMyMobDead");
- initnpctimer;
+ initnpctimer();
end;
OnTimer7000:
callsub OnAnnounce,
@@ -604,21 +610,21 @@ OnTimer49000:
"errrrrrrrrrrrrrrrrrrrrrrrr... Cough! Cough!",
"Disgusting Octopus : Violence cannot be justified in any case.",
"This is my place!!!";
- stopnpctimer;
- initnpctimer;
+ stopnpctimer();
+ initnpctimer();
end;
OnAnnounce:
mapannounce(instance_mapname("1@cash"), sprintf(_$("Disgusting Octopus : %s"), getarg(rand(3))), bc_map, C_YELLOW);
return;
OnMyMobDead:
.@map$ = instance_mapname("1@cash");
- if (mobcount(.@map$,instance_npcname("oct_boss_con")+"::OnMyMobDead") < 1) {
+ if (mobcount(.@map$, instance_npcname("oct_boss_con")+"::OnMyMobDead") < 1) {
mapannounce(.@map$, _("Disgusting Octopus : That's it for the today! Next time, I will play with you badly!"), bc_map, C_YELLOW);
- enablenpc instance_npcname("oct_exit_1");
- enablenpc instance_npcname("oct_exit_2");
- donpcevent instance_npcname("oct_boss_foot")+"::OnDisable";
- stopnpctimer;
- donpcevent instance_npcname("oct_boss_con")+"::OnDisable";
+ enablenpc(instance_npcname("oct_exit_1"));
+ enablenpc(instance_npcname("oct_exit_2"));
+ donpcevent(instance_npcname("oct_boss_foot")+"::OnDisable");
+ stopnpctimer();
+ donpcevent(instance_npcname("oct_boss_con")+"::OnDisable");
end;
}
end;
@@ -627,16 +633,16 @@ OnMyMobDead:
1@cash,4,4,0 script oct_boss_foot FAKE_NPC,{
end;
OnInstanceInit:
- donpcevent instance_npcname("oct_boss_foot")+"::OnDisable";
+ donpcevent(instance_npcname("oct_boss_foot")+"::OnDisable");
end;
OnEnable:
- enablenpc instance_npcname("oct_boss_foot");
- initnpctimer;
+ enablenpc(instance_npcname("oct_boss_foot"));
+ initnpctimer();
end;
OnCall:
.@map$ = instance_mapname("1@cash");
- if (mobcount(.@map$,instance_npcname("oct_boss_foot")+"::OnMyMobDead") < 100) {
- switch(rand(2)) {
+ if (mobcount(.@map$, instance_npcname("oct_boss_foot")+"::OnMyMobDead") < 100) {
+ switch (rand(2)) {
case 0:
mapannounce(.@map$, _("Disgusting Octopus : Do you know how many legs octopus have? It doesn't matter, I have unlimited legs!!"), bc_map, C_YELLOW);
areamonster(.@map$, 192, 181, 206, 195, _("Octopus Leg"), MD_OCTOPUS_LEG, 1, instance_npcname("oct_boss_foot")+"::OnMyMobDead");
@@ -647,16 +653,16 @@ OnCall:
break;
}
}
- initnpctimer;
+ initnpctimer();
end;
OnTimer10000:
- stopnpctimer;
- donpcevent instance_npcname("oct_boss_foot")+"::OnCall";
+ stopnpctimer();
+ donpcevent(instance_npcname("oct_boss_foot")+"::OnCall");
end;
OnDisable:
- stopnpctimer;
- killmonster instance_mapname("1@cash"), instance_npcname("oct_boss_foot")+"::OnMyMobDead"; // Not in official script.
- disablenpc instance_npcname("oct_boss_foot");
+ stopnpctimer();
+ killmonster(instance_mapname("1@cash"), instance_npcname("oct_boss_foot")+"::OnMyMobDead"); // Not in official script.
+ disablenpc(instance_npcname("oct_boss_foot"));
end;
OnMyMobDead:
end;
@@ -665,24 +671,24 @@ OnMyMobDead:
1@cash,198,116,0 script oct_boss_warp WARPNPC,2,2,{
end;
OnInstanceInit:
- disablenpc instance_npcname("oct_boss_warp");
+ disablenpc(instance_npcname("oct_boss_warp"));
end;
OnTouch:
- warp instance_mapname("1@cash"), 210, 172;
+ warp(instance_mapname("1@cash"), 210, 172);
end;
}
1@cash,190,208,0 script oct_exit_1 WARPNPC,2,2,{
end;
OnInstanceInit:
- disablenpc instance_npcname(strnpcinfo(NPC_NAME));
+ disablenpc(instance_npcname(strnpcinfo(NPC_NAME)));
end;
OnTouch:
mes("Do you want to go out from the octopus dungeon?");
- next;
+ next();
if (select("No!", "Yes!") == 2)
- warp "mal_dun01", 153, 233;
- close;
+ warp("mal_dun01", 153, 233);
+ close();
}
1@cash,198,82,0 duplicate(oct_exit_1) oct_exit_2 WARPNPC,2,2
// This is never enabled in the official script.
diff --git a/src/map/script.c b/src/map/script.c
index d2101d21f..6b920514c 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -15866,11 +15866,12 @@ enum logmes_type {
/*==========================================
* Allows player to write logs (i.e. Bank NPC, etc) [Lupus]
*------------------------------------------*/
-BUILDIN(logmes) {
+BUILDIN(logmes)
+{
const char *str = script_getstr(st, 2);
struct map_session_data *sd = script->rid2sd(st);
enum logmes_type type = LOGMES_NPC;
- nullpo_retr(sd, false);
+ nullpo_retr(false, sd);
if (script_hasdata(st, 3)) {
type = script_getnum(st, 3);
@@ -23505,7 +23506,7 @@ BUILDIN(dressroom)
clif->dressroom_open(sd, 0);
break;
default:
- ShowWarning("script:dressroom: unknown mode (%i).\n", mode);
+ ShowWarning("script:dressroom: unknown mode (%u).\n", mode);
script_pushint(st, 0);
return false;
}