BING CHILLING
This commit is contained in:
parent
eaf2a0f200
commit
0f501386d4
@ -11,10 +11,12 @@
|
|||||||
[node name="Decor" type="Node2D" parent="."]
|
[node name="Decor" type="Node2D" parent="."]
|
||||||
|
|
||||||
[node name="Enemy" parent="." instance=ExtResource("2_ftshv")]
|
[node name="Enemy" parent="." instance=ExtResource("2_ftshv")]
|
||||||
position = Vector2(441, 312)
|
position = Vector2(497, 324)
|
||||||
|
|
||||||
[node name="BatSpawnable" parent="." instance=ExtResource("3_a1ucf")]
|
[node name="BatSpawnable" parent="." instance=ExtResource("3_a1ucf")]
|
||||||
position = Vector2(248, 225)
|
position = Vector2(248, 225)
|
||||||
|
motion_mode = 0
|
||||||
|
|
||||||
[node name="BatSpawnable2" parent="." instance=ExtResource("3_a1ucf")]
|
[node name="BatSpawnable2" parent="." instance=ExtResource("3_a1ucf")]
|
||||||
position = Vector2(644, 251)
|
position = Vector2(644, 251)
|
||||||
|
motion_mode = 0
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
extends AITemplate
|
extends AITemplate
|
||||||
|
|
||||||
func getDirection(position, enemyPosition) -> Vector2:
|
func getDirection(_position, _enemyPosition) -> Vector2:
|
||||||
return Vector2(enemyPosition - position).normalized()
|
return Vector2(_enemyPosition - _position).normalized()
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
class_name AITemplate
|
class_name AITemplate
|
||||||
extends Node
|
extends Node
|
||||||
|
|
||||||
func getDirection(position, enemyPosition) -> Vector2:
|
func getDirection(_position, _enemyPosition) -> Vector2:
|
||||||
return Vector2.ZERO
|
return Vector2.ZERO
|
||||||
|
@ -8,10 +8,12 @@ const ATTACK_COOLDOWN : float = 100
|
|||||||
@export var speed : float = 0
|
@export var speed : float = 0
|
||||||
@export var damage : int = 0
|
@export var damage : int = 0
|
||||||
@export var priority : int = 0
|
@export var priority : int = 0
|
||||||
|
@export var expReward : int = 0
|
||||||
@export var cost : int = 0
|
@export var cost : int = 0
|
||||||
@export var minSpawnRange : float = 0
|
@export var minSpawnRange : float = 0
|
||||||
@export var canAttack : bool = true
|
@export var canAttack : bool = true
|
||||||
|
|
||||||
|
|
||||||
@onready var ai : Node = $AI
|
@onready var ai : Node = $AI
|
||||||
@onready var animatedSprite : AnimatedSprite2D = $AnimatedSprite2D
|
@onready var animatedSprite : AnimatedSprite2D = $AnimatedSprite2D
|
||||||
@onready var attackArea : Area2D = $AttackArea
|
@onready var attackArea : Area2D = $AttackArea
|
||||||
@ -41,10 +43,12 @@ func _process(delta):
|
|||||||
|
|
||||||
if !isFacingLeft && direction.x < 0:
|
if !isFacingLeft && direction.x < 0:
|
||||||
isFacingLeft = true
|
isFacingLeft = true
|
||||||
scale = Vector2(-1, 1)
|
scale.x = -1
|
||||||
|
scale.y = 1
|
||||||
elif isFacingLeft && direction.x > 0:
|
elif isFacingLeft && direction.x > 0:
|
||||||
isFacingLeft = false
|
isFacingLeft = false
|
||||||
scale = Vector2(1, 1)
|
scale.x = -1
|
||||||
|
scale.y = -1
|
||||||
|
|
||||||
velocity = direction * speed * delta
|
velocity = direction * speed * delta
|
||||||
move_and_slide()
|
move_and_slide()
|
||||||
@ -54,7 +58,6 @@ func _process(delta):
|
|||||||
cooldown = 0
|
cooldown = 0
|
||||||
else:
|
else:
|
||||||
cooldown -= attackSpeed * delta
|
cooldown -= attackSpeed * delta
|
||||||
|
|
||||||
attemptAttack()
|
attemptAttack()
|
||||||
|
|
||||||
func attemptAttack():
|
func attemptAttack():
|
||||||
@ -71,6 +74,7 @@ func attack():
|
|||||||
|
|
||||||
func endAttack():
|
func endAttack():
|
||||||
damageCollision.disabled = true
|
damageCollision.disabled = true
|
||||||
|
animatedSprite.disconnect("animation_finished", endAttack)
|
||||||
animatedSprite.play("default")
|
animatedSprite.play("default")
|
||||||
|
|
||||||
func receive_damage(dmg):
|
func receive_damage(dmg):
|
||||||
@ -103,4 +107,4 @@ func clean():
|
|||||||
|
|
||||||
func _on_damage_area_body_entered(body):
|
func _on_damage_area_body_entered(body):
|
||||||
if body == enemy:
|
if body == enemy:
|
||||||
enemy.receive_damage(damage)
|
body.receive_damage(damage)
|
||||||
|
@ -233,6 +233,7 @@ radius = 8.0
|
|||||||
[node name="TemplateSpawnable" type="CharacterBody2D"]
|
[node name="TemplateSpawnable" type="CharacterBody2D"]
|
||||||
collision_layer = 6
|
collision_layer = 6
|
||||||
collision_mask = 6
|
collision_mask = 6
|
||||||
|
motion_mode = 1
|
||||||
script = ExtResource("1_rkej7")
|
script = ExtResource("1_rkej7")
|
||||||
|
|
||||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||||
|
@ -19,6 +19,7 @@ config/icon="res://icon.svg"
|
|||||||
|
|
||||||
window/size/viewport_width=960
|
window/size/viewport_width=960
|
||||||
window/size/viewport_height=540
|
window/size/viewport_height=540
|
||||||
|
window/size/mode=4
|
||||||
window/size/resizable=false
|
window/size/resizable=false
|
||||||
window/stretch/mode="viewport"
|
window/stretch/mode="viewport"
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user