using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
///
/// 通用方法
///
public class GeneralMethod
{
#region 常量
///
/// 占位符文本
///
private const string m_PlaceholderText = "-----";
///
/// 换行符文本
///
private const string m_NewlineText = "\r\n";
///
/// 分隔符
///
private const string m_Separator = "&&";
#endregion
#region 属性定义
///
/// 总文本信息
///
private static string m_TotalMessageTxt;
///
/// 缓存文本
///
private static string[] m_CacheInterceptsTxt;
#endregion
///
/// 返回增加缩进后的字符串
///
///
///
public static string ReturnsAnIndentString(string _msg)
{
if (string.IsNullOrEmpty(_msg))
{
return string.Empty;
}
m_TotalMessageTxt = string.Empty;
m_CacheInterceptsTxt = _msg.Split(new[] { m_Separator }, StringSplitOptions.RemoveEmptyEntries);
for (int i = 0; i < m_CacheInterceptsTxt.Length; i++)
{
m_TotalMessageTxt += m_PlaceholderText + m_CacheInterceptsTxt[i].Trim() + m_NewlineText;
}
m_TotalMessageTxt = m_TotalMessageTxt.Substring(0, m_TotalMessageTxt.Length - 2);
return m_TotalMessageTxt;
}
#region 通关统计
///
/// 获取当前角色的ID
///
///
public static string GetCurrentRoleNum()
{
return PlayerPrefs.GetString("StudentID");
}
///
/// 判断数据是否存在并返回
///
///
///
///
private static string DeterminesWhetherDataExistAndReturn(string _originalData,string _newData)
{
string result = string.Empty;
// 如果原始数据为空,则直接添加
if (string.IsNullOrEmpty(_originalData))
{
result = _newData;
}
else
{
List datas = _originalData.Split('、').ToList();
if (datas.Contains(_newData))
{
result = _originalData;
}
else
{
datas.Add(_newData);
result = string.Join("、", datas);
}
}
return result;
}
#endregion
///
/// 字符串转换为Vector3
///
///
/// 字符串截取符号
///
public static Vector3 String2Vector3(string _data,char _interceptSymbol)
{
if (string.IsNullOrEmpty(_data))
{
return Vector3.zero;
}
// 截取掉两端的括号
string rawData = _data.Split('(')[1].Split(')')[0];
string[] tmpData = rawData.Split(_interceptSymbol);
if (tmpData.Length != 3)
{
return Vector3.zero;
}
return new Vector3(float.Parse(tmpData[0].Trim()),
float.Parse(tmpData[1].Trim()), float.Parse(tmpData[2].Trim()));
}
///
/// 字符串改变
///
///
///
///
public static string StringChange(string _msg, char _symbol)
{
string[] tmpMsg = _msg.Split(_symbol);
return tmpMsg.Length >= 2 ? (tmpMsg[0] + "/" + tmpMsg[1]) : tmpMsg[0];
}
}