| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.IO;
- using System.Text;
- using UnityEngine;
- using UnityEngine.Networking;
- namespace WildAttack
- {
- public enum LanguageType
- {
- CH,
- EN,
- JP
- }
- public struct StringData
- {
- public string CH;
- public string EN;
- public string JP;
- }
- public class StringModule : Singleton<StringModule>, IModule
- {
- private Dictionary<string, StringData> stringDataDic;
- public IEnumerator LoadCSV(string fileName, Action callback)
- {
- string sPath = CSVUtils.GetStreamingAssetPath() + "/" + fileName;
- UnityWebRequest www = UnityWebRequest.Get(sPath);
- yield return www.SendWebRequest();
- File.WriteAllText(Application.persistentDataPath + "/" + fileName, www.downloadHandler.text, Encoding.GetEncoding("utf-8"));
- www.Dispose();
- SaveData(CSVUtils.GetInstance().LoadFile(Application.persistentDataPath, fileName));
- callback();
- }
- public void SaveData(string[] lineArr)
- {
- stringDataDic = new Dictionary<string, StringData>();
- for (int i = 1; i < lineArr.Length; i++)
- {
- string[] data = lineArr[i].Split(',');
- stringDataDic[data[0]] = new StringData()
- {
- CH = data[1],
- EN = data[2],
- JP = data[3]
- };
- }
- }
- public string GetData(string key)
- {
- if (stringDataDic.ContainsKey(key))
- {
- if (GameMananger.GetInstance().Language == LanguageType.CH)
- {
- return stringDataDic[key].CH;
- }
- else if (GameMananger.GetInstance().Language == LanguageType.EN)
- {
- return stringDataDic[key].EN;
- }
- else if (GameMananger.GetInstance().Language == LanguageType.JP)
- {
- return stringDataDic[key].JP;
- }
- else
- {
- return "";
- }
- }
- else
- {
- return "";
- }
- }
- }
- }
|