Teleporter tutorial
This commit is contained in:
1 parent
82d1375871
commit
2c203c8476
7 files changed
+112
-7
No files matched your search
@@ -0,0 +1,44 @@
|
||||
extends Node2D
|
||||
|
||||
@export var paired_teleporter: String
|
||||
var checked_teleport
|
||||
var telecam_speed_mult = 4
|
||||
var enabled = true
|
||||
var cooldown = 2
|
||||
|
||||
func _ready() -> void:
|
||||
modulate = Color.PURPLE
|
||||
add_to_group("TELEPORTERS")
|
||||
add_to_group("Hidden")
|
||||
|
||||
func check_for_pair() -> String:
|
||||
print(paired_teleporter)
|
||||
return paired_teleporter
|
||||
|
||||
func disable():
|
||||
enabled = false
|
||||
$Sprite2D.modulate = Color.DARK_ORANGE
|
||||
|
||||
func enable():
|
||||
enabled = true
|
||||
$Sprite2D.modulate = Color.WHITE
|
||||
|
||||
func _process(delta: float) -> void:
|
||||
pass
|
||||
|
||||
func _physics_process(delta: float) -> void:
|
||||
pass
|
||||
|
||||
func _on_contact(body) -> void:
|
||||
#get_tree().call_group("TELEPORTERS","disable")
|
||||
for teleporter in get_tree().get_nodes_in_group("TELEPORTERS"):
|
||||
if teleporter != self:
|
||||
if teleporter.paired_teleporter == paired_teleporter and enabled:
|
||||
%Player2D.get_node("Camera2D").position_smoothing_enabled = false
|
||||
if %Player2D.teleport_cooldown > 0:
|
||||
return
|
||||
body.set_position(teleporter.get_position())
|
||||
%Player2D.on_teleport()
|
||||
disable()
|
||||
await get_tree().create_timer(cooldown).timeout
|
||||
enable()
|
||||
Reference in new issue
Block a user