示例#1
0
 public override void ApplyDamage(int damage, TDCEntity attacker)
 {
     base.ApplyDamage(damage, attacker);
     if (attacker.GetActive())
     {
         m_DamageTake += damage;
     }
 }
示例#2
0
    public override void ApplyDamage(int damage, TDCEntity attacker)
    {
        CallBackEvent("OnApplyDamage");

        if (attacker.GetActive())
        {
            m_DamageTake += damage;
        }
    }
 public override void ReturnMember(TDCEntity member)
 {
     base.ReturnMember(member);
     member.SetActive(false);
     member.SetGroupEntity (null);
     m_GameManager.SetObjectPool(member);
     var memberCount = GetCurrentMember();
     memberCount -= 1;
     SetCurrentMember(memberCount);
 }
 public TDCSkillSlot(TDCEnum.EGameType skillType, TDCEntity owner)
 {
     m_GameManager = TDCGameManager.GetInstance();
     m_SkillData = m_GameManager.GetSkillData(skillType);
     m_SkillType = skillType;
     m_Owner = owner;
     m_TimeDelay = 0f;
     for (int i = 0; i < m_SkillData.TriggerEnvent.Length; i++)
     {
         m_Owner.AddEventListener(m_SkillData.TriggerEnvent[i], ActiveSkill);
     }
 }
    public override void ApplyDamage(int damage, TDCEntity attacker)
    {
        base.ApplyDamage(damage, attacker);

        CallBackEvent("OnApplyDamage");

        if (attacker.GetActive())
        {
            m_DamageTake += damage;
        }

        if (GetEnemyEntity() == null)
        {
            SetEnemyEntity(attacker);
        }
    }
示例#6
0
 public virtual void SetEnemyEntity(TDCEntity entity)
 {
 }
示例#7
0
 public virtual void ReturnMember(TDCEntity member)
 {
 }
示例#8
0
 public virtual void ApplyDamage(int damage, TDCEntity attacker)
 {
 }
    public IEnumerator LoadMap(string mapName, Action complete = null)
    {
        var sun = CreateCreature(TDCEnum.EGameType.Sun, new Vector3 (0f, 200f, 0f), Quaternion.Euler(new Vector3(75f, -30f, 0f)));
        sun.SetActive(true);
        m_SunEntity = sun;

        var plane = CreateCreature(TDCEnum.EGameType.GrassLandPlane, Vector3.zero, Quaternion.Euler(new Vector3(270f, 180f, 0f)));
        plane.SetActive(true);
        m_PlaneEntity = plane;

        var season = CreateCreature(TDCEnum.EGameType.SeasonGrassLand, Vector3.zero, Quaternion.identity);
        season.SetActive(true);
        m_SeasonEntity = season;

        var playerType = TDCGameSetting.Instance.GetPlayerType();
        var player = CreatePlayer (playerType, Vector3.zero, Quaternion.identity);
        player.SetActive(true);

        var map = m_DataReader.GetMap(mapName);
        for (int i = 0; i < map.Count; i++)
        {
            var mapObj = map[i];
            var obj = CreateCreature(mapObj.GameType, mapObj.Position, mapObj.Rotation);
            obj.SetActive(true);
            m_UIManager.SetLoadingStep(i + 3);
            yield return obj != null;
        }
        yield return null;
        if (complete != null)
        {
            complete();
        }

        //		m_Map = new Map(150);
        //		var bound = plane.GetController().GetComponent<MeshFilter>().mesh.bounds;
        //		yield return m_Map != null && plane != null;
        //		var centers = m_Map.Graph.centers;
        //		var offsetPointX = bound.size.x / Map.Width;
        //		var offsetPointY = bound.size.y / Map.Height;
        //		for (int i = 0; i < centers.Count; i++)
        //		{
        //			var centerPoint = centers[i];
        //			if (centerPoint.biome == Biome.Ocean)
        //				continue;
        //
        //			var gameType = TDCEnum.EGameType.None;
        //			switch (centerPoint.biome)
        //			{
        //				case Biome.Grassland:
        //					var grassRegion = new TDCEnum.EGameType[] { TDCEnum.EGameType.None, TDCEnum.EGameType.GroupDodono, TDCEnum.EGameType.GroupGrass, TDCEnum.EGameType.GroupSatla };
        //					gameType = grassRegion[i % grassRegion.Length];
        //					break;
        //				case Biome.Marsh:
        //					var marshRegion = new TDCEnum.EGameType[] { TDCEnum.EGameType.None, TDCEnum.EGameType.GroupMushRoom };
        //					gameType = marshRegion[i % marshRegion.Length];
        //					break;
        //				case Biome.TemperateDesert:
        //					var desertRegion = new TDCEnum.EGameType[] { TDCEnum.EGameType.None, TDCEnum.EGameType.GroupBush, TDCEnum.EGameType.GroupVulbat };
        //					gameType = desertRegion[i % desertRegion.Length];
        //					break;
        //				case Biome.Lava:
        //					var lavaRegion = new TDCEnum.EGameType[] { TDCEnum.EGameType.None, TDCEnum.EGameType.GroupBlueBerry, TDCEnum.EGameType.GroupFireBuggy };
        //					gameType = lavaRegion[i % lavaRegion.Length];
        //					break;
        //				case Biome.RockLand:
        //					var rockRegion = new TDCEnum.EGameType[] { TDCEnum.EGameType.None, TDCEnum.EGameType.GroupCrystal, TDCEnum.EGameType.GroupCrabystal, TDCEnum.EGameType.GroupTaurot };
        //					gameType = rockRegion[i % rockRegion.Length];
        //					break;
        //				default:
        ////					var defaultRegion = new TDCEnum.EGameType[] { TDCEnum.EGameType.None, TDCEnum.EGameType.GroupGrass, TDCEnum.EGameType.GroupBush, TDCEnum.EGameType.GroupMushRoom, TDCEnum.EGameType.GroupBlueBerry };
        ////					gameType = defaultRegion[i % defaultRegion.Length];
        //					break;
        //			}
        //			if (gameType == TDCEnum.EGameType.None)
        //				continue;
        //			var point = centerPoint.point;
        //			var _X = (point.x - (Map.Width / 2f)) * offsetPointX;
        //			var _Y = (point.y - (Map.Height / 2f)) * offsetPointY;
        //			var obj = CreateCreature(gameType, new Vector3 (_X, 0f, _Y), Quaternion.identity);
        //			obj.SetActive(true);
        //			yield return obj != null;
        //		}
        //		yield return null;
        //		if (complete != null)
        //		{
        //			complete();
        //		}
    }
示例#10
0
 public virtual void SetOwnerEntity(TDCEntity owner)
 {
 }
示例#11
0
 public override void SetGroupEntity(TDCEntity group)
 {
     m_GroupEntity = group;
 }
 public virtual void SetEntity(TDCEntity entity)
 {
     m_Entity = entity;
 }
示例#13
0
 public override void ApplyDamage(int damage, TDCEntity attacker)
 {
     base.ApplyDamage(damage, attacker);
     m_ItemActive = false;
     m_Enemy = attacker;
 }
 public virtual void SetGroupEntity(TDCEntity group)
 {
     m_Entity.SetGroupEntity (group);
 }
 public override void SetLeaderEntity(TDCEntity leader)
 {
     base.SetLeaderEntity(leader);
     m_Entity.SetLeaderEntity(leader);
 }
 public override void SetGroupEntity(TDCEntity group)
 {
     base.SetGroupEntity(group);
     m_Entity.SetGroupEntity(group);
 }
 public void SetSunEntity(TDCEntity value)
 {
     m_SunEntity = value;
 }
 public void SetObjectPool(TDCEntity obj)
 {
     var gameType = obj.GetGameType();
     if (m_ObjectPool.ContainsKey(gameType))
     {
         // TODO
     }
     else
     {
         m_ObjectPool[gameType] = new TDCObjectPool<TDCEntity>();
         Debug.LogError("[GameManager] Pool not instance " + gameType);
     }
     m_ObjectPool[gameType].Set(obj);
     obj.GetController().transform.SetParent(this.transform);
 }
示例#19
0
 public virtual void SetGroupEntity(TDCEntity group)
 {
 }
示例#20
0
 public override void ReturnMember(TDCEntity member)
 {
     base.ReturnMember(member);
     m_Controller.ReturnMember (member);
 }
示例#21
0
 public virtual void SetLeaderEntity(TDCEntity leader)
 {
 }
 public virtual void SetOwnerEntity(TDCEntity owner)
 {
     m_Entity.SetOwnerEntity (owner);
 }
示例#23
0
 public override void SetEnemyEntity(TDCEntity enemy)
 {
     if (m_EnemyEntity != enemy)
     {
         SetStartBattlePosition(m_Controller.TransformPosition);
     }
     m_EnemyEntity = enemy;
 }
 public virtual void SetEnemyEntity(TDCEntity entity)
 {
     m_Entity.SetEnemyEntity(entity);
 }
示例#25
0
 public override void SetLeaderEntity(TDCEntity leader)
 {
     m_LeaderEntity = leader;
 }
 public override void ApplyDamage(int damage, TDCEntity attacker)
 {
     base.ApplyDamage(damage, attacker);
     m_Entity.ApplyDamage(damage, attacker);
 }
 public override void SetEnemyEntity(TDCEntity entity)
 {
     m_Entity.SetEnemyEntity(entity);
 }
 public bool GetObjectPool(TDCEnum.EGameType type, ref TDCEntity obj)
 {
     if (m_ObjectPool[type].Get(ref obj))
     {
         return true;
     }
     else
     {
         Debug.LogError("[GameManager] Set more pool " + type);
     }
     return false;
 }
示例#29
0
 public void SetPlayer(TDCCreatureController owner)
 {
     m_OwnerController = owner;
     m_OwnerEnity = owner.GetEntity();
     LoadAllSlots();
     this.GetComponentInChildren<CUIGridLayout>().enabled = false;
     this.GetComponentInChildren<ContentSizeFitter>().enabled = false;
 }
    public TDCSkillSlotComponent(TDCEntity owner)
    {
        m_Owner = owner;

        m_SkillList = new Queue<int>();
    }