This commit is contained in:
Marek Le
2026-03-30 09:03:29 +02:00
parent 80a65fa555
commit 4fddc74df1
31 changed files with 295 additions and 153 deletions

View File

@@ -27,6 +27,11 @@ func _process(delta: float) -> void:
var bonus_decay: float = aggro_table[player] * 0.01 * pow(2, seconds_outside) * delta
decay += bonus_decay
aggro_table[player] -= decay
# Im Portal-Radius: Aggro bleibt bei mindestens 1
if not outside_portal and enemy.portal and is_instance_valid(player):
var player_dist: float = player.global_position.distance_to(enemy.portal.global_position)
if player_dist <= PORTAL_RADIUS and aggro_table[player] < 1.0:
aggro_table[player] = 1.0
if aggro_table[player] <= 0:
aggro_table.erase(player)
@@ -43,8 +48,8 @@ func _on_damage_dealt(attacker: Node, target: Node, amount: float) -> void:
if target != enemy:
return
var multiplier := 1.0
var player_class: Node = attacker.get_node_or_null("PlayerClass")
if player_class and player_class.current_class == 0:
var role: Node = attacker.get_node_or_null("Role")
if role and role.current_role == 0:
multiplier = 2.0
add_aggro(attacker, amount * multiplier)