示例#1
0
 virtual public void dispose()
 {
     m_outSceneCardList.dispose();
     m_inSceneCardList.dispose();
     m_centerHero.dispose();
     m_sceneSkillCard.dispose();
     m_sceneEquipCard.dispose();
 }
示例#2
0
 protected void onDieEndHandle(IDispatchObject dispObj)
 {
     // 删除死亡对象
     Ctx.m_instance.m_logSys.fightLog(string.Format("[Fight] 真正删除一个卡牌 {0}", m_card.getDesc()));
     //m_sceneDZData.m_sceneDZAreaArr[m_side].removeAndDestroyOneCardByItem(m_sceneItem);
     m_card.dispose();
     m_card = null;
     m_OneAttackAndHurtEndDisp.dispatchEvent(this);
 }
示例#3
0
        public void dispose()
        {
            if (m_outCard != null)
            {
                m_outCard.dispose();
            }

            if (m_watchStage == WatchStage.eStartTimer)
            {
                stopTimer();
                m_timer = null;
            }
        }
示例#4
0
        // 从手牌区域出了一张装备卡
        protected void outEquipCard(SceneCardBase outCard)
        {
            if (m_sceneEquipCard == null)       // 直接替换数据
            {
                m_sceneEquipCard = Ctx.m_instance.m_sceneCardMgr.createCard(outCard.sceneCardItem, m_sceneDZData);
            }
            else
            {
                m_sceneEquipCard.setIdAndPnt(outCard.sceneCardItem.svrCard.dwObjectID, outCard.getPnt());
            }

            m_sceneEquipCard.behaviorControl.moveToDestDirect(m_sceneDZData.m_placeHolderGo.m_cardCenterGOArr[(int)m_playerSide, (int)CardArea.CARDCELLTYPE_EQUIP].transform.localPosition);

            outCard.dispose();      // 释放原来的资源
        }
示例#5
0
        // 移除并且释放一张卡牌,这个接口只能是从外部调用,彻底删除一张卡牌
        public void removeAndDestroyOneCardByItem(SceneCardItem sceneItem)
        {
            if ((int)CardArea.CARDCELLTYPE_SKILL == sceneItem.svrCard.pos.dwLocation)
            {
                m_sceneSkillCard.dispose();
                m_sceneSkillCard = null;
            }
            else if ((int)CardArea.CARDCELLTYPE_EQUIP == sceneItem.svrCard.pos.dwLocation)
            {
                m_sceneEquipCard.dispose();
                m_sceneEquipCard = null;
            }
            else if ((int)CardArea.CARDCELLTYPE_COMMON == sceneItem.svrCard.pos.dwLocation)
            {
                m_outSceneCardList.removeAndDestroyCardByItem(sceneItem);
                m_outSceneCardList.updateSceneCardPos();
            }
            else if ((int)CardArea.CARDCELLTYPE_HAND == sceneItem.svrCard.pos.dwLocation)
            {
                if (m_inSceneCardList.removeAndDestroyCardByItem(sceneItem))
                {
                    m_inSceneCardList.updateSceneCardPos();
                }
                else        // 可能是战吼或者法术有攻击目标的
                {
                    SceneCardBase srcCard = m_outSceneCardList.removeAndRetCardByItem(sceneItem);
                    // 如果是法术或者战吼有攻击目标的卡牌,虽然在出牌区,但是是客户端自己移动过去的
                    if (srcCard != null && srcCard.canClientMove2OutArea())
                    {
                        // 更新手牌索引
                        m_inSceneCardList.updateCardIndex();
                    }

                    srcCard.dispose();
                }
            }

            m_sceneDZData.m_gameOpState.cancelAttackOp();        // 强制退出战斗操作
        }
示例#6
0
 override public void dispose()
 {
     m_whiteCard.dispose();
     m_whiteCard = null;
 }
示例#7
0
        // 从手牌区域出了一张装备卡
        protected void outEquipCard(SceneCardBase outCard)
        {
            if (m_sceneEquipCard == null)       // 直接替换数据
            {
                m_sceneEquipCard = Ctx.m_instance.m_sceneCardMgr.createCard(outCard.sceneCardItem, m_sceneDZData);
            }
            else
            {
                m_sceneEquipCard.setIdAndPnt(outCard.sceneCardItem.svrCard.dwObjectID, outCard.getPnt());
            }

            m_sceneEquipCard.behaviorControl.moveToDestDirect(m_sceneDZData.m_placeHolderGo.m_cardCenterGOArr[(int)m_playerSide, (int)CardArea.CARDCELLTYPE_EQUIP].transform.localPosition);

            outCard.dispose();      // 释放原来的资源
        }