Пример #1
0
int Inventory2::selectItem(int itemId) {
	if (getInventoryItemIndexById(itemId) < 0)
		return -1;

	unselectItem(0);

	_selectedId = itemId;

	if (_scene) {
		int idx = getInventoryPoolItemIndexById(itemId);

		Picture *pic = _scene->getPictureObjectById(_itemsPool[idx]->pictureObjectId1, 0)->_picture;
		g_fullpipe->getGameLoaderInputController()->setCursorItemPicture(pic);
	}

	return _selectedId;
}
Пример #2
0
void Inventory2::removeItem2(Scene *sceneObj, int itemId, int x, int y, int priority) {
    int idx = getInventoryItemIndexById(itemId);

    debugC(2, kDebugInventory, "removeItem2(*, %d, %d, %d, %d)", itemId, x, y, priority);

    if (idx >= 0) {
        if (_inventoryItems[idx]->count) {
            removeItem(itemId, 1);

            Scene *sc = g_fp->accessScene(_sceneId);

            if (sc) {
                StaticANIObject *ani = new StaticANIObject(sc->getStaticANIObject1ById(itemId, -1));

                sceneObj->addStaticANIObject(ani, 1);

                ani->_statics = (Statics *)ani->_staticsList[0];
                ani->setOXY(x, y);
                ani->_priority = priority;
            }
        }
    }
}