diff --git a/Adventures in Lestoria/Adventures in Lestoria.tiled-project b/Adventures in Lestoria/Adventures in Lestoria.tiled-project
index b12a21e3..52be7824 100644
--- a/Adventures in Lestoria/Adventures in Lestoria.tiled-project
+++ b/Adventures in Lestoria/Adventures in Lestoria.tiled-project
@@ -286,7 +286,7 @@
"Yellow Slime",
"Flower Turret",
"Slime King",
- "Wolf",
+ "Windhound",
"Bear",
"Frog"
],
diff --git a/Adventures in Lestoria/Adventures in Lestoria.vcxproj b/Adventures in Lestoria/Adventures in Lestoria.vcxproj
index 602cbf87..b183d718 100644
--- a/Adventures in Lestoria/Adventures in Lestoria.vcxproj
+++ b/Adventures in Lestoria/Adventures in Lestoria.vcxproj
@@ -382,6 +382,10 @@
+
+
+
+
diff --git a/Adventures in Lestoria/Adventures in Lestoria.vcxproj.filters b/Adventures in Lestoria/Adventures in Lestoria.vcxproj.filters
index 912ec2f1..ea6fb188 100644
--- a/Adventures in Lestoria/Adventures in Lestoria.vcxproj.filters
+++ b/Adventures in Lestoria/Adventures in Lestoria.vcxproj.filters
@@ -429,6 +429,9 @@
Header Files\Interface
+
+ Header Files
+
diff --git a/Adventures in Lestoria/Arrow.cpp b/Adventures in Lestoria/Arrow.cpp
index aba0fa02..8c1191a3 100644
--- a/Adventures in Lestoria/Arrow.cpp
+++ b/Adventures in Lestoria/Arrow.cpp
@@ -45,7 +45,7 @@ All rights reserved.
INCLUDE_game
Arrow::Arrow(vf2d pos,vf2d targetPos,vf2d vel,float radius,int damage,bool upperLevel,bool friendly,Pixel col)
- :finalDistance(geom2d::line(pos,targetPos).length()),acc(PI/2*"Ranger.Auto Attack.ArrowSpd"_F),
+ :finalDistance(geom2d::line(pos,targetPos).length()*1.2f),acc(PI/2*"Ranger.Auto Attack.ArrowSpd"_F),
Bullet(pos,vel,radius,damage,
"arrow.png",upperLevel,false,INFINITE,true,friendly,col){}
diff --git a/Adventures in Lestoria/Audio.cpp b/Adventures in Lestoria/Audio.cpp
index 0bbfd135..a8b76f16 100644
--- a/Adventures in Lestoria/Audio.cpp
+++ b/Adventures in Lestoria/Audio.cpp
@@ -210,7 +210,7 @@ void Audio::BGM::AddChannel(const ChannelName&name){
}
const VolumeList&Audio::EventData::GetVolumes(const Event&event)const{
- if(eventInfo.find(event)!=eventInfo.end())return eventInfo.at(event);
+ if(eventInfo.find(event)!=eventInfo.end()&&eventInfo.at(event).size()>0)return eventInfo.at(event);
return eventInfo.at("Default Volume");
}
diff --git a/Adventures in Lestoria/Item.cpp b/Adventures in Lestoria/Item.cpp
index fdee5f3c..b2358da5 100644
--- a/Adventures in Lestoria/Item.cpp
+++ b/Adventures in Lestoria/Item.cpp
@@ -52,6 +52,7 @@ INCLUDE_GFX
const std::string Item::BLANK_ITEM_NAME="";
safemapITEM_DATA;
+safemapITEM_CONVERSIONS;
safemapITEM_SCRIPTS;
safemap>ITEM_CATEGORIES;
std::shared_ptr- Item::BLANK=std::make_shared
- ();
@@ -150,6 +151,10 @@ void ItemInfo::InitializeItems(){
}else
if(keyName=="UseSound"||keyName=="Equip Sound"){
useSound=data[key][keyName].GetString();
+ }else
+ if(keyName.starts_with("Alternative Name")){
+ if(ITEM_CONVERSIONS.count(data[key][keyName].GetString()))ERR(std::format("Item {} already exists in Item Conversion database! Cannot add a duplicate entry!",data[key][keyName].GetString()));
+ ITEM_CONVERSIONS[data[key][keyName].GetString()]=key;
}else{ //THis is a custom override modifier for a script. NO-OP
}
}
@@ -280,6 +285,7 @@ void ItemInfo::InitializeItems(){
ITEM_DATA.SetInitialized();
ITEM_CATEGORIES.SetInitialized();
+ ITEM_CONVERSIONS.SetInitialized();
Menu::LockInListeners();
for(auto&[name,info]:ITEM_DATA){
@@ -382,9 +388,18 @@ Item::Item()
:amt(0),it(nullptr),enhancementLevel(0){}
Item::Item(uint32_t amt,IT item,uint8_t enhancementLevel)
- :amt(amt),it(&ITEM_DATA.at(item)),enhancementLevel(enhancementLevel){}
+ :amt(amt),enhancementLevel(enhancementLevel){
+ if(ITEM_CONVERSIONS.count(item)){
+ it=&ITEM_DATA.at(ITEM_CONVERSIONS[item]); //Convert the item if it's using an old name.
+ }else{
+ it=&ITEM_DATA.at(item);
+ }
+}
std::weak_ptr
- Inventory::AddItem(IT it,uint32_t amt,bool monsterDrop){
+ if(ITEM_CONVERSIONS.count(it)){
+ it=ITEM_CONVERSIONS[it]; //Convert the item if it's using an old name.
+ }
if(!ITEM_DATA.count(it))ERR("Item "<itemPtr;
diff --git a/Adventures in Lestoria/ItemNameConverter.h b/Adventures in Lestoria/ItemNameConverter.h
new file mode 100644
index 00000000..13967e4f
--- /dev/null
+++ b/Adventures in Lestoria/ItemNameConverter.h
@@ -0,0 +1,38 @@
+#pragma region License
+/*
+License (OLC-3)
+~~~~~~~~~~~~~~~
+
+Copyright 2024 Joshua Sigona
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+1. Redistributions or derivations of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+
+2. Redistributions or derivative works in binary form must reproduce the above
+copyright notice. This list of conditions and the following disclaimer must be
+reproduced in the documentation and/or other materials provided with the distribution.
+
+3. Neither the name of the copyright holder nor the names of its contributors may
+be used to endorse or promote products derived from this software without specific
+prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
+EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
+SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGE.
+
+Portions of this software are copyright © 2023 The FreeType
+Project (www.freetype.org). Please see LICENSE_FT.txt for more information.
+All rights reserved.
+*/
+#pragma endregion
+#pragma once
\ No newline at end of file
diff --git a/Adventures in Lestoria/MenuComponent.cpp b/Adventures in Lestoria/MenuComponent.cpp
index ed05c27e..3bcce5d7 100644
--- a/Adventures in Lestoria/MenuComponent.cpp
+++ b/Adventures in Lestoria/MenuComponent.cpp
@@ -212,7 +212,7 @@ void MenuComponent::_OnMouseOut(){
if(runHoverFunctions){
if(hoverState){
hoverState=false;
- onMouseOut(MenuFuncData{*Menu::menus[parentMenu],game,std::make_shared(*this),dynamic_pointer_cast(parentComponent.lock())});
+ onMouseOut(MenuFuncData{*Menu::menus[parentMenu],game,Menu::menus[parentMenu]->components[name],dynamic_pointer_cast(parentComponent.lock())});
OnMouseOut();
}
}
@@ -222,7 +222,7 @@ void MenuComponent::_OnHover(){
if(hovered){
if(runHoverFunctions&&!hoverState){
hoverState=true;
- onHover(MenuFuncData{*Menu::menus[parentMenu],game,std::make_shared(*this),dynamic_pointer_cast(parentComponent.lock())});
+ onHover(MenuFuncData{*Menu::menus[parentMenu],game,Menu::menus[parentMenu]->components[name],dynamic_pointer_cast(parentComponent.lock())});
OnHover();
}
}
diff --git a/Adventures in Lestoria/TODO.txt b/Adventures in Lestoria/TODO.txt
index 38720c29..71ccfe83 100644
--- a/Adventures in Lestoria/TODO.txt
+++ b/Adventures in Lestoria/TODO.txt
@@ -15,6 +15,8 @@ Settings Menu
- Stage Loot Config
- Initial Crafting of Gear.
+- Experience point changes
+
January 31st
============
Make new unlocked nodes more obvious, made neighboring nodes more obvious
@@ -63,4 +65,7 @@ ok equipment cant be sold currently anyway.
So i think the easiest solution would be making gear unique. buying and upgrading it could be at the exact same location then.
Only thing that needs to be changed in the ui would be removing the equipment tab in the vendor sell menu.
-[12:07 AM]sigonasr2: So the process goes: See current list of gear, first you buy it, then you can choose it again to continuously upgrade it
\ No newline at end of file
+[12:07 AM]sigonasr2: So the process goes: See current list of gear, first you buy it, then you can choose it again to continuously upgrade it
+
+
+- Health numbers/mana number counters decreasing/incrementing emphasis
\ No newline at end of file
diff --git a/Adventures in Lestoria/Version.h b/Adventures in Lestoria/Version.h
index 20728461..f149c15a 100644
--- a/Adventures in Lestoria/Version.h
+++ b/Adventures in Lestoria/Version.h
@@ -39,7 +39,7 @@ All rights reserved.
#define VERSION_MAJOR 0
#define VERSION_MINOR 3
#define VERSION_PATCH 0
-#define VERSION_BUILD 6216
+#define VERSION_BUILD 6225
#define stringify(a) stringify_(a)
#define stringify_(a) #a
diff --git a/Adventures in Lestoria/assets/Campaigns/1_2.tmx b/Adventures in Lestoria/assets/Campaigns/1_2.tmx
index 7316b718..0cf05d91 100644
--- a/Adventures in Lestoria/assets/Campaigns/1_2.tmx
+++ b/Adventures in Lestoria/assets/Campaigns/1_2.tmx
@@ -1214,9 +1214,9 @@
-