diff --git a/Adventures in Lestoria/Adventures in Lestoria.vcxproj b/Adventures in Lestoria/Adventures in Lestoria.vcxproj
index 35c88273..cb4ccfee 100644
--- a/Adventures in Lestoria/Adventures in Lestoria.vcxproj
+++ b/Adventures in Lestoria/Adventures in Lestoria.vcxproj
@@ -1174,6 +1174,7 @@
+
diff --git a/Adventures in Lestoria/Adventures in Lestoria.vcxproj.filters b/Adventures in Lestoria/Adventures in Lestoria.vcxproj.filters
index d6ad0df6..c2ef6eac 100644
--- a/Adventures in Lestoria/Adventures in Lestoria.vcxproj.filters
+++ b/Adventures in Lestoria/Adventures in Lestoria.vcxproj.filters
@@ -1334,6 +1334,9 @@
Documentation
+
+ Documentation\Mechanics
+
diff --git a/Adventures in Lestoria/Crawler_Artificer.txt b/Adventures in Lestoria/Crawler_Artificer.txt
new file mode 100644
index 00000000..7149e311
--- /dev/null
+++ b/Adventures in Lestoria/Crawler_Artificer.txt
@@ -0,0 +1,26 @@
+Artificer
+
+- Unlocks after Chapter 2 - Bonus Boss
+- Unlocks an additional feature after Chapter 3 - Bonus Boss
+- Is available in the hub area
+
+Artificer has 4 Dialog Options
+- Repair/Enhance (Name may change in the future)
+- Disassemble
+- Enchant (Requieres Chapter 3 - Bonus boss)
+- Leave
+
+Enhancing Gear
+- increases the stats of an item.
+- Increases a random stat by a random amount that did not reach its cap. (cant go higher then 20% of its current amount in on Enhance attempt and cant go higher then the max stat value of the item)
+- Costs 1 piece of the Ring you want to enhance + 20g
+
+Disassemble
+- Destroys a ring to get 1 piece of the ring
+- doesnt cost anything but destroys the item
+- pieces have the same vendor value a ring itself has.
+
+Enchant
+- Gives a ring 1 additional Bonus (there will be 3 different type of bonuses: Base attributes, Class specifics spell modifiers, Unique effects)
+- If a ring is already enchanted you override its current enchant. (Maybe give an "Keep old enchant" option?)
+- Requieres 3 Pieces + 35g
\ No newline at end of file
diff --git a/Adventures in Lestoria/PoisonBottle.cpp b/Adventures in Lestoria/PoisonBottle.cpp
index 6ebaa0a1..f0543f57 100644
--- a/Adventures in Lestoria/PoisonBottle.cpp
+++ b/Adventures in Lestoria/PoisonBottle.cpp
@@ -40,6 +40,7 @@ All rights reserved.
#include "AdventuresInLestoria.h"
#include
#include "util.h"
+#include "SoundEffect.h"
INCLUDE_game
@@ -55,6 +56,8 @@ void PoisonBottle::Update(float fElapsedTime){
const bool Landed{fallingTime<=0.f};
if(Landed){
z=0.f;
+ SoundEffect::PlaySFX("Glass Break",pos);
+ SoundEffect::PlaySFX("Poison Pool",pos);
const float poisonCircleScale{"Witch.Ability 2.Casting Size"_F/100.f};
game->AddEffect(std::make_unique(pos,0.f,"poison_pool.png",game->GetPlayer()->OnUpperLevel(),0.5f,1.2f,vf2d{poisonCircleScale,poisonCircleScale},vf2d{},WHITE,0.f,0.f,false),true);
for(int i:std::ranges::iota_view(0,200)){
diff --git a/Adventures in Lestoria/Version.h b/Adventures in Lestoria/Version.h
index 91056f49..89dcd80d 100644
--- a/Adventures in Lestoria/Version.h
+++ b/Adventures in Lestoria/Version.h
@@ -39,7 +39,7 @@ All rights reserved.
#define VERSION_MAJOR 1
#define VERSION_MINOR 2
#define VERSION_PATCH 3
-#define VERSION_BUILD 10389
+#define VERSION_BUILD 10390
#define stringify(a) stringify_(a)
#define stringify_(a) #a
diff --git a/Adventures in Lestoria/Witch.cpp b/Adventures in Lestoria/Witch.cpp
index 3f6fe3bf..cafac721 100644
--- a/Adventures in Lestoria/Witch.cpp
+++ b/Adventures in Lestoria/Witch.cpp
@@ -107,7 +107,7 @@ bool Witch::AutoAttack(){
float angleToCursor=atan2(GetWorldAimingLocation().y-GetPos().y,GetWorldAimingLocation().x-GetPos().x);
CreateBullet(PurpleEnergyBall)(GetPos(),"Witch.Auto Attack.Radius"_F/100*12,"Witch.Auto Attack.Homing Range"_F/100*24,int(GetAttack()*"Witch.Auto Attack.DamageMult"_F),upperLevel,{cos(angleToCursor)*"Witch.Auto Attack.Speed"_F,sin(angleToCursor)*"Witch.Auto Attack.Speed"_F},false,INFINITE,true)EndBullet;
BULLET_LIST.back()->SetIsPlayerAutoAttackProjectile();
- SoundEffect::PlaySFX("Wizard Auto Attack",SoundEffect::CENTERED);
+ SoundEffect::PlaySFX("Witch Attack",SoundEffect::CENTERED);
return true;
}
void Witch::InitializeClassAbilities(){
@@ -150,6 +150,7 @@ void Witch::InitializeClassAbilities(){
float effectSize{util::random(0.2f)};
game->AddEffect(std::make_unique(geom2d::line(p->GetPos(),targetPos).rpoint(drawDist),0.f,"mark_trail.png",p->OnUpperLevel(),fadeInTime,fadeOutTime,vf2d{effectSize,effectSize},vf2d{},Pixel{100,0,155,uint8_t(util::random_range(0,120))},0.f,0.f),true);
}
+ SoundEffect::PlaySFX("Curse of Pain",curseTarget.value().lock()->GetPos());
return true;
}else return false;
};
diff --git a/Adventures in Lestoria/assets/config/audio/events.txt b/Adventures in Lestoria/assets/config/audio/events.txt
index c65bb919..c822a48c 100644
--- a/Adventures in Lestoria/assets/config/audio/events.txt
+++ b/Adventures in Lestoria/assets/config/audio/events.txt
@@ -80,6 +80,18 @@ Events
# Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%)
File[0] = item_craft.ogg, 70%
}
+ Curse of Death
+ {
+ CombatSound = True
+ # Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%)
+ File[0] = curse_of_death.ogg, 80%
+ }
+ Curse of Pain
+ {
+ CombatSound = True
+ # Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%)
+ File[0] = curse.ogg, 80%
+ }
Craft Equip
{
# Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%)
@@ -134,6 +146,12 @@ Events
# Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%)
File[0] = footsteps_wet.ogg, 100%
}
+ Glass Break
+ {
+ CombatSound = True
+ # Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%)
+ File[0] = glass_break.ogg, 100%
+ }
Health Warning
{
# Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%)
@@ -240,6 +258,12 @@ Events
File[0] = player_hit1.ogg, 40%
File[1] = player_hit2.ogg, 100%
}
+ Poison Pool
+ {
+ CombatSound = True
+ # Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%)
+ File[0] = poison_pool.ogg, 80%
+ }
Ranger Auto Attack
{
CombatSound = True
@@ -422,6 +446,12 @@ Events
# Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%)
File[0] = warrior_sonicslash.ogg, 70%
}
+ Witch Attack
+ {
+ CombatSound = True
+ # Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%)
+ File[0] = witch_attack.ogg, 50%
+ }
Wing Flap
{
CombatSound = True
diff --git a/Adventures in Lestoria/assets/config/classes/Witch.txt b/Adventures in Lestoria/assets/config/classes/Witch.txt
index 3ed1d273..3ea78171 100644
--- a/Adventures in Lestoria/assets/config/classes/Witch.txt
+++ b/Adventures in Lestoria/assets/config/classes/Witch.txt
@@ -86,8 +86,8 @@ Witch
Short Name = POISON
Description = Throw a poison bottle at target location. All targets caught in the range take poison damage over time.
Icon = throw_poison.png
- Cooldown = 1
- Mana Cost = 0
+ Cooldown = 16
+ Mana Cost = 40
# Whether or not this ability cancels casts.
CancelCast = 0
diff --git a/Adventures in Lestoria/assets/sounds/curse.ogg b/Adventures in Lestoria/assets/sounds/curse.ogg
new file mode 100644
index 00000000..ba0c6b66
Binary files /dev/null and b/Adventures in Lestoria/assets/sounds/curse.ogg differ
diff --git a/Adventures in Lestoria/assets/sounds/curse_of_death.ogg b/Adventures in Lestoria/assets/sounds/curse_of_death.ogg
new file mode 100644
index 00000000..a7506a8b
Binary files /dev/null and b/Adventures in Lestoria/assets/sounds/curse_of_death.ogg differ
diff --git a/Adventures in Lestoria/assets/sounds/glass_break.ogg b/Adventures in Lestoria/assets/sounds/glass_break.ogg
new file mode 100644
index 00000000..95b1689f
Binary files /dev/null and b/Adventures in Lestoria/assets/sounds/glass_break.ogg differ
diff --git a/Adventures in Lestoria/assets/sounds/poison_pool.ogg b/Adventures in Lestoria/assets/sounds/poison_pool.ogg
new file mode 100644
index 00000000..24a9134e
Binary files /dev/null and b/Adventures in Lestoria/assets/sounds/poison_pool.ogg differ
diff --git a/Adventures in Lestoria/assets/sounds/witch_attack.ogg b/Adventures in Lestoria/assets/sounds/witch_attack.ogg
new file mode 100644
index 00000000..c6478555
Binary files /dev/null and b/Adventures in Lestoria/assets/sounds/witch_attack.ogg differ
diff --git a/x64/Release/Adventures in Lestoria.exe b/x64/Release/Adventures in Lestoria.exe
index c086c3db..e13de04b 100644
Binary files a/x64/Release/Adventures in Lestoria.exe and b/x64/Release/Adventures in Lestoria.exe differ