hop les trails fdp
This commit is contained in:
parent
e02127522f
commit
8c5ab22d90
Binary file not shown.
|
Before Width: | Height: | Size: 236 B After Width: | Height: | Size: 1.3 KiB |
@ -1,7 +1,8 @@
|
|||||||
[gd_scene load_steps=4 format=2]
|
[gd_scene load_steps=5 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://Assets/BigPlaceholder.png" type="Texture" id=1]
|
[ext_resource path="res://Assets/PAINT1.png" type="Texture" id=1]
|
||||||
[ext_resource path="res://Scripts/FastTrail.gd" type="Script" id=2]
|
[ext_resource path="res://Scripts/FastTrail.gd" type="Script" id=2]
|
||||||
|
[ext_resource path="res://Assets/BigPlaceholder.png" type="Texture" id=3]
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id=1]
|
[sub_resource type="RectangleShape2D" id=1]
|
||||||
extents = Vector2( 88.8117, 26.2111 )
|
extents = Vector2( 88.8117, 26.2111 )
|
||||||
@ -12,6 +13,7 @@ script = ExtResource( 2 )
|
|||||||
|
|
||||||
[node name="Sprite" type="Sprite" parent="."]
|
[node name="Sprite" type="Sprite" parent="."]
|
||||||
modulate = Color( 0.901961, 0, 0, 1 )
|
modulate = Color( 0.901961, 0, 0, 1 )
|
||||||
|
light_mask = 64
|
||||||
z_index = 10
|
z_index = 10
|
||||||
texture = ExtResource( 1 )
|
texture = ExtResource( 1 )
|
||||||
offset = Vector2( 88, 0 )
|
offset = Vector2( 88, 0 )
|
||||||
@ -19,4 +21,13 @@ offset = Vector2( 88, 0 )
|
|||||||
[node name="Area2D" type="Area2D" parent="Sprite"]
|
[node name="Area2D" type="Area2D" parent="Sprite"]
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Sprite/Area2D"]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="Sprite/Area2D"]
|
||||||
|
visible = false
|
||||||
|
position = Vector2( 87, 0 )
|
||||||
shape = SubResource( 1 )
|
shape = SubResource( 1 )
|
||||||
|
|
||||||
|
[node name="Mask" type="Light2D" parent="."]
|
||||||
|
position = Vector2( 88.2346, -0.629855 )
|
||||||
|
scale = Vector2( 1, 1.2 )
|
||||||
|
texture = ExtResource( 3 )
|
||||||
|
mode = 3
|
||||||
|
range_item_cull_mask = 64
|
||||||
|
|||||||
@ -1,16 +1,18 @@
|
|||||||
[gd_scene load_steps=4 format=2]
|
[gd_scene load_steps=5 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://Assets/BigPlaceholder.png" type="Texture" id=1]
|
[ext_resource path="res://Assets/PAINT1.png" type="Texture" id=1]
|
||||||
[ext_resource path="res://Scripts/SlowTrail.gd" type="Script" id=2]
|
[ext_resource path="res://Scripts/SlowTrail.gd" type="Script" id=2]
|
||||||
|
[ext_resource path="res://Assets/BigPlaceholder.png" type="Texture" id=3]
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id=1]
|
[sub_resource type="RectangleShape2D" id=1]
|
||||||
extents = Vector2( 88.8117, 26.2111 )
|
extents = Vector2( 88.8117, 26.2111 )
|
||||||
|
|
||||||
[node name="SlowTrail" type="Node2D"]
|
[node name="SlowTrail" type="Node2D"]
|
||||||
rotation = -6.28319
|
|
||||||
script = ExtResource( 2 )
|
script = ExtResource( 2 )
|
||||||
|
|
||||||
[node name="Sprite" type="Sprite" parent="."]
|
[node name="Sprite" type="Sprite" parent="."]
|
||||||
|
modulate = Color( 0.0392157, 0.0313726, 0.917647, 1 )
|
||||||
|
light_mask = 512
|
||||||
z_index = 10
|
z_index = 10
|
||||||
texture = ExtResource( 1 )
|
texture = ExtResource( 1 )
|
||||||
offset = Vector2( 88, 0 )
|
offset = Vector2( 88, 0 )
|
||||||
@ -18,4 +20,13 @@ offset = Vector2( 88, 0 )
|
|||||||
[node name="Area2D" type="Area2D" parent="Sprite"]
|
[node name="Area2D" type="Area2D" parent="Sprite"]
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Sprite/Area2D"]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="Sprite/Area2D"]
|
||||||
|
visible = false
|
||||||
|
position = Vector2( 87, 0 )
|
||||||
shape = SubResource( 1 )
|
shape = SubResource( 1 )
|
||||||
|
|
||||||
|
[node name="Mask" type="Light2D" parent="."]
|
||||||
|
position = Vector2( 88, 0 )
|
||||||
|
scale = Vector2( 1, 1.2 )
|
||||||
|
texture = ExtResource( 3 )
|
||||||
|
mode = 3
|
||||||
|
range_item_cull_mask = 512
|
||||||
|
|||||||
@ -4,25 +4,33 @@ var fastFactor
|
|||||||
var lifetime = 5
|
var lifetime = 5
|
||||||
var elapsed = 0
|
var elapsed = 0
|
||||||
var sprite
|
var sprite
|
||||||
|
var players
|
||||||
|
|
||||||
|
onready var mask = $Mask
|
||||||
|
|
||||||
func slow_player(victim):
|
func slow_player(victim):
|
||||||
if victim.is_in_group("Player"):
|
if victim.is_in_group("Player"):
|
||||||
victim.MAX_SPEED *= fastFactor
|
players.append(victim)
|
||||||
victim.ACCELERATION *= fastFactor
|
|
||||||
|
|
||||||
func unslow_player(victim):
|
func unslow_player(victim):
|
||||||
if victim.is_in_group("Player"):
|
players.remove(players.find(victim))
|
||||||
victim.MAX_SPEED /= fastFactor
|
|
||||||
victim.ACCELERATION /= fastFactor
|
|
||||||
|
|
||||||
# Called when the node enters the scene tree for the first time.
|
# Called when the node enters the scene tree for the first time.
|
||||||
func _ready():
|
func _ready():
|
||||||
|
players = []
|
||||||
sprite = get_node("Sprite")
|
sprite = get_node("Sprite")
|
||||||
get_node("Sprite/Area2D").connect("body_entered", self, "slow_player")
|
get_node("Sprite/Area2D").connect("body_entered", self, "slow_player")
|
||||||
get_node("Sprite/Area2D").connect("body_exited", self, "unslow_player")
|
get_node("Sprite/Area2D").connect("body_exited", self, "unslow_player")
|
||||||
|
|
||||||
func _process(delta):
|
func _process(delta):
|
||||||
elapsed += delta
|
elapsed += delta
|
||||||
|
if mask != null:
|
||||||
|
mask.offset.x = lerp(88, 270, elapsed / 0.8)
|
||||||
|
if mask.offset.x >= 269:
|
||||||
|
mask.queue_free()
|
||||||
|
mask = null
|
||||||
|
for each in players:
|
||||||
|
each.SPEED_FACTORS.append(2)
|
||||||
if elapsed >= lifetime * 0.7:
|
if elapsed >= lifetime * 0.7:
|
||||||
sprite.self_modulate = Color(1,1,1,lerp(1, 0, (elapsed - lifetime * 0.7) / (lifetime * 0.3)))
|
sprite.self_modulate = Color(1,1,1,lerp(1, 0, (elapsed - lifetime * 0.7) / (lifetime * 0.3)))
|
||||||
if elapsed >= lifetime:
|
if elapsed >= lifetime:
|
||||||
|
|||||||
@ -71,6 +71,7 @@ func _ready():
|
|||||||
func launch_slow():
|
func launch_slow():
|
||||||
if slow_cooldown_elapsed < slow_cooldown:
|
if slow_cooldown_elapsed < slow_cooldown:
|
||||||
return
|
return
|
||||||
|
curLife -= 3
|
||||||
slow_cooldown_elapsed = 0
|
slow_cooldown_elapsed = 0
|
||||||
var world = get_parent()
|
var world = get_parent()
|
||||||
var inst = load("res://Scene/SlowTrail.tscn").instance()
|
var inst = load("res://Scene/SlowTrail.tscn").instance()
|
||||||
@ -89,6 +90,7 @@ func launch_slow():
|
|||||||
func launch_fast():
|
func launch_fast():
|
||||||
if fast_cooldown_elapsed < fast_cooldown:
|
if fast_cooldown_elapsed < fast_cooldown:
|
||||||
return
|
return
|
||||||
|
curLife -= 3
|
||||||
fast_cooldown_elapsed = 0
|
fast_cooldown_elapsed = 0
|
||||||
var world = get_parent()
|
var world = get_parent()
|
||||||
var inst = load("res://Scene/FastTrail.tscn").instance()
|
var inst = load("res://Scene/FastTrail.tscn").instance()
|
||||||
@ -119,6 +121,7 @@ func _process(delta):
|
|||||||
updatePaintEffects(delta)
|
updatePaintEffects(delta)
|
||||||
curLife -= delta
|
curLife -= delta
|
||||||
slow_cooldown_elapsed += delta
|
slow_cooldown_elapsed += delta
|
||||||
|
fast_cooldown_elapsed += delta
|
||||||
if curLife <= 0:
|
if curLife <= 0:
|
||||||
get_node("/root/World/GameManager").endGame()
|
get_node("/root/World/GameManager").endGame()
|
||||||
healthBar.healthUpdated(curLife)
|
healthBar.healthUpdated(curLife)
|
||||||
|
|||||||
@ -4,24 +4,33 @@ var slowFactor
|
|||||||
var lifetime = 5
|
var lifetime = 5
|
||||||
var elapsed = 0
|
var elapsed = 0
|
||||||
var sprite
|
var sprite
|
||||||
|
var players
|
||||||
|
|
||||||
func slow_player(victim):
|
onready var mask = $Mask
|
||||||
|
|
||||||
|
func slow_player(victim):
|
||||||
if victim.is_in_group("Player"):
|
if victim.is_in_group("Player"):
|
||||||
victim.MAX_SPEED /= slowFactor
|
players.append(victim)
|
||||||
|
|
||||||
func unslow_player(victim):
|
func unslow_player(victim):
|
||||||
if victim.is_in_group("Player"):
|
players.remove(players.find(victim))
|
||||||
victim.MAX_SPEED *= slowFactor
|
|
||||||
|
|
||||||
# Called when the node enters the scene tree for the first time.
|
# Called when the node enters the scene tree for the first time.
|
||||||
func _ready():
|
func _ready():
|
||||||
|
players = []
|
||||||
sprite = get_node("Sprite")
|
sprite = get_node("Sprite")
|
||||||
get_node("Sprite/Area2D").connect("body_entered", self, "slow_player")
|
get_node("Sprite/Area2D").connect("body_entered", self, "slow_player")
|
||||||
get_node("Sprite/Area2D").connect("body_entered", self, "slow_player")
|
|
||||||
get_node("Sprite/Area2D").connect("body_exited", self, "unslow_player")
|
get_node("Sprite/Area2D").connect("body_exited", self, "unslow_player")
|
||||||
|
|
||||||
func _process(delta):
|
func _process(delta):
|
||||||
elapsed += delta
|
elapsed += delta
|
||||||
|
if mask != null:
|
||||||
|
mask.offset.x = lerp(88, 270, elapsed / 0.8)
|
||||||
|
if mask.offset.x >= 269:
|
||||||
|
mask.queue_free()
|
||||||
|
mask = null
|
||||||
|
for each in players:
|
||||||
|
each.SPEED_FACTORS.append(0.5)
|
||||||
if elapsed >= lifetime * 0.7:
|
if elapsed >= lifetime * 0.7:
|
||||||
sprite.self_modulate = Color(1,1,1,lerp(1, 0, (elapsed - lifetime * 0.7) / (lifetime * 0.3)))
|
sprite.self_modulate = Color(1,1,1,lerp(1, 0, (elapsed - lifetime * 0.7) / (lifetime * 0.3)))
|
||||||
if elapsed >= lifetime:
|
if elapsed >= lifetime:
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user