個人ゲームアプリ制作 -
unityによるゲーム制作

リリースアプリ一覧

unity2D


[Unity2D] アイテムデータベースの作成

Itemコンポーネントを作る

using UnityEngine;
using System.Collections;

[System.Serializable]
public class Item {
    public string itemName;
    public int itemID;
 
    public Item(string name, int id){   	 
        itemName = name;
        itemID = id; 
    }
}
ItemDatabaseコンポーネントを作成

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class ItemDatabase : MonoBehaviour{
	
	public List<Item> items = new List<Item>();
	static public ItemDatabase instanceIDB;

	void Awake(){
		if(instanceIDB == null){
			instanceIDB = this;
			DontDestroyOnLoad(gameObject);
		}else{
			Destroy(gameObject);
		}
	}
}

CsvReaderコンポーネントを作成。

using UnityEngine;
using System.Collections;
using System.IO;

public class CsvReader : MonoBehaviour {

    private ItemDatabase itemDatabase;
    private string[] item = new string[2];
    
    void Awake(){
        itemDatabase = GameObject.Find("ItemDatabase").GetComponent<ItemDatabase>();
    }

    void Start () {
       ItemDatabaseLoad();
    }

    private void ItemDatabaseLoad(){
        int i=0, j;
        TextAsset csv = Resources.Load ("CSV⁄item") as TextAsset;
        StringReader reader = new StringReader (csv.text);
            while (reader.Peek () > -1) {
            i++;

            string line = reader.ReadLine ();
            string[] values = line.Split (",");
            if(i > 1){
                for (j = 0; j < values.Length; j++) {
                    item[j] = values[j];
                }

            itemDatabase.items.Add(new Item(item[0], int.Parse(item[1])));
            }        
        }
    }
}

2017 / 04 / 23
unity2D
C#

スポンサーリンク

© 2018 Takahiro Ueda