Bit more cleanup
This commit is contained in:
@@ -1,8 +0,0 @@
|
||||
class_name QuestObjective
|
||||
|
||||
var name:String
|
||||
|
||||
func _init(
|
||||
name:String
|
||||
):
|
||||
self.name = name;
|
@@ -1 +0,0 @@
|
||||
uid://bakmt6ufpq33o
|
@@ -1,36 +1,3 @@
|
||||
class_name Quest
|
||||
const QuestObjective = preload("res://scripts/Quest/Objective/QuestObjective.gd");
|
||||
class_name Quest extends Node
|
||||
|
||||
enum QuestState {
|
||||
NOT_STARTED,
|
||||
ACTIVE,
|
||||
INACTIVE,
|
||||
FINISHED
|
||||
};
|
||||
|
||||
var questName:String;
|
||||
var questState:QuestState = QuestState.NOT_STARTED;
|
||||
var objectives:Array[QuestObjective] = [];
|
||||
var currentObjective = -1;
|
||||
|
||||
func _init(
|
||||
questName:String,
|
||||
objectives:Array[QuestObjective]
|
||||
) -> void:
|
||||
self.questName = questName;
|
||||
self.objectives = objectives;
|
||||
|
||||
func getState() -> QuestState:
|
||||
return questState;
|
||||
|
||||
func start():
|
||||
print("Starting quest: " + questName);
|
||||
questState = QuestState.ACTIVE;
|
||||
currentObjective = 0;
|
||||
|
||||
func nextObjective():
|
||||
currentObjective = currentObjective + 1;
|
||||
if currentObjective >= objectives.size():
|
||||
questState = QuestState.FINISHED;
|
||||
return null;
|
||||
return objectives[currentObjective];
|
||||
@export var questName:String = "Some quest"
|
@@ -1 +1 @@
|
||||
uid://kuxak18kbjr5
|
||||
uid://dn0kxbe85n40f
|
||||
|
@@ -1,6 +0,0 @@
|
||||
class_name QuestExample extends "res://scripts/Quest/Quest.gd"
|
||||
|
||||
func _init() -> void:
|
||||
super("Example Quest", [
|
||||
QuestObjective.new("Test")
|
||||
]);
|
@@ -1 +0,0 @@
|
||||
uid://cg3piglr8rbfs
|
9
scripts/Quest/QuestObjective.gd
Normal file
9
scripts/Quest/QuestObjective.gd
Normal file
@@ -0,0 +1,9 @@
|
||||
class_name QuestObjective extends Node
|
||||
|
||||
enum Type {
|
||||
Item,
|
||||
}
|
||||
|
||||
@export var objectiveName:String = "Some objective"
|
||||
|
||||
@export var objectiveType:Type = Type.Item
|
1
scripts/Quest/QuestObjective.gd.uid
Normal file
1
scripts/Quest/QuestObjective.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://de1ao4huhy0hm
|
3
scripts/Quest/QuestStage.gd
Normal file
3
scripts/Quest/QuestStage.gd
Normal file
@@ -0,0 +1,3 @@
|
||||
class_name QuestStage extends Node
|
||||
|
||||
@export var stageName:String = "Some stage"
|
1
scripts/Quest/QuestStage.gd.uid
Normal file
1
scripts/Quest/QuestStage.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://db4yhcxyhiosq
|
Reference in New Issue
Block a user