RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
OptionDialogue.java
1package com.osroyale.content.dialogue;
2
3import java.util.ArrayList;
4import java.util.List;
5
38
39public final class OptionDialogue implements Chainable {
40
42 private final String[] lines;
43
45 private final List<Runnable> actions = new ArrayList<>();
46
55 public OptionDialogue(String option1, Runnable action1, String option2, Runnable action2) {
56 lines = new String[]{option1, option2};
57 actions.add(action1);
58 actions.add(action2);
59 }
60
71 public OptionDialogue(String option1, Runnable action1, String option2, Runnable action2, String option3, Runnable action3) {
72 lines = new String[]{option1, option2, option3};
73 actions.add(action1);
74 actions.add(action2);
75 actions.add(action3);
76 }
77
90 public OptionDialogue(String option1, Runnable action1, String option2, Runnable action2, String option3, Runnable action3, String option4, Runnable action4) {
91 lines = new String[]{option1, option2, option3, option4};
92 actions.add(action1);
93 actions.add(action2);
94 actions.add(action3);
95 actions.add(action4);
96 }
97
112 public OptionDialogue(String option1, Runnable action1, String option2, Runnable action2, String option3, Runnable action3, String option4, Runnable action4, String option5, Runnable action5) {
113 lines = new String[]{option1, option2, option3, option4, option5};
114 actions.add(action1);
115 actions.add(action2);
116 actions.add(action3);
117 actions.add(action4);
118 actions.add(action5);
119 }
120
121 @Override
122 public void accept(DialogueFactory factory) {
123 factory.sendOption(this);
124 }
125
131 public String[] getLines() {
132 return lines;
133 }
134
140 public List<Runnable> getActions() {
141 return actions;
142 }
143}
final DialogueFactory sendOption(String option1, Runnable action1, String option2, Runnable action2)
OptionDialogue(String option1, Runnable action1, String option2, Runnable action2, String option3, Runnable action3, String option4, Runnable action4, String option5, Runnable action5)
OptionDialogue(String option1, Runnable action1, String option2, Runnable action2, String option3, Runnable action3)
OptionDialogue(String option1, Runnable action1, String option2, Runnable action2, String option3, Runnable action3, String option4, Runnable action4)
OptionDialogue(String option1, Runnable action1, String option2, Runnable action2)