mirror of
https://github.com/celisej567/mcpe.git
synced 2026-01-03 05:49:04 +03:00
* * Add BuildActionIntention crap * * Set Client and World projects to use MP compilation * asd * * Use the new BuildActionIntention to break and place blocks. * * Reverse engineer the IArea system. * * Copy break logic from survival into creative conditionally * * Reverse IBuildInput and MouseHandler * Replace the new relative paths in the client project with $(MC_ROOT) again * * Reverse Multitouch, MouseDevice * * Reverse a bunch of auxiliary classes for input. * * Use CustomInputHolder instead of holding inputs manually. * * Reverse a whole BUNCH of things! * * Add feedback textures to the gitignore. * * D-pad now renders! Also loads of other work. * * More Stuff * * Finish touch control bug fixing. * * Finalize work. * * One last thing.. * * Add a "cramped" mode to the options screen and start menu. * * Oh, forgot to do something
63 lines
1.4 KiB
C++
63 lines
1.4 KiB
C++
#pragma once
|
|
|
|
#include <vector>
|
|
#include "world/item/ItemInstance.hpp"
|
|
#include "world/entity/Player.hpp"
|
|
|
|
class Entity;
|
|
class Player; // in case we're included from Player.hpp
|
|
|
|
#define C_MAX_HOTBAR_ITEMS (9)
|
|
#define C_NUM_SURVIVAL_SLOTS (36)
|
|
#define C_MAX_AMOUNT (64)
|
|
|
|
class Inventory
|
|
{
|
|
public:
|
|
Inventory(Player*);
|
|
void prepareCreativeInventory();
|
|
void prepareSurvivalInventory();
|
|
|
|
int getNumSlots();
|
|
int getNumItems();
|
|
|
|
void addCreativeItem(int itemID, int auxValue = 0);
|
|
void addTestItem(int itemID, int amount, int auxValue = 0);
|
|
|
|
void clear();
|
|
void addItem(ItemInstance* pInst);
|
|
|
|
ItemInstance* getItem(int slotNo);
|
|
ItemInstance* getQuickSlotItem(int slotNo);
|
|
ItemInstance* getSelectedItem();
|
|
int getQuickSlotItemId(int slotNo);
|
|
int getSelectedItemId();
|
|
void selectItem(int slotNo, int maxHotBarSlot); // selects an item by slot number and puts it in the quick slots if needed
|
|
void selectSlot(int slotNo);
|
|
|
|
void setQuickSlotIndexByItemId(int slotNo, int itemID);
|
|
void selectItemById(int itemID, int maxHotBarSlot);
|
|
|
|
int getAttackDamage(Entity*);
|
|
|
|
int getSelectedSlotNo() const
|
|
{
|
|
return m_SelectedHotbarSlot;
|
|
}
|
|
|
|
// v0.2.0 name alias
|
|
ItemInstance* getSelected() {
|
|
return getSelectedItem();
|
|
}
|
|
|
|
public:
|
|
int m_SelectedHotbarSlot;
|
|
private:
|
|
Player* m_pPlayer;
|
|
bool m_bIsSurvival;
|
|
|
|
int m_hotbar[C_MAX_HOTBAR_ITEMS];
|
|
std::vector<ItemInstance> m_items;
|
|
};
|
|
|