aboutsummaryrefslogtreecommitdiff
path: root/riot
diff options
context:
space:
mode:
authorRoman Gräf <romangraef@gmail.com>2020-04-19 12:31:23 +0200
committerRoman Gräf <romangraef@gmail.com>2020-04-19 12:31:23 +0200
commit6a4f00bfaa636d026e181574ce3ce1dd40746153 (patch)
tree5533eeaa90f47eaf1042189ace4a16d0b9595448 /riot
parente891381d4ef97cfa3571bf513a27e5ae14629e9a (diff)
downloadLDJam46-6a4f00bfaa636d026e181574ce3ce1dd40746153.tar.gz
LDJam46-6a4f00bfaa636d026e181574ce3ce1dd40746153.tar.bz2
LDJam46-6a4f00bfaa636d026e181574ce3ce1dd40746153.zip
gruselige devs
Diffstat (limited to 'riot')
-rw-r--r--riot/angrydev.gd10
-rw-r--r--riot/angrydev.tscn1
-rw-r--r--riot/manager.gd10
-rw-r--r--riot/riot.gd1
4 files changed, 17 insertions, 5 deletions
diff --git a/riot/angrydev.gd b/riot/angrydev.gd
index 0ac08ea..5e79141 100644
--- a/riot/angrydev.gd
+++ b/riot/angrydev.gd
@@ -3,8 +3,10 @@ class_name AngryDev
var min_pitchfork_rotation : float = -15.0
var max_pitchfork_rotation : float = 50.0
-export var rotation_speed : float = 1
+export var rotation_speed : float = 1
+var target: Manager = null
var total_tick = 0.0
+export var speed : float = 100.0
onready var pitchfork : Sprite = $pitchfork
@@ -16,7 +18,13 @@ func _process(delta : float) -> void:
var normalized_progress = (sin(total_tick * rotation_speed) + 1.0) / 2.0
var rot = interpolate(min_pitchfork_rotation, max_pitchfork_rotation, normalized_progress)
pitchfork.rotation_degrees = rot
+
+
+func _physics_process(delta: float) -> void:
+ var normalized_move = (target.position - position).normalized()
+ position += normalized_move * delta * speed
+
func rotate_towards(player: Node2D) -> void:
if player.position.x > position.x:
diff --git a/riot/angrydev.tscn b/riot/angrydev.tscn
index f8f5441..a987ff7 100644
--- a/riot/angrydev.tscn
+++ b/riot/angrydev.tscn
@@ -13,6 +13,7 @@ extents = Vector2( 7.90784, 32.0742 )
[node name="Node2D" type="Node2D"]
position = Vector2( -24.1174, 33.1615 )
script = ExtResource( 3 )
+speed = 80.0
[node name="body" type="Sprite" parent="."]
position = Vector2( 43.416, -38.1387 )
diff --git a/riot/manager.gd b/riot/manager.gd
index 642f2d4..bca0559 100644
--- a/riot/manager.gd
+++ b/riot/manager.gd
@@ -7,14 +7,16 @@ export var speed = 128.0
func _physics_process(delta : float) -> void:
var move_direction := target - position
+ var move_vector
if move_direction.length_squared() < 100:
- return
- var move_vector = move_direction.normalized() * delta * speed
+ move_vector = Vector2(0, 0)
+ else:
+ move_vector = move_direction.normalized() * delta * speed
var collision = move_and_collide(move_vector)
if collision:
- SaveState.bitcoin = int(ceil(SaveState.bitcoin / 2.0))
- SaveState.programmers = int(ceil(SaveState.programmers * 8.0 / 10.0))
+ SaveState.lose_bitcoin(int(ceil(SaveState.bitcoin / 2.0)))
+ SaveState.buildings["dev"] = int(ceil(SaveState.buildings["dev"] * 8.0 / 10.0))
for child in get_parent().get_parent().get_children():
if child is CanvasItem:
child.show()
diff --git a/riot/riot.gd b/riot/riot.gd
index 9bfa056..2efafc3 100644
--- a/riot/riot.gd
+++ b/riot/riot.gd
@@ -13,6 +13,7 @@ func _ready() -> void:
while vec.distance_squared_to(manager.position) < 256 * 256:
vec = random_position()
instance.position = vec
+ instance.target = manager
add_child(instance)
devs.append(instance)
func _input(event) -> void: