コード例 #1
0
void ActorLayer::AddNewItem(flownet::Item item, flownet::POINT spawnPosition)
{
    ItemNode* itemNode = ItemNode::create(item.GetItemType(), item.GetItemID());
    // 중복된 것인지 한번 체크해 볼 필요는 있는듯
    this->m_ItemNodeMap.insert(ItemNodeMap::value_type(item.GetItemID(), itemNode));
    
    itemNode->setPosition(PointConverter::Convert(spawnPosition));
    this->addChild(itemNode);
}
コード例 #2
0
ファイル: ItemNode.cpp プロジェクト: TinySlik/OzgGameEatFish
ItemNode* ItemNode::create(ItemNodeType type)
{
	ItemNode *obj = new ItemNode();
	if (obj && obj->init(type))
	{
		obj->autorelease();
		return obj;
	}

	CC_SAFE_DELETE(obj);
	return NULL;
}
コード例 #3
0
void ActorLayer::PickupItemFromField(flownet::ActorID playerID, flownet::ItemID itemID)
{
    ActorNode* actor = this->FindActorNode(playerID);
    ItemNode* item = this->FindItemNode(itemID);
    CCJumpTo* jumpTo = CCJumpTo::create(0.3, actor->GetMidPosition(), 30, 1);
    CCDelayTime* delay = CCDelayTime::create(0.3);
    CCCallFuncO* remove = CCCallFuncO::create(this, callfuncO_selector(ActorLayer::RemoveItem), item);
    CCSequence* sequence = CCSequence::create(jumpTo, delay, remove, NULL);
    sequence->setTag(ActionType_Animation);
    item->runAction(sequence);
    // TO DO : display effect for acquiring item
}
コード例 #4
0
void ActorLayer::RemoveItem(CCObject* object)
{
    ItemNode* itemNode = dynamic_cast<ItemNode*>(object);
    if(!itemNode)
    {
        ASSERT_DEBUG(itemNode != nullptr);
    }

    this->m_ItemNodeMap.erase(itemNode->GetItemID());
    this->removeChild(itemNode, true);
    delete itemNode;
}
コード例 #5
0
ItemNode* ItemNode::create(flownet::ItemType itemType, flownet::ItemID itemID)
{
    ItemNode* itemNode = new ItemNode();
    if(itemNode && itemNode->init(itemType, itemID))
    {
        return itemNode;
    }
    else
    {
        delete itemNode;
        itemNode = nullptr;
        return nullptr;
    }
}
コード例 #6
0
void UpdateItemList(int dirNum)
{
	ListView_DeleteAllItems(ghItemListWindow);

	MediaServer *mserver = gMediaGate->getMediaServer();
	Directory *dir = mserver->getContentDirectory(dirNum);
	if (dir == NULL)
		return;

	LVITEM item = {0};
	item.mask = 0;
	item.mask = LVIF_TEXT;
    TCHAR buf[512] = { 0 } ;
	int itemCnt = dir->getNContentNodes();
	for (int n=0 ; n<itemCnt ; n++) {
		ContentNode *conNode = dir->getContentNode(n);
		if (conNode->isItemNode() == false)
			continue;
		
		ItemNode *itemNode = (ItemNode *)conNode;

        FTL::CFConversion conv;
		item.pszText = (LPTSTR)conv.MBCS_TO_TCHAR(itemNode->getTitle());
		item.iItem = n;
		item.iSubItem = 0;
		ListView_InsertItem(ghItemListWindow , &item);

		item.pszText = (LPTSTR)conv.MBCS_TO_TCHAR(itemNode->getCreator());
		item.iSubItem = 1;
		ListView_SetItem(ghItemListWindow , &item);

		item.pszText = (LPTSTR)conv.MBCS_TO_TCHAR(itemNode->getDate());
		item.iSubItem = 2;
		ListView_SetItem(ghItemListWindow , &item);

		_stprintf(buf, TEXT("%ld"), itemNode->getStorageUsed());
		item.pszText = buf;
		item.iSubItem = 3;
		ListView_SetItem(ghItemListWindow , &item);
	}
}