Frog jumps only within radius
This commit is contained in:
parent
7a7c1638ba
commit
3689e9a43b
@ -199,7 +199,7 @@ tracks/1/loop_wrap = true
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/keys = {
|
||||
"times": PoolRealArray( 0.6 ),
|
||||
"times": PoolRealArray( 0.01 ),
|
||||
"transitions": PoolRealArray( 1 ),
|
||||
"update": 1,
|
||||
"values": [ -10000000 ]
|
||||
@ -211,7 +211,7 @@ tracks/2/loop_wrap = true
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/keys = {
|
||||
"times": PoolRealArray( 0.6 ),
|
||||
"times": PoolRealArray( 0.02 ),
|
||||
"transitions": PoolRealArray( 1 ),
|
||||
"update": 1,
|
||||
"values": [ -10000000 ]
|
||||
@ -223,7 +223,7 @@ tracks/3/loop_wrap = true
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/keys = {
|
||||
"times": PoolRealArray( 0.6 ),
|
||||
"times": PoolRealArray( 0 ),
|
||||
"transitions": PoolRealArray( 1 ),
|
||||
"update": 1,
|
||||
"values": [ 10000000 ]
|
||||
@ -235,7 +235,7 @@ tracks/4/loop_wrap = true
|
||||
tracks/4/imported = false
|
||||
tracks/4/enabled = true
|
||||
tracks/4/keys = {
|
||||
"times": PoolRealArray( 0.6 ),
|
||||
"times": PoolRealArray( 0.59 ),
|
||||
"transitions": PoolRealArray( 1 ),
|
||||
"update": 1,
|
||||
"values": [ 10000000 ]
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
extends Node2D
|
||||
|
||||
export var movement_radius = 200
|
||||
|
||||
var Rope = preload("res://src/Contraptions/Rope/Rope.tscn")
|
||||
var RopeAnchor = preload("res://src/Contraptions/Rope/RopeAnchor.tscn")
|
||||
@ -15,8 +16,9 @@ func _on_LevelTemplate_ready() -> void:
|
||||
rope.rope_start = get_node("WhatAreFrog")
|
||||
rope.rope_end_joint = get_node("RopeAnchor/cshape/pjoint")
|
||||
rope.rope_start_joint = get_node("WhatAreFrog/cshape/pjoint")
|
||||
rope.spawn_rope($WhatAreFrog.global_position, $WhatAreFrog.global_position + Vector2(100,0), false)
|
||||
pass
|
||||
rope.spawn_rope($WhatAreFrog.global_position, $RopeAnchor.global_position, false)
|
||||
|
||||
$WhatAreFrog.bind_to_anchor($RopeAnchor, movement_radius)
|
||||
|
||||
# Executes on frog death
|
||||
# The old switchero
|
||||
|
||||
@ -6,9 +6,13 @@ onready var jump_timer: Timer
|
||||
|
||||
export var score := 100
|
||||
|
||||
var start_x = 0
|
||||
var in_air = false
|
||||
var is_hurt = false
|
||||
var movement_radius: float
|
||||
var anchor: Node2D
|
||||
var is_bound := false
|
||||
|
||||
var start_x := 0
|
||||
var in_air := false
|
||||
var is_hurt := false
|
||||
|
||||
func _ready():
|
||||
jump_timer = Timer.new()
|
||||
@ -16,6 +20,11 @@ func _ready():
|
||||
jump_timer.connect("timeout", self, "jump")
|
||||
add_child(jump_timer)
|
||||
|
||||
func bind_to_anchor(anchor_node: Node2D, radius: float ) -> void:
|
||||
anchor = anchor_node
|
||||
movement_radius = radius
|
||||
is_bound = true
|
||||
|
||||
# TODO adapt to groups
|
||||
# TODO Engine error here(what does it WANT???)
|
||||
func _on_StompDetector_body_entered(body: Node) -> void:
|
||||
@ -30,6 +39,13 @@ func execute_movement(delta: float) -> void:
|
||||
velocity.y += _gravity * delta
|
||||
if sign(velocity.x) != orientation.cast_to.x:
|
||||
velocity.x *= -1
|
||||
if(is_bound):
|
||||
var next_position = global_position + velocity*delta
|
||||
var distance_to_anchor = global_position.distance_to(anchor.global_position)
|
||||
var new_distance = next_position.distance_to(anchor.global_position)
|
||||
if(new_distance > movement_radius):
|
||||
velocity = velocity/2
|
||||
orientation.cast_to.x *= -1
|
||||
velocity = move_and_slide(velocity, FLOOR_NORMAL, false, 4, 0.785398,false)
|
||||
if(is_on_floor()):
|
||||
velocity = Vector2(0,0)
|
||||
|
||||
@ -37,7 +37,7 @@ format = 1
|
||||
tile_data = PoolIntArray( 131099, -1073741822, 0, 262139, -1610612734, 0, 196635, -1073741822, 0, 327675, -1610612734, 0, 262171, -1073741822, 0, 393211, -1610612734, 0, 327707, -1073741822, 0, 458747, -1610612734, 0, 393243, -1073741822, 0, 524283, -1610612734, 0, 458779, -1073741822, 0, 589819, -1610612734, 0, 524315, -1073741822, 0, 655355, -1610612734, 0, 589851, -1073741822, 0, 720891, -1610612734, 0, 655387, -1073741822, 0, 786427, -1610612734, 0, 720923, -1073741822, 0, 851963, -1610612734, 0, 786459, -1073741822, 0, 917499, -1610612734, 0, 851995, -1073741822, 0, 983036, 2, 0, 983037, 2, 0, 983038, 2, 0, 983039, 2, 0, 917504, 2, 0, 917505, 2, 0, 917506, 2, 0, 917507, 2, 0, 917508, 2, 0, 917509, 2, 0, 917510, 2, 0, 917511, 2, 0, 917512, 2, 0, 917513, 2, 0, 917514, 2, 0, 917515, 2, 0, 917516, 2, 0, 917517, 2, 0, 917518, 2, 0, 917519, 2, 0, 917520, 2, 0, 917521, 2, 0, 917522, 2, 0, 917523, 2, 0, 917524, 2, 0, 917525, 2, 0, 917526, 2, 0, 917527, 2, 0, 917528, 2, 0, 917529, 2, 0, 917530, 2, 0 )
|
||||
|
||||
[node name="Spikes" parent="." instance=ExtResource( 13 )]
|
||||
position = Vector2( 121, 324 )
|
||||
position = Vector2( -13, 324 )
|
||||
|
||||
[node name="BlobbyCam" parent="." instance=ExtResource( 11 )]
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user