cocos植物大战僵尸(六)已选植物卡片管理器类

cocos植物大战僵尸(六)已选植物卡片管理器类,第1张

概述2.4.3 已选植物卡片管理器类 这个类用来管理已经选择的植物卡片。即待选面板中点了一张,左侧增加一张。点击左侧,则又恢复到待选面板中。 待选面板点中一张,发送通知,传递点中植物卡片名字。已选管理器中创建一张植物开片,并加入到已选的植物卡片容器中。 void CHaveChooseCardMgr::addHaveCard(std::string sName){ int iSize = m_li 2.4.3已选植物卡片管理器类

这个类用来管理已经选择的植物卡片。即待选面板中点了一张,左侧增加一张。点击左侧,则又恢复到待选面板中。

待选面板点中一张,发送通知,传递点中植物卡片名字。已选管理器中创建一张植物开片,并加入到已选的植物卡片容器中。

voID CHaveChooseCardMgr::addHaveCard(std::string sname){	int iSize = m_ListHaveCard.size();	int iYpos = HAVE_INIT_Y - iSize*HAVE_Y_CNT;//纵坐标为递减	CWaitChooseCard *waitCard = CWaitChooseCard::create();//新建一个卡片	waitCard->setsname(sname);//传入的名字为新建卡片的名字	waitCard->createByname(sname);//卡片根据对象名字从卡片缓冲池装载图片	waitCard->setposCard(Point(HAVE_INIT_X,iYpos));	waitCard->setposition(Point(HAVE_INIT_X,iYpos));	//CGlobalComm::getInstance()->getgameMapLayer()->addChild(waitCard,LAYER_SECOND);	this->addChild(waitCard,LAYER_SECOND);	m_ListHaveCard.pushBack(waitCard);}

当在已选管理器中点中一张卡片,做以下几件事:1.剩下的卡片依次移动位置;2.发送删除这个已选卡片的通知给待选面板;3.从已选容器中删除;4.父节点删除这个卡片。

int iCardPosInList = 0; //当前点击卡片在列表中的位置			Vector<CWaitChooseCard*>::iterator itCard = m_ListHaveCard.find(clickCard);//迭代器返回找到的索引			if (itCard != m_ListHaveCard.end())//如果迭代器不是指向末尾,说明寻找成功			{				iCardPosInList = std::distance(m_ListHaveCard.begin(),itCard);//得到位置是以0开始的位置			}			int iSize = m_ListHaveCard.size();			//CGlobalComm::getInstance()->getobjWaitCard()->cardreset(clickCard->getsname());			NOTIFY->postNotification(NOTIFY_ReduceChooseCard,(Ref*)((clickCard->getsname()).c_str()));			for (int i = iSize - 1; i > iCardPosInList; i--)			{				m_ListHaveCard.at(i)->setposCard(m_ListHaveCard.at(i - 1)->getposCard());				m_ListHaveCard.at(i)->setposition(m_ListHaveCard.at(i - 1)->getposCard());			}			//m_ListHaveCard.at(0)->setposition(Point(HAVE_INIT_X,100));			m_ListHaveCard.eraSEObject(clickCard);			clickCard->removeFromParentAndCleanup(true);			haveChooseReduce();

实现效果

总结

以上是内存溢出为你收集整理的cocos植物大战僵尸(六)已选植物卡片管理器类全部内容,希望文章能够帮你解决cocos植物大战僵尸(六)已选植物卡片管理器类所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1071358.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存