Skip to content

Commit 098b876

Browse files
cornerloanLifeHckr
andcommitted
Keythulu boss (#213)
* Added boss Keythulu * Boss now uses mind crush instead of poison --------- Co-authored-by: LifeHckr <jarodthereal@gmail.com>
1 parent 6a848df commit 098b876

6 files changed

Lines changed: 42 additions & 11 deletions

File tree

Classes/MapAreas/MapLevels.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ private MapLevels(
131131
CityMapConfig,
132132
[7, 8, 10],
133133
[6],
134-
[0],
134+
[14],
135135
[],
136136
-1,
137137
"res://SharedAssets/BackGround_City.png"

Classes/StatusEffects/StatusEffect.cs

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,28 @@ public partial class StatusEffect : TextureRect, IBattleEvent
8888
)
8989
.SetTags(true);
9090

91+
private static readonly Action<BattleEventArgs, StatusEffect> MindCrushEffect = (e, self) =>
92+
{
93+
if (e is not BattleDirector.Harbinger.LoopEventArgs)
94+
return;
95+
if (self.Sufferer == null)
96+
return;
97+
self.DecCount();
98+
if (self.Count < 1)
99+
{
100+
self.Sufferer.TakeDamage(new DamageInstance(1000, null, null));
101+
}
102+
};
103+
104+
public static readonly StatusEffect MindCrush = new StatusEffect()
105+
.InitStatus(
106+
"MindCrush",
107+
MindCrushEffect,
108+
BattleEffectTrigger.OnLoop,
109+
GD.Load<Texture2D>("res://Classes/StatusEffects/Assets/Status_MindCrush.png")
110+
)
111+
.SetTags(true);
112+
91113
public static readonly Action<BattleEventArgs, StatusEffect> DisableEffect = (_, self) =>
92114
{
93115
self.DecCount();

Globals/Scribe.cs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -726,6 +726,18 @@ e is BattleDirector.Harbinger.OnDamageInstanceArgs dmgArgs
726726
"Audio/songMaps/Mushroom.tres",
727727
[P_Mushroom.LoadPath]
728728
),
729+
new SongTemplate(
730+
new SongData
731+
{
732+
Bpm = 170,
733+
SongLength = -1,
734+
NumLoops = 9,
735+
},
736+
"Keythulu",
737+
"Audio/KeythuluSong.ogg",
738+
"Audio/songMaps/KeythuluSong.tres",
739+
[P_Keythulu.LoadPath]
740+
),
729741
};
730742

731743
//Needs to be strictly maintained based on what the player has obtained.

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ We now have a Steam page!
3737
- **Turtle Boss**: [Echolane](https://echoln.bandcamp.com/)
3838
- **CyberFox Song** [We're Finally Landing - HOME](https://soundcloud.com/home-2001/home-before-the-night-01-were)
3939
- **Squirkel Song** [Bass Stories](https://pixabay.com/music/happy-childrens-tunes-bass-stories-15656/)
40+
- **Keythulu Song** [Resonance - HOME](https://open.spotify.com/track/1TuopWDIuDi1553081zvuU)
4041
- **Effigy Song**: "District Four" Kevin MacLeod ([incompetech.com](https://incompetech.com/))
4142
Licensed under Creative Commons: By Attribution 4.0 License
4243
[http://creativecommons.org/licenses/by/4.0/](http://creativecommons.org/licenses/by/4.0/)

Scenes/Puppets/Enemies/Keythulu/Keythulu.tscn

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ Sprite = NodePath("Sprite")
2424
_statusContainer = NodePath("StatusContainer")
2525

2626
[node name="StatusContainer" parent="." instance=ExtResource("2_vy4eo")]
27-
offset_top = -126.0
28-
offset_bottom = -90.0
27+
offset_top = -6.0
28+
offset_bottom = 30.0
2929

3030
[node name="Sprite" type="Sprite2D" parent="."]
3131
position = Vector2(0, -37)

Scenes/Puppets/Enemies/Keythulu/P_Keythulu.cs

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ public partial class P_Keythulu : EnemyPuppet
88
private Node2D _effectSprite;
99

1010
public static new readonly string LoadPath =
11-
"res://Scenes/Puppets/Enemies/Keythulu/Keythulu.tscn";
11+
"res://Scenes/Puppets/Enemies/Keythulu/keythulu.tscn";
1212

1313
public override void _Ready()
1414
{
1515
MaxHealth = 500;
1616
CurrentHealth = MaxHealth;
17-
BaseMoney = 80;
17+
BaseMoney = 50;
1818
base._Ready();
1919

2020
_effectSprite.Visible = false;
@@ -32,7 +32,7 @@ public override void _Ready()
3232
new EnemyEffect(
3333
this,
3434
BattleEffectTrigger.OnBattleStart,
35-
6,
35+
7,
3636
(e, eff, val) =>
3737
{
3838
e.BD.AddStatus(Targetting.Player, StatusEffect.MindCrush, val);
@@ -65,18 +65,14 @@ public override void _Ready()
6565
1,
6666
(e, eff, val) =>
6767
{
68-
if (
69-
StageProducer.Config.RoomType == Stages.Custom
70-
|| e is not BattleDirector.Harbinger.OnDamageInstanceArgs dArgs
71-
)
68+
if (e is not BattleDirector.Harbinger.OnDamageInstanceArgs dArgs)
7269
return;
7370
if (
7471
dArgs.Dmg.Target == this
7572
&& dArgs.Dmg.Target.GetCurrentHealth() <= dArgs.Dmg.Damage
7673
)
7774
{
7875
SteamWhisperer.PopAchievement("actTwoComp");
79-
SaveSystem.UpdateConfig(SaveSystem.ConfigSettings.HasWon, true);
8076
}
8177
}
8278
),

0 commit comments

Comments
 (0)