30 lines
636 B
GDScript

extends Node
#The time, in seconds, it should take for the character to grow up
export var SlipperyTime = 7.5
#How much less friction should the player have
export var FrictionFactor = 20
export var SpeedFactor = 3
func SlipperyRoutine(player, delta):
var elapsed = delta
var originalFriction = player.FRICTION
var originalSpeed = player.MAX_SPEED
player.FRICTION /= FrictionFactor
player.MAX_SPEED *= SpeedFactor
while elapsed < SlipperyTime:
elapsed += yield()
player.FRICTION = originalFriction
player.MAX_SPEED = originalSpeed
func StartEffect(player):
var rout = SlipperyRoutine(player, 0)
return rout