public void startWatchCard() { if (m_outCard == null) { createCard(); } else { m_outCard.setIdAndPnt(m_cardId, m_sceneDZData.m_placeHolderGo.m_centerGO); } UtilApi.setPos(m_outCard.transform(), m_sceneDZData.m_placeHolderGo.m_centerGO.transform.localPosition + new Vector3(-2.6f, 1, 1)); m_outCard.show(); }
// 开始卡牌倒计时 public void onTimerEndHandle(TimerItemBase timer) { m_watchStage = WatchStage.eWatching; if (m_showCard == null) { createCard(m_watchCard.sceneCardItem, m_watchCard.m_sceneDZData); } else { m_showCard.setIdAndPnt(m_watchCard.sceneCardItem.svrCard.dwObjectID, m_watchCard.m_sceneDZData.m_placeHolderGo.m_centerGO); } m_sceneCardItem.copyFrom(m_watchCard.sceneCardItem); m_sceneCardItem.cardArea = CardArea.CARDCELLTYPE_HAND; // 总是显示手牌 m_showCard.sceneCardItem = m_sceneCardItem; UtilApi.setPos(m_showCard.transform(), m_watchCard.transform().localPosition + new Vector3(SceneDZCV.COMMON_CARD_WIDTH, SceneDZCV.DRAG_YDELTA, 0)); m_showCard.show(); }
protected void testAni() { UISceneDZ uiDZ = Ctx.m_instance.m_uiSceneMgr.getSceneUI<UISceneDZ>(UISceneFormID.eUISceneDZ); // 测试[随从卡] m_aniModel = Ctx.m_instance.m_sceneCardMgr.createCardById(230000, EnDZPlayer.ePlayerSelf, CardArea.CARDCELLTYPE_HAND, CardType.CARDTYPE_ATTEND, uiDZ.m_sceneDZData); m_aniModel.setStartIdx(2); UtilApi.setPos(m_aniModel.transform(), new UnityEngine.Vector3(-4, 0, 0)); SceneCardItem sceneCardItem = null; sceneCardItem = new SceneCardItem(); sceneCardItem.svrCard = new t_Card(); sceneCardItem.svrCard.qwThisID = 0; sceneCardItem.svrCard.dwObjectID = 230000; sceneCardItem.m_cardTableItem = Ctx.m_instance.m_tableSys.getItem(TableID.TABLE_CARD, sceneCardItem.svrCard.dwObjectID).m_itemBody as TableCardItemBody; m_aniModel.sceneCardItem = sceneCardItem; m_aniModel.sceneCardBaseData.m_trackAniControl.faPai2MinAni(); }
public void testLinkEffect() { UISceneDZ uiDZ = Ctx.m_instance.m_uiSceneMgr.getSceneUI<UISceneDZ>(UISceneFormID.eUISceneDZ); // 测试[随从卡] m_linkEffectModel = Ctx.m_instance.m_sceneCardMgr.createCardById(230000, EnDZPlayer.ePlayerSelf, CardArea.CARDCELLTYPE_HAND, CardType.CARDTYPE_ATTEND, uiDZ.m_sceneDZData); UtilApi.setPos(m_linkEffectModel.transform(), new UnityEngine.Vector3(-4, 0, 0)); SceneCardItem sceneCardItem = null; sceneCardItem = new SceneCardItem(); sceneCardItem.svrCard = new t_Card(); sceneCardItem.svrCard.qwThisID = 0; sceneCardItem.svrCard.dwObjectID = 230000; sceneCardItem.m_cardTableItem = Ctx.m_instance.m_tableSys.getItem(TableID.TABLE_CARD, sceneCardItem.svrCard.dwObjectID).m_itemBody as TableCardItemBody; m_linkEffectModel.sceneCardItem = sceneCardItem; m_linkEffectModel.effectControl.addLinkEffect(4, true, true, true); }
// 执行技能攻击 public void execAttack(SkillAttackItem item) { Ctx.m_instance.m_logSys.fightLog("[Fight] 开始执行技能攻击 execAttack"); // 技能攻击开始,需要将技能准备特效移除 if (m_card.m_sceneDZData.m_sceneDZAreaArr[(int)m_card.sceneCardItem.playerSide].centerHero.sceneCardItem.svrCard.qwThisID == item.attThisId) { m_card.m_sceneDZData.m_sceneDZAreaArr[(int)m_card.sceneCardItem.playerSide].centerHero.effectControl.stopSkillAttPrepareEffect(); } if (item.skillTableItem.m_bNeedMove > 0) // 如果是有攻击目标的技能攻击 { if (item.skillTableItem != null) { if (item.skillTableItem.m_skillAttackEffect != 0) { foreach (var thisId in item.hurtIdList.list) { if (thisId == m_card.sceneCardItem.svrCard.qwThisID) // 如果攻击者还是被击者,就不播放攻击特效了 { Ctx.m_instance.m_logSys.fightLog("[Fight] 攻击者 thisId 和被记者 thisId 相同,不播放攻击特效"); } else { Ctx.m_instance.m_logSys.fightLog("[Fight] 技能攻击播放攻击特效"); SceneCardBase hurtCard = Ctx.m_instance.m_sceneCardMgr.getCardByThisId(thisId); m_card.effectControl.addMoveEffect((int)item.skillTableItem.m_skillAttackEffect, m_card.transform().localPosition, hurtCard.transform().localPosition, item.skillTableItem.m_effectMoveTime); // 攻击特效 } } } } } else // 没有攻击目标的技能攻击 { if (item.skillTableItem != null) { if (item.skillTableItem.m_skillAttackEffect != 0) { Ctx.m_instance.m_logSys.fightLog("[Fight] 技能攻击播放场景特效"); Ctx.m_instance.m_sceneEffectMgr.addSceneEffect((int)item.skillTableItem.m_skillAttackEffect, m_card.m_sceneDZData.m_placeHolderGo.m_centerGO); // 添加一个场景特效 } } } m_card.sceneCardBaseData.m_effectControl.updateAttHurtStateEffect(item); }