Add Inventory Clear functions. Prep Monster Loot and Stage Loot inventory types.
This commit is contained in:
parent
6c16405908
commit
1745911eb5
@ -174,6 +174,7 @@ bool Crawler::OnUserCreate(){
|
||||
Inventory::AddItem("Blue Slime Remains",22);
|
||||
|
||||
LoadLevel(LEVEL_NAMES["starting_map"_S]);
|
||||
Inventory::AddItem("Blue Slime Remains",10);
|
||||
ChangePlayerClass(WARRIOR);
|
||||
|
||||
GameState::Initialize();
|
||||
@ -1303,6 +1304,8 @@ void Crawler::LoadLevel(MapName map){
|
||||
totalDamageDealt=0;
|
||||
encounterStarted=false;
|
||||
totalBossEncounterMobs=0;
|
||||
Inventory::Clear("Monster Loot");
|
||||
Inventory::Clear("Stage Loot");
|
||||
|
||||
#pragma region Monster Spawn Data Setup
|
||||
for(auto key:MAP_DATA[map].SpawnerData){
|
||||
|
@ -126,7 +126,7 @@ protected:
|
||||
};
|
||||
|
||||
MenuItemButton*button=NEW MenuItemButton{parentMenu,{{float(totalSpacing*x),float(totalSpacing*y)},{float(buttonSize),float(buttonSize)}},Inventory::get("Consumables"),itemIndex,useItemFunc,parentMenu,"itemName","itemDescription"};
|
||||
AddComponent(Menu::menus[parentMenu],"item"+std::to_string(itemIndex),button);
|
||||
AddComponent(Menu::menus[parentMenu],"item_"+cat+"_"+std::to_string(itemIndex),button);
|
||||
}else
|
||||
if(components.size()>inv.size()){ //There are empty spots, so let's clean up.
|
||||
RemoveEmptySlots();
|
||||
|
@ -1,3 +1,4 @@
|
||||
#pragma region License
|
||||
/*
|
||||
License (OLC-3)
|
||||
~~~~~~~~~~~~~~~
|
||||
@ -29,6 +30,7 @@ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
||||
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
*/
|
||||
#pragma endregion
|
||||
#include "Item.h"
|
||||
#include "safemap.h"
|
||||
#include "DEFINES.h"
|
||||
@ -271,4 +273,11 @@ ItemScript&ItemInfo::OnUseAction(){
|
||||
|
||||
bool Item::IsBlank(){
|
||||
return amt==0||it==nullptr;
|
||||
}
|
||||
|
||||
void Inventory::Clear(ITCategory itemCategory){
|
||||
std::vector<IT>itemList=get(itemCategory); //We have to make a copy here because RemoveItem() will modify the list provided by get() inline.
|
||||
for(IT&item:itemList){
|
||||
RemoveItem(item,GetItemCount(item));
|
||||
}
|
||||
}
|
@ -75,6 +75,7 @@ public:
|
||||
static bool UseItem(IT it,uint32_t amt=1);
|
||||
static bool RemoveItem(IT it,uint32_t amt=1);
|
||||
static std::vector<IT>&get(ITCategory itemCategory);
|
||||
static void Clear(ITCategory itemCategory);
|
||||
|
||||
static bool SwapItems(ITCategory itemCategory,uint32_t slot1,uint32_t slot2);
|
||||
//Makes sure this is a valid category. Will error out if it doesn't exist! Use for ERROR HANDLING!
|
||||
|
@ -1,3 +1,4 @@
|
||||
#pragma region License
|
||||
/*
|
||||
License (OLC-3)
|
||||
~~~~~~~~~~~~~~~
|
||||
@ -29,6 +30,7 @@ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
||||
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
*/
|
||||
#pragma endregion
|
||||
#include "Crawler.h"
|
||||
#include "MenuComponent.h"
|
||||
#include "DEFINES.h"
|
||||
|
@ -1,3 +1,4 @@
|
||||
#pragma region License
|
||||
/*
|
||||
License (OLC-3)
|
||||
~~~~~~~~~~~~~~~
|
||||
@ -29,6 +30,7 @@ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
||||
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
*/
|
||||
#pragma endregion
|
||||
#pragma once
|
||||
#include "Menu.h"
|
||||
#include "MenuLabel.h"
|
||||
|
@ -33,7 +33,7 @@ SUCH DAMAGE.
|
||||
#define VERSION_MAJOR 0
|
||||
#define VERSION_MINOR 2
|
||||
#define VERSION_PATCH 1
|
||||
#define VERSION_BUILD 2954
|
||||
#define VERSION_BUILD 2961
|
||||
|
||||
#define stringify(a) stringify_(a)
|
||||
#define stringify_(a) #a
|
||||
|
Loading…
x
Reference in New Issue
Block a user