-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathP_BossBlood.cs
More file actions
55 lines (52 loc) · 1.69 KB
/
P_BossBlood.cs
File metadata and controls
55 lines (52 loc) · 1.69 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
using FunkEngine;
using Godot;
public partial class P_BossBlood : EnemyPuppet
{
public static new readonly string LoadPath =
"res://Scenes/Puppets/Enemies/BossBlood/Boss1.tscn";
public override void _Ready()
{
MaxHealth = 250;
CurrentHealth = MaxHealth;
BaseMoney = 50;
InitialNote = (14, 3);
base._Ready();
var enemTween = CreateTween();
enemTween.TweenProperty(Sprite, "position", Vector2.Down * 5, 1f).AsRelative();
enemTween.TweenProperty(Sprite, "position", Vector2.Up * 5, 1f).AsRelative();
enemTween.SetTrans(Tween.TransitionType.Spring);
enemTween.SetEase(Tween.EaseType.In);
enemTween.SetLoops();
enemTween.Play();
BattleEvents = new EnemyEffect[]
{
new EnemyEffect(
this,
BattleEffectTrigger.OnLoop,
30,
(e, eff, val) =>
{
eff.Owner.Heal(val);
e.BD.RandApplyNote(eff.Owner, 14, 1);
}
),
new EnemyEffect(
this,
BattleEffectTrigger.OnDamageInstance,
1,
(e, eff, val) =>
{
if (e is not BattleDirector.Harbinger.OnDamageInstanceArgs dArgs)
return;
if (
dArgs.Dmg.Target == this
&& dArgs.Dmg.Target.GetCurrentHealth() <= dArgs.Dmg.Damage
)
{
SteamWhisperer.PopAchievement("actOneComp");
}
}
),
};
}
}