1234567891011121314151617181920212223242526272829303132333435 |
- #include "Inventory.h"
- #include "Area.h"
- using namespace Framework;
- Inventory::Inventory( const Framework::Vec3<float> location )
- : ReferenceCounter(),
- location( location )
- {
- pullSlotsOrder = new Framework::RCArray<ItemSlot>();
- pushSlotsOrder = new Framework::RCArray<ItemSlot>();
- }
- Inventory::~Inventory()
- {
- pullSlotsOrder->release();
- pushSlotsOrder->release();
- }
- void Inventory::loadInventory( Framework::StreamReader *zReader )
- {
- for( auto iterator = pushSlotsOrder->getIterator(); iterator; iterator++ )
- {
- int size = 0;
- zReader->lese( (char *)&size, 4 );
- if( size != 0 )
- {
- int id = 0;
- zReader->lese( (char *)&id, 4 );
- Item *item = StaticRegistry<ItemType>::INSTANCE.zElement( id )->loadItem( zReader );
- iterator->setItems( new ItemStack( item, size ) );
- }
- }
- }
|