Exemplo n.º 1
0
 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 /// <summary>
 /// 角色造成伤害时
 /// (造成伤害的卡牌,受到伤害的目标,伤害数据,时机)
 /// </summary>
 /// <param name="self">卡牌</param>
 /// <param name="target">目标</param>
 /// <param name="dmg">伤害数据</param>
 /// <param name="beforeAfter">0之前,1之后</param>
 public void CauseDamage(BattleObjData self, BattleObjData target, DamageData dmg, int beforeAfter)
 {
     if (callCard != null)
     {
         causeDamage(self, target, dmg, beforeAfter);
     }
 }
Exemplo n.º 2
0
 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 /// <summary>
 /// 玩家召唤角色时
 /// (玩家ID,角色数据,战区ID,站位ID,时机)
 /// </summary>
 /// <param name="player">玩家ID</param>
 /// <param name="chr">角色数据</param>
 /// <param name="warZone">战区ID</param>
 /// <param name="grid">站位ID</param>
 /// <param name="beforeAfter">0之前,1之后</param>
 public void CallCard(int player, BattleObjData chr, int warZone, int grid, int beforeAfter)
 {
     if (callCard != null)
     {
         callCard(player, chr, warZone, grid, beforeAfter);
     }
 }
Exemplo n.º 3
0
 public void Move(BattleObjData self, int fZone, int fGrid, int tZone, int tGrid, int beforeAfter)
 {
     if (move != null)
     {
         move(self, fZone, fGrid, tZone, tGrid, beforeAfter);
     }
 }
Exemplo n.º 4
0
 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 /// <summary>
 /// 位移&移动时
 /// (位移对象,从战区ID,从站位ID,到战区ID,到站位ID,时机)
 /// </summary>
 /// <param name="self">位移对象</param>
 /// <param name="fZone">“从”战区ID</param>
 /// <param name="fGrid">“从”战位ID</param>
 /// <param name="tZone">“去”战区ID</param>
 /// <param name="tGrid">“去”战位ID</param>
 /// <param name="beforeAfter">0之前,1之后</param>
 public void Shift(BattleObjData self, int fZone, int fGrid, int tZone, int tGrid, int beforeAfter)
 {
     if (shift != null)
     {
         shift(self, fZone, fGrid, tZone, tGrid, beforeAfter);
     }
 }
Exemplo n.º 5
0
 /// <summary>
 /// 显示UI的方法
 /// </summary>
 /// <param name="a">对象</param>
 /// <param name="chr">角色数据</param>
 public void UIview(GameObject a, BattleObjData chr)
 {
     a.transform.GetChild(1).GetChild(0).GetComponent <Text>().text = chr.hp.ToString();
     a.transform.GetChild(1).GetChild(1).GetComponent <Text>().text = chr.atk.ToString();
     a.transform.GetChild(1).GetChild(2).GetComponent <Text>().text = chr.def.ToString();
     a.transform.GetChild(1).GetChild(3).GetComponent <Text>().text = chr.mp.ToString();
     a.transform.GetChild(1).GetChild(5).GetComponent <Text>().text = chr.name.ToString();
 }
Exemplo n.º 6
0
 /// <summary>
 /// 召唤卡牌动作
 /// (玩家ID,角色数据,战区id,格子id)
 /// </summary>
 /// <param name="player">玩家ID</param>
 /// <param name="chr">角色数据</param>
 /// <param name="warzone">战区id</param>
 /// <param name="grid">格子id</param>
 public void CallCard(int player, BattleObjData chr, int warzone, int grid)
 {
     //寻找卡牌位置
     int       search = 0;
     Transform posi;
     {
         //时机:召唤卡牌前
         timing.CallCard(player, chr, warzone, grid, 0);
         //改变游戏目标的父级
         posi = GameObject.Find("IHandCard").transform.GetComponentInChildren <Transform>();
         foreach (Transform item in posi)
         {
             if (int.Parse(item.name) == chr.ID)
             {
                 item.SetParent(GameObject.Find("IBattleField").transform);
             }
         }
         //将目标作用效果设置为不激活
         cardControlManager.Judge(false);
         //数据传输
         {
             //查找目标卡牌下标
             for (int i = 0; i < getData.matchData.player[player].card.Count; i++)
             {
                 if (getData.matchData.player[player].card[i].ID == chr.ID)
                 {
                     search = i;
                     break;
                 }
             }
             //将角色数据赋值至战场上
             getData.matchData.warZone[warzone].grid[grid].chr = getData.matchData.player[player].card[search];
             //移除手牌卡牌数据
             getData.matchData.player[player].card.RemoveAt(search);
         }
         //对象生成
         {
             //生成一个预制体
             GameObject a = Instantiate(gameChr, GameObject.Find("Panel").transform.GetChild(warzone).GetChild(grid));
             //将图片赋值到角色对象上
             a.GetComponent <Image>().sprite = chr.image;
             //将属性显示到UI上(Hp、Atk、Def、Mp)
             UIview(a, chr);
         }
         Debug.Log("1");
         //时机:召唤卡牌后
         timing.CallCard(player, chr, warzone, grid, 1);
     }
 }
Exemplo n.º 7
0
 /// <summary>
 /// 获取卡组的方法
 /// </summary>
 public void GetCards()
 {
     //发送手牌
     for (int i = 0; i < 5; i++)
     {
         //获取卡牌数据
         BattleObjData card = GameObject.Find("DataAnalysis").GetComponent <Character>().characterDatas[i];
         //生成一个手牌预制体
         GameObject a = Instantiate(matchInitialize.card, matchInitialize.handCard.transform);
         //将卡牌数据传入战局数据管理类
         getData.matchData.player[0].card[i] = card;
         //修改卡牌对象名字为卡牌ID
         a.GetComponent <Image>().name = (i + 1).ToString();
         //修改头像
         a.GetComponent <Image>().sprite = card.image;
     }
 }
Exemplo n.º 8
0
 /// <summary>
 /// 位移动作
 /// </summary>
 /// <param name="chr"></param>
 /// <param name="fZone"></param>
 /// <param name="fGrid"></param>
 /// <param name="tZone"></param>
 /// <param name="tGrid"></param>
 public void Shift(BattleObjData chr, int fZone, int fGrid, int tZone, int tGrid)
 {
 }