public void ListClick(string type) { // Make item list foreach (Transform child in transform) { GameObject.Destroy(child.gameObject); } Slots.Clear(); // Clear all element Items.Clear(); Content.GetComponent<RectTransform> ().localPosition = new Vector3 (0, 0, 1); Content.GetComponent<RectTransform> ().sizeDelta = new Vector3(790, 350 * (listNum / 3.5f), 1); // Modify ListUI height int count = 0; for (int i = 1, j = jNum; i <= spriteNum[count] && j != 382; i++, j++) // i means image number, j means dataList number { if (i < spriteNum [count]) { // Assign path spritePath = pathArr [count]; } else if (i == spriteNum[count]){ count++; i = 1; }else if (spriteNum[count] == 0){ break; }else { i = spriteNum[count]; } GameObject slot = (GameObject)Instantiate(slots); // Make slot(item) list //GameObject itemButton; slot.GetComponent<Slot>().slotNumber = slotAmount; slot.gameObject.transform.GetChild (2).GetComponent<ClickButton> ().itemNumber = slotAmount; //itemButton.GetComponent<ClickButton> ().itemNumber = slotAmount; Slots.Add(slot); slot.transform.parent = this.gameObject.transform; slot.name = "slot" + i; slot.gameObject.transform.GetChild(0).GetComponent<Image>().sprite = Resources.Load<Sprite>(spritePath+i); if (type == "weapon") { // Check weapon or equipment data _weaponData = DataManager.Instance.weaponData.list [j-1]; slot.gameObject.transform.GetChild (1).GetComponent<Text> ().text = _weaponData.itemNo; ItemClass item = new ItemClass (_weaponData.type, spritePath+i); Items.Add (item); //Debug.Log (Items.Add[i]); } else { _equipmentData = DataManager.Instance.equipmentData.list [j-1]; slot.gameObject.transform.GetChild (1).GetComponent<Text> ().text = _equipmentData.itemNo; Items.Add(new ItemClass(_equipmentData.type, spritePath+i)); } //Debug.Log (Items [0].itemType); slot.GetComponent<RectTransform>().localScale = new Vector3(1, 1, 1); slot.GetComponent<RectTransform>().localPosition = new Vector3(x, y, 0); y -= 105; slotAmount++; } }
/// <summary> /// 주인공 정보를 ScriptableObject만듬 /// </summary> static void MakeWeaponData() { //SciprtableObject를 생성 WeaponData data = ScriptableObject.CreateInstance<WeaponData>(); //ScriptableObject를 파일로 만듬 AssetDatabase.CreateAsset((ScriptableObject)data, weaponExportPath); //수정 불가능하게 설정(에디터에서 수정 하게 하려면 주석처리) data.hideFlags = HideFlags.NotEditable; //자료를 삭제(초기화) data.list.Clear(); //CSVRead List<Dictionary<string,object>> csvData = CSVReader.Read("CSV/Weapon"); for (int i = 0; i < csvData.Count; i++) { WeaponData.Attribute temp = new WeaponData.Attribute(); // ItemNo, Type, isMelee , feature,itemHP itemDamage itemCriticalChance itemCriticalHit // itemAttackSpeed Slot1 Velue1 Slot2 Velue2 temp.itemNo = (string)csvData[i]["ItemNo"]; temp.type = (string)csvData[i]["Type"]; temp.isMelee = (string)csvData[i]["isMelee"]; temp.feature = (string)csvData[i]["Feature"]; temp.itemHP = (int)csvData[i]["itemHP"]; temp.itemDamage = (int)csvData[i]["itemDamage"]; temp.itemCriticalChance = (float)csvData[i]["itemCriticalChance"]; temp.itemCriticalHit = (float)csvData[i]["itemCriticalHit"]; temp.itemAttackSpeed = (float)csvData[i]["itemAttackSpeed"]; temp.slot1 = (string)csvData [i] ["Slot1"]; temp.value1 = (int)csvData [i] ["Velue1"]; temp.slot2 = (string)csvData [i] ["Slot2"]; temp.value2 = (int)csvData [i] ["Velue2"]; data.list.Add(temp); } //위에서 생성된 SciprtableObject의 파일을 찾음 ScriptableObject obj = AssetDatabase.LoadAssetAtPath(weaponExportPath, typeof(ScriptableObject)) as ScriptableObject; //디스크에 쓰기 EditorUtility.SetDirty(obj); }