25 lines
566 B
GDScript
25 lines
566 B
GDScript
extends Node
|
|
|
|
export var Duration = 7.5
|
|
|
|
func shuffleList(list):
|
|
var shuffledList = []
|
|
var indexList = range(list.size())
|
|
for i in range(list.size()):
|
|
var x = randi() % indexList.size()
|
|
shuffledList.append(list[indexList[x]])
|
|
indexList.remove(x)
|
|
return shuffledList
|
|
|
|
func ConfusionRoutine(player, delta):
|
|
var elapsed = 0
|
|
var inputs = player.baseInputs
|
|
player.inputs = shuffleList(inputs)
|
|
while elapsed < Duration:
|
|
elapsed += yield()
|
|
player.inputs = player.baseInputs
|
|
|
|
func StartEffect(player):
|
|
var rout = ConfusionRoutine(player, 0)
|
|
return rout
|