Skip to content

Commit 16e7af2

Browse files
committed
dialog fix when ending dialog
1 parent 8d395ed commit 16e7af2

File tree

5 files changed

+15
-24
lines changed

5 files changed

+15
-24
lines changed

blade-engine/src/com/bladecoder/engine/model/Dialog.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -74,10 +74,6 @@ else if(next.equalsIgnoreCase("root"))
7474
else
7575
currentOption = findSerOption(next);
7676
}
77-
78-
if (ended()) {
79-
World.getInstance().setCurrentDialog(null);
80-
}
8177
}
8278

8379
public void addOption(DialogOption o) {

blade-engine/src/com/bladecoder/engine/model/World.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -406,6 +406,17 @@ public void setCurrentDialog(Dialog dialog) {
406406
if (dialog != null)
407407
dialog.reset();
408408
}
409+
410+
public void selectDialogOption(int i) {
411+
if(currentDialog == null)
412+
return;
413+
414+
currentDialog.selectOption(i);
415+
416+
if (currentDialog.ended()) {
417+
currentDialog = null;
418+
}
419+
}
409420

410421
public int getWidth() {
411422
return width;

blade-engine/src/com/bladecoder/engine/ui/DialogUI.java

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,6 @@
1717

1818
import java.util.ArrayList;
1919

20-
import com.bladecoder.engine.ui.Recorder;
21-
import com.bladecoder.engine.ui.SceneScreen;
22-
2320
import com.badlogic.gdx.graphics.Color;
2421
import com.badlogic.gdx.graphics.g2d.Batch;
2522
import com.badlogic.gdx.graphics.g2d.BitmapFont;
@@ -28,7 +25,6 @@
2825
import com.badlogic.gdx.scenes.scene2d.InputListener;
2926
import com.badlogic.gdx.scenes.scene2d.utils.Drawable;
3027
import com.bladecoder.engine.i18n.I18N;
31-
import com.bladecoder.engine.model.Dialog;
3228
import com.bladecoder.engine.model.DialogOption;
3329
import com.bladecoder.engine.model.World;
3430
import com.bladecoder.engine.util.DPIUtils;
@@ -146,19 +142,12 @@ private int getOption(float x, float y) {
146142
}
147143

148144
private void select(int i) {
149-
Dialog d = World.getInstance().getCurrentDialog();
150-
151145
// RECORD
152146
if (recorder.isRecording()) {
153147
recorder.add(i);
154148
}
155149

156-
d.selectOption(i);
157-
158-
// if (World.getInstance().getCurrentDialog().ended()) {
159-
// selected = -1;
160-
// setVisible(false);
161-
// }
150+
World.getInstance().selectDialogOption(i);
162151
}
163152

164153
/** The style for the DialogUI */

blade-engine/src/com/bladecoder/engine/ui/Recorder.java

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -75,13 +75,8 @@ public void update(float delta) {
7575
// while (playing && v.time < time) {
7676
if (playing && v.time < time) {
7777
if (v.verb == null) {
78-
if (v.pos == null) { // DIALOG OPTION
79-
Dialog d = World.getInstance().getCurrentDialog();
80-
d.selectOption(v.dialogOption);
81-
82-
if (World.getInstance().getCurrentDialog().ended()) {
83-
World.getInstance().setCurrentDialog(null);
84-
}
78+
if (v.pos == null) { // DIALOG OPTION
79+
World.getInstance().selectDialogOption(v.dialogOption);
8580

8681
stringBuilder.append(" SELECT DIALOG OPTION: ").append(v.dialogOption);
8782
} else { // GOTO

blade-engine/src/com/bladecoder/engine/ui/TesterBot.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ public void update(float d) {
198198
if(visibleOptions.size() > 0) {
199199
int pos = MathUtils.random(visibleOptions.size() - 1);
200200
EngineLogger.debug("<TESTERBOT> SELECT OPTION: " + pos);
201-
w.getCurrentDialog().selectOption(pos);
201+
w.selectDialogOption(pos);
202202
}
203203
}
204204
}

0 commit comments

Comments
 (0)