Code format braces.

This commit is contained in:
MobiusDev 2017-08-31 11:54:12 +00:00
parent ce279555a0
commit 3615456155
297 changed files with 6280 additions and 244 deletions

View File

@ -123,7 +123,7 @@ org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
org.eclipse.jdt.core.compiler.source=1.8 org.eclipse.jdt.core.compiler.source=1.8
org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=99 org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
org.eclipse.jdt.core.formatter.align_type_members_on_columns=false org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=0 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=0
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
@ -137,8 +137,10 @@ org.eclipse.jdt.core.formatter.alignment_for_compact_if=0
org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=0 org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=0
org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49 org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=49 org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=49
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=85 org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=85
@ -148,6 +150,8 @@ org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16 org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
org.eclipse.jdt.core.formatter.blank_lines_after_package=1 org.eclipse.jdt.core.formatter.blank_lines_after_package=1
@ -206,6 +210,7 @@ org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
org.eclipse.jdt.core.formatter.indentation.size=4 org.eclipse.jdt.core.formatter.indentation.size=4
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
@ -400,12 +405,24 @@ org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false
org.eclipse.jdt.core.formatter.tabulation.char=tab org.eclipse.jdt.core.formatter.tabulation.char=tab
org.eclipse.jdt.core.formatter.tabulation.size=4 org.eclipse.jdt.core.formatter.tabulation.size=4
org.eclipse.jdt.core.formatter.use_on_off_tags=true org.eclipse.jdt.core.formatter.use_on_off_tags=true
org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter

View File

@ -77,16 +77,24 @@ public class Q00701_ProofOfExistence extends Quest
{ {
case "32559-03.htm": case "32559-03.htm":
case "32559-08.html": case "32559-08.html":
{
break; break;
}
case "32559-04.htm": case "32559-04.htm":
{
st.startQuest(); st.startQuest();
break; break;
}
case "32559-09.html": case "32559-09.html":
{
st.exitQuest(true, true); st.exitQuest(true, true);
break; break;
}
default: default:
{
htmltext = null; htmltext = null;
break; break;
}
} }
return htmltext; return htmltext;
} }
@ -143,10 +151,13 @@ public class Q00701_ProofOfExistence extends Quest
switch (st.getState()) switch (st.getState())
{ {
case State.CREATED: case State.CREATED:
{
final QuestState qs = player.getQuestState(Q10273_GoodDayToFly.class.getSimpleName()); final QuestState qs = player.getQuestState(Q10273_GoodDayToFly.class.getSimpleName());
htmltext = ((player.getLevel() >= MIN_LEVEL) && (qs != null) && qs.isCompleted()) ? "32559-01.htm" : "32559-02.htm"; htmltext = ((player.getLevel() >= MIN_LEVEL) && (qs != null) && qs.isCompleted()) ? "32559-01.htm" : "32559-02.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{
if (hasQuestItems(player, BANSHEE_QUEENS_EYE)) if (hasQuestItems(player, BANSHEE_QUEENS_EYE))
{ {
giveAdena(player, (getQuestItemsCount(player, DEADMANS_REMAINS) * 2500) + (getQuestItemsCount(player, BANSHEE_QUEENS_EYE) * 50000) + 23835, true); giveAdena(player, (getQuestItemsCount(player, DEADMANS_REMAINS) * 2500) + (getQuestItemsCount(player, BANSHEE_QUEENS_EYE) * 50000) + 23835, true);
@ -165,6 +176,7 @@ public class Q00701_ProofOfExistence extends Quest
htmltext = "32559-05.html"; htmltext = "32559-05.html";
} }
break; break;
}
} }
return htmltext; return htmltext;
} }

View File

@ -274,6 +274,7 @@ public class Q00702_ATrapForRevenge extends Quest
switch (npc.getId()) switch (npc.getId())
{ {
case 22612: case 22612:
{
if (chance < 413) if (chance < 413)
{ {
giveItems(player, DRAKES_FLESH, 2); giveItems(player, DRAKES_FLESH, 2);
@ -283,7 +284,9 @@ public class Q00702_ATrapForRevenge extends Quest
giveItems(player, DRAKES_FLESH, 1); giveItems(player, DRAKES_FLESH, 1);
} }
break; break;
}
case 22613: case 22613:
{
if (chance < 440) if (chance < 440)
{ {
giveItems(player, DRAKES_FLESH, 2); giveItems(player, DRAKES_FLESH, 2);
@ -293,13 +296,17 @@ public class Q00702_ATrapForRevenge extends Quest
giveItems(player, DRAKES_FLESH, 1); giveItems(player, DRAKES_FLESH, 1);
} }
break; break;
}
case 25632: case 25632:
{
if (chance < 996) if (chance < 996)
{ {
giveItems(player, DRAKES_FLESH, 1); giveItems(player, DRAKES_FLESH, 1);
} }
break; break;
}
case 22610: case 22610:
{
if (chance < 485) if (chance < 485)
{ {
giveItems(player, DRAKES_FLESH, 2); giveItems(player, DRAKES_FLESH, 2);
@ -309,7 +316,9 @@ public class Q00702_ATrapForRevenge extends Quest
giveItems(player, DRAKES_FLESH, 1); giveItems(player, DRAKES_FLESH, 1);
} }
break; break;
}
case 22611: case 22611:
{
if (chance < 451) if (chance < 451)
{ {
giveItems(player, DRAKES_FLESH, 2); giveItems(player, DRAKES_FLESH, 2);
@ -319,7 +328,9 @@ public class Q00702_ATrapForRevenge extends Quest
giveItems(player, DRAKES_FLESH, 1); giveItems(player, DRAKES_FLESH, 1);
} }
break; break;
}
case 25631: case 25631:
{
if (chance < 485) if (chance < 485)
{ {
giveItems(player, DRAKES_FLESH, 2); giveItems(player, DRAKES_FLESH, 2);
@ -329,7 +340,9 @@ public class Q00702_ATrapForRevenge extends Quest
giveItems(player, DRAKES_FLESH, 1); giveItems(player, DRAKES_FLESH, 1);
} }
break; break;
}
case 25626: case 25626:
{
int count = 0; int count = 0;
if (chance < 708) if (chance < 708)
{ {
@ -353,6 +366,7 @@ public class Q00702_ATrapForRevenge extends Quest
} }
giveItems(player, VARIANT_DRAKE_WING_HORNS, count); giveItems(player, VARIANT_DRAKE_WING_HORNS, count);
break; break;
}
} }
playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
return null; return null;
@ -369,12 +383,16 @@ public class Q00702_ATrapForRevenge extends Quest
switch (st.getState()) switch (st.getState())
{ {
case State.CREATED: case State.CREATED:
{
final QuestState prev = player.getQuestState(Q10273_GoodDayToFly.class.getSimpleName()); final QuestState prev = player.getQuestState(Q10273_GoodDayToFly.class.getSimpleName());
htmltext = ((prev != null) && prev.isCompleted() && (player.getLevel() >= 78)) ? "32563-01.htm" : "32563-02.htm"; htmltext = ((prev != null) && prev.isCompleted() && (player.getLevel() >= 78)) ? "32563-01.htm" : "32563-02.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{
htmltext = (st.isCond(1)) ? "32563-05.html" : "32563-06.html"; htmltext = (st.isCond(1)) ? "32563-05.html" : "32563-06.html";
break; break;
}
} }
} }
if (st.getState() == State.STARTED) if (st.getState() == State.STARTED)
@ -384,11 +402,15 @@ public class Q00702_ATrapForRevenge extends Quest
switch (st.getCond()) switch (st.getCond())
{ {
case 1: case 1:
{
htmltext = "32557-01.html"; htmltext = "32557-01.html";
break; break;
}
case 2: case 2:
{
htmltext = "32557-02.html"; htmltext = "32557-02.html";
break; break;
}
} }
} }
else if (npc.getId() == TENIUS) else if (npc.getId() == TENIUS)
@ -396,11 +418,15 @@ public class Q00702_ATrapForRevenge extends Quest
switch (st.getCond()) switch (st.getCond())
{ {
case 1: case 1:
{
htmltext = "32555-01.html"; htmltext = "32555-01.html";
break; break;
}
case 2: case 2:
{
htmltext = "32555-04.html"; htmltext = "32555-04.html";
break; break;
}
} }
} }
} }

View File

@ -152,6 +152,7 @@ public class Q10376_BloodyGoodTime extends Quest
switch (npc.getId()) switch (npc.getId())
{ {
case ZENYA: case ZENYA:
{
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
@ -179,7 +180,7 @@ public class Q10376_BloodyGoodTime extends Quest
} }
} }
break; break;
}
case CASCA: case CASCA:
{ {
if (qs.isStarted()) if (qs.isStarted())
@ -203,7 +204,6 @@ public class Q10376_BloodyGoodTime extends Quest
} }
break; break;
} }
case AGNES: case AGNES:
{ {
if (qs.isStarted()) if (qs.isStarted())
@ -219,7 +219,6 @@ public class Q10376_BloodyGoodTime extends Quest
} }
break; break;
} }
case ANDREI: case ANDREI:
{ {
if (qs.isStarted() && qs.isCond(6)) if (qs.isStarted() && qs.isCond(6))

View File

@ -129,7 +129,6 @@ public class Q10383_FergasonsOffer extends Quest
{ {
htmltext = "maestro_ferguson_q10383_05.html"; htmltext = "maestro_ferguson_q10383_05.html";
} }
break; break;
} }
case AKU: case AKU:
@ -142,7 +141,6 @@ public class Q10383_FergasonsOffer extends Quest
{ {
htmltext = "sofa_aku_q10383_02.html"; htmltext = "sofa_aku_q10383_02.html";
} }
break; break;
} }
} }

View File

@ -111,7 +111,6 @@ public class Q10384_AnAudienceWithTauti extends Quest
{ {
htmltext = "maestro_ferguson_q10384_09.html"; htmltext = "maestro_ferguson_q10384_09.html";
} }
} }
else if (qs.isCompleted()) else if (qs.isCompleted())
{ {

View File

@ -132,8 +132,10 @@ public final class Q10734_DoOrDie extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = (meetStartRestrictions(player)) ? "33943-01.htm" : "33943-08.htm"; htmltext = (meetStartRestrictions(player)) ? "33943-01.htm" : "33943-08.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
switch (qs.getCond()) switch (qs.getCond())
@ -182,8 +184,10 @@ public final class Q10734_DoOrDie extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = (meetStartRestrictions(player)) ? "33942-01.htm" : "33942-08.htm"; htmltext = (meetStartRestrictions(player)) ? "33942-01.htm" : "33942-08.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
switch (qs.getCond()) switch (qs.getCond())
@ -219,8 +223,10 @@ public final class Q10734_DoOrDie extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
} }
break; break;

View File

@ -119,8 +119,10 @@ public final class Q10735_ASpecialPower extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
return htmltext; return htmltext;
} }
@ -136,14 +138,20 @@ public final class Q10735_ASpecialPower extends Quest
switch (qs.getCond()) switch (qs.getCond())
{ {
case 2: case 2:
{
npcId = FLOATO; npcId = FLOATO;
break; break;
}
case 4: case 4:
{
npcId = FLOATO2; npcId = FLOATO2;
break; break;
}
case 6: case 6:
{
npcId = RATEL; npcId = RATEL;
break; break;
}
} }
if (npcId != -1) if (npcId != -1)
{ {

View File

@ -83,8 +83,10 @@ public final class Q10736_ASpecialPower extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33943-01.htm"; htmltext = "33943-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
switch (qs.getCond()) switch (qs.getCond())
@ -116,8 +118,10 @@ public final class Q10736_ASpecialPower extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
return htmltext; return htmltext;
} }
@ -133,14 +137,20 @@ public final class Q10736_ASpecialPower extends Quest
switch (qs.getCond()) switch (qs.getCond())
{ {
case 2: case 2:
{
npcId = FLOATO; npcId = FLOATO;
break; break;
}
case 4: case 4:
{
npcId = FLOATO2; npcId = FLOATO2;
break; break;
}
case 6: case 6:
{
npcId = RATEL; npcId = RATEL;
break; break;
}
} }
if (npcId != -1) if (npcId != -1)
{ {

View File

@ -152,8 +152,10 @@ public final class Q10740_NeverForget extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
break; break;
} }

View File

@ -70,7 +70,9 @@ public final class Q10741_ADraughtForTheCold extends Quest
switch (event) switch (event)
{ {
case "33951-02.htm": case "33951-02.htm":
{
break; break;
}
case "33951-03.htm": case "33951-03.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -88,7 +90,9 @@ public final class Q10741_ADraughtForTheCold extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }
@ -106,8 +110,10 @@ public final class Q10741_ADraughtForTheCold extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33951-01.htm"; htmltext = "33951-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
if (qs.isCond(1)) if (qs.isCond(1))
@ -117,8 +123,10 @@ public final class Q10741_ADraughtForTheCold extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
break; break;
} }

View File

@ -74,8 +74,10 @@ public final class Q10742_AFurryFriend extends Quest
{ {
case "33952-02.htm": case "33952-02.htm":
case "33952-05.html": case "33952-05.html":
{
htmltext = event; htmltext = event;
break; break;
}
case "33952-03.htm": case "33952-03.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -183,8 +185,10 @@ public final class Q10742_AFurryFriend extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33952-01.htm"; htmltext = "33952-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
if (qs.isCond(1)) if (qs.isCond(1))
@ -201,8 +205,10 @@ public final class Q10742_AFurryFriend extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
} }
return htmltext; return htmltext;

View File

@ -78,7 +78,9 @@ public final class Q10743_StrangeFungus extends Quest
{ {
case "33952-02.htm": case "33952-02.htm":
case "33953-02.html": case "33953-02.html":
{
break; break;
}
case "33952-03.htm": case "33952-03.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -97,7 +99,9 @@ public final class Q10743_StrangeFungus extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }
@ -115,14 +119,20 @@ public final class Q10743_StrangeFungus extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33952-01.htm"; htmltext = "33952-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{
htmltext = (qs.isCond(1)) ? "33952-04.html" : "33952-05.html"; htmltext = (qs.isCond(1)) ? "33952-04.html" : "33952-05.html";
break; break;
}
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
break; break;
} }

View File

@ -67,7 +67,9 @@ public final class Q10744_StrongerThanSteel extends Quest
{ {
case "33953-02.htm": case "33953-02.htm":
case "33954-02.html": case "33954-02.html":
{
break; break;
}
case "33953-03.htm": case "33953-03.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -82,7 +84,9 @@ public final class Q10744_StrongerThanSteel extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }

View File

@ -114,7 +114,9 @@ public final class Q10745_TheSecretIngredients extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }

View File

@ -82,7 +82,9 @@ public final class Q10746_SeeTheWorld extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }
@ -100,8 +102,10 @@ public final class Q10746_SeeTheWorld extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33933-01.htm"; htmltext = "33933-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
if (qs.isCond(1)) if (qs.isCond(1))
@ -111,8 +115,10 @@ public final class Q10746_SeeTheWorld extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
break; break;
} }

View File

@ -60,7 +60,9 @@ public class Q10796_TheEyeThatDefiedTheGods extends Quest
{ {
case "31616-02.htm": case "31616-02.htm":
case "31616-03.htm": case "31616-03.htm":
{
break; break;
}
case "31616-04.htm": case "31616-04.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -111,8 +113,8 @@ public class Q10796_TheEyeThatDefiedTheGods extends Quest
{ {
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
} }
}
break; break;
}
} }
return htmltext; return htmltext;
} }

View File

@ -65,7 +65,9 @@ public class Q10797_CrossingFate extends Quest
{ {
case "31683-02.htm": case "31683-02.htm":
case "31683-03.htm": case "31683-03.htm":
{
break; break;
}
case "31683-04.htm": case "31683-04.htm":
{ {
qs.startQuest(); qs.startQuest();

View File

@ -137,9 +137,12 @@ public class Expression
{ {
case Token.TOKEN_NUMBER: case Token.TOKEN_NUMBER:
case Token.TOKEN_VARIABLE: case Token.TOKEN_VARIABLE:
{
count++; count++;
break; break;
}
case Token.TOKEN_FUNCTION: case Token.TOKEN_FUNCTION:
{
final Function func = ((FunctionToken) tok).getFunction(); final Function func = ((FunctionToken) tok).getFunction();
final int argsNum = func.getNumArguments(); final int argsNum = func.getNumArguments();
if (argsNum > count) if (argsNum > count)
@ -156,13 +159,16 @@ public class Expression
count++; count++;
} }
break; break;
}
case Token.TOKEN_OPERATOR: case Token.TOKEN_OPERATOR:
{
Operator op = ((OperatorToken) tok).getOperator(); Operator op = ((OperatorToken) tok).getOperator();
if (op.getNumOperands() == 2) if (op.getNumOperands() == 2)
{ {
count--; count--;
} }
break; break;
}
} }
if (count < 1) if (count < 1)
{ {

View File

@ -109,27 +109,41 @@ public abstract class Operators
switch (symbol) switch (symbol)
{ {
case '+': case '+':
{
if (numArguments != 1) if (numArguments != 1)
{ {
return builtinOperators[INDEX_ADDITION]; return builtinOperators[INDEX_ADDITION];
} }
return builtinOperators[INDEX_UNARYPLUS]; return builtinOperators[INDEX_UNARYPLUS];
}
case '-': case '-':
{
if (numArguments != 1) if (numArguments != 1)
{ {
return builtinOperators[INDEX_SUBTRACTION]; return builtinOperators[INDEX_SUBTRACTION];
} }
return builtinOperators[INDEX_UNARYMINUS]; return builtinOperators[INDEX_UNARYMINUS];
}
case '*': case '*':
{
return builtinOperators[INDEX_MUTLIPLICATION]; return builtinOperators[INDEX_MUTLIPLICATION];
}
case '/': case '/':
{
return builtinOperators[INDEX_DIVISION]; return builtinOperators[INDEX_DIVISION];
}
case '^': case '^':
{
return builtinOperators[INDEX_POWER]; return builtinOperators[INDEX_POWER];
}
case '%': case '%':
{
return builtinOperators[INDEX_MODULO]; return builtinOperators[INDEX_MODULO];
}
default: default:
{
return null; return null;
}
} }
} }
} }

View File

@ -48,12 +48,17 @@ public class ShuntingYard
{ {
case Token.TOKEN_NUMBER: case Token.TOKEN_NUMBER:
case Token.TOKEN_VARIABLE: case Token.TOKEN_VARIABLE:
{
output.add(token); output.add(token);
break; break;
}
case Token.TOKEN_FUNCTION: case Token.TOKEN_FUNCTION:
{
stack.add(token); stack.add(token);
break; break;
}
case Token.TOKEN_SEPARATOR: case Token.TOKEN_SEPARATOR:
{
while (!stack.empty() && (stack.peek().getType() != Token.TOKEN_PARENTHESES_OPEN)) while (!stack.empty() && (stack.peek().getType() != Token.TOKEN_PARENTHESES_OPEN))
{ {
output.add(stack.pop()); output.add(stack.pop());
@ -63,7 +68,9 @@ public class ShuntingYard
throw new IllegalArgumentException("Misplaced function separator ',' or mismatched parentheses"); throw new IllegalArgumentException("Misplaced function separator ',' or mismatched parentheses");
} }
break; break;
}
case Token.TOKEN_OPERATOR: case Token.TOKEN_OPERATOR:
{
while (!stack.empty() && (stack.peek().getType() == Token.TOKEN_OPERATOR)) while (!stack.empty() && (stack.peek().getType() == Token.TOKEN_OPERATOR))
{ {
OperatorToken o1 = (OperatorToken) token; OperatorToken o1 = (OperatorToken) token;
@ -83,10 +90,14 @@ public class ShuntingYard
} }
stack.push(token); stack.push(token);
break; break;
}
case Token.TOKEN_PARENTHESES_OPEN: case Token.TOKEN_PARENTHESES_OPEN:
{
stack.push(token); stack.push(token);
break; break;
}
case Token.TOKEN_PARENTHESES_CLOSE: case Token.TOKEN_PARENTHESES_CLOSE:
{
while (stack.peek().getType() != Token.TOKEN_PARENTHESES_OPEN) while (stack.peek().getType() != Token.TOKEN_PARENTHESES_OPEN)
{ {
output.add(stack.pop()); output.add(stack.pop());
@ -97,8 +108,11 @@ public class ShuntingYard
output.add(stack.pop()); output.add(stack.pop());
} }
break; break;
}
default: default:
{
throw new IllegalArgumentException("Unknown Token type encountered. This should not happen"); throw new IllegalArgumentException("Unknown Token type encountered. This should not happen");
}
} }
} }
while (!stack.empty()) while (!stack.empty())

View File

@ -159,19 +159,24 @@ public final class GeoDataConverter
switch (type) switch (type)
{ {
case GeoStructure.TYPE_FLAT_L2J_L2OFF: case GeoStructure.TYPE_FLAT_L2J_L2OFF:
{
_blocks[ix][iy] = new BlockFlat(buffer, _format); _blocks[ix][iy] = new BlockFlat(buffer, _format);
break; break;
}
case GeoStructure.TYPE_COMPLEX_L2J: case GeoStructure.TYPE_COMPLEX_L2J:
{
_blocks[ix][iy] = new BlockComplex(buffer, _format); _blocks[ix][iy] = new BlockComplex(buffer, _format);
break; break;
}
case GeoStructure.TYPE_MULTILAYER_L2J: case GeoStructure.TYPE_MULTILAYER_L2J:
{
_blocks[ix][iy] = new BlockMultilayer(buffer, _format); _blocks[ix][iy] = new BlockMultilayer(buffer, _format);
break; break;
}
default: default:
{
throw new IllegalArgumentException("Unknown block type: " + type); throw new IllegalArgumentException("Unknown block type: " + type);
}
} }
} }
else else
@ -183,16 +188,20 @@ public final class GeoDataConverter
switch (type) switch (type)
{ {
case GeoStructure.TYPE_FLAT_L2J_L2OFF: case GeoStructure.TYPE_FLAT_L2J_L2OFF:
{
_blocks[ix][iy] = new BlockFlat(buffer, _format); _blocks[ix][iy] = new BlockFlat(buffer, _format);
break; break;
}
case GeoStructure.TYPE_COMPLEX_L2OFF: case GeoStructure.TYPE_COMPLEX_L2OFF:
{
_blocks[ix][iy] = new BlockComplex(buffer, _format); _blocks[ix][iy] = new BlockComplex(buffer, _format);
break; break;
}
default: default:
{
_blocks[ix][iy] = new BlockMultilayer(buffer, _format); _blocks[ix][iy] = new BlockMultilayer(buffer, _format);
break; break;
}
} }
} }
} }

View File

@ -123,7 +123,7 @@ org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
org.eclipse.jdt.core.compiler.source=1.8 org.eclipse.jdt.core.compiler.source=1.8
org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=99 org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
org.eclipse.jdt.core.formatter.align_type_members_on_columns=false org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=0 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=0
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
@ -137,8 +137,10 @@ org.eclipse.jdt.core.formatter.alignment_for_compact_if=0
org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=0 org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=0
org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49 org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=49 org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=49
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=85 org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=85
@ -148,6 +150,8 @@ org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16 org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
org.eclipse.jdt.core.formatter.blank_lines_after_package=1 org.eclipse.jdt.core.formatter.blank_lines_after_package=1
@ -206,6 +210,7 @@ org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
org.eclipse.jdt.core.formatter.indentation.size=4 org.eclipse.jdt.core.formatter.indentation.size=4
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
@ -400,12 +405,24 @@ org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false
org.eclipse.jdt.core.formatter.tabulation.char=tab org.eclipse.jdt.core.formatter.tabulation.char=tab
org.eclipse.jdt.core.formatter.tabulation.size=4 org.eclipse.jdt.core.formatter.tabulation.size=4
org.eclipse.jdt.core.formatter.use_on_off_tags=true org.eclipse.jdt.core.formatter.use_on_off_tags=true
org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter

View File

@ -152,6 +152,7 @@ public class Q10376_BloodyGoodTime extends Quest
switch (npc.getId()) switch (npc.getId())
{ {
case ZENYA: case ZENYA:
{
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
@ -179,7 +180,7 @@ public class Q10376_BloodyGoodTime extends Quest
} }
} }
break; break;
}
case CASCA: case CASCA:
{ {
if (qs.isStarted()) if (qs.isStarted())
@ -203,7 +204,6 @@ public class Q10376_BloodyGoodTime extends Quest
} }
break; break;
} }
case AGNES: case AGNES:
{ {
if (qs.isStarted()) if (qs.isStarted())
@ -219,7 +219,6 @@ public class Q10376_BloodyGoodTime extends Quest
} }
break; break;
} }
case ANDREI: case ANDREI:
{ {
if (qs.isStarted() && qs.isCond(6)) if (qs.isStarted() && qs.isCond(6))

View File

@ -129,7 +129,6 @@ public class Q10383_FergasonsOffer extends Quest
{ {
htmltext = "maestro_ferguson_q10383_05.html"; htmltext = "maestro_ferguson_q10383_05.html";
} }
break; break;
} }
case AKU: case AKU:
@ -142,7 +141,6 @@ public class Q10383_FergasonsOffer extends Quest
{ {
htmltext = "sofa_aku_q10383_02.html"; htmltext = "sofa_aku_q10383_02.html";
} }
break; break;
} }
} }

View File

@ -111,7 +111,6 @@ public class Q10384_AnAudienceWithTauti extends Quest
{ {
htmltext = "maestro_ferguson_q10384_09.html"; htmltext = "maestro_ferguson_q10384_09.html";
} }
} }
else if (qs.isCompleted()) else if (qs.isCompleted())
{ {

View File

@ -132,8 +132,10 @@ public final class Q10734_DoOrDie extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = (meetStartRestrictions(player)) ? "33943-01.htm" : "33943-08.htm"; htmltext = (meetStartRestrictions(player)) ? "33943-01.htm" : "33943-08.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
switch (qs.getCond()) switch (qs.getCond())
@ -182,8 +184,10 @@ public final class Q10734_DoOrDie extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = (meetStartRestrictions(player)) ? "33942-01.htm" : "33942-08.htm"; htmltext = (meetStartRestrictions(player)) ? "33942-01.htm" : "33942-08.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
switch (qs.getCond()) switch (qs.getCond())
@ -219,8 +223,10 @@ public final class Q10734_DoOrDie extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
} }
break; break;

View File

@ -119,8 +119,10 @@ public final class Q10735_ASpecialPower extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
return htmltext; return htmltext;
} }
@ -136,14 +138,20 @@ public final class Q10735_ASpecialPower extends Quest
switch (qs.getCond()) switch (qs.getCond())
{ {
case 2: case 2:
{
npcId = FLOATO; npcId = FLOATO;
break; break;
}
case 4: case 4:
{
npcId = FLOATO2; npcId = FLOATO2;
break; break;
}
case 6: case 6:
{
npcId = RATEL; npcId = RATEL;
break; break;
}
} }
if (npcId != -1) if (npcId != -1)
{ {

View File

@ -83,8 +83,10 @@ public final class Q10736_ASpecialPower extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33943-01.htm"; htmltext = "33943-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
switch (qs.getCond()) switch (qs.getCond())
@ -116,8 +118,10 @@ public final class Q10736_ASpecialPower extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
return htmltext; return htmltext;
} }
@ -133,14 +137,20 @@ public final class Q10736_ASpecialPower extends Quest
switch (qs.getCond()) switch (qs.getCond())
{ {
case 2: case 2:
{
npcId = FLOATO; npcId = FLOATO;
break; break;
}
case 4: case 4:
{
npcId = FLOATO2; npcId = FLOATO2;
break; break;
}
case 6: case 6:
{
npcId = RATEL; npcId = RATEL;
break; break;
}
} }
if (npcId != -1) if (npcId != -1)
{ {

View File

@ -152,8 +152,10 @@ public final class Q10740_NeverForget extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
break; break;
} }

View File

@ -70,7 +70,9 @@ public final class Q10741_ADraughtForTheCold extends Quest
switch (event) switch (event)
{ {
case "33951-02.htm": case "33951-02.htm":
{
break; break;
}
case "33951-03.htm": case "33951-03.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -88,7 +90,9 @@ public final class Q10741_ADraughtForTheCold extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }
@ -106,8 +110,10 @@ public final class Q10741_ADraughtForTheCold extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33951-01.htm"; htmltext = "33951-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
if (qs.isCond(1)) if (qs.isCond(1))
@ -117,8 +123,10 @@ public final class Q10741_ADraughtForTheCold extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
break; break;
} }

View File

@ -74,8 +74,10 @@ public final class Q10742_AFurryFriend extends Quest
{ {
case "33952-02.htm": case "33952-02.htm":
case "33952-05.html": case "33952-05.html":
{
htmltext = event; htmltext = event;
break; break;
}
case "33952-03.htm": case "33952-03.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -183,8 +185,10 @@ public final class Q10742_AFurryFriend extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33952-01.htm"; htmltext = "33952-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
if (qs.isCond(1)) if (qs.isCond(1))
@ -201,8 +205,10 @@ public final class Q10742_AFurryFriend extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
} }
return htmltext; return htmltext;

View File

@ -78,7 +78,9 @@ public final class Q10743_StrangeFungus extends Quest
{ {
case "33952-02.htm": case "33952-02.htm":
case "33953-02.html": case "33953-02.html":
{
break; break;
}
case "33952-03.htm": case "33952-03.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -97,7 +99,9 @@ public final class Q10743_StrangeFungus extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }
@ -115,14 +119,20 @@ public final class Q10743_StrangeFungus extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33952-01.htm"; htmltext = "33952-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{
htmltext = (qs.isCond(1)) ? "33952-04.html" : "33952-05.html"; htmltext = (qs.isCond(1)) ? "33952-04.html" : "33952-05.html";
break; break;
}
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
break; break;
} }

View File

@ -67,7 +67,9 @@ public final class Q10744_StrongerThanSteel extends Quest
{ {
case "33953-02.htm": case "33953-02.htm":
case "33954-02.html": case "33954-02.html":
{
break; break;
}
case "33953-03.htm": case "33953-03.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -82,7 +84,9 @@ public final class Q10744_StrongerThanSteel extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }

View File

@ -114,7 +114,9 @@ public final class Q10745_TheSecretIngredients extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }

View File

@ -82,7 +82,9 @@ public final class Q10746_SeeTheWorld extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }
@ -100,8 +102,10 @@ public final class Q10746_SeeTheWorld extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33933-01.htm"; htmltext = "33933-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
if (qs.isCond(1)) if (qs.isCond(1))
@ -111,8 +115,10 @@ public final class Q10746_SeeTheWorld extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
break; break;
} }

View File

@ -60,7 +60,9 @@ public class Q10796_TheEyeThatDefiedTheGods extends Quest
{ {
case "31616-02.htm": case "31616-02.htm":
case "31616-03.htm": case "31616-03.htm":
{
break; break;
}
case "31616-04.htm": case "31616-04.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -111,8 +113,8 @@ public class Q10796_TheEyeThatDefiedTheGods extends Quest
{ {
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
} }
}
break; break;
}
} }
return htmltext; return htmltext;
} }

View File

@ -65,7 +65,9 @@ public class Q10797_CrossingFate extends Quest
{ {
case "31683-02.htm": case "31683-02.htm":
case "31683-03.htm": case "31683-03.htm":
{
break; break;
}
case "31683-04.htm": case "31683-04.htm":
{ {
qs.startQuest(); qs.startQuest();

View File

@ -137,9 +137,12 @@ public class Expression
{ {
case Token.TOKEN_NUMBER: case Token.TOKEN_NUMBER:
case Token.TOKEN_VARIABLE: case Token.TOKEN_VARIABLE:
{
count++; count++;
break; break;
}
case Token.TOKEN_FUNCTION: case Token.TOKEN_FUNCTION:
{
final Function func = ((FunctionToken) tok).getFunction(); final Function func = ((FunctionToken) tok).getFunction();
final int argsNum = func.getNumArguments(); final int argsNum = func.getNumArguments();
if (argsNum > count) if (argsNum > count)
@ -156,13 +159,16 @@ public class Expression
count++; count++;
} }
break; break;
}
case Token.TOKEN_OPERATOR: case Token.TOKEN_OPERATOR:
{
Operator op = ((OperatorToken) tok).getOperator(); Operator op = ((OperatorToken) tok).getOperator();
if (op.getNumOperands() == 2) if (op.getNumOperands() == 2)
{ {
count--; count--;
} }
break; break;
}
} }
if (count < 1) if (count < 1)
{ {

View File

@ -109,27 +109,41 @@ public abstract class Operators
switch (symbol) switch (symbol)
{ {
case '+': case '+':
{
if (numArguments != 1) if (numArguments != 1)
{ {
return builtinOperators[INDEX_ADDITION]; return builtinOperators[INDEX_ADDITION];
} }
return builtinOperators[INDEX_UNARYPLUS]; return builtinOperators[INDEX_UNARYPLUS];
}
case '-': case '-':
{
if (numArguments != 1) if (numArguments != 1)
{ {
return builtinOperators[INDEX_SUBTRACTION]; return builtinOperators[INDEX_SUBTRACTION];
} }
return builtinOperators[INDEX_UNARYMINUS]; return builtinOperators[INDEX_UNARYMINUS];
}
case '*': case '*':
{
return builtinOperators[INDEX_MUTLIPLICATION]; return builtinOperators[INDEX_MUTLIPLICATION];
}
case '/': case '/':
{
return builtinOperators[INDEX_DIVISION]; return builtinOperators[INDEX_DIVISION];
}
case '^': case '^':
{
return builtinOperators[INDEX_POWER]; return builtinOperators[INDEX_POWER];
}
case '%': case '%':
{
return builtinOperators[INDEX_MODULO]; return builtinOperators[INDEX_MODULO];
}
default: default:
{
return null; return null;
}
} }
} }
} }

View File

@ -48,12 +48,17 @@ public class ShuntingYard
{ {
case Token.TOKEN_NUMBER: case Token.TOKEN_NUMBER:
case Token.TOKEN_VARIABLE: case Token.TOKEN_VARIABLE:
{
output.add(token); output.add(token);
break; break;
}
case Token.TOKEN_FUNCTION: case Token.TOKEN_FUNCTION:
{
stack.add(token); stack.add(token);
break; break;
}
case Token.TOKEN_SEPARATOR: case Token.TOKEN_SEPARATOR:
{
while (!stack.empty() && (stack.peek().getType() != Token.TOKEN_PARENTHESES_OPEN)) while (!stack.empty() && (stack.peek().getType() != Token.TOKEN_PARENTHESES_OPEN))
{ {
output.add(stack.pop()); output.add(stack.pop());
@ -63,7 +68,9 @@ public class ShuntingYard
throw new IllegalArgumentException("Misplaced function separator ',' or mismatched parentheses"); throw new IllegalArgumentException("Misplaced function separator ',' or mismatched parentheses");
} }
break; break;
}
case Token.TOKEN_OPERATOR: case Token.TOKEN_OPERATOR:
{
while (!stack.empty() && (stack.peek().getType() == Token.TOKEN_OPERATOR)) while (!stack.empty() && (stack.peek().getType() == Token.TOKEN_OPERATOR))
{ {
OperatorToken o1 = (OperatorToken) token; OperatorToken o1 = (OperatorToken) token;
@ -83,10 +90,14 @@ public class ShuntingYard
} }
stack.push(token); stack.push(token);
break; break;
}
case Token.TOKEN_PARENTHESES_OPEN: case Token.TOKEN_PARENTHESES_OPEN:
{
stack.push(token); stack.push(token);
break; break;
}
case Token.TOKEN_PARENTHESES_CLOSE: case Token.TOKEN_PARENTHESES_CLOSE:
{
while (stack.peek().getType() != Token.TOKEN_PARENTHESES_OPEN) while (stack.peek().getType() != Token.TOKEN_PARENTHESES_OPEN)
{ {
output.add(stack.pop()); output.add(stack.pop());
@ -97,8 +108,11 @@ public class ShuntingYard
output.add(stack.pop()); output.add(stack.pop());
} }
break; break;
}
default: default:
{
throw new IllegalArgumentException("Unknown Token type encountered. This should not happen"); throw new IllegalArgumentException("Unknown Token type encountered. This should not happen");
}
} }
} }
while (!stack.empty()) while (!stack.empty())

View File

@ -159,19 +159,24 @@ public final class GeoDataConverter
switch (type) switch (type)
{ {
case GeoStructure.TYPE_FLAT_L2J_L2OFF: case GeoStructure.TYPE_FLAT_L2J_L2OFF:
{
_blocks[ix][iy] = new BlockFlat(buffer, _format); _blocks[ix][iy] = new BlockFlat(buffer, _format);
break; break;
}
case GeoStructure.TYPE_COMPLEX_L2J: case GeoStructure.TYPE_COMPLEX_L2J:
{
_blocks[ix][iy] = new BlockComplex(buffer, _format); _blocks[ix][iy] = new BlockComplex(buffer, _format);
break; break;
}
case GeoStructure.TYPE_MULTILAYER_L2J: case GeoStructure.TYPE_MULTILAYER_L2J:
{
_blocks[ix][iy] = new BlockMultilayer(buffer, _format); _blocks[ix][iy] = new BlockMultilayer(buffer, _format);
break; break;
}
default: default:
{
throw new IllegalArgumentException("Unknown block type: " + type); throw new IllegalArgumentException("Unknown block type: " + type);
}
} }
} }
else else
@ -183,16 +188,20 @@ public final class GeoDataConverter
switch (type) switch (type)
{ {
case GeoStructure.TYPE_FLAT_L2J_L2OFF: case GeoStructure.TYPE_FLAT_L2J_L2OFF:
{
_blocks[ix][iy] = new BlockFlat(buffer, _format); _blocks[ix][iy] = new BlockFlat(buffer, _format);
break; break;
}
case GeoStructure.TYPE_COMPLEX_L2OFF: case GeoStructure.TYPE_COMPLEX_L2OFF:
{
_blocks[ix][iy] = new BlockComplex(buffer, _format); _blocks[ix][iy] = new BlockComplex(buffer, _format);
break; break;
}
default: default:
{
_blocks[ix][iy] = new BlockMultilayer(buffer, _format); _blocks[ix][iy] = new BlockMultilayer(buffer, _format);
break; break;
}
} }
} }
} }

View File

@ -123,7 +123,7 @@ org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
org.eclipse.jdt.core.compiler.source=1.8 org.eclipse.jdt.core.compiler.source=1.8
org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=99 org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
org.eclipse.jdt.core.formatter.align_type_members_on_columns=false org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=0 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=0
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
@ -137,8 +137,10 @@ org.eclipse.jdt.core.formatter.alignment_for_compact_if=0
org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=0 org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=0
org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49 org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=49 org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=49
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=85 org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=85
@ -148,6 +150,8 @@ org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16 org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
org.eclipse.jdt.core.formatter.blank_lines_after_package=1 org.eclipse.jdt.core.formatter.blank_lines_after_package=1
@ -206,6 +210,7 @@ org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
org.eclipse.jdt.core.formatter.indentation.size=4 org.eclipse.jdt.core.formatter.indentation.size=4
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
@ -400,12 +405,24 @@ org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false
org.eclipse.jdt.core.formatter.tabulation.char=tab org.eclipse.jdt.core.formatter.tabulation.char=tab
org.eclipse.jdt.core.formatter.tabulation.size=4 org.eclipse.jdt.core.formatter.tabulation.size=4
org.eclipse.jdt.core.formatter.use_on_off_tags=true org.eclipse.jdt.core.formatter.use_on_off_tags=true
org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter

View File

@ -152,6 +152,7 @@ public class Q10376_BloodyGoodTime extends Quest
switch (npc.getId()) switch (npc.getId())
{ {
case ZENYA: case ZENYA:
{
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
@ -179,7 +180,7 @@ public class Q10376_BloodyGoodTime extends Quest
} }
} }
break; break;
}
case CASCA: case CASCA:
{ {
if (qs.isStarted()) if (qs.isStarted())
@ -203,7 +204,6 @@ public class Q10376_BloodyGoodTime extends Quest
} }
break; break;
} }
case AGNES: case AGNES:
{ {
if (qs.isStarted()) if (qs.isStarted())
@ -219,7 +219,6 @@ public class Q10376_BloodyGoodTime extends Quest
} }
break; break;
} }
case ANDREI: case ANDREI:
{ {
if (qs.isStarted() && qs.isCond(6)) if (qs.isStarted() && qs.isCond(6))

View File

@ -139,7 +139,6 @@ public class Q10383_FergasonsOffer extends Quest
{ {
htmltext = "maestro_ferguson_q10383_05.html"; htmltext = "maestro_ferguson_q10383_05.html";
} }
break; break;
} }
case AKU: case AKU:
@ -152,7 +151,6 @@ public class Q10383_FergasonsOffer extends Quest
{ {
htmltext = "sofa_aku_q10383_02.html"; htmltext = "sofa_aku_q10383_02.html";
} }
break; break;
} }
} }

View File

@ -124,7 +124,6 @@ public class Q10384_AnAudienceWithTauti extends Quest
{ {
htmltext = "maestro_ferguson_q10384_09.html"; htmltext = "maestro_ferguson_q10384_09.html";
} }
} }
else if (qs.isCompleted()) else if (qs.isCompleted())
{ {

View File

@ -211,7 +211,9 @@ public final class Q10542_SearchingForNewPower extends Quest
break; break;
} }
default: default:
{
break; break;
}
} }
if (npcStringId != null) if (npcStringId != null)
{ {

View File

@ -132,8 +132,10 @@ public final class Q10734_DoOrDie extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = (meetStartRestrictions(player)) ? "33943-01.htm" : "33943-08.htm"; htmltext = (meetStartRestrictions(player)) ? "33943-01.htm" : "33943-08.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
switch (qs.getCond()) switch (qs.getCond())
@ -182,8 +184,10 @@ public final class Q10734_DoOrDie extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = (meetStartRestrictions(player)) ? "33942-01.htm" : "33942-08.htm"; htmltext = (meetStartRestrictions(player)) ? "33942-01.htm" : "33942-08.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
switch (qs.getCond()) switch (qs.getCond())
@ -219,8 +223,10 @@ public final class Q10734_DoOrDie extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
} }
break; break;

View File

@ -119,8 +119,10 @@ public final class Q10735_ASpecialPower extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
return htmltext; return htmltext;
} }
@ -136,14 +138,20 @@ public final class Q10735_ASpecialPower extends Quest
switch (qs.getCond()) switch (qs.getCond())
{ {
case 2: case 2:
{
npcId = FLOATO; npcId = FLOATO;
break; break;
}
case 4: case 4:
{
npcId = FLOATO2; npcId = FLOATO2;
break; break;
}
case 6: case 6:
{
npcId = RATEL; npcId = RATEL;
break; break;
}
} }
if (npcId != -1) if (npcId != -1)
{ {

View File

@ -83,8 +83,10 @@ public final class Q10736_ASpecialPower extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33943-01.htm"; htmltext = "33943-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
switch (qs.getCond()) switch (qs.getCond())
@ -116,8 +118,10 @@ public final class Q10736_ASpecialPower extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
return htmltext; return htmltext;
} }
@ -133,14 +137,20 @@ public final class Q10736_ASpecialPower extends Quest
switch (qs.getCond()) switch (qs.getCond())
{ {
case 2: case 2:
{
npcId = FLOATO; npcId = FLOATO;
break; break;
}
case 4: case 4:
{
npcId = FLOATO2; npcId = FLOATO2;
break; break;
}
case 6: case 6:
{
npcId = RATEL; npcId = RATEL;
break; break;
}
} }
if (npcId != -1) if (npcId != -1)
{ {

View File

@ -152,8 +152,10 @@ public final class Q10740_NeverForget extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
break; break;
} }

View File

@ -70,7 +70,9 @@ public final class Q10741_ADraughtForTheCold extends Quest
switch (event) switch (event)
{ {
case "33951-02.htm": case "33951-02.htm":
{
break; break;
}
case "33951-03.htm": case "33951-03.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -88,7 +90,9 @@ public final class Q10741_ADraughtForTheCold extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }
@ -106,8 +110,10 @@ public final class Q10741_ADraughtForTheCold extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33951-01.htm"; htmltext = "33951-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
if (qs.isCond(1)) if (qs.isCond(1))
@ -117,8 +123,10 @@ public final class Q10741_ADraughtForTheCold extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
break; break;
} }

View File

@ -74,8 +74,10 @@ public final class Q10742_AFurryFriend extends Quest
{ {
case "33952-02.htm": case "33952-02.htm":
case "33952-05.html": case "33952-05.html":
{
htmltext = event; htmltext = event;
break; break;
}
case "33952-03.htm": case "33952-03.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -183,8 +185,10 @@ public final class Q10742_AFurryFriend extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33952-01.htm"; htmltext = "33952-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
if (qs.isCond(1)) if (qs.isCond(1))
@ -201,8 +205,10 @@ public final class Q10742_AFurryFriend extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
} }
return htmltext; return htmltext;

View File

@ -78,7 +78,9 @@ public final class Q10743_StrangeFungus extends Quest
{ {
case "33952-02.htm": case "33952-02.htm":
case "33953-02.html": case "33953-02.html":
{
break; break;
}
case "33952-03.htm": case "33952-03.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -97,7 +99,9 @@ public final class Q10743_StrangeFungus extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }
@ -115,14 +119,20 @@ public final class Q10743_StrangeFungus extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33952-01.htm"; htmltext = "33952-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{
htmltext = (qs.isCond(1)) ? "33952-04.html" : "33952-05.html"; htmltext = (qs.isCond(1)) ? "33952-04.html" : "33952-05.html";
break; break;
}
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
break; break;
} }

View File

@ -67,7 +67,9 @@ public final class Q10744_StrongerThanSteel extends Quest
{ {
case "33953-02.htm": case "33953-02.htm":
case "33954-02.html": case "33954-02.html":
{
break; break;
}
case "33953-03.htm": case "33953-03.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -82,7 +84,9 @@ public final class Q10744_StrongerThanSteel extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }

View File

@ -114,7 +114,9 @@ public final class Q10745_TheSecretIngredients extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }

View File

@ -83,7 +83,9 @@ public final class Q10746_SeeTheWorld extends Quest
break; break;
} }
default: default:
{
htmltext = null; htmltext = null;
}
} }
return htmltext; return htmltext;
} }
@ -101,8 +103,10 @@ public final class Q10746_SeeTheWorld extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33933-01.htm"; htmltext = "33933-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{ {
if (qs.isCond(1)) if (qs.isCond(1))
@ -112,8 +116,10 @@ public final class Q10746_SeeTheWorld extends Quest
break; break;
} }
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
break; break;
} }

View File

@ -88,7 +88,9 @@ public class Q10790_AMercenaryHelper extends Quest
{ {
case "33847-02.htm": case "33847-02.htm":
case "33847-03.htm": case "33847-03.htm":
{
break; break;
}
case "33847-04.htm": case "33847-04.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -118,14 +120,20 @@ public class Q10790_AMercenaryHelper extends Quest
switch (qs.getState()) switch (qs.getState())
{ {
case State.CREATED: case State.CREATED:
{
htmltext = "33847-01.htm"; htmltext = "33847-01.htm";
break; break;
}
case State.STARTED: case State.STARTED:
{
htmltext = (qs.isCond(1)) ? "33847-05.html" : "33847-06.html"; htmltext = (qs.isCond(1)) ? "33847-05.html" : "33847-06.html";
break; break;
}
case State.COMPLETED: case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
break; break;
}
} }
return htmltext; return htmltext;
} }

View File

@ -60,7 +60,9 @@ public class Q10796_TheEyeThatDefiedTheGods extends Quest
{ {
case "31616-02.htm": case "31616-02.htm":
case "31616-03.htm": case "31616-03.htm":
{
break; break;
}
case "31616-04.htm": case "31616-04.htm":
{ {
qs.startQuest(); qs.startQuest();
@ -111,8 +113,8 @@ public class Q10796_TheEyeThatDefiedTheGods extends Quest
{ {
htmltext = getAlreadyCompletedMsg(player); htmltext = getAlreadyCompletedMsg(player);
} }
}
break; break;
}
} }
return htmltext; return htmltext;
} }

View File

@ -65,7 +65,9 @@ public class Q10797_CrossingFate extends Quest
{ {
case "31683-02.htm": case "31683-02.htm":
case "31683-03.htm": case "31683-03.htm":
{
break; break;
}
case "31683-04.htm": case "31683-04.htm":
{ {
qs.startQuest(); qs.startQuest();

View File

@ -137,9 +137,12 @@ public class Expression
{ {
case Token.TOKEN_NUMBER: case Token.TOKEN_NUMBER:
case Token.TOKEN_VARIABLE: case Token.TOKEN_VARIABLE:
{
count++; count++;
break; break;
}
case Token.TOKEN_FUNCTION: case Token.TOKEN_FUNCTION:
{
final Function func = ((FunctionToken) tok).getFunction(); final Function func = ((FunctionToken) tok).getFunction();
final int argsNum = func.getNumArguments(); final int argsNum = func.getNumArguments();
if (argsNum > count) if (argsNum > count)
@ -156,13 +159,16 @@ public class Expression
count++; count++;
} }
break; break;
}
case Token.TOKEN_OPERATOR: case Token.TOKEN_OPERATOR:
{
Operator op = ((OperatorToken) tok).getOperator(); Operator op = ((OperatorToken) tok).getOperator();
if (op.getNumOperands() == 2) if (op.getNumOperands() == 2)
{ {
count--; count--;
} }
break; break;
}
} }
if (count < 1) if (count < 1)
{ {

View File

@ -109,27 +109,41 @@ public abstract class Operators
switch (symbol) switch (symbol)
{ {
case '+': case '+':
{
if (numArguments != 1) if (numArguments != 1)
{ {
return builtinOperators[INDEX_ADDITION]; return builtinOperators[INDEX_ADDITION];
} }
return builtinOperators[INDEX_UNARYPLUS]; return builtinOperators[INDEX_UNARYPLUS];
}
case '-': case '-':
{
if (numArguments != 1) if (numArguments != 1)
{ {
return builtinOperators[INDEX_SUBTRACTION]; return builtinOperators[INDEX_SUBTRACTION];
} }
return builtinOperators[INDEX_UNARYMINUS]; return builtinOperators[INDEX_UNARYMINUS];
}
case '*': case '*':
{
return builtinOperators[INDEX_MUTLIPLICATION]; return builtinOperators[INDEX_MUTLIPLICATION];
}
case '/': case '/':
{
return builtinOperators[INDEX_DIVISION]; return builtinOperators[INDEX_DIVISION];
}
case '^': case '^':
{
return builtinOperators[INDEX_POWER]; return builtinOperators[INDEX_POWER];
}
case '%': case '%':
{
return builtinOperators[INDEX_MODULO]; return builtinOperators[INDEX_MODULO];
}
default: default:
{
return null; return null;
}
} }
} }
} }

View File

@ -48,12 +48,17 @@ public class ShuntingYard
{ {
case Token.TOKEN_NUMBER: case Token.TOKEN_NUMBER:
case Token.TOKEN_VARIABLE: case Token.TOKEN_VARIABLE:
{
output.add(token); output.add(token);
break; break;
}
case Token.TOKEN_FUNCTION: case Token.TOKEN_FUNCTION:
{
stack.add(token); stack.add(token);
break; break;
}
case Token.TOKEN_SEPARATOR: case Token.TOKEN_SEPARATOR:
{
while (!stack.empty() && (stack.peek().getType() != Token.TOKEN_PARENTHESES_OPEN)) while (!stack.empty() && (stack.peek().getType() != Token.TOKEN_PARENTHESES_OPEN))
{ {
output.add(stack.pop()); output.add(stack.pop());
@ -63,7 +68,9 @@ public class ShuntingYard
throw new IllegalArgumentException("Misplaced function separator ',' or mismatched parentheses"); throw new IllegalArgumentException("Misplaced function separator ',' or mismatched parentheses");
} }
break; break;
}
case Token.TOKEN_OPERATOR: case Token.TOKEN_OPERATOR:
{
while (!stack.empty() && (stack.peek().getType() == Token.TOKEN_OPERATOR)) while (!stack.empty() && (stack.peek().getType() == Token.TOKEN_OPERATOR))
{ {
OperatorToken o1 = (OperatorToken) token; OperatorToken o1 = (OperatorToken) token;
@ -83,10 +90,14 @@ public class ShuntingYard
} }
stack.push(token); stack.push(token);
break; break;
}
case Token.TOKEN_PARENTHESES_OPEN: case Token.TOKEN_PARENTHESES_OPEN:
{
stack.push(token); stack.push(token);
break; break;
}
case Token.TOKEN_PARENTHESES_CLOSE: case Token.TOKEN_PARENTHESES_CLOSE:
{
while (stack.peek().getType() != Token.TOKEN_PARENTHESES_OPEN) while (stack.peek().getType() != Token.TOKEN_PARENTHESES_OPEN)
{ {
output.add(stack.pop()); output.add(stack.pop());
@ -97,8 +108,11 @@ public class ShuntingYard
output.add(stack.pop()); output.add(stack.pop());
} }
break; break;
}
default: default:
{
throw new IllegalArgumentException("Unknown Token type encountered. This should not happen"); throw new IllegalArgumentException("Unknown Token type encountered. This should not happen");
}
} }
} }
while (!stack.empty()) while (!stack.empty())

View File

@ -159,19 +159,24 @@ public final class GeoDataConverter
switch (type) switch (type)
{ {
case GeoStructure.TYPE_FLAT_L2J_L2OFF: case GeoStructure.TYPE_FLAT_L2J_L2OFF:
{
_blocks[ix][iy] = new BlockFlat(buffer, _format); _blocks[ix][iy] = new BlockFlat(buffer, _format);
break; break;
}
case GeoStructure.TYPE_COMPLEX_L2J: case GeoStructure.TYPE_COMPLEX_L2J:
{
_blocks[ix][iy] = new BlockComplex(buffer, _format); _blocks[ix][iy] = new BlockComplex(buffer, _format);
break; break;
}
case GeoStructure.TYPE_MULTILAYER_L2J: case GeoStructure.TYPE_MULTILAYER_L2J:
{
_blocks[ix][iy] = new BlockMultilayer(buffer, _format); _blocks[ix][iy] = new BlockMultilayer(buffer, _format);
break; break;
}
default: default:
{
throw new IllegalArgumentException("Unknown block type: " + type); throw new IllegalArgumentException("Unknown block type: " + type);
}
} }
} }
else else
@ -183,16 +188,20 @@ public final class GeoDataConverter
switch (type) switch (type)
{ {
case GeoStructure.TYPE_FLAT_L2J_L2OFF: case GeoStructure.TYPE_FLAT_L2J_L2OFF:
{
_blocks[ix][iy] = new BlockFlat(buffer, _format); _blocks[ix][iy] = new BlockFlat(buffer, _format);
break; break;
}
case GeoStructure.TYPE_COMPLEX_L2OFF: case GeoStructure.TYPE_COMPLEX_L2OFF:
{
_blocks[ix][iy] = new BlockComplex(buffer, _format); _blocks[ix][iy] = new BlockComplex(buffer, _format);
break; break;
}
default: default:
{
_blocks[ix][iy] = new BlockMultilayer(buffer, _format); _blocks[ix][iy] = new BlockMultilayer(buffer, _format);
break; break;
}
} }
} }
} }

View File

@ -114,6 +114,7 @@ org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
org.eclipse.jdt.core.formatter.align_type_members_on_columns=false org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=0 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=0
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
@ -127,8 +128,10 @@ org.eclipse.jdt.core.formatter.alignment_for_compact_if=0
org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=0 org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=0
org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49 org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=49 org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=49
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=85 org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=85
@ -138,6 +141,8 @@ org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=0 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16 org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
org.eclipse.jdt.core.formatter.blank_lines_after_package=1 org.eclipse.jdt.core.formatter.blank_lines_after_package=1
@ -196,6 +201,7 @@ org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
org.eclipse.jdt.core.formatter.indentation.size=4 org.eclipse.jdt.core.formatter.indentation.size=4
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
@ -390,12 +396,24 @@ org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false
org.eclipse.jdt.core.formatter.tabulation.char=tab org.eclipse.jdt.core.formatter.tabulation.char=tab
org.eclipse.jdt.core.formatter.tabulation.size=4 org.eclipse.jdt.core.formatter.tabulation.size=4
org.eclipse.jdt.core.formatter.use_on_off_tags=true org.eclipse.jdt.core.formatter.use_on_off_tags=true
org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter

View File

@ -257,17 +257,25 @@ public final class BeastFarm extends AbstractNpcAI
switch (nextNpcId) switch (nextNpcId)
{ {
case 18869: case 18869:
{
name = name.replace("%name%", "Alpine Kookaburra"); name = name.replace("%name%", "Alpine Kookaburra");
break; break;
}
case 18870: case 18870:
{
name = name.replace("%name%", "Alpine Cougar"); name = name.replace("%name%", "Alpine Cougar");
break; break;
}
case 18871: case 18871:
{
name = name.replace("%name%", "Alpine Buffalo"); name = name.replace("%name%", "Alpine Buffalo");
break; break;
}
case 18872: case 18872:
{
name = name.replace("%name%", "Alpine Grendel"); name = name.replace("%name%", "Alpine Grendel");
break; break;
}
} }
nextNpc.setName(name); nextNpc.setName(name);
nextNpc.broadcastPacket(new AbstractNpcInfo.NpcInfo(nextNpc, player)); nextNpc.broadcastPacket(new AbstractNpcInfo.NpcInfo(nextNpc, player));

View File

@ -256,14 +256,20 @@ public final class DragonValley extends AbstractNpcAI
switch (moraleBoostLv) switch (moraleBoostLv)
{ {
case 1: case 1:
{
MORALE_BOOST1.getSkill().applyEffects(member, member); MORALE_BOOST1.getSkill().applyEffects(member, member);
break; break;
}
case 2: case 2:
{
MORALE_BOOST2.getSkill().applyEffects(member, member); MORALE_BOOST2.getSkill().applyEffects(member, member);
break; break;
}
case 3: case 3:
{
MORALE_BOOST3.getSkill().applyEffects(member, member); MORALE_BOOST3.getSkill().applyEffects(member, member);
break; break;
}
} }
} }
} }

View File

@ -120,21 +120,30 @@ public final class PlainsOfLizardman extends AbstractNpcAI
switch (npc.getId()) switch (npc.getId())
{ {
case TANTA_SUMMONER: case TANTA_SUMMONER:
{
if (!npc.isAffectedBySkill(DEMOTIVATION_HEX.getSkillId())) if (!npc.isAffectedBySkill(DEMOTIVATION_HEX.getSkillId()))
{ {
npc.doCast(DEMOTIVATION_HEX.getSkill()); npc.doCast(DEMOTIVATION_HEX.getSkill());
} }
break; break;
}
case RAINBOW_FROG: case RAINBOW_FROG:
{
castSkill(npc, attacker, RAINBOW_FROG_SKILL); castSkill(npc, attacker, RAINBOW_FROG_SKILL);
break; break;
}
case ENERGY_PLANT: case ENERGY_PLANT:
{
castSkill(npc, attacker, ENERGY_PLANT_SKILL); castSkill(npc, attacker, ENERGY_PLANT_SKILL);
break; break;
}
case STICKY_MUSHROOM: case STICKY_MUSHROOM:
{
castSkill(npc, attacker, STICKY_MUSHROOM_SKILL); castSkill(npc, attacker, STICKY_MUSHROOM_SKILL);
break; break;
}
case FANTASY_MUSHROOM: case FANTASY_MUSHROOM:
{
if (npc.isScriptValue(0)) if (npc.isScriptValue(0))
{ {
npc.setScriptValue(1); npc.setScriptValue(1);
@ -154,6 +163,7 @@ public final class PlainsOfLizardman extends AbstractNpcAI
startQuestTimer("fantasy_mushroom", 4000, npc, attacker); startQuestTimer("fantasy_mushroom", 4000, npc, attacker);
} }
break; break;
}
} }
return super.onAttack(npc, attacker, damage, isSummon); return super.onAttack(npc, attacker, damage, isSummon);
} }

View File

@ -78,15 +78,21 @@ public final class SilentValley extends AbstractNpcAI
switch (event) switch (event)
{ {
case "CLEAR": case "CLEAR":
{
npc.doDie(null); npc.doDie(null);
break; break;
}
case "CLEAR_EVENT": case "CLEAR_EVENT":
{
npc.broadcastEvent("CLEAR_ALL_INSTANT", 2000, null); npc.broadcastEvent("CLEAR_ALL_INSTANT", 2000, null);
npc.doDie(null); npc.doDie(null);
break; break;
}
case "SPAWN_CHEST": case "SPAWN_CHEST":
{
addSpawn(CHEST, npc.getX() - 100, npc.getY(), npc.getZ() - 100, 0, false, 0); addSpawn(CHEST, npc.getX() - 100, npc.getY(), npc.getZ() - 100, 0, false, 0);
break; break;
}
} }
} }
return null; return null;
@ -191,11 +197,15 @@ public final class SilentValley extends AbstractNpcAI
switch (eventName) switch (eventName)
{ {
case "CLEAR_ALL": case "CLEAR_ALL":
{
startQuestTimer("CLEAR", 60000, receiver, null); startQuestTimer("CLEAR", 60000, receiver, null);
break; break;
}
case "CLEAR_ALL_INSTANT": case "CLEAR_ALL_INSTANT":
{
receiver.doDie(null); receiver.doDie(null);
break; break;
}
} }
} }
return super.onEventReceived(eventName, sender, receiver, reference); return super.onEventReceived(eventName, sender, receiver, reference);

View File

@ -121,6 +121,7 @@ public final class StakatoNest extends AbstractNpcAI
switch (npc.getId()) switch (npc.getId())
{ {
case STAKATO_NURSE: case STAKATO_NURSE:
{
monster = checkMinion(npc); monster = checkMinion(npc);
if (monster != null) if (monster != null)
{ {
@ -132,14 +133,18 @@ public final class StakatoNest extends AbstractNpcAI
} }
} }
break; break;
}
case STAKATO_BABY: case STAKATO_BABY:
{
monster = ((L2MonsterInstance) npc).getLeader(); monster = ((L2MonsterInstance) npc).getLeader();
if ((monster != null) && !monster.isDead()) if ((monster != null) && !monster.isDead())
{ {
startQuestTimer("nurse_change", 5000, monster, killer); startQuestTimer("nurse_change", 5000, monster, killer);
} }
break; break;
}
case STAKATO_MALE: case STAKATO_MALE:
{
monster = checkMinion(npc); monster = checkMinion(npc);
if (monster != null) if (monster != null)
{ {
@ -151,14 +156,18 @@ public final class StakatoNest extends AbstractNpcAI
} }
} }
break; break;
}
case STAKATO_FEMALE: case STAKATO_FEMALE:
{
monster = ((L2MonsterInstance) npc).getLeader(); monster = ((L2MonsterInstance) npc).getLeader();
if ((monster != null) && !monster.isDead()) if ((monster != null) && !monster.isDead())
{ {
startQuestTimer("male_change", 5000, monster, killer); startQuestTimer("male_change", 5000, monster, killer);
} }
break; break;
}
case STAKATO_CHIEF: case STAKATO_CHIEF:
{
if (killer.isInParty()) if (killer.isInParty())
{ {
final List<L2PcInstance> party = killer.getParty().getMembers(); final List<L2PcInstance> party = killer.getParty().getMembers();
@ -172,6 +181,7 @@ public final class StakatoNest extends AbstractNpcAI
giveCocoon(killer, npc); giveCocoon(killer, npc);
} }
break; break;
}
} }
return super.onKill(npc, killer, isSummon); return super.onKill(npc, killer, isSummon);
} }
@ -200,11 +210,15 @@ public final class StakatoNest extends AbstractNpcAI
switch (event) switch (event)
{ {
case "nurse_change": case "nurse_change":
{
npcId = STAKATO_NURSE_2; npcId = STAKATO_NURSE_2;
break; break;
}
case "male_change": case "male_change":
{
npcId = STAKATO_MALE_2; npcId = STAKATO_MALE_2;
break; break;
}
} }
if (npcId > 0) if (npcId > 0)
{ {

View File

@ -277,14 +277,20 @@ public class DrChaos extends AbstractNpcAI
switch (chance) switch (chance)
{ {
case 0: case 0:
{
message = "Bwah-ha-ha! Your doom is at hand! Behold the Ultra Secret Super Weapon!"; message = "Bwah-ha-ha! Your doom is at hand! Behold the Ultra Secret Super Weapon!";
break; break;
}
case 1: case 1:
{
message = "Foolish, insignificant creatures! How dare you challenge me!"; message = "Foolish, insignificant creatures! How dare you challenge me!";
break; break;
}
default: default:
{
message = "I see that none will challenge me now!"; message = "I see that none will challenge me now!";
break; break;
}
} }
// Make him speak. // Make him speak.

View File

@ -201,20 +201,30 @@ public final class CastleChamberlain extends AbstractNpcAI
switch (func) switch (func)
{ {
case Castle.FUNC_RESTORE_EXP: case Castle.FUNC_RESTORE_EXP:
{
fee = (level == 45) ? Config.CS_EXPREG1_FEE : Config.CS_EXPREG2_FEE; fee = (level == 45) ? Config.CS_EXPREG1_FEE : Config.CS_EXPREG2_FEE;
break; break;
}
case Castle.FUNC_RESTORE_HP: case Castle.FUNC_RESTORE_HP:
{
fee = (level == 300) ? Config.CS_HPREG1_FEE : Config.CS_HPREG2_FEE; fee = (level == 300) ? Config.CS_HPREG1_FEE : Config.CS_HPREG2_FEE;
break; break;
}
case Castle.FUNC_RESTORE_MP: case Castle.FUNC_RESTORE_MP:
{
fee = (level == 40) ? Config.CS_MPREG1_FEE : Config.CS_MPREG2_FEE; fee = (level == 40) ? Config.CS_MPREG1_FEE : Config.CS_MPREG2_FEE;
break; break;
}
case Castle.FUNC_SUPPORT: case Castle.FUNC_SUPPORT:
{
fee = (level == 5) ? Config.CS_SUPPORT1_FEE : Config.CS_SUPPORT2_FEE; fee = (level == 5) ? Config.CS_SUPPORT1_FEE : Config.CS_SUPPORT2_FEE;
break; break;
}
case Castle.FUNC_TELEPORT: case Castle.FUNC_TELEPORT:
{
fee = (level == 1) ? Config.CS_TELE1_FEE : Config.CS_TELE2_FEE; fee = (level == 1) ? Config.CS_TELE1_FEE : Config.CS_TELE2_FEE;
break; break;
}
} }
return fee; return fee;
} }
@ -225,20 +235,30 @@ public final class CastleChamberlain extends AbstractNpcAI
switch (func) switch (func)
{ {
case Castle.FUNC_RESTORE_EXP: case Castle.FUNC_RESTORE_EXP:
{
ratio = Config.CS_EXPREG_FEE_RATIO; ratio = Config.CS_EXPREG_FEE_RATIO;
break; break;
}
case Castle.FUNC_RESTORE_HP: case Castle.FUNC_RESTORE_HP:
{
ratio = Config.CS_HPREG_FEE_RATIO; ratio = Config.CS_HPREG_FEE_RATIO;
break; break;
}
case Castle.FUNC_RESTORE_MP: case Castle.FUNC_RESTORE_MP:
{
ratio = Config.CS_MPREG_FEE_RATIO; ratio = Config.CS_MPREG_FEE_RATIO;
break; break;
}
case Castle.FUNC_SUPPORT: case Castle.FUNC_SUPPORT:
{
ratio = Config.CS_SUPPORT_FEE_RATIO; ratio = Config.CS_SUPPORT_FEE_RATIO;
break; break;
}
case Castle.FUNC_TELEPORT: case Castle.FUNC_TELEPORT:
{
ratio = Config.CS_TELE_FEE_RATIO; ratio = Config.CS_TELE_FEE_RATIO;
break; break;
}
} }
return ratio; return ratio;
} }
@ -253,14 +273,20 @@ public final class CastleChamberlain extends AbstractNpcAI
switch (level) switch (level)
{ {
case 2: case 2:
{
price = Config.OUTER_DOOR_UPGRADE_PRICE2; price = Config.OUTER_DOOR_UPGRADE_PRICE2;
break; break;
}
case 3: case 3:
{
price = Config.OUTER_DOOR_UPGRADE_PRICE3; price = Config.OUTER_DOOR_UPGRADE_PRICE3;
break; break;
}
case 5: case 5:
{
price = Config.OUTER_DOOR_UPGRADE_PRICE5; price = Config.OUTER_DOOR_UPGRADE_PRICE5;
break; break;
}
} }
break; break;
} }
@ -269,14 +295,20 @@ public final class CastleChamberlain extends AbstractNpcAI
switch (level) switch (level)
{ {
case 2: case 2:
{
price = Config.INNER_DOOR_UPGRADE_PRICE2; price = Config.INNER_DOOR_UPGRADE_PRICE2;
break; break;
}
case 3: case 3:
{
price = Config.INNER_DOOR_UPGRADE_PRICE3; price = Config.INNER_DOOR_UPGRADE_PRICE3;
break; break;
}
case 5: case 5:
{
price = Config.INNER_DOOR_UPGRADE_PRICE5; price = Config.INNER_DOOR_UPGRADE_PRICE5;
break; break;
}
} }
break; break;
} }
@ -285,14 +317,20 @@ public final class CastleChamberlain extends AbstractNpcAI
switch (level) switch (level)
{ {
case 2: case 2:
{
price = Config.WALL_UPGRADE_PRICE2; price = Config.WALL_UPGRADE_PRICE2;
break; break;
}
case 3: case 3:
{
price = Config.WALL_UPGRADE_PRICE3; price = Config.WALL_UPGRADE_PRICE3;
break; break;
}
case 5: case 5:
{
price = Config.WALL_UPGRADE_PRICE5; price = Config.WALL_UPGRADE_PRICE5;
break; break;
}
} }
break; break;
} }
@ -300,11 +338,15 @@ public final class CastleChamberlain extends AbstractNpcAI
switch (SevenSigns.getInstance().getSealOwner(SevenSigns.SEAL_STRIFE)) switch (SevenSigns.getInstance().getSealOwner(SevenSigns.SEAL_STRIFE))
{ {
case SevenSigns.CABAL_DUSK: case SevenSigns.CABAL_DUSK:
{
price *= 3; price *= 3;
break; break;
}
case SevenSigns.CABAL_DAWN: case SevenSigns.CABAL_DAWN:
{
price *= 0.8; price *= 0.8;
break; break;
}
} }
return price; return price;
} }
@ -315,14 +357,20 @@ public final class CastleChamberlain extends AbstractNpcAI
switch (SevenSigns.getInstance().getSealOwner(seal)) switch (SevenSigns.getInstance().getSealOwner(seal))
{ {
case SevenSigns.CABAL_DAWN: case SevenSigns.CABAL_DAWN:
{
npcString = "1000511"; npcString = "1000511";
break; break;
}
case SevenSigns.CABAL_DUSK: case SevenSigns.CABAL_DUSK:
{
npcString = "1000510"; npcString = "1000510";
break; break;
}
default: default:
{
npcString = "1000512"; npcString = "1000512";
break; break;
}
} }
return npcString; return npcString;
} }
@ -333,14 +381,20 @@ public final class CastleChamberlain extends AbstractNpcAI
switch (SevenSigns.getInstance().getSealOwner(SevenSigns.SEAL_STRIFE)) switch (SevenSigns.getInstance().getSealOwner(SevenSigns.SEAL_STRIFE))
{ {
case SevenSigns.CABAL_DAWN: case SevenSigns.CABAL_DAWN:
{
taxLimit = 25; taxLimit = 25;
break; break;
}
case SevenSigns.CABAL_DUSK: case SevenSigns.CABAL_DUSK:
{
taxLimit = 5; taxLimit = 5;
break; break;
}
default: default:
{
taxLimit = 15; taxLimit = 15;
break; break;
}
} }
return taxLimit; return taxLimit;
} }
@ -351,27 +405,39 @@ public final class CastleChamberlain extends AbstractNpcAI
switch (level) switch (level)
{ {
case 1: case 1:
{
price = Config.TRAP_UPGRADE_PRICE1; price = Config.TRAP_UPGRADE_PRICE1;
break; break;
}
case 2: case 2:
{
price = Config.TRAP_UPGRADE_PRICE2; price = Config.TRAP_UPGRADE_PRICE2;
break; break;
}
case 3: case 3:
{
price = Config.TRAP_UPGRADE_PRICE3; price = Config.TRAP_UPGRADE_PRICE3;
break; break;
}
case 4: case 4:
{
price = Config.TRAP_UPGRADE_PRICE4; price = Config.TRAP_UPGRADE_PRICE4;
break; break;
}
} }
switch (SevenSigns.getInstance().getSealOwner(SevenSigns.SEAL_STRIFE)) switch (SevenSigns.getInstance().getSealOwner(SevenSigns.SEAL_STRIFE))
{ {
case SevenSigns.CABAL_DUSK: case SevenSigns.CABAL_DUSK:
{
price *= 3; price *= 3;
break; break;
}
case SevenSigns.CABAL_DAWN: case SevenSigns.CABAL_DAWN:
{
price *= 0.8; price *= 0.8;
break; break;
}
} }
return price; return price;
} }
@ -428,14 +494,20 @@ public final class CastleChamberlain extends AbstractNpcAI
switch (fortress.getFortState()) switch (fortress.getFortState())
{ {
case 1: case 1:
{
fortStatus = "1300122"; fortStatus = "1300122";
break; break;
}
case 2: case 2:
{
fortStatus = "1300124"; fortStatus = "1300124";
break; break;
}
default: default:
{
fortStatus = "1300123"; fortStatus = "1300123";
break; break;
}
} }
sb.append("<fstring>1300" + fortId + "</fstring>"); sb.append("<fstring>1300" + fortId + "</fstring>");
sb.append(" (<fstring>" + fortType + "</fstring>)"); sb.append(" (<fstring>" + fortType + "</fstring>)");
@ -540,7 +612,6 @@ public final class CastleChamberlain extends AbstractNpcAI
{ {
doors[i] = Integer.parseInt(st.nextToken()); doors[i] = Integer.parseInt(st.nextToken());
} }
final L2DoorInstance door = castle.getDoor(doors[0]); final L2DoorInstance door = castle.getDoor(doors[0]);
if (door != null) if (door != null)
{ {
@ -634,7 +705,6 @@ public final class CastleChamberlain extends AbstractNpcAI
final int level = Integer.parseInt(st.nextToken()); final int level = Integer.parseInt(st.nextToken());
final int price = getTrapUpgradePrice(level); final int price = getTrapUpgradePrice(level);
final int currentLevel = castle.getTrapUpgradeLevel(trapIndex); final int currentLevel = castle.getTrapUpgradeLevel(trapIndex);
if (currentLevel >= level) if (currentLevel >= level)
{ {
final NpcHtmlMessage html = getHtmlPacket(player, npc, "chamberlain-19.html"); final NpcHtmlMessage html = getHtmlPacket(player, npc, "chamberlain-19.html");
@ -674,19 +744,24 @@ public final class CastleChamberlain extends AbstractNpcAI
html.replace("%clanleadername%", clan.getLeaderName()); html.replace("%clanleadername%", clan.getLeaderName());
html.replace("%clanname%", clan.getName()); html.replace("%clanname%", clan.getName());
html.replace("%castlename%", String.valueOf(1001000 + castle.getResidenceId())); html.replace("%castlename%", String.valueOf(1001000 + castle.getResidenceId()));
switch (SevenSigns.getInstance().getCurrentPeriod()) switch (SevenSigns.getInstance().getCurrentPeriod())
{ {
case SevenSigns.PERIOD_COMP_RECRUITING: case SevenSigns.PERIOD_COMP_RECRUITING:
{
html.replace("%ss_event%", "1000509"); html.replace("%ss_event%", "1000509");
break; break;
}
case SevenSigns.PERIOD_COMPETITION: case SevenSigns.PERIOD_COMPETITION:
{
html.replace("%ss_event%", "1000507"); html.replace("%ss_event%", "1000507");
break; break;
}
case SevenSigns.PERIOD_SEAL_VALIDATION: case SevenSigns.PERIOD_SEAL_VALIDATION:
case SevenSigns.PERIOD_COMP_RESULTS: case SevenSigns.PERIOD_COMP_RESULTS:
{
html.replace("%ss_event%", "1000508"); html.replace("%ss_event%", "1000508");
break; break;
}
} }
html.replace("%ss_avarice%", getSealOwner(1)); html.replace("%ss_avarice%", getSealOwner(1));
html.replace("%ss_gnosis%", getSealOwner(2)); html.replace("%ss_gnosis%", getSealOwner(2));
@ -779,7 +854,6 @@ public final class CastleChamberlain extends AbstractNpcAI
} }
} }
} }
final NpcHtmlMessage html = getHtmlPacket(player, npc, "castlemanagevault.html"); final NpcHtmlMessage html = getHtmlPacket(player, npc, "castlemanagevault.html");
html.replace("%tax_income%", Util.formatAdena(castle.getTreasury())); html.replace("%tax_income%", Util.formatAdena(castle.getTreasury()));
html.replace("%tax_income_reserved%", "0"); // TODO: Implement me! html.replace("%tax_income_reserved%", "0"); // TODO: Implement me!
@ -1119,7 +1193,6 @@ public final class CastleChamberlain extends AbstractNpcAI
{ {
html = getHtmlPacket(player, npc, "castlenotenoughmp.html"); html = getHtmlPacket(player, npc, "castlenotenoughmp.html");
} }
html.replace("%MPLeft%", Integer.toString((int) npc.getCurrentMp())); html.replace("%MPLeft%", Integer.toString((int) npc.getCurrentMp()));
player.sendPacket(html); player.sendPacket(html);
} }
@ -1334,15 +1407,22 @@ public final class CastleChamberlain extends AbstractNpcAI
switch (evt.getRequest()) switch (evt.getRequest())
{ {
case 3: // Seed info case 3: // Seed info
{
player.sendPacket(new ExShowSeedInfo(castleId, evt.isNextPeriod(), true)); player.sendPacket(new ExShowSeedInfo(castleId, evt.isNextPeriod(), true));
break; break;
}
case 4: // Crop info case 4: // Crop info
{
player.sendPacket(new ExShowCropInfo(castleId, evt.isNextPeriod(), true)); player.sendPacket(new ExShowCropInfo(castleId, evt.isNextPeriod(), true));
break; break;
}
case 5: // Basic info case 5: // Basic info
{
player.sendPacket(new ExShowManorDefaultInfo(true)); player.sendPacket(new ExShowManorDefaultInfo(true));
break; break;
}
case 7: // Seed settings case 7: // Seed settings
{
if (manor.isManorApproved()) if (manor.isManorApproved())
{ {
player.sendPacket(SystemMessageId.A_MANOR_CANNOT_BE_SET_UP_BETWEEN_4_30_AM_AND_8_PM); player.sendPacket(SystemMessageId.A_MANOR_CANNOT_BE_SET_UP_BETWEEN_4_30_AM_AND_8_PM);
@ -1350,7 +1430,9 @@ public final class CastleChamberlain extends AbstractNpcAI
} }
player.sendPacket(new ExShowSeedSetting(castleId)); player.sendPacket(new ExShowSeedSetting(castleId));
break; break;
}
case 8: // Crop settings case 8: // Crop settings
{
if (manor.isManorApproved()) if (manor.isManorApproved())
{ {
player.sendPacket(SystemMessageId.A_MANOR_CANNOT_BE_SET_UP_BETWEEN_4_30_AM_AND_8_PM); player.sendPacket(SystemMessageId.A_MANOR_CANNOT_BE_SET_UP_BETWEEN_4_30_AM_AND_8_PM);
@ -1358,8 +1440,11 @@ public final class CastleChamberlain extends AbstractNpcAI
} }
player.sendPacket(new ExShowCropSetting(castleId)); player.sendPacket(new ExShowCropSetting(castleId));
break; break;
}
default: default:
{
_log.warning(getClass().getSimpleName() + ": Player " + player.getName() + " (" + player.getObjectId() + ") send unknown request id " + evt.getRequest() + "!"); _log.warning(getClass().getSimpleName() + ": Player " + player.getName() + " (" + player.getObjectId() + ") send unknown request id " + evt.getRequest() + "!");
}
} }
} }
} }

View File

@ -126,13 +126,19 @@ public final class CastleMercenaryManager extends AbstractNpcAI
switch (SevenSigns.getInstance().getSealOwner(SevenSigns.SEAL_STRIFE)) switch (SevenSigns.getInstance().getSealOwner(SevenSigns.SEAL_STRIFE))
{ {
case SevenSigns.CABAL_DUSK: case SevenSigns.CABAL_DUSK:
{
htmltext = "mercmanager-dusk.html"; htmltext = "mercmanager-dusk.html";
break; break;
}
case SevenSigns.CABAL_DAWN: case SevenSigns.CABAL_DAWN:
{
htmltext = "mercmanager-dawn.html"; htmltext = "mercmanager-dawn.html";
break; break;
}
default: default:
{
htmltext = "mercmanager.html"; htmltext = "mercmanager.html";
}
} }
} }
} }

View File

@ -41,18 +41,23 @@ public final class Rafforty extends AbstractNpcAI
switch (event) switch (event)
{ {
case "32020-01.html": case "32020-01.html":
{
if (!hasQuestItems(player, NECKLACE)) if (!hasQuestItems(player, NECKLACE))
{ {
htmltext = "32020-02.html"; htmltext = "32020-02.html";
} }
break; break;
}
case "32020-04.html": case "32020-04.html":
{
if (!hasQuestItems(player, BOTTLE)) if (!hasQuestItems(player, BOTTLE))
{ {
htmltext = "32020-05.html"; htmltext = "32020-05.html";
} }
break; break;
}
case "32020-07.html": case "32020-07.html":
{
if (!hasQuestItems(player, BOTTLE, NECKLACE)) if (!hasQuestItems(player, BOTTLE, NECKLACE))
{ {
return "32020-08.html"; return "32020-08.html";
@ -61,6 +66,7 @@ public final class Rafforty extends AbstractNpcAI
takeItems(player, BOTTLE, 1); takeItems(player, BOTTLE, 1);
giveItems(player, BLESSED_NECKLACE, 1); giveItems(player, BLESSED_NECKLACE, 1);
break; break;
}
} }
return htmltext; return htmltext;
} }

View File

@ -357,9 +357,11 @@ public final class RainbowSpringsChateau extends ClanHallSiegeEngine
switch (npc.getId()) switch (npc.getId())
{ {
case MESSENGER: case MESSENGER:
{
switch (event) switch (event)
{ {
case "register": case "register":
{
if (!player.isClanLeader()) if (!player.isClanLeader())
{ {
html = "messenger_yetti010.htm"; html = "messenger_yetti010.htm";
@ -397,7 +399,9 @@ public final class RainbowSpringsChateau extends ClanHallSiegeEngine
} }
} }
break; break;
}
case "cancel": case "cancel":
{
if (!player.isClanLeader()) if (!player.isClanLeader())
{ {
html = "messenger_yetti010.htm"; html = "messenger_yetti010.htm";
@ -416,7 +420,9 @@ public final class RainbowSpringsChateau extends ClanHallSiegeEngine
html = "messenger_yetti018.htm"; html = "messenger_yetti018.htm";
} }
break; break;
}
case "unregister": case "unregister":
{
if (_rainbow.isRegistering()) if (_rainbow.isRegistering())
{ {
if (_warDecreesCount.containsKey(clan.getId())) if (_warDecreesCount.containsKey(clan.getId()))
@ -436,9 +442,12 @@ public final class RainbowSpringsChateau extends ClanHallSiegeEngine
html = "messenger_yetti020.htm"; html = "messenger_yetti020.htm";
} }
break; break;
}
} }
break; break;
}
case CARETAKER: case CARETAKER:
{
if (event.equals("portToArena")) if (event.equals("portToArena"))
{ {
final L2Party party = player.getParty(); final L2Party party = player.getParty();
@ -470,7 +479,6 @@ public final class RainbowSpringsChateau extends ClanHallSiegeEngine
break; break;
} }
} }
if (nonClanMemberInParty) if (nonClanMemberInParty)
{ {
html = "game_manager007.htm"; html = "game_manager007.htm";
@ -510,6 +518,7 @@ public final class RainbowSpringsChateau extends ClanHallSiegeEngine
} }
} }
break; break;
}
} }
if (event.startsWith("enterText")) if (event.startsWith("enterText"))

View File

@ -98,20 +98,30 @@ public final class BanditStronghold extends FlagWar
switch (flag) switch (flag)
{ {
case 35423: case 35423:
{
result = "messenger_flag1.htm"; result = "messenger_flag1.htm";
break; break;
}
case 35424: case 35424:
{
result = "messenger_flag2.htm"; result = "messenger_flag2.htm";
break; break;
}
case 35425: case 35425:
{
result = "messenger_flag3.htm"; result = "messenger_flag3.htm";
break; break;
}
case 35426: case 35426:
{
result = "messenger_flag4.htm"; result = "messenger_flag4.htm";
break; break;
}
case 35427: case 35427:
{
result = "messenger_flag5.htm"; result = "messenger_flag5.htm";
break; break;
}
} }
return result; return result;
@ -125,20 +135,30 @@ public final class BanditStronghold extends FlagWar
switch (ally) switch (ally)
{ {
case 35428: case 35428:
{
result = "messenger_ally1result.htm"; result = "messenger_ally1result.htm";
break; break;
}
case 35429: case 35429:
{
result = "messenger_ally2result.htm"; result = "messenger_ally2result.htm";
break; break;
}
case 35430: case 35430:
{
result = "messenger_ally3result.htm"; result = "messenger_ally3result.htm";
break; break;
}
case 35431: case 35431:
{
result = "messenger_ally4result.htm"; result = "messenger_ally4result.htm";
break; break;
}
case 35432: case 35432:
{
result = "messenger_ally5result.htm"; result = "messenger_ally5result.htm";
break; break;
}
} }
return result; return result;

View File

@ -98,20 +98,30 @@ public final class WildBeastReserve extends FlagWar
switch (flag) switch (flag)
{ {
case 35607: case 35607:
{
result = "messenger_flag1.htm"; result = "messenger_flag1.htm";
break; break;
}
case 35608: case 35608:
{
result = "messenger_flag2.htm"; result = "messenger_flag2.htm";
break; break;
}
case 35609: case 35609:
{
result = "messenger_flag3.htm"; result = "messenger_flag3.htm";
break; break;
}
case 35610: case 35610:
{
result = "messenger_flag4.htm"; result = "messenger_flag4.htm";
break; break;
}
case 35611: case 35611:
{
result = "messenger_flag5.htm"; result = "messenger_flag5.htm";
break; break;
}
} }
return result; return result;
@ -125,20 +135,30 @@ public final class WildBeastReserve extends FlagWar
switch (ally) switch (ally)
{ {
case 35618: case 35618:
{
result = "messenger_ally1result.htm"; result = "messenger_ally1result.htm";
break; break;
}
case 35619: case 35619:
{
result = "messenger_ally2result.htm"; result = "messenger_ally2result.htm";
break; break;
}
case 35620: case 35620:
{
result = "messenger_ally3result.htm"; result = "messenger_ally3result.htm";
break; break;
}
case 35621: case 35621:
{
result = "messenger_ally4result.htm"; result = "messenger_ally4result.htm";
break; break;
}
case 35622: case 35622:
{
result = "messenger_ally5result.htm"; result = "messenger_ally5result.htm";
break; break;
}
} }
return result; return result;

View File

@ -633,34 +633,52 @@ public class NpcBuffer extends Quest
switch (buffType) switch (buffType)
{ {
case "buff": case "buff":
{
price = BUFF_PRICE; price = BUFF_PRICE;
break; break;
}
case "resist": case "resist":
{
price = RESIST_PRICE; price = RESIST_PRICE;
break; break;
}
case "song": case "song":
{
price = SONG_PRICE; price = SONG_PRICE;
break; break;
}
case "dance": case "dance":
{
price = DANCE_PRICE; price = DANCE_PRICE;
break; break;
}
case "chant": case "chant":
{
price = CHANT_PRICE; price = CHANT_PRICE;
break; break;
}
case "others": case "others":
{
price = OTHERS_PRICE; price = OTHERS_PRICE;
break; break;
}
case "special": case "special":
{
price = SPECIAL_PRICE; price = SPECIAL_PRICE;
break; break;
}
case "cubic": case "cubic":
{
price = CUBIC_PRICE; price = CUBIC_PRICE;
break; break;
}
default: default:
{
if (DEBUG) if (DEBUG)
{ {
throw new RuntimeException(); throw new RuntimeException();
} }
}
} }
HTML_MESSAGE += "All special buffs cost <font color=LEVEL>" + formatAdena(price) + "</font> adena!"; HTML_MESSAGE += "All special buffs cost <font color=LEVEL>" + formatAdena(price) + "</font> adena!";
} }
@ -1196,6 +1214,7 @@ public class NpcBuffer extends Quest
switch (eventParam0) switch (eventParam0)
{ {
case "reloadscript": case "reloadscript":
{
if (eventParam1.equals("1")) if (eventParam1.equals("1"))
{ {
return reloadConfig(st); return reloadConfig(st);
@ -1208,38 +1227,62 @@ public class NpcBuffer extends Quest
{ {
throw new RuntimeException(); throw new RuntimeException();
} }
}
case "redirect": case "redirect":
{
switch (eventParam1) switch (eventParam1)
{ {
case "main": case "main":
{
return rebuildMainHtml(st); return rebuildMainHtml(st);
}
case "manage_buffs": case "manage_buffs":
{
return viewAllBuffTypes(); return viewAllBuffTypes();
}
case "view_buffs": case "view_buffs":
{
return buildHtml("buff"); return buildHtml("buff");
}
case "view_resists": case "view_resists":
{
return buildHtml("resist"); return buildHtml("resist");
}
case "view_songs": case "view_songs":
{
return buildHtml("song"); return buildHtml("song");
}
case "view_dances": case "view_dances":
{
return buildHtml("dance"); return buildHtml("dance");
}
case "view_chants": case "view_chants":
{
return buildHtml("chant"); return buildHtml("chant");
}
case "view_others": case "view_others":
{
return buildHtml("others"); return buildHtml("others");
}
case "view_special": case "view_special":
{
return buildHtml("special"); return buildHtml("special");
}
case "view_cubic": case "view_cubic":
{
return buildHtml("cubic"); return buildHtml("cubic");
}
default: default:
{
if (DEBUG) if (DEBUG)
{ {
throw new RuntimeException(); throw new RuntimeException();
} }
}
} }
}
case "buffpet": case "buffpet":
{
if ((int) (System.currentTimeMillis() / 1000) > st.getInt("blockUntilTime")) if ((int) (System.currentTimeMillis() / 1000) > st.getInt("blockUntilTime"))
{ {
st.set("Pet-On-Off", eventParam1); st.set("Pet-On-Off", eventParam1);
@ -1249,7 +1292,7 @@ public class NpcBuffer extends Quest
} }
} }
return rebuildMainHtml(st); return rebuildMainHtml(st);
}
case "create": case "create":
{ {
final String param = eventParam1.replaceAll("[ !\"#$%&'()*+,/:;<=>?@\\[\\\\\\]\\^`{|}~]", ""); final String param = eventParam1.replaceAll("[ !\"#$%&'()*+,/:;<=>?@\\[\\\\\\]\\^`{|}~]", "");
@ -1274,6 +1317,7 @@ public class NpcBuffer extends Quest
} }
case "delete": case "delete":
{
try (Connection con = DatabaseFactory.getInstance().getConnection()) try (Connection con = DatabaseFactory.getInstance().getConnection())
{ {
PreparedStatement statement = con.prepareStatement("DELETE FROM npcbuffer_scheme_list WHERE id=? LIMIT 1"); PreparedStatement statement = con.prepareStatement("DELETE FROM npcbuffer_scheme_list WHERE id=? LIMIT 1");
@ -1290,23 +1334,35 @@ public class NpcBuffer extends Quest
print(e); print(e);
} }
return rebuildMainHtml(st); return rebuildMainHtml(st);
}
case "delete_c": case "delete_c":
{
return "<html><head><title>" + TITLE_NAME + "</title></head><body><center><img src=\"L2UI_CH3.herotower_deco\" width=256 height=32><br>Do you really want to delete '" + eventParam2 + "' scheme?<br><br><button value=\"Yes\" action=\"bypass -h Quest " + QUEST_LOADING_INFO + " delete " + eventParam1 + " x x\" width=50 height=25 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"><button value=\"No\" action=\"bypass -h Quest " + QUEST_LOADING_INFO + " delete_1 x x x\" width=50 height=25 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"><br><font color=303030>" + TITLE_NAME + "</font></center></body></html>"; return "<html><head><title>" + TITLE_NAME + "</title></head><body><center><img src=\"L2UI_CH3.herotower_deco\" width=256 height=32><br>Do you really want to delete '" + eventParam2 + "' scheme?<br><br><button value=\"Yes\" action=\"bypass -h Quest " + QUEST_LOADING_INFO + " delete " + eventParam1 + " x x\" width=50 height=25 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"><button value=\"No\" action=\"bypass -h Quest " + QUEST_LOADING_INFO + " delete_1 x x x\" width=50 height=25 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"><br><font color=303030>" + TITLE_NAME + "</font></center></body></html>";
}
case "create_1": case "create_1":
{
return createScheme(); return createScheme();
}
case "edit_1": case "edit_1":
{
return editScheme(player); return editScheme(player);
}
case "delete_1": case "delete_1":
{
return deleteScheme(player); return deleteScheme(player);
}
case "manage_scheme_1": case "manage_scheme_1":
{
return viewAllSchemeBuffs(eventParam1, eventParam2, "add"); return viewAllSchemeBuffs(eventParam1, eventParam2, "add");
}
case "manage_scheme_2": case "manage_scheme_2":
{
return viewAllSchemeBuffs(eventParam1, eventParam2, "remove"); return viewAllSchemeBuffs(eventParam1, eventParam2, "remove");
}
case "manage_scheme_select": case "manage_scheme_select":
{
return getOptionList(eventParam1); return getOptionList(eventParam1);
}
case "remove_buff": case "remove_buff":
{ {
final String[] split = eventParam1.split("_"); final String[] split = eventParam1.split("_");
@ -1374,9 +1430,11 @@ public class NpcBuffer extends Quest
} }
case "edit_buff_list": case "edit_buff_list":
{
return viewAllBuffs(eventParam1, eventParam2, eventParam3); return viewAllBuffs(eventParam1, eventParam2, eventParam3);
}
case "changeBuffSet": case "changeBuffSet":
{
if (eventParam2.equals(SET_FIGHTER)) if (eventParam2.equals(SET_FIGHTER))
{ {
eventParam2 = "0"; eventParam2 = "0";
@ -1398,7 +1456,7 @@ public class NpcBuffer extends Quest
throw new RuntimeException(); throw new RuntimeException();
} }
return manageSelectedSet(eventParam1, eventParam2, eventParam3); return manageSelectedSet(eventParam1, eventParam2, eventParam3);
}
case "editSelectedBuff": case "editSelectedBuff":
{ {
eventParam2 = eventParam2.replace("-", " "); eventParam2 = eventParam2.replace("-", " ");
@ -1410,49 +1468,69 @@ public class NpcBuffer extends Quest
switch (eventParam3) switch (eventParam3)
{ {
case "buff": case "buff":
{
typeName = "Buffs"; typeName = "Buffs";
break; break;
}
case "resist": case "resist":
{
typeName = "Resists"; typeName = "Resists";
break; break;
}
case "song": case "song":
{
typeName = "Songs"; typeName = "Songs";
break; break;
}
case "dance": case "dance":
{
typeName = "Dances"; typeName = "Dances";
break; break;
}
case "chant": case "chant":
{
typeName = "Chants"; typeName = "Chants";
break; break;
}
case "others": case "others":
{
typeName = "Others_Buffs"; typeName = "Others_Buffs";
break; break;
}
case "special": case "special":
{
typeName = "Special_Buffs"; typeName = "Special_Buffs";
break; break;
}
case "cubic": case "cubic":
{
typeName = "Cubics"; typeName = "Cubics";
break; break;
}
default: default:
{
throw new RuntimeException(); throw new RuntimeException();
}
} }
return viewAllBuffs(eventParam3, typeName, page); return viewAllBuffs(eventParam3, typeName, page);
} }
case "viewSelectedConfig": case "viewSelectedConfig":
{
throw new RuntimeException(); throw new RuntimeException();
}
case "changeConfig": case "changeConfig":
{
throw new RuntimeException(); throw new RuntimeException();
}
case "heal": case "heal":
{
if ((int) (System.currentTimeMillis() / 1000) > st.getInt("blockUntilTime")) if ((int) (System.currentTimeMillis() / 1000) > st.getInt("blockUntilTime"))
{ {
if (player.isInCombat() && !ENABLE_HEAL_IN_COMBAT) if (player.isInCombat() && !ENABLE_HEAL_IN_COMBAT)
{ {
return showText(st, "Info", "You can't use the heal function while in combat.", false, "Return", "main"); return showText(st, "Info", "You can't use the heal function while in combat.", false, "Return", "main");
} }
if (getQuestItemsCount(player, CONSUMABLE_ID) < HEAL_PRICE) if (getQuestItemsCount(player, CONSUMABLE_ID) < HEAL_PRICE)
{ {
return showText(st, "Sorry", "You don't have the enough items:<br>You need: <font color=LEVEL>" + HEAL_PRICE + " " + getItemNameHtml(st, CONSUMABLE_ID) + "!", false, "0", "0"); return showText(st, "Sorry", "You don't have the enough items:<br>You need: <font color=LEVEL>" + HEAL_PRICE + " " + getItemNameHtml(st, CONSUMABLE_ID) + "!", false, "0", "0");
@ -1480,8 +1558,9 @@ public class NpcBuffer extends Quest
} }
} }
return SMART_WINDOW ? null : rebuildMainHtml(st); return SMART_WINDOW ? null : rebuildMainHtml(st);
}
case "removeBuffs": case "removeBuffs":
{
if ((int) (System.currentTimeMillis() / 1000) > st.getInt("blockUntilTime")) if ((int) (System.currentTimeMillis() / 1000) > st.getInt("blockUntilTime"))
{ {
if (getQuestItemsCount(player, CONSUMABLE_ID) < BUFF_REMOVE_PRICE) if (getQuestItemsCount(player, CONSUMABLE_ID) < BUFF_REMOVE_PRICE)
@ -1519,8 +1598,9 @@ public class NpcBuffer extends Quest
} }
} }
return SMART_WINDOW ? null : rebuildMainHtml(st); return SMART_WINDOW ? null : rebuildMainHtml(st);
}
case "cast": case "cast":
{
if ((int) (System.currentTimeMillis() / 1000) > st.getInt("blockUntilTime")) if ((int) (System.currentTimeMillis() / 1000) > st.getInt("blockUntilTime"))
{ {
final List<Integer> buffs = new ArrayList<>(); final List<Integer> buffs = new ArrayList<>();
@ -1537,6 +1617,7 @@ public class NpcBuffer extends Quest
switch (getBuffType(id)) switch (getBuffType(id))
{ {
case "buff": case "buff":
{
if (ENABLE_BUFFS) if (ENABLE_BUFFS)
{ {
if (isEnabled(id, level)) if (isEnabled(id, level))
@ -1546,7 +1627,9 @@ public class NpcBuffer extends Quest
} }
} }
break; break;
}
case "resist": case "resist":
{
if (ENABLE_RESIST) if (ENABLE_RESIST)
{ {
if (isEnabled(id, level)) if (isEnabled(id, level))
@ -1556,7 +1639,9 @@ public class NpcBuffer extends Quest
} }
} }
break; break;
}
case "song": case "song":
{
if (ENABLE_SONGS) if (ENABLE_SONGS)
{ {
if (isEnabled(id, level)) if (isEnabled(id, level))
@ -1566,7 +1651,9 @@ public class NpcBuffer extends Quest
} }
} }
break; break;
}
case "dance": case "dance":
{
if (ENABLE_DANCES) if (ENABLE_DANCES)
{ {
if (isEnabled(id, level)) if (isEnabled(id, level))
@ -1576,7 +1663,9 @@ public class NpcBuffer extends Quest
} }
} }
break; break;
}
case "chant": case "chant":
{
if (ENABLE_CHANTS) if (ENABLE_CHANTS)
{ {
if (isEnabled(id, level)) if (isEnabled(id, level))
@ -1586,7 +1675,9 @@ public class NpcBuffer extends Quest
} }
} }
break; break;
}
case "others": case "others":
{
if (ENABLE_OTHERS) if (ENABLE_OTHERS)
{ {
if (isEnabled(id, level)) if (isEnabled(id, level))
@ -1596,7 +1687,9 @@ public class NpcBuffer extends Quest
} }
} }
break; break;
}
case "special": case "special":
{
if (ENABLE_SPECIAL) if (ENABLE_SPECIAL)
{ {
if (isEnabled(id, level)) if (isEnabled(id, level))
@ -1606,11 +1699,14 @@ public class NpcBuffer extends Quest
} }
} }
break; break;
}
default: default:
{
if (DEBUG) if (DEBUG)
{ {
throw new RuntimeException(); throw new RuntimeException();
} }
}
} }
} }
statement.close(); statement.close();
@ -1677,38 +1773,56 @@ public class NpcBuffer extends Quest
} }
} }
return SMART_WINDOW ? null : rebuildMainHtml(st); return SMART_WINDOW ? null : rebuildMainHtml(st);
}
case "giveBuffs": case "giveBuffs":
{ {
final int cost; final int cost;
switch (eventParam3) switch (eventParam3)
{ {
case "buff": case "buff":
{
cost = BUFF_PRICE; cost = BUFF_PRICE;
break; break;
}
case "resist": case "resist":
{
cost = RESIST_PRICE; cost = RESIST_PRICE;
break; break;
}
case "song": case "song":
{
cost = SONG_PRICE; cost = SONG_PRICE;
break; break;
}
case "dance": case "dance":
{
cost = DANCE_PRICE; cost = DANCE_PRICE;
break; break;
}
case "chant": case "chant":
{
cost = CHANT_PRICE; cost = CHANT_PRICE;
break; break;
}
case "others": case "others":
{
cost = OTHERS_PRICE; cost = OTHERS_PRICE;
break; break;
}
case "special": case "special":
{
cost = SPECIAL_PRICE; cost = SPECIAL_PRICE;
break; break;
}
case "cubic": case "cubic":
{
cost = CUBIC_PRICE; cost = CUBIC_PRICE;
break; break;
}
default: default:
{
throw new RuntimeException(); throw new RuntimeException();
}
} }
if ((int) (System.currentTimeMillis() / 1000) > st.getInt("blockUntilTime")) if ((int) (System.currentTimeMillis() / 1000) > st.getInt("blockUntilTime"))
@ -1786,8 +1900,8 @@ public class NpcBuffer extends Quest
} }
return SMART_WINDOW ? null : buildHtml(eventParam3); return SMART_WINDOW ? null : buildHtml(eventParam3);
} }
case "castBuffSet": case "castBuffSet":
{
if ((int) (System.currentTimeMillis() / 1000) > st.getInt("blockUntilTime")) if ((int) (System.currentTimeMillis() / 1000) > st.getInt("blockUntilTime"))
{ {
if (!FREE_BUFFS) if (!FREE_BUFFS)
@ -1833,7 +1947,6 @@ public class NpcBuffer extends Quest
{ {
print(e); print(e);
} }
player.setTarget(player); player.setTarget(player);
player.broadcastPacket(new MagicSkillUse(player, SKILL_BUFF_1, 1, 1000, 0)); player.broadcastPacket(new MagicSkillUse(player, SKILL_BUFF_1, 1, 1000, 0));
player.broadcastPacket(new MagicSkillUse(player, SKILL_BUFF_2, 1, 1000, 0)); player.broadcastPacket(new MagicSkillUse(player, SKILL_BUFF_2, 1, 1000, 0));
@ -1869,7 +1982,6 @@ public class NpcBuffer extends Quest
{ {
print(e); print(e);
} }
player.getSummon().setTarget(player.getSummon()); player.getSummon().setTarget(player.getSummon());
player.getSummon().broadcastPacket(new MagicSkillUse(player.getSummon(), SKILL_BUFF_1, 1, 1000, 0)); player.getSummon().broadcastPacket(new MagicSkillUse(player.getSummon(), SKILL_BUFF_1, 1, 1000, 0));
player.getSummon().broadcastPacket(new MagicSkillUse(player.getSummon(), SKILL_BUFF_2, 1, 1000, 0)); player.getSummon().broadcastPacket(new MagicSkillUse(player.getSummon(), SKILL_BUFF_2, 1, 1000, 0));
@ -1890,7 +2002,7 @@ public class NpcBuffer extends Quest
} }
} }
return SMART_WINDOW ? null : rebuildMainHtml(st); return SMART_WINDOW ? null : rebuildMainHtml(st);
}
} }
return rebuildMainHtml(st); return rebuildMainHtml(st);
} }

View File

@ -292,13 +292,19 @@ public class EnergySeeds extends AbstractNpcAI
switch (seed) switch (seed)
{ {
case INFINITY: case INFINITY:
{
return false; return false;
}
case DESTRUCTION: case DESTRUCTION:
{
return SoDManager.getInstance().getSoDState() == 2; return SoDManager.getInstance().getSoDState() == 2;
}
case ANNIHILATION_BISTAKON: case ANNIHILATION_BISTAKON:
case ANNIHILATION_REPTILIKON: case ANNIHILATION_REPTILIKON:
case ANNIHILATION_COKRAKON: case ANNIHILATION_COKRAKON:
{
return true; return true;
}
} }
return true; return true;
} }
@ -325,25 +331,39 @@ public class EnergySeeds extends AbstractNpcAI
switch (npc.getId()) switch (npc.getId())
{ {
case 18678: // Water case 18678: // Water
{
itemId = 14016; itemId = 14016;
break; break;
}
case 18679: // Fire case 18679: // Fire
{
itemId = 14015; itemId = 14015;
break; break;
}
case 18680: // Wind case 18680: // Wind
{
itemId = 14017; itemId = 14017;
break; break;
}
case 18681: // Earth case 18681: // Earth
{
itemId = 14018; itemId = 14018;
break; break;
}
case 18682: // Divinity case 18682: // Divinity
{
itemId = 14020; itemId = 14020;
break; break;
}
case 18683: // Darkness case 18683: // Darkness
{
itemId = 14019; itemId = 14019;
break; break;
}
default: default:
{
return super.onSkillSee(npc, caster, skill, targets, isSummon); return super.onSkillSee(npc, caster, skill, targets, isSummon);
}
} }
if (getRandom(100) < 33) if (getRandom(100) < 33)
{ {
@ -445,17 +465,21 @@ public class EnergySeeds extends AbstractNpcAI
switch (zone.getId()) switch (zone.getId())
{ {
case SOD_ZONE: case SOD_ZONE:
{
if (!isSeedActive(GraciaSeeds.DESTRUCTION) && !character.isGM()) if (!isSeedActive(GraciaSeeds.DESTRUCTION) && !character.isGM())
{ {
character.teleToLocation(SOD_EXIT_POINT); character.teleToLocation(SOD_EXIT_POINT);
} }
break; break;
}
case SOI_ZONE: case SOI_ZONE:
{
if ((SoIManager.getCurrentStage() != 3) && !SoIManager.isSeedOpen()) if ((SoIManager.getCurrentStage() != 3) && !SoIManager.isSeedOpen())
{ {
character.teleToLocation(SOI_EXIT_POINT); character.teleToLocation(SOI_EXIT_POINT);
} }
break; break;
}
} }
} }
return super.onEnterZone(character, zone); return super.onEnterZone(character, zone);
@ -506,18 +530,23 @@ public class EnergySeeds extends AbstractNpcAI
switch (seedType) switch (seedType)
{ {
case INFINITY: case INFINITY:
{
if ((st != null) && st.isCond(3)) if ((st != null) && st.isCond(3))
{ {
handleQuestDrop(player, 13798); handleQuestDrop(player, 13798);
} }
break; break;
}
case DESTRUCTION: case DESTRUCTION:
{
if ((st != null) && st.isCond(3)) if ((st != null) && st.isCond(3))
{ {
handleQuestDrop(player, 13867); handleQuestDrop(player, 13867);
} }
break; break;
}
case ANNIHILATION_BISTAKON: case ANNIHILATION_BISTAKON:
{
if ((st != null) && st.isCond(3)) if ((st != null) && st.isCond(3))
{ {
handleQuestDrop(player, 15535); handleQuestDrop(player, 15535);
@ -530,7 +559,9 @@ public class EnergySeeds extends AbstractNpcAI
mob.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, player); mob.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, player);
} }
break; break;
}
case ANNIHILATION_REPTILIKON: case ANNIHILATION_REPTILIKON:
{
if ((st != null) && st.isCond(3)) if ((st != null) && st.isCond(3))
{ {
handleQuestDrop(player, 15535); handleQuestDrop(player, 15535);
@ -543,7 +574,9 @@ public class EnergySeeds extends AbstractNpcAI
mob.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, player); mob.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, player);
} }
break; break;
}
case ANNIHILATION_COKRAKON: case ANNIHILATION_COKRAKON:
{
if ((st != null) && st.isCond(3)) if ((st != null) && st.isCond(3))
{ {
handleQuestDrop(player, 15535); handleQuestDrop(player, 15535);
@ -556,6 +589,7 @@ public class EnergySeeds extends AbstractNpcAI
mob.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, player); mob.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, player);
} }
break; break;
}
} }
} }

View File

@ -63,15 +63,22 @@ public class Lindvior extends AbstractNpcAI
switch (event) switch (event)
{ {
case "tomaris_shout1": case "tomaris_shout1":
{
npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.HUH_THE_SKY_LOOKS_FUNNY_WHAT_S_THAT); npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.HUH_THE_SKY_LOOKS_FUNNY_WHAT_S_THAT);
break; break;
}
case "artius_shout": case "artius_shout":
{
npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.A_POWERFUL_SUBORDINATE_IS_BEING_HELD_BY_THE_BARRIER_ORB_THIS_REACTION_MEANS); npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.A_POWERFUL_SUBORDINATE_IS_BEING_HELD_BY_THE_BARRIER_ORB_THIS_REACTION_MEANS);
break; break;
}
case "tomaris_shout2": case "tomaris_shout2":
{
npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.BE_CAREFUL_SOMETHING_S_COMING); npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.BE_CAREFUL_SOMETHING_S_COMING);
break; break;
}
case "lindvior_scene": case "lindvior_scene":
{
if (npc != null) if (npc != null)
{ {
for (L2PcInstance pl : npc.getKnownList().getKnownPlayersInRadius(4000)) for (L2PcInstance pl : npc.getKnownList().getKnownPlayersInRadius(4000))
@ -83,17 +90,19 @@ public class Lindvior extends AbstractNpcAI
} }
} }
break; break;
}
case "start": case "start":
{
_lindviorCamera = SpawnTable.getInstance().findAny(LINDVIOR_CAMERA).getLastSpawn(); _lindviorCamera = SpawnTable.getInstance().findAny(LINDVIOR_CAMERA).getLastSpawn();
_tomaris = SpawnTable.getInstance().findAny(TOMARIS).getLastSpawn(); _tomaris = SpawnTable.getInstance().findAny(TOMARIS).getLastSpawn();
_artius = SpawnTable.getInstance().findAny(ARTIUS).getLastSpawn(); _artius = SpawnTable.getInstance().findAny(ARTIUS).getLastSpawn();
startQuestTimer("tomaris_shout1", 1000, _tomaris, null); startQuestTimer("tomaris_shout1", 1000, _tomaris, null);
startQuestTimer("artius_shout", 60000, _artius, null); startQuestTimer("artius_shout", 60000, _artius, null);
startQuestTimer("tomaris_shout2", 90000, _tomaris, null); startQuestTimer("tomaris_shout2", 90000, _tomaris, null);
startQuestTimer("lindvior_scene", 120000, _lindviorCamera, null); startQuestTimer("lindvior_scene", 120000, _lindviorCamera, null);
scheduleNextLindviorVisit(); scheduleNextLindviorVisit();
break; break;
}
} }
return super.onAdvEvent(event, npc, player); return super.onAdvEvent(event, npc, player);
} }

View File

@ -219,14 +219,20 @@ public final class Maguen extends AbstractNpcAI
switch (getRandom(3)) switch (getRandom(3))
{ {
case 0: case 0:
{
skillToCast = (getRandom(100) < 70) ? B_BUFF_1 : B_BUFF_2; skillToCast = (getRandom(100) < 70) ? B_BUFF_1 : B_BUFF_2;
break; break;
}
case 1: case 1:
{
skillToCast = (getRandom(100) < 70) ? C_BUFF_1 : C_BUFF_2; skillToCast = (getRandom(100) < 70) ? C_BUFF_1 : C_BUFF_2;
break; break;
}
case 2: case 2:
{
skillToCast = (getRandom(100) < 70) ? R_BUFF_1 : R_BUFF_2; skillToCast = (getRandom(100) < 70) ? R_BUFF_1 : R_BUFF_2;
break; break;
}
} }
if (skillToCast != null) if (skillToCast != null)
@ -285,14 +291,20 @@ public final class Maguen extends AbstractNpcAI
switch (i1) switch (i1)
{ {
case 0: case 0:
{
skillToCast = B_PLASMA1; skillToCast = B_PLASMA1;
break; break;
}
case 1: case 1:
{
skillToCast = B_PLASMA2; skillToCast = B_PLASMA2;
break; break;
}
case 2: case 2:
{
skillToCast = B_PLASMA3; skillToCast = B_PLASMA3;
break; break;
}
} }
break; break;
} }
@ -301,14 +313,20 @@ public final class Maguen extends AbstractNpcAI
switch (i2) switch (i2)
{ {
case 0: case 0:
{
skillToCast = C_PLASMA1; skillToCast = C_PLASMA1;
break; break;
}
case 1: case 1:
{
skillToCast = C_PLASMA2; skillToCast = C_PLASMA2;
break; break;
}
case 2: case 2:
{
skillToCast = C_PLASMA3; skillToCast = C_PLASMA3;
break; break;
}
} }
break; break;
} }
@ -317,14 +335,20 @@ public final class Maguen extends AbstractNpcAI
switch (i3) switch (i3)
{ {
case 0: case 0:
{
skillToCast = R_PLASMA1; skillToCast = R_PLASMA1;
break; break;
}
case 1: case 1:
{
skillToCast = R_PLASMA2; skillToCast = R_PLASMA2;
break; break;
}
case 2: case 2:
{
skillToCast = R_PLASMA3; skillToCast = R_PLASMA3;
break; break;
}
} }
break; break;
} }

View File

@ -57,24 +57,32 @@ public class StarStones extends AbstractNpcAI
case 18684: case 18684:
case 18685: case 18685:
case 18686: case 18686:
{
// give Red item // give Red item
itemId = 14009; itemId = 14009;
break; break;
}
case 18687: case 18687:
case 18688: case 18688:
case 18689: case 18689:
{
// give Blue item // give Blue item
itemId = 14010; itemId = 14010;
break; break;
}
case 18690: case 18690:
case 18691: case 18691:
case 18692: case 18692:
{
// give Green item // give Green item
itemId = 14011; itemId = 14011;
break; break;
}
default: default:
{
// unknown npc! // unknown npc!
return super.onSkillSee(npc, caster, skill, targets, isSummon); return super.onSkillSee(npc, caster, skill, targets, isSummon);
}
} }
if (getRandom(100) < 33) if (getRandom(100) < 33)
{ {

View File

@ -319,15 +319,25 @@ public class HallOfSufferingAttack extends AbstractNpcAI
switch (room) switch (room)
{ {
case 0: case 0:
{
return ROOM_1_MOBS; return ROOM_1_MOBS;
}
case 1: case 1:
{
return ROOM_2_MOBS; return ROOM_2_MOBS;
}
case 2: case 2:
{
return ROOM_3_MOBS; return ROOM_3_MOBS;
}
case 3: case 3:
{
return ROOM_4_MOBS; return ROOM_4_MOBS;
}
case 4: case 4:
{
return ROOM_5_MOBS; return ROOM_5_MOBS;
}
} }
return new int[][] {}; return new int[][] {};
} }

View File

@ -319,15 +319,25 @@ public class HallOfSufferingDefence extends AbstractNpcAI
switch (room) switch (room)
{ {
case 0: case 0:
{
return ROOM_1_MOBS; return ROOM_1_MOBS;
}
case 1: case 1:
{
return ROOM_2_MOBS; return ROOM_2_MOBS;
}
case 2: case 2:
{
return ROOM_3_MOBS; return ROOM_3_MOBS;
}
case 3: case 3:
{
return ROOM_4_MOBS; return ROOM_4_MOBS;
}
case 4: case 4:
{
return ROOM_5_MOBS; return ROOM_5_MOBS;
}
} }
return new int[][] {}; return new int[][] {};
} }

View File

@ -777,40 +777,54 @@ public class HeartInfinityAttack extends Quest
switch (world.tumorCount) switch (world.tumorCount)
{ {
case 6: case 6:
{
a[0] = 2; a[0] = 2;
a[1] = 1; a[1] = 1;
a[2] = 4; a[2] = 4;
break; break;
}
case 5: case 5:
{
a[0] = 1.9; a[0] = 1.9;
a[1] = 0.9; a[1] = 0.9;
a[2] = 3.5; a[2] = 3.5;
break; break;
}
case 4: case 4:
{
a[0] = 1.5; a[0] = 1.5;
a[1] = 0.6; a[1] = 0.6;
a[2] = 3.0; a[2] = 3.0;
break; break;
}
case 3: case 3:
{
a[0] = 1.0; a[0] = 1.0;
a[1] = 0.4; a[1] = 0.4;
a[2] = 2.5; a[2] = 2.5;
break; break;
}
case 2: case 2:
{
a[0] = 0.7; a[0] = 0.7;
a[1] = 0.3; a[1] = 0.3;
a[2] = 2.0; a[2] = 2.0;
break; break;
}
case 1: case 1:
{
a[0] = 0.3; a[0] = 0.3;
a[1] = 0.15; a[1] = 0.15;
a[2] = 1.0; a[2] = 1.0;
break; break;
}
case 0: case 0:
{
a[0] = 0.12; a[0] = 0.12;
a[1] = 0.06; a[1] = 0.06;
a[2] = 0.25; a[2] = 0.25;
break; break;
}
} }
return a; return a;
} }

View File

@ -1046,13 +1046,16 @@ public class SeedOfDestruction extends AbstractNpcAI
switch (world.getStatus()) switch (world.getStatus())
{ {
case 0: case 0:
{
spawn(world, ENTRANCE_GROUND_SPAWNS_1, true, false); spawn(world, ENTRANCE_GROUND_SPAWNS_1, true, false);
spawn(world, ENTRANCE_GROUND_SPAWNS_2, false, false); spawn(world, ENTRANCE_GROUND_SPAWNS_2, false, false);
spawn(world, ENTRANCE_UPPER_SPAWNS, false, true); spawn(world, ENTRANCE_UPPER_SPAWNS, false, true);
closeDoor(SCOUTPASS_DOOR, world.getInstanceId()); closeDoor(SCOUTPASS_DOOR, world.getInstanceId());
closeDoor(THRONE_DOOR, world.getInstanceId()); closeDoor(THRONE_DOOR, world.getInstanceId());
break; break;
}
case 1: case 1:
{
final ExShowScreenMessage message1 = new ExShowScreenMessage(NpcStringId.THE_ENEMIES_HAVE_ATTACKED_EVERYONE_COME_OUT_AND_FIGHT_URGH, 5, 5000); final ExShowScreenMessage message1 = new ExShowScreenMessage(NpcStringId.THE_ENEMIES_HAVE_ATTACKED_EVERYONE_COME_OUT_AND_FIGHT_URGH, 5, 5000);
sendScreenMessage(world, message1); sendScreenMessage(world, message1);
for (int i : ENTRANCE_ROOM_DOORS) for (int i : ENTRANCE_ROOM_DOORS)
@ -1062,11 +1065,15 @@ public class SeedOfDestruction extends AbstractNpcAI
spawn(world, SQUARE_SPAWNS_STATIC, false, true); spawn(world, SQUARE_SPAWNS_STATIC, false, true);
spawn(world, SQUARE_SPAWNS_MAIN, true, false); spawn(world, SQUARE_SPAWNS_MAIN, true, false);
break; break;
}
case 2: case 2:
case 3: case 3:
{
// handled elsewhere // handled elsewhere
return; return;
}
case 4: case 4:
{
final ExShowScreenMessage message2 = new ExShowScreenMessage(NpcStringId.OBELISK_HAS_COLLAPSED_DON_T_LET_THE_ENEMIES_JUMP_AROUND_WILDLY_ANYMORE, 5, 5000); final ExShowScreenMessage message2 = new ExShowScreenMessage(NpcStringId.OBELISK_HAS_COLLAPSED_DON_T_LET_THE_ENEMIES_JUMP_AROUND_WILDLY_ANYMORE, 5, 5000);
sendScreenMessage(world, message2); sendScreenMessage(world, message2);
for (int i : SQUARE_DOORS) for (int i : SQUARE_DOORS)
@ -1077,7 +1084,9 @@ public class SeedOfDestruction extends AbstractNpcAI
spawn(world, CORRIDOR_SPAWNS_GROUND, false, false); spawn(world, CORRIDOR_SPAWNS_GROUND, false, false);
world.killedDevice = 0; world.killedDevice = 0;
break; break;
}
case 5: case 5:
{
openDoor(SCOUTPASS_DOOR, world.getInstanceId()); openDoor(SCOUTPASS_DOOR, world.getInstanceId());
spawn(world, SQUARE_SPAWNS_HALF, false, false); spawn(world, SQUARE_SPAWNS_HALF, false, false);
spawn(world, SCOUTPASS_SPAWNS_UPPER, false, true); spawn(world, SCOUTPASS_SPAWNS_UPPER, false, true);
@ -1089,19 +1098,28 @@ public class SeedOfDestruction extends AbstractNpcAI
spawn(world, FORT_SPAWNS_GROUND, false, false); spawn(world, FORT_SPAWNS_GROUND, false, false);
world.killedDevice = 0; world.killedDevice = 0;
break; break;
}
case 6: case 6:
{
runThrone(world); runThrone(world);
openDoor(THRONE_DOOR, world.getInstanceId()); openDoor(THRONE_DOOR, world.getInstanceId());
spawn(world, FORT_PORTALS, false, true); spawn(world, FORT_PORTALS, false, true);
break; break;
}
case 7: case 7:
{
// handled elsewhere // handled elsewhere
return; return;
}
case 8: case 8:
{
break; break;
}
case 9: case 9:
{
// instance end // instance end
break; break;
}
} }
world.incStatus(); world.incStatus();
} }

View File

@ -245,43 +245,59 @@ public final class AirShipGludioGracia extends Quest implements Runnable
switch (_cycle) switch (_cycle)
{ {
case 0: case 0:
{
broadcastInGludio(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_THAT_FLIES_TO_THE_GRACIA_CONTINENT_HAS_DEPARTED); broadcastInGludio(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_THAT_FLIES_TO_THE_GRACIA_CONTINENT_HAS_DEPARTED);
_ship.setInDock(0); _ship.setInDock(0);
_ship.executePath(GLUDIO_TO_WARPGATE); _ship.executePath(GLUDIO_TO_WARPGATE);
break; break;
}
case 1: case 1:
{
// _ship.teleToLocation(-167874, 256731, -509, 41035, false); // _ship.teleToLocation(-167874, 256731, -509, 41035, false);
_ship.setOustLoc(OUST_GRACIA); _ship.setOustLoc(OUST_GRACIA);
ThreadPoolManager.schedule(this, 5000); ThreadPoolManager.schedule(this, 5000);
break; break;
}
case 2: case 2:
{
_ship.executePath(WARPGATE_TO_GRACIA); _ship.executePath(WARPGATE_TO_GRACIA);
break; break;
}
case 3: case 3:
{
broadcastInGracia(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_HAS_ARRIVED_IT_WILL_DEPART_FOR_THE_ADEN_CONTINENT_IN_1_MINUTE); broadcastInGracia(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_HAS_ARRIVED_IT_WILL_DEPART_FOR_THE_ADEN_CONTINENT_IN_1_MINUTE);
_ship.setInDock(GRACIA_DOCK_ID); _ship.setInDock(GRACIA_DOCK_ID);
_ship.oustPlayers(); _ship.oustPlayers();
ThreadPoolManager.schedule(this, 60000); ThreadPoolManager.schedule(this, 60000);
break; break;
}
case 4: case 4:
{
broadcastInGracia(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_THAT_FLIES_TO_THE_ADEN_CONTINENT_HAS_DEPARTED); broadcastInGracia(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_THAT_FLIES_TO_THE_ADEN_CONTINENT_HAS_DEPARTED);
_ship.setInDock(0); _ship.setInDock(0);
_ship.executePath(GRACIA_TO_WARPGATE); _ship.executePath(GRACIA_TO_WARPGATE);
break; break;
}
case 5: case 5:
{
// _ship.teleToLocation(-157261, 255664, 221, 64781, false); // _ship.teleToLocation(-157261, 255664, 221, 64781, false);
_ship.setOustLoc(OUST_GLUDIO); _ship.setOustLoc(OUST_GLUDIO);
ThreadPoolManager.schedule(this, 5000); ThreadPoolManager.schedule(this, 5000);
break; break;
}
case 6: case 6:
{
_ship.executePath(WARPGATE_TO_GLUDIO); _ship.executePath(WARPGATE_TO_GLUDIO);
break; break;
}
case 7: case 7:
{
broadcastInGludio(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_HAS_ARRIVED_IT_WILL_DEPART_FOR_THE_GRACIA_CONTINENT_IN_1_MINUTE); broadcastInGludio(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_HAS_ARRIVED_IT_WILL_DEPART_FOR_THE_GRACIA_CONTINENT_IN_1_MINUTE);
_ship.setInDock(GLUDIO_DOCK_ID); _ship.setInDock(GLUDIO_DOCK_ID);
_ship.oustPlayers(); _ship.oustPlayers();
ThreadPoolManager.schedule(this, 60000); ThreadPoolManager.schedule(this, 60000);
break; break;
}
} }
_cycle++; _cycle++;
if (_cycle > 7) if (_cycle > 7)

View File

@ -305,14 +305,20 @@ public final class AdminCHSiege implements IAdminCommandHandler
switch (hall.getSiegeStatus()) switch (hall.getSiegeStatus())
{ {
case REGISTERING: case REGISTERING:
{
siegable.prepareOwner(); siegable.prepareOwner();
break; break;
}
case WAITING_BATTLE: case WAITING_BATTLE:
{
siegable.startSiege(); siegable.startSiege();
break; break;
}
case RUNNING: case RUNNING:
{
siegable.endSiege(); siegable.endSiege();
break; break;
}
} }
} }

View File

@ -192,26 +192,40 @@ public class AdminLogin implements IAdminCommandHandler
switch (currentType) switch (currentType)
{ {
case 0x01: case 0x01:
{
nameType += "Normal"; nameType += "Normal";
break; break;
}
case 0x02: case 0x02:
{
nameType += "Relax"; nameType += "Relax";
break; break;
}
case 0x04: case 0x04:
{
nameType += "Test"; nameType += "Test";
break; break;
}
case 0x08: case 0x08:
{
nameType += "NoLabel"; nameType += "NoLabel";
break; break;
}
case 0x10: case 0x10:
{
nameType += "Restricted"; nameType += "Restricted";
break; break;
}
case 0x20: case 0x20:
{
nameType += "Event"; nameType += "Event";
break; break;
}
case 0x40: case 0x40:
{
nameType += "Free"; nameType += "Free";
break; break;
}
} }
} }
} }

View File

@ -132,34 +132,50 @@ public final class AdminPForge implements IAdminCommandHandler
case 'B': case 'B':
case 'x': case 'x':
case 'X': case 'X':
{
// array // array
break; break;
}
case 'c': case 'c':
case 'C': case 'C':
{
// byte // byte
break; break;
}
case 'h': case 'h':
case 'H': case 'H':
{
// word // word
break; break;
}
case 'd': case 'd':
case 'D': case 'D':
{
// dword // dword
break; break;
}
case 'q': case 'q':
case 'Q': case 'Q':
{
// qword // qword
break; break;
}
case 'f': case 'f':
case 'F': case 'F':
{
// double // double
break; break;
}
case 's': case 's':
case 'S': case 'S':
{
// string // string
break; break;
}
default: default:
{
return false; return false;
}
} }
} }
@ -173,7 +189,9 @@ public final class AdminPForge implements IAdminCommandHandler
case "sc": case "sc":
case "sb": case "sb":
case "cs": case "cs":
{
return true; return true;
}
} }
return false; return false;
@ -405,9 +423,12 @@ public final class AdminPForge implements IAdminCommandHandler
switch (value) switch (value)
{ {
case "$oid": case "$oid":
{
value = String.valueOf(activeChar.getObjectId()); value = String.valueOf(activeChar.getObjectId());
break; break;
}
case "$boid": case "$boid":
{
boat = activeChar.getBoat(); boat = activeChar.getBoat();
if (boat != null) if (boat != null)
{ {
@ -418,28 +439,44 @@ public final class AdminPForge implements IAdminCommandHandler
value = "0"; value = "0";
} }
break; break;
}
case "$title": case "$title":
{
value = activeChar.getTitle(); value = activeChar.getTitle();
break; break;
}
case "$name": case "$name":
{
value = activeChar.getName(); value = activeChar.getName();
break; break;
}
case "$x": case "$x":
{
value = String.valueOf(activeChar.getX()); value = String.valueOf(activeChar.getX());
break; break;
}
case "$y": case "$y":
{
value = String.valueOf(activeChar.getY()); value = String.valueOf(activeChar.getY());
break; break;
}
case "$z": case "$z":
{
value = String.valueOf(activeChar.getZ()); value = String.valueOf(activeChar.getZ());
break; break;
}
case "$heading": case "$heading":
{
value = String.valueOf(activeChar.getHeading()); value = String.valueOf(activeChar.getHeading());
break; break;
}
case "$toid": case "$toid":
{
value = String.valueOf(activeChar.getTargetId()); value = String.valueOf(activeChar.getTargetId());
break; break;
}
case "$tboid": case "$tboid":
{
target = activeChar.getTarget(); target = activeChar.getTarget();
if ((target != null) && (target instanceof L2Playable)) if ((target != null) && (target instanceof L2Playable))
{ {
@ -454,7 +491,9 @@ public final class AdminPForge implements IAdminCommandHandler
} }
} }
break; break;
}
case "$ttitle": case "$ttitle":
{
target = activeChar.getTarget(); target = activeChar.getTarget();
if ((target != null) && (target instanceof L2Character)) if ((target != null) && (target instanceof L2Character))
{ {
@ -465,7 +504,9 @@ public final class AdminPForge implements IAdminCommandHandler
value = ""; value = "";
} }
break; break;
}
case "$tname": case "$tname":
{
target = activeChar.getTarget(); target = activeChar.getTarget();
if (target != null) if (target != null)
{ {
@ -476,7 +517,9 @@ public final class AdminPForge implements IAdminCommandHandler
value = ""; value = "";
} }
break; break;
}
case "$tx": case "$tx":
{
target = activeChar.getTarget(); target = activeChar.getTarget();
if (target != null) if (target != null)
{ {
@ -487,7 +530,9 @@ public final class AdminPForge implements IAdminCommandHandler
value = "0"; value = "0";
} }
break; break;
}
case "$ty": case "$ty":
{
target = activeChar.getTarget(); target = activeChar.getTarget();
if (target != null) if (target != null)
{ {
@ -498,7 +543,9 @@ public final class AdminPForge implements IAdminCommandHandler
value = "0"; value = "0";
} }
break; break;
}
case "$tz": case "$tz":
{
target = activeChar.getTarget(); target = activeChar.getTarget();
if (target != null) if (target != null)
{ {
@ -509,7 +556,9 @@ public final class AdminPForge implements IAdminCommandHandler
value = "0"; value = "0";
} }
break; break;
}
case "$theading": case "$theading":
{
target = activeChar.getTarget(); target = activeChar.getTarget();
if (target != null) if (target != null)
{ {
@ -520,6 +569,7 @@ public final class AdminPForge implements IAdminCommandHandler
value = "0"; value = "0";
} }
break; break;
}
} }
if (method.equals("sc") || method.equals("sb")) if (method.equals("sc") || method.equals("sb"))

View File

@ -94,25 +94,23 @@ public class AdminSiege implements IAdminCommandHandler
switch (command) switch (command)
{ {
case "admin_clanhallset": case "admin_clanhallset":
{
if ((player == null) || (player.getClan() == null)) if ((player == null) || (player.getClan() == null))
{ {
activeChar.sendPacket(SystemMessageId.INVALID_TARGET); activeChar.sendPacket(SystemMessageId.INVALID_TARGET);
return false; return false;
} }
if (clanhall.getOwnerId() > 0) if (clanhall.getOwnerId() > 0)
{ {
activeChar.sendMessage("This Clan Hall is not free!"); activeChar.sendMessage("This Clan Hall is not free!");
return false; return false;
} }
clan = player.getClan(); clan = player.getClan();
if (clan.getHideoutId() > 0) if (clan.getHideoutId() > 0)
{ {
activeChar.sendMessage("You have already a Clan Hall!"); activeChar.sendMessage("You have already a Clan Hall!");
return false; return false;
} }
if (!clanhall.isSiegableHall()) if (!clanhall.isSiegableHall())
{ {
ClanHallManager.getInstance().setOwner(clanhall.getId(), clan); ClanHallManager.getInstance().setOwner(clanhall.getId(), clan);
@ -127,8 +125,9 @@ public class AdminSiege implements IAdminCommandHandler
clan.setHideoutId(clanhall.getId()); clan.setHideoutId(clanhall.getId());
} }
break; break;
}
case "admin_clanhalldel": case "admin_clanhalldel":
{
if (!clanhall.isSiegableHall()) if (!clanhall.isSiegableHall())
{ {
if (!ClanHallManager.getInstance().isFree(clanhall.getId())) if (!ClanHallManager.getInstance().isFree(clanhall.getId()))
@ -156,20 +155,28 @@ public class AdminSiege implements IAdminCommandHandler
} }
} }
break; break;
}
case "admin_clanhallopendoors": case "admin_clanhallopendoors":
{
clanhall.openCloseDoors(true); clanhall.openCloseDoors(true);
break; break;
}
case "admin_clanhallclosedoors": case "admin_clanhallclosedoors":
{
clanhall.openCloseDoors(false); clanhall.openCloseDoors(false);
break; break;
}
case "admin_clanhallteleportself": case "admin_clanhallteleportself":
{
final L2ClanHallZone zone = clanhall.getZone(); final L2ClanHallZone zone = clanhall.getZone();
if (zone != null) if (zone != null)
{ {
activeChar.teleToLocation(zone.getSpawnLoc(), true); activeChar.teleToLocation(zone.getSpawnLoc(), true);
} }
break; break;
}
default: default:
{
if (!clanhall.isSiegableHall()) if (!clanhall.isSiegableHall())
{ {
showClanHallPage(activeChar, clanhall); showClanHallPage(activeChar, clanhall);
@ -179,6 +186,7 @@ public class AdminSiege implements IAdminCommandHandler
showSiegableHallPage(activeChar, (SiegableHall) clanhall); showSiegableHallPage(activeChar, (SiegableHall) clanhall);
} }
break; break;
}
} }
} }
} }
@ -188,6 +196,7 @@ public class AdminSiege implements IAdminCommandHandler
switch (command) switch (command)
{ {
case "admin_add_attacker": case "admin_add_attacker":
{
if (player == null) if (player == null)
{ {
activeChar.sendPacket(SystemMessageId.INVALID_TARGET); activeChar.sendPacket(SystemMessageId.INVALID_TARGET);
@ -197,7 +206,9 @@ public class AdminSiege implements IAdminCommandHandler
castle.getSiege().registerAttacker(player, true); castle.getSiege().registerAttacker(player, true);
} }
break; break;
}
case "admin_add_defender": case "admin_add_defender":
{
if (player == null) if (player == null)
{ {
activeChar.sendPacket(SystemMessageId.INVALID_TARGET); activeChar.sendPacket(SystemMessageId.INVALID_TARGET);
@ -207,7 +218,9 @@ public class AdminSiege implements IAdminCommandHandler
castle.getSiege().registerDefender(player, true); castle.getSiege().registerDefender(player, true);
} }
break; break;
}
case "admin_add_guard": case "admin_add_guard":
{
if (st.hasMoreTokens()) if (st.hasMoreTokens())
{ {
val = st.nextToken(); val = st.nextToken();
@ -220,19 +233,29 @@ public class AdminSiege implements IAdminCommandHandler
// If doesn't have more tokens or token is not a number. // If doesn't have more tokens or token is not a number.
activeChar.sendMessage("Usage: //add_guard castle npcId"); activeChar.sendMessage("Usage: //add_guard castle npcId");
break; break;
}
case "admin_clear_siege_list": case "admin_clear_siege_list":
{
castle.getSiege().clearSiegeClan(); castle.getSiege().clearSiegeClan();
break; break;
}
case "admin_endsiege": case "admin_endsiege":
{
castle.getSiege().endSiege(); castle.getSiege().endSiege();
break; break;
}
case "admin_list_siege_clans": case "admin_list_siege_clans":
{
castle.getSiege().listRegisterClan(activeChar); castle.getSiege().listRegisterClan(activeChar);
break; break;
}
case "admin_move_defenders": case "admin_move_defenders":
{
activeChar.sendMessage("Not implemented yet."); activeChar.sendMessage("Not implemented yet.");
break; break;
}
case "admin_setcastle": case "admin_setcastle":
{
if ((player == null) || (player.getClan() == null)) if ((player == null) || (player.getClan() == null))
{ {
activeChar.sendPacket(SystemMessageId.INVALID_TARGET); activeChar.sendPacket(SystemMessageId.INVALID_TARGET);
@ -242,7 +265,9 @@ public class AdminSiege implements IAdminCommandHandler
castle.setOwner(player.getClan()); castle.setOwner(player.getClan());
} }
break; break;
}
case "admin_removecastle": case "admin_removecastle":
{
final L2Clan clan = ClanTable.getInstance().getClan(castle.getOwnerId()); final L2Clan clan = ClanTable.getInstance().getClan(castle.getOwnerId());
if (clan != null) if (clan != null)
{ {
@ -253,14 +278,14 @@ public class AdminSiege implements IAdminCommandHandler
activeChar.sendMessage("Unable to remove castle."); activeChar.sendMessage("Unable to remove castle.");
} }
break; break;
}
case "admin_setsiegetime": case "admin_setsiegetime":
{
if (st.hasMoreTokens()) if (st.hasMoreTokens())
{ {
final Calendar cal = Calendar.getInstance(); final Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(castle.getSiegeDate().getTimeInMillis()); cal.setTimeInMillis(castle.getSiegeDate().getTimeInMillis());
val = st.nextToken(); val = st.nextToken();
if ("month".equals(val)) if ("month".equals(val))
{ {
final int month = cal.get(Calendar.MONTH) + Integer.parseInt(st.nextToken()); final int month = cal.get(Calendar.MONTH) + Integer.parseInt(st.nextToken());
@ -301,7 +326,6 @@ public class AdminSiege implements IAdminCommandHandler
} }
cal.set(Calendar.MINUTE, min); cal.set(Calendar.MINUTE, min);
} }
if (cal.getTimeInMillis() < Calendar.getInstance().getTimeInMillis()) if (cal.getTimeInMillis() < Calendar.getInstance().getTimeInMillis())
{ {
activeChar.sendMessage("Unable to change Siege Date"); activeChar.sendMessage("Unable to change Siege Date");
@ -315,15 +339,22 @@ public class AdminSiege implements IAdminCommandHandler
} }
showSiegeTimePage(activeChar, castle); showSiegeTimePage(activeChar, castle);
break; break;
}
case "admin_spawn_doors": case "admin_spawn_doors":
{
castle.spawnDoor(); castle.spawnDoor();
break; break;
}
case "admin_startsiege": case "admin_startsiege":
{
castle.getSiege().startSiege(); castle.getSiege().startSiege();
break; break;
}
default: default:
{
showSiegePage(activeChar, castle.getName()); showSiegePage(activeChar, castle.getName());
break; break;
}
} }
} }
} }

View File

@ -377,14 +377,20 @@ public class AdminSpawn implements IAdminCommandHandler
{ {
default: default:
case 0: case 0:
{
_log.info("('',1," + i + "," + x + "," + y + "," + z + ",0,0," + h + ",60,0,0),"); _log.info("('',1," + i + "," + x + "," + y + "," + z + ",0,0," + h + ",60,0,0),");
break; break;
}
case 1: case 1:
{
_log.info("<spawn npcId=\"" + i + "\" x=\"" + x + "\" y=\"" + y + "\" z=\"" + z + "\" heading=\"" + h + "\" respawn=\"0\" />"); _log.info("<spawn npcId=\"" + i + "\" x=\"" + x + "\" y=\"" + y + "\" z=\"" + z + "\" heading=\"" + h + "\" respawn=\"0\" />");
break; break;
}
case 2: case 2:
{
_log.info("{ " + i + ", " + x + ", " + y + ", " + z + ", " + h + " },"); _log.info("{ " + i + ", " + x + ", " + y + ", " + z + ", " + h + " },");
break; break;
}
} }
} }

View File

@ -304,23 +304,35 @@ public class AdminTeleport implements IAdminCommandHandler
switch (player.getRace()) switch (player.getRace())
{ {
case ELF: case ELF:
{
regionName = "elf_town"; regionName = "elf_town";
break; break;
}
case DARK_ELF: case DARK_ELF:
{
regionName = "darkelf_town"; regionName = "darkelf_town";
break; break;
}
case ORC: case ORC:
{
regionName = "orc_town"; regionName = "orc_town";
break; break;
}
case DWARF: case DWARF:
{
regionName = "dwarf_town"; regionName = "dwarf_town";
break; break;
}
case KAMAEL: case KAMAEL:
{
regionName = "kamael_town"; regionName = "kamael_town";
break; break;
}
case HUMAN: case HUMAN:
default: default:
{
regionName = "talking_island_town"; regionName = "talking_island_town";
}
} }
player.teleToLocation(MapRegionManager.getInstance().getMapRegionByName(regionName).getSpawnLoc(), true); player.teleToLocation(MapRegionManager.getInstance().getMapRegionByName(regionName).getSpawnLoc(), true);

View File

@ -44,11 +44,15 @@ public class Augment implements IBypassHandler
switch (Integer.parseInt(command.substring(8, 9).trim())) switch (Integer.parseInt(command.substring(8, 9).trim()))
{ {
case 1: case 1:
{
activeChar.sendPacket(ExShowVariationMakeWindow.STATIC_PACKET); activeChar.sendPacket(ExShowVariationMakeWindow.STATIC_PACKET);
return true; return true;
}
case 2: case 2:
{
activeChar.sendPacket(ExShowVariationCancelWindow.STATIC_PACKET); activeChar.sendPacket(ExShowVariationCancelWindow.STATIC_PACKET);
return true; return true;
}
} }
} }
catch (Exception e) catch (Exception e)

View File

@ -67,50 +67,44 @@ public class Festival implements IBypassHandler
switch (val) switch (val)
{ {
case 1: // Become a Participant case 1: // Become a Participant
{
// Check if the festival period is active, if not then don't allow registration. // Check if the festival period is active, if not then don't allow registration.
if (SevenSigns.getInstance().isSealValidationPeriod()) if (SevenSigns.getInstance().isSealValidationPeriod())
{ {
npc.showChatWindow(activeChar, 2, "a", false); npc.showChatWindow(activeChar, 2, "a", false);
return true; return true;
} }
// Check if a festival is in progress, then don't allow registration yet. // Check if a festival is in progress, then don't allow registration yet.
if (SevenSignsFestival.getInstance().isFestivalInitialized()) if (SevenSignsFestival.getInstance().isFestivalInitialized())
{ {
activeChar.sendMessage("You cannot sign up while a festival is in progress."); activeChar.sendMessage("You cannot sign up while a festival is in progress.");
return true; return true;
} }
// Check if the player is in a formed party already. // Check if the player is in a formed party already.
if (!activeChar.isInParty()) if (!activeChar.isInParty())
{ {
npc.showChatWindow(activeChar, 2, "b", false); npc.showChatWindow(activeChar, 2, "b", false);
return true; return true;
} }
party = activeChar.getParty(); party = activeChar.getParty();
// Check if the player is the party leader. // Check if the player is the party leader.
if (!party.isLeader(activeChar)) if (!party.isLeader(activeChar))
{ {
npc.showChatWindow(activeChar, 2, "c", false); npc.showChatWindow(activeChar, 2, "c", false);
return true; return true;
} }
// Check to see if the party has at least 5 members. // Check to see if the party has at least 5 members.
if (party.getMemberCount() < Config.ALT_FESTIVAL_MIN_PLAYER) if (party.getMemberCount() < Config.ALT_FESTIVAL_MIN_PLAYER)
{ {
npc.showChatWindow(activeChar, 2, "b", false); npc.showChatWindow(activeChar, 2, "b", false);
return true; return true;
} }
// Check if all the party members are in the required level range. // Check if all the party members are in the required level range.
if (party.getLevel() > SevenSignsFestival.getMaxLevelForFestival(npc.getFestivalType())) if (party.getLevel() > SevenSignsFestival.getMaxLevelForFestival(npc.getFestivalType()))
{ {
npc.showChatWindow(activeChar, 2, "d", false); npc.showChatWindow(activeChar, 2, "d", false);
return true; return true;
} }
// Check to see if the player has already signed up // Check to see if the player has already signed up
if (activeChar.isFestivalParticipant()) if (activeChar.isFestivalParticipant())
{ {
@ -118,85 +112,75 @@ public class Festival implements IBypassHandler
npc.showChatWindow(activeChar, 2, "f", false); npc.showChatWindow(activeChar, 2, "f", false);
return true; return true;
} }
npc.showChatWindow(activeChar, 1, null, false); npc.showChatWindow(activeChar, 1, null, false);
break; break;
}
case 2: // Seal Stones case 2: // Seal Stones
{
final int stoneType = Integer.parseInt(command.substring(11)); final int stoneType = Integer.parseInt(command.substring(11));
final int stoneCount = npc.getStoneCount(stoneType); final int stoneCount = npc.getStoneCount(stoneType);
if (stoneCount <= 0) if (stoneCount <= 0)
{ {
return false; return false;
} }
if (!activeChar.destroyItemByItemId("SevenSigns", stoneType, stoneCount, npc, true)) if (!activeChar.destroyItemByItemId("SevenSigns", stoneType, stoneCount, npc, true))
{ {
return false; return false;
} }
SevenSignsFestival.getInstance().setParticipants(npc.getFestivalOracle(), npc.getFestivalType(), activeChar.getParty()); SevenSignsFestival.getInstance().setParticipants(npc.getFestivalOracle(), npc.getFestivalType(), activeChar.getParty());
SevenSignsFestival.getInstance().addAccumulatedBonus(npc.getFestivalType(), stoneType, stoneCount); SevenSignsFestival.getInstance().addAccumulatedBonus(npc.getFestivalType(), stoneType, stoneCount);
npc.showChatWindow(activeChar, 2, "e", false); npc.showChatWindow(activeChar, 2, "e", false);
break; break;
}
case 3: // Score Registration case 3: // Score Registration
{
// Check if the festival period is active, if not then don't register the score. // Check if the festival period is active, if not then don't register the score.
if (SevenSigns.getInstance().isSealValidationPeriod()) if (SevenSigns.getInstance().isSealValidationPeriod())
{ {
npc.showChatWindow(activeChar, 3, "a", false); npc.showChatWindow(activeChar, 3, "a", false);
return true; return true;
} }
// Check if a festival is in progress, if it is don't register the score. // Check if a festival is in progress, if it is don't register the score.
if (SevenSignsFestival.getInstance().isFestivalInProgress()) if (SevenSignsFestival.getInstance().isFestivalInProgress())
{ {
activeChar.sendMessage("You cannot register a score while a festival is in progress."); activeChar.sendMessage("You cannot register a score while a festival is in progress.");
return true; return true;
} }
// Check if the player is in a party. // Check if the player is in a party.
if (!activeChar.isInParty()) if (!activeChar.isInParty())
{ {
npc.showChatWindow(activeChar, 3, "b", false); npc.showChatWindow(activeChar, 3, "b", false);
return true; return true;
} }
final List<Integer> prevParticipants = SevenSignsFestival.getInstance().getPreviousParticipants(npc.getFestivalOracle(), npc.getFestivalType()); final List<Integer> prevParticipants = SevenSignsFestival.getInstance().getPreviousParticipants(npc.getFestivalOracle(), npc.getFestivalType());
// Check if there are any past participants. // Check if there are any past participants.
if ((prevParticipants == null) || prevParticipants.isEmpty() || !prevParticipants.contains(activeChar.getObjectId())) if ((prevParticipants == null) || prevParticipants.isEmpty() || !prevParticipants.contains(activeChar.getObjectId()))
{ {
npc.showChatWindow(activeChar, 3, "b", false); npc.showChatWindow(activeChar, 3, "b", false);
return true; return true;
} }
// Check if this player was the party leader in the festival. // Check if this player was the party leader in the festival.
if (activeChar.getObjectId() != prevParticipants.get(0)) if (activeChar.getObjectId() != prevParticipants.get(0))
{ {
npc.showChatWindow(activeChar, 3, "b", false); npc.showChatWindow(activeChar, 3, "b", false);
return true; return true;
} }
final L2ItemInstance bloodOfferings = activeChar.getInventory().getItemByItemId(SevenSignsFestival.FESTIVAL_OFFERING_ID); final L2ItemInstance bloodOfferings = activeChar.getInventory().getItemByItemId(SevenSignsFestival.FESTIVAL_OFFERING_ID);
// Check if the player collected any blood offerings during the festival. // Check if the player collected any blood offerings during the festival.
if (bloodOfferings == null) if (bloodOfferings == null)
{ {
activeChar.sendMessage("You do not have any blood offerings to contribute."); activeChar.sendMessage("You do not have any blood offerings to contribute.");
return true; return true;
} }
final long offeringScore = bloodOfferings.getCount() * SevenSignsFestival.FESTIVAL_OFFERING_VALUE; final long offeringScore = bloodOfferings.getCount() * SevenSignsFestival.FESTIVAL_OFFERING_VALUE;
if (!activeChar.destroyItem("SevenSigns", bloodOfferings, npc, false)) if (!activeChar.destroyItem("SevenSigns", bloodOfferings, npc, false))
{ {
return true; return true;
} }
final boolean isHighestScore = SevenSignsFestival.getInstance().setFinalScore(activeChar, npc.getFestivalOracle(), npc.getFestivalType(), offeringScore); final boolean isHighestScore = SevenSignsFestival.getInstance().setFinalScore(activeChar, npc.getFestivalOracle(), npc.getFestivalType(), offeringScore);
final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.YOUR_CONTRIBUTION_SCORE_HAS_INCREASED_BY_S1); final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.YOUR_CONTRIBUTION_SCORE_HAS_INCREASED_BY_S1);
sm.addLong(offeringScore); sm.addLong(offeringScore);
activeChar.sendPacket(sm); activeChar.sendPacket(sm);
if (isHighestScore) if (isHighestScore)
{ {
npc.showChatWindow(activeChar, 3, "c", false); npc.showChatWindow(activeChar, 3, "c", false);
@ -206,25 +190,23 @@ public class Festival implements IBypassHandler
npc.showChatWindow(activeChar, 3, "d", false); npc.showChatWindow(activeChar, 3, "d", false);
} }
break; break;
}
case 4: // Current High Scores case 4: // Current High Scores
{
final StringBuilder strBuffer = new StringBuilder(500); final StringBuilder strBuffer = new StringBuilder(500);
strBuffer.append("<html><body>Festival Guide:<br>These are the top scores of the week, for the "); strBuffer.append("<html><body>Festival Guide:<br>These are the top scores of the week, for the ");
final StatsSet dawnData = SevenSignsFestival.getInstance().getHighestScoreData(SevenSigns.CABAL_DAWN, npc.getFestivalType()); final StatsSet dawnData = SevenSignsFestival.getInstance().getHighestScoreData(SevenSigns.CABAL_DAWN, npc.getFestivalType());
final StatsSet duskData = SevenSignsFestival.getInstance().getHighestScoreData(SevenSigns.CABAL_DUSK, npc.getFestivalType()); final StatsSet duskData = SevenSignsFestival.getInstance().getHighestScoreData(SevenSigns.CABAL_DUSK, npc.getFestivalType());
final StatsSet overallData = SevenSignsFestival.getInstance().getOverallHighestScoreData(npc.getFestivalType()); final StatsSet overallData = SevenSignsFestival.getInstance().getOverallHighestScoreData(npc.getFestivalType());
final int dawnScore = dawnData.getInt("score"); final int dawnScore = dawnData.getInt("score");
final int duskScore = duskData.getInt("score"); final int duskScore = duskData.getInt("score");
int overallScore = 0; int overallScore = 0;
// If no data is returned, assume there is no record, or all scores are 0. // If no data is returned, assume there is no record, or all scores are 0.
if (overallData != null) if (overallData != null)
{ {
overallScore = overallData.getInt("score"); overallScore = overallData.getInt("score");
} }
strBuffer.append(SevenSignsFestival.getFestivalName(npc.getFestivalType()) + " festival.<br>"); strBuffer.append(SevenSignsFestival.getFestivalName(npc.getFestivalType()) + " festival.<br>");
if (dawnScore > 0) if (dawnScore > 0)
{ {
strBuffer.append("Dawn: " + calculateDate(dawnData.getString("date")) + ". Score " + dawnScore + "<br>" + dawnData.getString("members") + "<br>"); strBuffer.append("Dawn: " + calculateDate(dawnData.getString("date")) + ". Score " + dawnScore + "<br>" + dawnData.getString("members") + "<br>");
@ -233,7 +215,6 @@ public class Festival implements IBypassHandler
{ {
strBuffer.append("Dawn: No record exists. Score 0<br>"); strBuffer.append("Dawn: No record exists. Score 0<br>");
} }
if (duskScore > 0) if (duskScore > 0)
{ {
strBuffer.append("Dusk: " + calculateDate(duskData.getString("date")) + ". Score " + duskScore + "<br>" + duskData.getString("members") + "<br>"); strBuffer.append("Dusk: " + calculateDate(duskData.getString("date")) + ". Score " + duskScore + "<br>" + duskData.getString("members") + "<br>");
@ -242,7 +223,6 @@ public class Festival implements IBypassHandler
{ {
strBuffer.append("Dusk: No record exists. Score 0<br>"); strBuffer.append("Dusk: No record exists. Score 0<br>");
} }
if ((overallScore > 0) && (overallData != null)) if ((overallScore > 0) && (overallData != null))
{ {
final String cabalStr; final String cabalStr;
@ -254,38 +234,34 @@ public class Festival implements IBypassHandler
{ {
cabalStr = "Children of Dusk"; cabalStr = "Children of Dusk";
} }
strBuffer.append("Consecutive top scores: " + calculateDate(overallData.getString("date")) + ". Score " + overallScore + "<br>Affilated side: " + cabalStr + "<br>" + overallData.getString("members") + "<br>"); strBuffer.append("Consecutive top scores: " + calculateDate(overallData.getString("date")) + ". Score " + overallScore + "<br>Affilated side: " + cabalStr + "<br>" + overallData.getString("members") + "<br>");
} }
else else
{ {
strBuffer.append("Consecutive top scores: No record exists. Score 0<br>"); strBuffer.append("Consecutive top scores: No record exists. Score 0<br>");
} }
strBuffer.append("<a action=\"bypass -h npc_" + npc.getObjectId() + "_Chat 0\">Go back.</a></body></html>"); strBuffer.append("<a action=\"bypass -h npc_" + npc.getObjectId() + "_Chat 0\">Go back.</a></body></html>");
final NpcHtmlMessage html = new NpcHtmlMessage(npc.getObjectId()); final NpcHtmlMessage html = new NpcHtmlMessage(npc.getObjectId());
html.setHtml(strBuffer.toString()); html.setHtml(strBuffer.toString());
activeChar.sendPacket(html); activeChar.sendPacket(html);
break; break;
}
case 8: // Increase the Festival Challenge case 8: // Increase the Festival Challenge
{
if (!activeChar.isInParty()) if (!activeChar.isInParty())
{ {
return true; return true;
} }
if (!SevenSignsFestival.getInstance().isFestivalInProgress()) if (!SevenSignsFestival.getInstance().isFestivalInProgress())
{ {
return true; return true;
} }
party = activeChar.getParty(); party = activeChar.getParty();
if (!party.isLeader(activeChar)) if (!party.isLeader(activeChar))
{ {
npc.showChatWindow(activeChar, 8, "a", false); npc.showChatWindow(activeChar, 8, "a", false);
return true; return true;
} }
if (SevenSignsFestival.getInstance().increaseChallenge(npc.getFestivalOracle(), npc.getFestivalType())) if (SevenSignsFestival.getInstance().increaseChallenge(npc.getFestivalOracle(), npc.getFestivalType()))
{ {
npc.showChatWindow(activeChar, 8, "b", false); npc.showChatWindow(activeChar, 8, "b", false);
@ -295,12 +271,13 @@ public class Festival implements IBypassHandler
npc.showChatWindow(activeChar, 8, "c", false); npc.showChatWindow(activeChar, 8, "c", false);
} }
break; break;
}
case 9: // Leave the Festival case 9: // Leave the Festival
{
if (!activeChar.isInParty()) if (!activeChar.isInParty())
{ {
return true; return true;
} }
party = activeChar.getParty(); party = activeChar.getParty();
if (party.isLeader(activeChar)) if (party.isLeader(activeChar))
{ {
@ -318,13 +295,14 @@ public class Festival implements IBypassHandler
} }
} }
break; break;
}
case 0: // Distribute Accumulated Bonus case 0: // Distribute Accumulated Bonus
{
if (!SevenSigns.getInstance().isSealValidationPeriod()) if (!SevenSigns.getInstance().isSealValidationPeriod())
{ {
activeChar.sendMessage("Bonuses cannot be paid during the competition period."); activeChar.sendMessage("Bonuses cannot be paid during the competition period.");
return true; return true;
} }
if (SevenSignsFestival.getInstance().distribAccumulatedBonus(activeChar) > 0) if (SevenSignsFestival.getInstance().distribAccumulatedBonus(activeChar) > 0)
{ {
npc.showChatWindow(activeChar, 0, "a", false); npc.showChatWindow(activeChar, 0, "a", false);
@ -334,8 +312,11 @@ public class Festival implements IBypassHandler
npc.showChatWindow(activeChar, 0, "b", false); npc.showChatWindow(activeChar, 0, "b", false);
} }
break; break;
}
default: default:
{
npc.showChatWindow(activeChar, val, null, false); npc.showChatWindow(activeChar, val, null, false);
}
} }
return true; return true;
} }

View File

@ -275,17 +275,25 @@ public class Loto implements IBypassHandler
switch ((int) check[0]) switch ((int) check[0])
{ {
case 1: case 1:
{
message += "- 1st Prize"; message += "- 1st Prize";
break; break;
}
case 2: case 2:
{
message += "- 2nd Prize"; message += "- 2nd Prize";
break; break;
}
case 3: case 3:
{
message += "- 3th Prize"; message += "- 3th Prize";
break; break;
}
case 4: case 4:
{
message += "- 4th Prize"; message += "- 4th Prize";
break; break;
}
} }
message += " " + check[1] + "a."; message += " " + check[1] + "a.";
} }

View File

@ -120,6 +120,7 @@ public class OlympiadManagerLink implements IBypassHandler
switch (val) switch (val)
{ {
case 0: // H5 match selection case 0: // H5 match selection
{
if (!OlympiadManager.getInstance().isRegistered(activeChar)) if (!OlympiadManager.getInstance().isRegistered(activeChar))
{ {
html.setFile(activeChar.getHtmlPrefix(), Olympiad.OLYMPIAD_HTML_PATH + "noble_desc2a.htm"); html.setFile(activeChar.getHtmlPrefix(), Olympiad.OLYMPIAD_HTML_PATH + "noble_desc2a.htm");
@ -136,10 +137,14 @@ public class OlympiadManagerLink implements IBypassHandler
activeChar.sendPacket(html); activeChar.sendPacket(html);
} }
break; break;
}
case 1: // unregister case 1: // unregister
{
OlympiadManager.getInstance().unRegisterNoble(activeChar); OlympiadManager.getInstance().unRegisterNoble(activeChar);
break; break;
}
case 2: // show waiting list | TODO: cleanup (not used anymore) case 2: // show waiting list | TODO: cleanup (not used anymore)
{
final int nonClassed = OlympiadManager.getInstance().getRegisteredNonClassBased().size(); final int nonClassed = OlympiadManager.getInstance().getRegisteredNonClassBased().size();
final int teams = OlympiadManager.getInstance().getRegisteredTeamsBased().size(); final int teams = OlympiadManager.getInstance().getRegisteredTeamsBased().size();
final Collection<List<Integer>> allClassed = OlympiadManager.getInstance().getRegisteredClassBased().values(); final Collection<List<Integer>> allClassed = OlympiadManager.getInstance().getRegisteredClassBased().values();
@ -170,20 +175,28 @@ public class OlympiadManagerLink implements IBypassHandler
html.replace("%objectId%", String.valueOf(target.getObjectId())); html.replace("%objectId%", String.valueOf(target.getObjectId()));
activeChar.sendPacket(html); activeChar.sendPacket(html);
break; break;
}
case 3: // There are %points% Grand Olympiad points granted for this event. | TODO: cleanup (not used anymore) case 3: // There are %points% Grand Olympiad points granted for this event. | TODO: cleanup (not used anymore)
{
final int points = Olympiad.getInstance().getNoblePoints(activeChar.getObjectId()); final int points = Olympiad.getInstance().getNoblePoints(activeChar.getObjectId());
html.setFile(activeChar.getHtmlPrefix(), Olympiad.OLYMPIAD_HTML_PATH + "noble_points1.htm"); html.setFile(activeChar.getHtmlPrefix(), Olympiad.OLYMPIAD_HTML_PATH + "noble_points1.htm");
html.replace("%points%", String.valueOf(points)); html.replace("%points%", String.valueOf(points));
html.replace("%objectId%", String.valueOf(target.getObjectId())); html.replace("%objectId%", String.valueOf(target.getObjectId()));
activeChar.sendPacket(html); activeChar.sendPacket(html);
break; break;
}
case 4: // register non classed case 4: // register non classed
{
OlympiadManager.getInstance().registerNoble(activeChar, CompetitionType.NON_CLASSED); OlympiadManager.getInstance().registerNoble(activeChar, CompetitionType.NON_CLASSED);
break; break;
}
case 5: // register classed case 5: // register classed
{
OlympiadManager.getInstance().registerNoble(activeChar, CompetitionType.CLASSED); OlympiadManager.getInstance().registerNoble(activeChar, CompetitionType.CLASSED);
break; break;
}
case 6: // request tokens reward case 6: // request tokens reward
{
passes = Olympiad.getInstance().getNoblessePasses(activeChar, false); passes = Olympiad.getInstance().getNoblessePasses(activeChar, false);
if (passes > 0) if (passes > 0)
{ {
@ -198,41 +211,52 @@ public class OlympiadManagerLink implements IBypassHandler
activeChar.sendPacket(html); activeChar.sendPacket(html);
} }
break; break;
}
case 7: // Equipment Rewards case 7: // Equipment Rewards
{
MultisellData.getInstance().separateAndSend(102, activeChar, (L2Npc) target, false); MultisellData.getInstance().separateAndSend(102, activeChar, (L2Npc) target, false);
break; break;
}
case 8: // Misc. Rewards case 8: // Misc. Rewards
{
MultisellData.getInstance().separateAndSend(103, activeChar, (L2Npc) target, false); MultisellData.getInstance().separateAndSend(103, activeChar, (L2Npc) target, false);
break; break;
}
case 9: // Your Grand Olympiad Score from the previous period is %points% point(s) | TODO: cleanup (not used anymore) case 9: // Your Grand Olympiad Score from the previous period is %points% point(s) | TODO: cleanup (not used anymore)
{
final int point = Olympiad.getInstance().getLastNobleOlympiadPoints(activeChar.getObjectId()); final int point = Olympiad.getInstance().getLastNobleOlympiadPoints(activeChar.getObjectId());
html.setFile(activeChar.getHtmlPrefix(), Olympiad.OLYMPIAD_HTML_PATH + "noble_points2.htm"); html.setFile(activeChar.getHtmlPrefix(), Olympiad.OLYMPIAD_HTML_PATH + "noble_points2.htm");
html.replace("%points%", String.valueOf(point)); html.replace("%points%", String.valueOf(point));
html.replace("%objectId%", String.valueOf(target.getObjectId())); html.replace("%objectId%", String.valueOf(target.getObjectId()));
activeChar.sendPacket(html); activeChar.sendPacket(html);
break; break;
}
case 10: // give tokens to player case 10: // give tokens to player
{
passes = Olympiad.getInstance().getNoblessePasses(activeChar, true); passes = Olympiad.getInstance().getNoblessePasses(activeChar, true);
if (passes > 0) if (passes > 0)
{ {
final L2ItemInstance item = activeChar.getInventory().addItem("Olympiad", GATE_PASS, passes, activeChar, target); final L2ItemInstance item = activeChar.getInventory().addItem("Olympiad", GATE_PASS, passes, activeChar, target);
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addModifiedItem(item); iu.addModifiedItem(item);
activeChar.sendPacket(iu); activeChar.sendPacket(iu);
final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.YOU_HAVE_EARNED_S2_S1_S); final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.YOU_HAVE_EARNED_S2_S1_S);
sm.addLong(passes); sm.addLong(passes);
sm.addItemName(item); sm.addItemName(item);
activeChar.sendPacket(sm); activeChar.sendPacket(sm);
} }
break; break;
}
case 11: // register team case 11: // register team
{
OlympiadManager.getInstance().registerNoble(activeChar, CompetitionType.TEAMS); OlympiadManager.getInstance().registerNoble(activeChar, CompetitionType.TEAMS);
break; break;
}
default: default:
{
_log.warning("Olympiad System: Couldnt send packet for request " + val); _log.warning("Olympiad System: Couldnt send packet for request " + val);
break; break;
}
} }
} }
else if (command.toLowerCase().startsWith("olybuff")) else if (command.toLowerCase().startsWith("olybuff"))
@ -309,13 +333,13 @@ public class OlympiadManagerLink implements IBypassHandler
switch (val) switch (val)
{ {
case 2: // show rank for a specific class case 2: // show rank for a specific class
{
// for example >> Olympiad 1_88 // for example >> Olympiad 1_88
final int classId = Integer.parseInt(command.substring(11)); final int classId = Integer.parseInt(command.substring(11));
if (((classId >= 88) && (classId <= 118)) || ((classId >= 131) && (classId <= 134)) || (classId == 136)) if (((classId >= 88) && (classId <= 118)) || ((classId >= 131) && (classId <= 134)) || (classId == 136))
{ {
final List<String> names = Olympiad.getInstance().getClassLeaderBoard(classId); final List<String> names = Olympiad.getInstance().getClassLeaderBoard(classId);
reply.setFile(activeChar.getHtmlPrefix(), Olympiad.OLYMPIAD_HTML_PATH + "olympiad_ranking.htm"); reply.setFile(activeChar.getHtmlPrefix(), Olympiad.OLYMPIAD_HTML_PATH + "olympiad_ranking.htm");
int index = 1; int index = 1;
for (String name : names) for (String name : names)
{ {
@ -332,15 +356,18 @@ public class OlympiadManagerLink implements IBypassHandler
reply.replace("%place" + index + "%", ""); reply.replace("%place" + index + "%", "");
reply.replace("%rank" + index + "%", ""); reply.replace("%rank" + index + "%", "");
} }
reply.replace("%objectId%", String.valueOf(target.getObjectId())); reply.replace("%objectId%", String.valueOf(target.getObjectId()));
activeChar.sendPacket(reply); activeChar.sendPacket(reply);
} }
break; break;
}
case 4: // hero list case 4: // hero list
{
activeChar.sendPacket(new ExHeroList()); activeChar.sendPacket(new ExHeroList());
break; break;
}
case 5: // Hero Certification case 5: // Hero Certification
{
if (Hero.getInstance().isUnclaimedHero(activeChar.getObjectId())) if (Hero.getInstance().isUnclaimedHero(activeChar.getObjectId()))
{ {
Hero.getInstance().claimHero(activeChar); Hero.getInstance().claimHero(activeChar);
@ -352,9 +379,12 @@ public class OlympiadManagerLink implements IBypassHandler
} }
activeChar.sendPacket(reply); activeChar.sendPacket(reply);
break; break;
}
default: default:
{
_log.warning("Olympiad System: Couldnt send packet for request " + val); _log.warning("Olympiad System: Couldnt send packet for request " + val);
break; break;
}
} }
} }
} }

View File

@ -46,13 +46,19 @@ public class EventItem implements IItemHandler
switch (itemId) switch (itemId)
{ {
case 13787: // Handy's Block Checker Bond case 13787: // Handy's Block Checker Bond
{
used = useBlockCheckerItem(activeChar, item); used = useBlockCheckerItem(activeChar, item);
break; break;
}
case 13788: // Handy's Block Checker Land Mine case 13788: // Handy's Block Checker Land Mine
{
used = useBlockCheckerItem(activeChar, item); used = useBlockCheckerItem(activeChar, item);
break; break;
}
default: default:
{
_log.warning("EventItemHandler: Item with id: " + itemId + " is not handled"); _log.warning("EventItemHandler: Item with id: " + itemId + " is not handled");
}
} }
return used; return used;
} }

View File

@ -41,6 +41,7 @@ public class PartyOther implements ITargetTypeHandler
{ {
// FORCE BUFFS may cancel here but there should be a proper condition // FORCE BUFFS may cancel here but there should be a proper condition
case 426: case 426:
{
if (!target.getActingPlayer().isMageClass()) if (!target.getActingPlayer().isMageClass())
{ {
return new L2Character[] return new L2Character[]
@ -49,7 +50,9 @@ public class PartyOther implements ITargetTypeHandler
}; };
} }
return EMPTY_TARGET_LIST; return EMPTY_TARGET_LIST;
}
case 427: case 427:
{
if (target.getActingPlayer().isMageClass()) if (target.getActingPlayer().isMageClass())
{ {
return new L2Character[] return new L2Character[]
@ -58,6 +61,7 @@ public class PartyOther implements ITargetTypeHandler
}; };
} }
return EMPTY_TARGET_LIST; return EMPTY_TARGET_LIST;
}
} }
} }
return new L2Character[] return new L2Character[]

View File

@ -123,52 +123,84 @@ public class PlayerHandler implements ITelnetHandler
switch (itemType) switch (itemType)
{ {
case 1: case 1:
{
itemType = Inventory.PAPERDOLL_HEAD; itemType = Inventory.PAPERDOLL_HEAD;
break; break;
}
case 2: case 2:
{
itemType = Inventory.PAPERDOLL_CHEST; itemType = Inventory.PAPERDOLL_CHEST;
break; break;
}
case 3: case 3:
{
itemType = Inventory.PAPERDOLL_GLOVES; itemType = Inventory.PAPERDOLL_GLOVES;
break; break;
}
case 4: case 4:
{
itemType = Inventory.PAPERDOLL_FEET; itemType = Inventory.PAPERDOLL_FEET;
break; break;
}
case 5: case 5:
{
itemType = Inventory.PAPERDOLL_LEGS; itemType = Inventory.PAPERDOLL_LEGS;
break; break;
}
case 6: case 6:
{
itemType = Inventory.PAPERDOLL_RHAND; itemType = Inventory.PAPERDOLL_RHAND;
break; break;
}
case 7: case 7:
{
itemType = Inventory.PAPERDOLL_LHAND; itemType = Inventory.PAPERDOLL_LHAND;
break; break;
}
case 8: case 8:
{
itemType = Inventory.PAPERDOLL_LEAR; itemType = Inventory.PAPERDOLL_LEAR;
break; break;
}
case 9: case 9:
{
itemType = Inventory.PAPERDOLL_REAR; itemType = Inventory.PAPERDOLL_REAR;
break; break;
}
case 10: case 10:
{
itemType = Inventory.PAPERDOLL_LFINGER; itemType = Inventory.PAPERDOLL_LFINGER;
break; break;
}
case 11: case 11:
{
itemType = Inventory.PAPERDOLL_RFINGER; itemType = Inventory.PAPERDOLL_RFINGER;
break; break;
}
case 12: case 12:
{
itemType = Inventory.PAPERDOLL_NECK; itemType = Inventory.PAPERDOLL_NECK;
break; break;
}
case 13: case 13:
{
itemType = Inventory.PAPERDOLL_UNDER; itemType = Inventory.PAPERDOLL_UNDER;
break; break;
}
case 14: case 14:
{
itemType = Inventory.PAPERDOLL_CLOAK; itemType = Inventory.PAPERDOLL_CLOAK;
break; break;
}
case 15: case 15:
{
itemType = Inventory.PAPERDOLL_BELT; itemType = Inventory.PAPERDOLL_BELT;
break; break;
}
default: default:
{
itemType = 0; itemType = 0;
}
} }
if (enchant > 65535) if (enchant > 65535)

Some files were not shown because too many files have changed in this diff Show More