More work on quests
This commit is contained in:
42
data/quests/ann-marie-nestor2.gd
Normal file
42
data/quests/ann-marie-nestor2.gd
Normal file
@@ -0,0 +1,42 @@
|
||||
extends Quest
|
||||
|
||||
func _init() -> void:
|
||||
name = "[1] A Quest for Nestor's Woods that Ann Marie Promised Me"
|
||||
super._init()
|
||||
|
||||
func setup() -> void:
|
||||
|
||||
var event_weights = [1,1,1,1,1,1,1,1,2,2,2,2,3,3,3,4,4,5]
|
||||
var num_events = 3 # event_weights.pick_random()
|
||||
#The first event is guaranteed to be at the 50% mark.
|
||||
var first : bool = true
|
||||
var pranges : Array = []
|
||||
var margin : float = 0.1
|
||||
for i in range(num_events):
|
||||
var evt : Quest.Event = Quest.Event.new()
|
||||
evt.type = Quest.Event.Type.COMBAT
|
||||
evt.enemies = ["goo"]
|
||||
evt.time = 5
|
||||
if first:
|
||||
#Make invisible
|
||||
evt.progress_point = .5
|
||||
pranges.append([margin, evt.progress_point-margin])
|
||||
pranges.append([evt.progress_point+margin, 1 - margin])
|
||||
first = false
|
||||
else:
|
||||
evt.hidden = true
|
||||
pranges.shuffle()
|
||||
var range = pranges.pop_back()
|
||||
evt.progress_point = randf_range(range[0], range[1])
|
||||
if evt.progress_point - range[0] >= 2 * margin:
|
||||
pranges.append([range[0], evt.progress_point - margin])
|
||||
if range[1] - evt.progress_point >= 2 * margin:
|
||||
pranges.append([evt.progress_point + margin, range[1]])
|
||||
events.append(evt)
|
||||
events.sort_custom(func(a,b): return a.progress_point < b.progress_point)
|
||||
desc = "One day Ann Marie will write me."
|
||||
location = Quest.Locations.NESTORS_WOODS
|
||||
rewards = {"exp":10, "gold":5}
|
||||
guild_rewards = {"glory":10, "gold":5}
|
||||
covenant_cost = 5
|
||||
|
||||
Reference in New Issue
Block a user