Esempio n. 1
0
    protected virtual void OnEnable()
    {
        source    = (UnitBuff)target;
        sourceRef = serializedObject;

        GetProperties();
    }
Esempio n. 2
0
    public virtual void RemoveBuff(UnitBuff _buffToRemove)
    {
        if (!curBuffs.Contains(_buffToRemove))
        {
            return;
        }

        _buffToRemove.ActivateBuff(this, false);
        curBuffs.Remove(_buffToRemove);
    }
Esempio n. 3
0
    public GameData CreateGameData(GameData item, bool init = true, bool UserSoure = true) //复制  未知类型时
    {
        GameData data = null;

        if (item == null)
        {
            return(null);
        }
        switch (item.DataType)
        {
        case GameDataType.King: data = new King(item, init, UserSoure); break;

        case GameDataType.Army: data = new Army(item, init, UserSoure); break;

        case GameDataType.Team: data = new Team(item, init, UserSoure); break;

        case GameDataType.Hero: data = new Hero(item, init, UserSoure); break;

        case GameDataType.TeamBuff: data = new TeamBuff(item, init, UserSoure); break;

        case GameDataType.UnitBuff: data = new UnitBuff(item, init, UserSoure); break;

        case GameDataType.Skill: data = new Skill(item, init, UserSoure); break;

        case GameDataType.City: data = new City(item, init, UserSoure); break;

        case GameDataType.UnitSetting: data = new UnitSetting(item, init, UserSoure); break;

        case GameDataType.Unit: data = new Unit(item, init, UserSoure); break;

        case GameDataType.ConversationData: data = new CommunicationData(item, init, UserSoure); break;

        case GameDataType.Other: data = new GameData(item); break;

        case GameDataType.DynamicGameSetting: data = new DynamicGameSetting(item); break;

        case GameDataType.StaticGameSetting: data = new StaticGameSetting(item); break;

        default: break;
        }
        return(data);
    }
Esempio n. 4
0
    public GameData CreateGameData(GameDataType type, string name) //这是为方便GameDataEditWindow  未知类型时
    {
        GameData data = null;

        if (string.IsNullOrEmpty(name))
        {
            return(null);
        }
        switch (type)
        {
        case GameDataType.King: data = new King(name); break;

        case GameDataType.Army: data = new Army(name); break;

        case GameDataType.Team: data = new Team(name); break;

        case GameDataType.Hero: data = new Hero(name); break;

        case GameDataType.TeamBuff: data = new TeamBuff(name); break;

        case GameDataType.UnitBuff: data = new UnitBuff(name); break;

        case GameDataType.Skill: data = new Skill(name); break;

        case GameDataType.City: data = new City(name); break;

        case GameDataType.UnitSetting: data = new UnitSetting(name); break;

        case GameDataType.Unit: data = new Unit(name); break;

        case GameDataType.ConversationData: data = new CommunicationData(name); break;

        case GameDataType.Other: data = new GameData(GameDataType.Other, name); break;

        case GameDataType.DynamicGameSetting: data = new DynamicGameSetting(name); break;

        case GameDataType.StaticGameSetting: data = new StaticGameSetting(name); break;

        default: break;
        }
        return(data);
    }
Esempio n. 5
0
 public void AddBuff(UnitBuff buff)
 {
     buff.OnApplication(this);
     buffs.Add(buff);
 }
Esempio n. 6
0
 public void RemoveBuff(UnitBuff buff)
 {
     if(buff.HasVisualEffect) {
         Destroy(effects[buff]);
         effects.Remove(buff);
     }
     buff.OnRemoved(this);
     buffs.Remove(buff);
 }
Esempio n. 7
0
 public void AddEffect(UnitBuff buff, GameObject prefab)
 {
     GameObject go = (GameObject) Instantiate(prefab, new Vector3(transform.position.x+prefab.transform.position.x, transform.position.y+prefab.transform.position.y,transform.position.z+prefab.transform.position.z), prefab.transform.localRotation);
     effects.Add(buff, go);
     go.transform.parent = transform;
 }
Esempio n. 8
0
 public virtual void AddBuff(UnitBuff _buffToAdd)
 {
     _buffToAdd.ActivateBuff(this, true);
     curBuffs.Add(_buffToAdd);
 }