91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Unity讀取txt文件并且用字典來使用txt里面的信息

發布時間:2020-07-26 14:35:01 來源:網絡 閱讀:3442 作者:酷酷小喬 欄目:開發技術

這幾天在做一個單機的RPG游戲,以前看到貼吧,論壇有人做一些RPG游戲,感覺好強啊,既然有資源,所以我也打算做一個,就在今天(2015年1月22日,我遇到了一個怎么讀取txt文本里面的配置信息的問題,以前沒接觸過,只在cocos2d里面接觸了一點,所以做的時候暈暈的,)

代碼:

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

public class ObjectsInfo : MonoBehaviour {

    public static ObjectsInfo _instance;
    public TextAsset objectsInfoListText;
     
    private Dictionary<int,ObjectInfo> objectInfoDict=new Dictionary<int, ObjectInfo>();//定義一個字典

    void Awake()
    {
    _instance=this;
     ReadInfo();
     print(objectInfoDict.Keys.Count);//打印出來看看讀取到了沒

    }

    //拿到字典里面的數據
    public  ObjectInfo GetObjectInfoByID(int id)
    {
     ObjectInfo info=null;

     objectInfoDict.TryGetValue(id,out info);


     return info;
    }

    //解析Txt文本文件
    void ReadInfo()
    {
     string text=objectsInfoListText.text;//取到文本里面所有的字符串
     string[] strArray = text.Split('\n');//用換行來取

     foreach(string str in strArray)//遍力數組
     {
      string[] proArray=str.Split(',');//根據,號來拆分文本里面的數據
      ObjectInfo info=new ObjectInfo();//用來存取在文本文件里面得到的這些信息
      int id=int.Parse(proArray[0]);//int.parse意思是把String 強制轉換成int
      string name=proArray[1];//名稱
      string icon_name=proArray[2];//存在圖集里面的名稱
      string str_type=proArray[3];//商品類型



      ObjectType type=ObjectType.Drug;
      switch(str_type)
      {
        case "Drug":
        type=ObjectType.Drug;
        break;

        case "Equip":
        type=ObjectType.Equip;
        break;

        case "Mat":
        type=ObjectType.Mat;
        break;
       
      }
      //得到信息
      info.id=id;
      info.name=name;
      info.icon_name=icon_name;
      info.type=type;



      if(type==ObjectType.Drug)
      {
       int hp=int.Parse(proArray[4]);//血
       int mp=int.Parse(proArray[5]);//藍
       int price_buy=int.Parse(proArray[6]);//購買價格
       int price_sell=int.Parse(proArray[7]);//出售價格
 

       //得到信息
       info.hp=hp;
       info.mp=mp;
       info.price_buy=price_buy;
       info.price_sell=price_sell;
      
      }
      objectInfoDict.Add(id,info);//添加到字典中 ID為Key,可以根據ID來找到這個物體的信息
     }

    }

    /*    0    1    2    3    4    5    6    7    8    9    10
       id 名稱 icon名稱    類型(藥品Drug)    加血量值    加魔法值    出售價    購買價            
      id 名稱    icon名稱    類型(裝備Equip)    加傷害值    加防御值    加速度值    穿戴類型    適用類型    出售價    購買價
      id 名稱    icon名稱    類型(材料Mat)    出售價    購買價    */                

      //類型
    public enum ObjectType
    {
       Drug,
       Equip,
       Mat
    }


    public class ObjectInfo
    {
      public int id;
      public string name;//名字
      public string icon_name;//存取在圖集中的名稱
      public ObjectType type;//類型
      public int hp;//血
      public int mp;//藍
      public int price_sell;//出售價
      public int price_buy;//購買價

    }
}


注意:我們需要把我們的txt文件放到我們的工程里面  txt里面主要放的是物品欄里面的東西。(商店)加一點注意Mac下txt文件的寫入需要換格式


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

麟游县| 通许县| 图片| 炉霍县| 分宜县| 枣庄市| 梁平县| 隆子县| 金堂县| 双牌县| 利津县| 辽阳县| 富平县| 潍坊市| 女性| 合川市| 黑龙江省| 廊坊市| 渑池县| 昆山市| 冕宁县| 芜湖县| 大方县| 军事| 卢氏县| 余庆县| 红桥区| 资阳市| 阿图什市| 萝北县| 高唐县| 攀枝花市| 东丽区| 虎林市| 长泰县| 潜江市| 罗山县| 蒙城县| 买车| 英山县| 阳城县|