예제 #1
0
    public static List <Ability> Load()
    {
        GameObject obj = Resources.Load("PrefabListAbility", typeof(GameObject)) as GameObject;

        if (obj == null)
        {
            obj = CreatePrefab();
        }

        prefab = obj.GetComponent <AbilityListPrefab>();
        if (prefab == null)
        {
            prefab = obj.AddComponent <AbilityListPrefab>();
        }

        allAbilityList = prefab.abilityList;

        //~ for(int i=0; i<allAbilityList.Count; i++){
        //~ allAbilityList[i]=allAbilityList[i].Clone();
        //~ }

        foreach (Ability ability in allAbilityList)
        {
            abilityIDList.Add(ability.ID);
        }

        return(allAbilityList);
    }
예제 #2
0
	static void LoadAbility(){
		GameObject obj=Resources.Load("PrefabListAbility", typeof(GameObject)) as GameObject;
		if(obj==null) obj=AbilityEditorWindow.CreatePrefab();
		AbilityListPrefab prefab=obj.GetComponent<AbilityListPrefab>();
		if(prefab==null) prefab=obj.AddComponent<AbilityListPrefab>();
		abilityList=prefab.abilityList;
		
		abilityNameList=new string[abilityList.Count];
		abilityIDMapList=new int[abilityList.Count];
		for(int i=0; i<abilityList.Count; i++){
			abilityNameList[i]=abilityList[i].name;
			abilityIDMapList[i]=abilityList[i].ID;
		}
		
		InitAbilityGroup();
	}
예제 #3
0
    public List <Ability> Load()
    {
        GameObject obj = (GameObject)Instantiate(Resources.Load("PrefabListAbility", typeof(GameObject)));

        obj.transform.parent = transform;

        AbilityListPrefab prefab = obj.GetComponent <AbilityListPrefab>();
        List <Ability>    list   = prefab.abilityList;

        for (int i = 0; i < list.Count; i++)    //from prefab
        {
            Ability ability = list[i];
            bool    match   = false;
            foreach (Ability a in allAbilityList)            //default
            {
                if (ability.ID == a.ID)
                {
                    ability.enableInlvl = a.enableInlvl;
                    if (ability.enableInlvl)
                    {
                        activeAbilityCount += 1;
                        activeAbilityList.Add(ability);
                    }
                    match = true;
                }
            }
            if (!match)
            {
                activeAbilityCount += 1;
                activeAbilityList.Add(ability);
            }
        }

        allAbilityList = list;

        foreach (Ability ability in allAbilityList)
        {
            ability.cooldown = 0;
        }

        energyInfo = prefab.resource;

        return(allAbilityList);
    }