add
8
Assets/trCRM/DBCfg.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fbbc1256181614d0c924ebf254e5b3a1
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/trCRM/DBCfg/DataCfgTool.xls
Normal file
7
Assets/trCRM/DBCfg/DataCfgTool.xls.meta
Normal file
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4010f0c2eaa21463cbf6fcc80a1989fd
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/trCRM/DBCfg/dataCpTool.bat
Normal file
@@ -0,0 +1,9 @@
|
||||
@ECHO OFF
|
||||
set listFile=list.tmp
|
||||
del "%listFile%" /q 1>nul 2>nul
|
||||
dir *.cs /a /b >> "%listFile%"
|
||||
FOR /f "tokens=*" %%a IN ('more "%listFile%"') DO (ANSI2UTF8.vbs "%%a")
|
||||
del "%listFile%" /q 1>nul 2>nul
|
||||
set curPath = %cd%
|
||||
move /y *.cs %curPath%
|
||||
PAUSE
|
||||
7
Assets/trCRM/DBCfg/dataCpTool.bat.meta
Normal file
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8964f2686523b4a9c903e75bbc1e08ed
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/DBCfg/jsonCfg.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4b0921c8d843d4a5f8193e0c2177fbcb
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/DistSpringWebsocketClient.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1bf949f0ecb2c4ce38f56cebc55662cc
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
506
Assets/trCRM/DistSpringWebsocketClient/Client.cs
Normal file
@@ -0,0 +1,506 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Net.WebSockets;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading;
|
||||
using Coolape;
|
||||
using XLua;
|
||||
|
||||
using UnityEngine;
|
||||
using System.Threading.Tasks;
|
||||
using System.Collections;
|
||||
using System.IO;
|
||||
|
||||
namespace Dist.SpringWebsocket
|
||||
{
|
||||
//public delegate void Receive(StompFrame frame);
|
||||
|
||||
public class Client : MonoBehaviour
|
||||
{
|
||||
/// <summary>
|
||||
/// 支持的stomp协议版本
|
||||
/// </summary>
|
||||
public static string StompPrototypeVersion = "accept-version:1.1,1.0";
|
||||
/// <summary>
|
||||
/// 心跳时间
|
||||
/// </summary>
|
||||
public static string HeartBeating = "heart-beat:10000,10000";
|
||||
/// <summary>
|
||||
/// 换行符,用于构造 Stomp 消息包
|
||||
/// </summary>
|
||||
public static Char LF = Convert.ToChar(10);
|
||||
/// <summary>
|
||||
/// 空字符,用于构造 Stomp 消息包
|
||||
/// </summary>
|
||||
public static Char NULL = Convert.ToChar(0);
|
||||
/// <summary>
|
||||
/// 当前连接类型
|
||||
/// </summary>
|
||||
public static string TYPE = "client";
|
||||
public static MemoryStream receivedBuffer = new MemoryStream();
|
||||
|
||||
Queue<StompFrame> queueCallback = new Queue<StompFrame>();
|
||||
|
||||
private static string SubscriptionHeader = "subscription";
|
||||
private static string DestinationHeader = "destination";
|
||||
private static string ContentLengthHeader = "content-length";
|
||||
private static string CID = "dist-connect";
|
||||
|
||||
private Dictionary<string, object> callbacks;
|
||||
private object statusCallback;
|
||||
private Dictionary<string, string> subscribes;
|
||||
public ClientWebSocket socket;
|
||||
private string url;
|
||||
private static int COUNTER = 0;
|
||||
public Boolean connected = false;
|
||||
public Queue<ArraySegment<byte>> sendQueue = new Queue<ArraySegment<byte>>();
|
||||
|
||||
public static Client self;
|
||||
public bool isSending = false;
|
||||
public bool isDebug = false;
|
||||
|
||||
public Client()
|
||||
{
|
||||
self = this;
|
||||
}
|
||||
|
||||
public async void init(string url, object callback)
|
||||
{
|
||||
//close();
|
||||
this.url = url;
|
||||
this.statusCallback = callback;
|
||||
this.callbacks = new Dictionary<string, object>();
|
||||
this.subscribes = new Dictionary<string, string>();
|
||||
try
|
||||
{
|
||||
this.socket = new ClientWebSocket();
|
||||
socket.ConnectAsync(new Uri(url), CancellationToken.None).Wait();
|
||||
socket_Opened(this);
|
||||
|
||||
await StartReceiving(socket);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Debug.LogError(e);
|
||||
socket_Error(this, e.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
public string URL
|
||||
{
|
||||
get { return url; }
|
||||
set { this.url = value; }
|
||||
}
|
||||
|
||||
async Task StartReceiving(ClientWebSocket client)
|
||||
{
|
||||
try
|
||||
{
|
||||
var array = new byte[1024 * 1024];
|
||||
ArraySegment<byte> arraySegment = new ArraySegment<byte>(array);
|
||||
var result = await client.ReceiveAsync(arraySegment, CancellationToken.None);
|
||||
while (!result.CloseStatus.HasValue)
|
||||
{
|
||||
if (result.MessageType == WebSocketMessageType.Text)
|
||||
{
|
||||
//string msg = Encoding.UTF8.GetString(array, 0, result.Count);
|
||||
//if (isDebug)
|
||||
//{
|
||||
// Debug.Log("receive:" + result.Count + "==\n" + msg);
|
||||
//}
|
||||
socket_MessageReceived(client, array, result.Count);
|
||||
}
|
||||
else if (result.MessageType == WebSocketMessageType.Close)
|
||||
{
|
||||
socket_Closed(this);
|
||||
break;
|
||||
}
|
||||
if (client == null || client.State == WebSocketState.Aborted
|
||||
|| client.State == WebSocketState.CloseSent
|
||||
|| client.State == WebSocketState.CloseReceived
|
||||
|| client.State == WebSocketState.Closed
|
||||
)
|
||||
{
|
||||
socket_Error(this, "State=" + client.State);
|
||||
break;
|
||||
}
|
||||
result = await client.ReceiveAsync(arraySegment, CancellationToken.None);
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Debug.LogError(e);
|
||||
socket_Error(this, e.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
async Task startSending(ClientWebSocket client)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (client == null || client.State == WebSocketState.Aborted
|
||||
|| client.State == WebSocketState.CloseSent
|
||||
|| client.State == WebSocketState.CloseReceived
|
||||
|| client.State == WebSocketState.Closed)
|
||||
{
|
||||
Debug.LogWarning("startSending=State=" + ((client != null) ? client.State.ToString() : ""));
|
||||
return;
|
||||
}
|
||||
isSending = true;
|
||||
while (sendQueue.Count > 0)
|
||||
{
|
||||
if (client == null || client.State == WebSocketState.Aborted
|
||||
|| client.State == WebSocketState.CloseSent
|
||||
|| client.State == WebSocketState.CloseReceived
|
||||
|| client.State == WebSocketState.Closed)
|
||||
{
|
||||
socket_Error(this, "State=" + client.State);
|
||||
break;
|
||||
}
|
||||
if (sendQueue.Count > 0)
|
||||
{
|
||||
var array = sendQueue.Dequeue();
|
||||
await socket.SendAsync(array, WebSocketMessageType.Text, true, CancellationToken.None);
|
||||
}
|
||||
}
|
||||
|
||||
isSending = false;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
isSending = false;
|
||||
Debug.LogError(e);
|
||||
socket_Error(this, e.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
async void _send(string content)
|
||||
{
|
||||
if (isDebug)
|
||||
{
|
||||
Debug.Log("send==\n" + content);
|
||||
}
|
||||
ArraySegment<byte> array = new ArraySegment<byte>(Encoding.UTF8.GetBytes(content));
|
||||
sendQueue.Enqueue(array);
|
||||
if (!isSending)
|
||||
{
|
||||
await startSending(this.socket);
|
||||
}
|
||||
}
|
||||
|
||||
public void Connect(Dictionary<string, string> headers, object callback)
|
||||
{
|
||||
if (!this.connected)
|
||||
{
|
||||
this.callbacks[CID] = callback;
|
||||
string data = StompCommandEnum.CONNECT.ToString() + LF;
|
||||
if (headers != null)
|
||||
{
|
||||
foreach (string key in headers.Keys)
|
||||
{
|
||||
data += key + ":" + headers[key] + LF;
|
||||
}
|
||||
}
|
||||
data += StompPrototypeVersion + LF
|
||||
+ HeartBeating + LF + LF + NULL;
|
||||
_send(data);
|
||||
}
|
||||
}
|
||||
public void Send(string destination, string content)
|
||||
{
|
||||
this.Send(destination, new Dictionary<string, string>(), content);
|
||||
}
|
||||
public void Send(string destination, Dictionary<string, string> headers, string content)
|
||||
{
|
||||
string data = StompCommandEnum.SEND.ToString() + LF;
|
||||
if (headers != null)
|
||||
{
|
||||
foreach (string key in headers.Keys)
|
||||
{
|
||||
data += key + ":" + headers[key] + LF;
|
||||
}
|
||||
}
|
||||
data += DestinationHeader + ":" + destination + LF
|
||||
+ ContentLengthHeader + ":" + GetByteCount(content) + LF + LF
|
||||
+ content + NULL;
|
||||
_send(data);
|
||||
}
|
||||
public void Send(string destination, LuaTable headers, string content)
|
||||
{
|
||||
string data = StompCommandEnum.SEND.ToString() + LF;
|
||||
if (headers != null)
|
||||
{
|
||||
headers.ForEach<string, object>((key, val) =>
|
||||
{
|
||||
data += key + ":" + val.ToString() + LF;
|
||||
});
|
||||
}
|
||||
data += DestinationHeader + ":" + destination + LF
|
||||
+ ContentLengthHeader + ":" + GetByteCount(content) + LF + LF
|
||||
+ content + NULL;
|
||||
_send(data);
|
||||
}
|
||||
|
||||
public void Subscribe(string destination, object callback)
|
||||
{
|
||||
this.Subscribe(destination, new Dictionary<string, string>(), callback);
|
||||
}
|
||||
public void Subscribe(string destination, Dictionary<string, string> headers, object callback)
|
||||
{
|
||||
lock (this)
|
||||
{
|
||||
if (!this.subscribes.ContainsKey(destination))
|
||||
{
|
||||
string id = "sub-" + COUNTER++;
|
||||
this.callbacks.Add(id, callback);
|
||||
this.subscribes.Add(destination, id);
|
||||
string data = StompCommandEnum.SUBSCRIBE.ToString() + LF + "id:" + id + LF;
|
||||
foreach (string key in headers.Keys)
|
||||
{
|
||||
data += key + ":" + headers[key] + LF;
|
||||
}
|
||||
data += DestinationHeader + ":" + destination + LF + LF + NULL;
|
||||
_send(data);
|
||||
}
|
||||
}
|
||||
}
|
||||
public void UnSubscribe(string destination)
|
||||
{
|
||||
if (this.subscribes.ContainsKey(destination))
|
||||
{
|
||||
_send(StompCommandEnum.UNSUBSCRIBE.ToString() + LF + "id:" + this.subscribes[destination] + LF + LF + NULL);
|
||||
this.callbacks.Remove(this.subscribes[destination]);
|
||||
this.subscribes.Remove(destination);
|
||||
}
|
||||
}
|
||||
public void DisConnect()
|
||||
{
|
||||
_send(StompCommandEnum.DISCONNECT.ToString() + LF + LF + NULL);
|
||||
ArrayList list = new ArrayList();
|
||||
list.AddRange(subscribes.Keys);
|
||||
foreach (var key in list)
|
||||
{
|
||||
UnSubscribe(key.ToString());
|
||||
}
|
||||
this.callbacks.Clear();
|
||||
this.subscribes.Clear();
|
||||
this.connected = false;
|
||||
isSending = false;
|
||||
}
|
||||
public bool IsSubscribed(string destination)
|
||||
{
|
||||
return this.subscribes.ContainsKey(destination);
|
||||
}
|
||||
|
||||
private int GetByteCount(string content)
|
||||
{
|
||||
return Regex.Split(Uri.EscapeUriString(content), "%..|.").Length - 1;
|
||||
}
|
||||
|
||||
private StompFrame TransformResultFrame(string content)
|
||||
{
|
||||
lock (this)
|
||||
{
|
||||
StompFrame frame = new StompFrame();
|
||||
//string[] matches = Regex.Split(content, "" + NULL + LF + "*");
|
||||
//foreach (var line in matches)
|
||||
//{
|
||||
//if (line.Length > 0)
|
||||
//{
|
||||
this.HandleSingleLine(content, frame);
|
||||
// }
|
||||
//}
|
||||
return frame;
|
||||
}
|
||||
}
|
||||
|
||||
private void HandleSingleLine(string line, StompFrame frame)
|
||||
{
|
||||
int divider = line.IndexOf("" + LF + LF);
|
||||
if (divider >= 0)
|
||||
{
|
||||
string[] headerLines = Regex.Split(line.Substring(0, divider), "" + LF);
|
||||
frame.Code = (StatusCodeEnum)Enum.Parse(typeof(StatusCodeEnum), headerLines[0]);
|
||||
for (int i = 1; i < headerLines.Length; i++)
|
||||
{
|
||||
int index = headerLines[i].IndexOf(":");
|
||||
string key = headerLines[i].Substring(0, index);
|
||||
string value = headerLines[i].Substring(index + 1);
|
||||
frame.AddHeader(Regex.Replace(key, @"^\s+|\s+$", ""), Regex.Replace(value, @"^\s+|\s+$", ""));
|
||||
}
|
||||
frame.Content = line.Substring(divider + 2);
|
||||
}
|
||||
}
|
||||
private void socket_Error(object sender, string errMsg)
|
||||
{
|
||||
if (isDebug)
|
||||
{
|
||||
Debug.LogWarning("socket_Error==" + errMsg);
|
||||
}
|
||||
//close();
|
||||
//this.connected = false;
|
||||
queueCallback.Enqueue(new StompFrame(StatusCodeEnum.SERVERERROR, errMsg, null, statusCallback));
|
||||
}
|
||||
void socket_Closed(object sender)
|
||||
{
|
||||
if (isDebug)
|
||||
{
|
||||
Debug.LogWarning("socket_Closed");
|
||||
}
|
||||
this.connected = false;
|
||||
if (socket != null)
|
||||
{
|
||||
socket.Abort();
|
||||
socket.Dispose();
|
||||
socket = null;
|
||||
}
|
||||
//this.socket.Dispose();
|
||||
queueCallback.Enqueue(new StompFrame(StatusCodeEnum.SERVERCLOSED, "与服务器断开连接", null, statusCallback));
|
||||
}
|
||||
private void socket_Opened(object sender)
|
||||
{
|
||||
queueCallback.Enqueue(new StompFrame(StatusCodeEnum.OPENSERVER, "成功连接到服务器", null, statusCallback));
|
||||
}
|
||||
|
||||
public static int __maxLen = 1024 * 1024;
|
||||
byte[] tmpBuffer = new byte[__maxLen];
|
||||
StringBuilder inputSb = new StringBuilder();
|
||||
void socket_MessageReceived(object sender, byte[] bytes, int len)
|
||||
{
|
||||
receivedBuffer.Write(bytes, 0, len);
|
||||
int totalLen = (int)(receivedBuffer.Length);
|
||||
receivedBuffer.Position = 0;
|
||||
receivedBuffer.Read(tmpBuffer, 0, totalLen);
|
||||
receivedBuffer.Position = totalLen;
|
||||
|
||||
string msg = Encoding.UTF8.GetString(tmpBuffer, 0, totalLen);
|
||||
inputSb.Append(msg);
|
||||
while (true)
|
||||
{
|
||||
int index = inputSb.ToString().IndexOf(NULL);
|
||||
if (index < 0)
|
||||
{
|
||||
// 说明数据包还不完整
|
||||
break;
|
||||
}
|
||||
string content = inputSb.ToString().Substring(0, index);
|
||||
inputSb.Remove(0, index + 1);
|
||||
if(isDebug)
|
||||
{
|
||||
Debug.LogWarning(content);
|
||||
}
|
||||
StompFrame frame = this.TransformResultFrame(content);
|
||||
|
||||
object callback;
|
||||
switch (frame.Code)
|
||||
{
|
||||
case StatusCodeEnum.CONNECTED:
|
||||
connected = true;
|
||||
callbacks.TryGetValue(CID, out callback);
|
||||
frame.callback = callback;
|
||||
queueCallback.Enqueue(frame);
|
||||
break;
|
||||
case StatusCodeEnum.MESSAGE:
|
||||
callbacks.TryGetValue(frame.GetHeader(SubscriptionHeader), out callback);
|
||||
frame.callback = callback;
|
||||
queueCallback.Enqueue(frame);
|
||||
break;
|
||||
default:
|
||||
Debug.LogError(frame.Code);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// left msg proc
|
||||
msg = inputSb.ToString();
|
||||
inputSb.Clear();
|
||||
int leftLen = 0;
|
||||
if (!string.IsNullOrEmpty(msg))
|
||||
{
|
||||
byte[] leftBytes = Encoding.UTF8.GetBytes(msg);
|
||||
leftLen = leftBytes.Length;
|
||||
}
|
||||
if (leftLen > 0)
|
||||
{
|
||||
receivedBuffer.Read(tmpBuffer, 0, leftLen);
|
||||
receivedBuffer.Position = 0;
|
||||
receivedBuffer.Write(tmpBuffer, 0, leftLen);
|
||||
receivedBuffer.SetLength(leftLen);
|
||||
} else
|
||||
{
|
||||
receivedBuffer.Position = 0;
|
||||
receivedBuffer.SetLength(0);
|
||||
}
|
||||
}
|
||||
|
||||
//===============================================
|
||||
StompFrame _stompframe;
|
||||
private void Update()
|
||||
{
|
||||
if (queueCallback.Count > 0)
|
||||
{
|
||||
_stompframe = queueCallback.Dequeue();
|
||||
if (_stompframe != null)
|
||||
{
|
||||
Utl.doCallback(_stompframe.callback, _stompframe);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void close()
|
||||
{
|
||||
try
|
||||
{
|
||||
receivedBuffer.Position = 0;
|
||||
receivedBuffer.SetLength(0);
|
||||
if (connected)
|
||||
{
|
||||
connected = false;
|
||||
isSending = false;
|
||||
if (isDebug)
|
||||
{
|
||||
Debug.Log("close===");
|
||||
}
|
||||
|
||||
if (socket == null || socket.State == WebSocketState.Aborted
|
||||
|| socket.State == WebSocketState.CloseSent
|
||||
|| socket.State == WebSocketState.CloseReceived
|
||||
|| socket.State == WebSocketState.Closed)
|
||||
{
|
||||
if (socket != null)
|
||||
{
|
||||
if (isDebug)
|
||||
{
|
||||
Debug.LogWarning("socket.Abort");
|
||||
}
|
||||
//socket.CloseOutputAsync(WebSocketCloseStatus.Empty, null, CancellationToken.None).Wait();
|
||||
//socket.CloseAsync(WebSocketCloseStatus.Empty, null, CancellationToken.None).Wait();
|
||||
socket.Abort();
|
||||
socket.Dispose();
|
||||
socket = null;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (isDebug)
|
||||
{
|
||||
Debug.LogWarning("send DisConnect");
|
||||
}
|
||||
DisConnect();
|
||||
}
|
||||
queueCallback.Clear();
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Debug.LogError(e);
|
||||
}
|
||||
}
|
||||
|
||||
private void OnDestroy()
|
||||
{
|
||||
close();
|
||||
}
|
||||
}
|
||||
}
|
||||
11
Assets/trCRM/DistSpringWebsocketClient/Client.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ed0b65beeb03b4ee4a5a604188b24571
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/DistSpringWebsocketClient/Properties.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 02773c15570e142f9a69b26adda93538
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,36 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// 有关程序集的常规信息通过以下
|
||||
// 特性集控制。更改这些特性值可修改
|
||||
// 与程序集关联的信息。
|
||||
[assembly: AssemblyTitle("DistSpringWebsocketClient")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("DistSpringWebsocketClient")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2016")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// 将 ComVisible 设置为 false 使此程序集中的类型
|
||||
// 对 COM 组件不可见。 如果需要从 COM 访问此程序集中的类型,
|
||||
// 则将该类型上的 ComVisible 特性设置为 true。
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
|
||||
[assembly: Guid("c786064a-8aae-4cb8-b686-c8d764cace9f")]
|
||||
|
||||
// 程序集的版本信息由下面四个值组成:
|
||||
//
|
||||
// 主版本
|
||||
// 次版本
|
||||
// 生成号
|
||||
// 修订号
|
||||
//
|
||||
// 可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
|
||||
// 方法是按如下所示使用“*”:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d2971e4633a07404294ecdad29fa347b
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
18
Assets/trCRM/DistSpringWebsocketClient/StatusCodeEnum.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace Dist.SpringWebsocket
|
||||
{
|
||||
public enum StatusCodeEnum
|
||||
{
|
||||
OPENSERVER,
|
||||
CANNOTOPENSERVER,
|
||||
SERVERCLOSED,
|
||||
SERVERERROR,
|
||||
CONNECTED,
|
||||
MESSAGE,
|
||||
RECEIPT,
|
||||
ERROR
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2610d7289bbc24db29764c10ae1e6dfd
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
24
Assets/trCRM/DistSpringWebsocketClient/StompCommandEnum.cs
Normal file
@@ -0,0 +1,24 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace Dist.SpringWebsocket
|
||||
{
|
||||
public enum StompCommandEnum
|
||||
{
|
||||
CONNECT,
|
||||
CONNECTED,
|
||||
SEND,
|
||||
SUBSCRIBE,
|
||||
UNSUBSCRIBE,
|
||||
ACK,
|
||||
NACK,
|
||||
BEGIN,
|
||||
COMMIT,
|
||||
ABORT,
|
||||
DISCONNECT,
|
||||
MESSAGE,
|
||||
RECEIPT,
|
||||
ERROR
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 267a89c17fbb243d7a4b8ecf5bd50651
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
67
Assets/trCRM/DistSpringWebsocketClient/StompFrame.cs
Normal file
@@ -0,0 +1,67 @@
|
||||
//using Newtonsoft.Json.Linq;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace Dist.SpringWebsocket
|
||||
{
|
||||
public class StompFrame
|
||||
{
|
||||
private StatusCodeEnum code;
|
||||
private string content;
|
||||
private Dictionary<string,string> headers;
|
||||
public object callback;
|
||||
public StompFrame() {
|
||||
}
|
||||
public StompFrame(StatusCodeEnum code):this()
|
||||
{
|
||||
this.code = code;
|
||||
}
|
||||
public StompFrame(StatusCodeEnum code, string content) :this(code)
|
||||
{
|
||||
this.content = content;
|
||||
}
|
||||
public StompFrame(StatusCodeEnum code, string content, Dictionary<string, string> headers) : this(code, content)
|
||||
{
|
||||
this.headers = headers;
|
||||
}
|
||||
public StompFrame(StatusCodeEnum code, string content, Dictionary<string, string> headers, object callback) : this(code, content, headers)
|
||||
{
|
||||
this.callback = callback;
|
||||
}
|
||||
|
||||
public void AddHeader(string key, string value)
|
||||
{
|
||||
if (this.headers == null)
|
||||
{
|
||||
this.headers = new Dictionary<string, string>();
|
||||
}
|
||||
this.headers.Add(key, value);
|
||||
}
|
||||
public string GetHeader(string key)
|
||||
{
|
||||
return this.headers[key];
|
||||
}
|
||||
public bool ContainsHeader(string key)
|
||||
{
|
||||
return this.headers.ContainsKey(key);
|
||||
}
|
||||
public StatusCodeEnum Code
|
||||
{
|
||||
get { return code; }
|
||||
set { code = value; }
|
||||
}
|
||||
|
||||
public string Content
|
||||
{
|
||||
get { return content; }
|
||||
set { content = value; }
|
||||
}
|
||||
|
||||
public Dictionary<string, string> Headers
|
||||
{
|
||||
get { return headers; }
|
||||
set { headers = value; }
|
||||
}
|
||||
}
|
||||
}
|
||||
11
Assets/trCRM/DistSpringWebsocketClient/StompFrame.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c83c2193c2d31458aa37954d2c528bde
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Editor.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cb58a823d9ed144ebbfb1338913f07da
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
77
Assets/trCRM/Editor/EMyUIPanel.cs
Normal file
@@ -0,0 +1,77 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using Coolape;
|
||||
using System.IO;
|
||||
|
||||
[CustomEditor(typeof(MyUIPanel), true)]
|
||||
public class EMyUIPanel : CLPanelLuaInspector
|
||||
{
|
||||
private MyUIPanel instance;
|
||||
string title = "";
|
||||
bool isFinishInited = false;
|
||||
void init()
|
||||
{
|
||||
if (isFinishInited) return;
|
||||
isFinishInited = true;
|
||||
instance = target as MyUIPanel;
|
||||
string language = "Chinese";
|
||||
if (!Localization.language.Equals(language))
|
||||
{
|
||||
byte[] buff = null;
|
||||
string languageFile = PStr.b(
|
||||
CLPathCfg.self.localizationPath,
|
||||
language, ".txt").e();
|
||||
#if UNITY_EDITOR
|
||||
if (CLCfgBase.self.isEditMode)
|
||||
{
|
||||
languageFile = PStr.b().a(CLPathCfg.persistentDataPath).a("/").a(languageFile).e();
|
||||
languageFile = languageFile.Replace("/upgradeRes/", "/upgradeRes4Dev/");
|
||||
buff = File.ReadAllBytes(languageFile);
|
||||
}
|
||||
else
|
||||
{
|
||||
buff = FileEx.readNewAllBytes(languageFile);
|
||||
}
|
||||
#else
|
||||
buff = FileEx.readNewAllBytes(languageFile);
|
||||
#endif
|
||||
Localization.Load(language, buff);
|
||||
}
|
||||
title = Localization.Get(instance.titleKeyName);
|
||||
}
|
||||
|
||||
public override void OnInspectorGUI()
|
||||
{
|
||||
init();
|
||||
GUILayout.BeginHorizontal();
|
||||
{
|
||||
EditorGUILayout.LabelField("页面Title", ECLEditorUtl.width80);
|
||||
title = EditorGUILayout.TextField(title);
|
||||
|
||||
#region add by chenbin
|
||||
if (GUILayout.Button("Select"))
|
||||
{
|
||||
ECLLocalizeSelection.open((ECLLocalizeSelection.OnSlecteCallback)OnSlecteLocalize);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
GUILayout.EndHorizontal();
|
||||
|
||||
GUILayout.BeginHorizontal();
|
||||
{
|
||||
EditorGUILayout.LabelField("页面Title Key", ECLEditorUtl.width80);
|
||||
instance.titleKeyName = EditorGUILayout.TextField(instance.titleKeyName);
|
||||
}
|
||||
GUILayout.EndHorizontal();
|
||||
base.OnInspectorGUI();
|
||||
}
|
||||
|
||||
public void OnSlecteLocalize(string key, string val)
|
||||
{
|
||||
instance.titleKeyName = key;
|
||||
title = val;
|
||||
}
|
||||
|
||||
}
|
||||
11
Assets/trCRM/Editor/EMyUIPanel.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 81c1d68871ec647d59f1361be97527b6
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
13
Assets/trCRM/Editor/ETrcrmMenus.cs
Normal file
@@ -0,0 +1,13 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEditor;
|
||||
|
||||
public class ETrcrmMenus
|
||||
{
|
||||
|
||||
[MenuItem("Assets/Create/Lua Script/New Class Lua Panel", false, 81)]
|
||||
public static void CreatNewLuaPanel()
|
||||
{
|
||||
ECLCreateFile.PubCreatNewFile("Assets/trCRM/Templates/Lua/NewClassLuaPanel.lua", ECLCreateFile.GetSelectedPathOrFallback() + "/NewLuaPanel.lua");
|
||||
}
|
||||
}
|
||||
11
Assets/trCRM/Editor/ETrcrmMenus.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3c5654ee4cf414a2e849e1f88f846006
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Resources.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8786299ae2cf94440b25bd05b334f834
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Resources/Atlas.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 22ac7e3eae14a485e8b77d65bf91eb2f
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
52
Assets/trCRM/Resources/Atlas/EmptyAtlas.prefab
Normal file
@@ -0,0 +1,52 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &2272587691256266722
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1067776469385630175}
|
||||
- component: {fileID: 8379920634462272047}
|
||||
m_Layer: 0
|
||||
m_Name: EmptyAtlas
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &1067776469385630175
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2272587691256266722}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &8379920634462272047
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2272587691256266722}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4d0c51bb0b6e93049af5e88f93826e3b, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
material: {fileID: 0}
|
||||
mSprites: []
|
||||
mPixelSize: 1
|
||||
mReplacement: {fileID: 0}
|
||||
mCoordinates: 0
|
||||
sprites: []
|
||||
_isBorrowSpriteMode: 1
|
||||
7
Assets/trCRM/Resources/Atlas/EmptyAtlas.prefab.meta
Normal file
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9aea3d2b5a77f4e84bd921688ff9ca99
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Resources/Font.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7282f5e36c78043119bc214d35f905dc
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
66
Assets/trCRM/Resources/Font/EmptyFont.prefab
Normal file
@@ -0,0 +1,66 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &1616858306103943367
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 6038945009111154890}
|
||||
- component: {fileID: 7005176185871406937}
|
||||
m_Layer: 0
|
||||
m_Name: EmptyFont
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &6038945009111154890
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1616858306103943367}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &7005176185871406937
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1616858306103943367}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 0b4eb3a400afab046abb8471a9d746d6, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
mMat: {fileID: 0}
|
||||
mUVRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
mFont:
|
||||
mSize: 16
|
||||
mBase: 0
|
||||
mWidth: 0
|
||||
mHeight: 0
|
||||
mSpriteName:
|
||||
mSaved: []
|
||||
mAtlas: {fileID: 0}
|
||||
atlasName:
|
||||
mReplacement: {fileID: 0}
|
||||
mSymbols: []
|
||||
mDynamicFont: {fileID: 12800000, guid: e49e0253465a54d1a83f684649c927ae, type: 3}
|
||||
mDynamicFontSize: 46
|
||||
mDynamicFontStyle: 0
|
||||
7
Assets/trCRM/Resources/Font/EmptyFont.prefab.meta
Normal file
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7d76ebfe2dca9412195ae21f35d1b138
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Resources/Shaders.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e9896101a0f2549c18be247df58ec735
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Scripts.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e8355837036fd47fa8071858434a6e2a
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Scripts/Main.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f7e8ebaff01ae4677874293e5c07cab0
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
32
Assets/trCRM/Scripts/Main/MyMain.cs
Normal file
@@ -0,0 +1,32 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using Coolape;
|
||||
|
||||
public class MyMain : CLMainBase
|
||||
{
|
||||
[Tooltip("状态栏是否显示状态及通知")]
|
||||
public bool statusBar = false;
|
||||
[Tooltip("状态栏样式")]
|
||||
public AndroidStatusBar.States statesBar = AndroidStatusBar.States.Visible;
|
||||
public override void init()
|
||||
{
|
||||
string str = "qdkdkdkdkd";
|
||||
Debug.Log(System.Text.RegularExpressions.Regex.Split(str, "d*").Length);
|
||||
base.init();
|
||||
|
||||
if (Application.platform == RuntimePlatform.Android)
|
||||
{
|
||||
if (statusBar)
|
||||
{
|
||||
Screen.fullScreen = false;
|
||||
}
|
||||
//AndroidStatusBar.statusBarState = statesBar;
|
||||
//AndroidStatusBar.dimmed = !statusBar;
|
||||
}
|
||||
}
|
||||
|
||||
public override void doOffline()
|
||||
{
|
||||
base.doOffline();
|
||||
}
|
||||
}
|
||||
11
Assets/trCRM/Scripts/Main/MyMain.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7d951d33d5b4047c68866e4fb9f99e2e
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Scripts/NAudio.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 79314345aa5844e9998f22d91af26b7f
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
125
Assets/trCRM/Scripts/NAudio/Mp3PlayerByUrl.cs
Normal file
@@ -0,0 +1,125 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Networking;
|
||||
using Coolape;
|
||||
|
||||
public class Mp3PlayerByUrl : MonoBehaviour
|
||||
{
|
||||
public AudioSource audioSource;
|
||||
public string mUrl;
|
||||
public AudioType audioType = AudioType.MPEG;
|
||||
public UnityWebRequest www;
|
||||
public AudioClip myClip;
|
||||
public object finishCallback;
|
||||
public object progressCallback;
|
||||
public bool isPlaying = false;
|
||||
|
||||
public UnityWebRequest getAudioClip(string url, object callback)
|
||||
{
|
||||
StartCoroutine(_getAudioClip(url, callback));
|
||||
return www;
|
||||
}
|
||||
|
||||
public IEnumerator _getAudioClip(string url, object callback)
|
||||
{
|
||||
if (string.IsNullOrEmpty(url))
|
||||
{
|
||||
yield return null;
|
||||
}
|
||||
www = UnityWebRequestMultimedia.GetAudioClip(url, audioType);
|
||||
using (www)
|
||||
{
|
||||
yield return www.SendWebRequest();
|
||||
|
||||
if (www.isNetworkError)
|
||||
{
|
||||
Debug.Log(www.error);
|
||||
}
|
||||
else
|
||||
{
|
||||
myClip = DownloadHandlerAudioClip.GetContent(www);
|
||||
Utl.doCallback(callback, myClip);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void play(AudioClip clip, object progressCb, object finishCb)
|
||||
{
|
||||
if (clip == null) return;
|
||||
progressCallback = progressCb;
|
||||
finishCallback = finishCb;
|
||||
audioSource.clip = myClip;
|
||||
audioSource.time = 0;
|
||||
audioSource.Play();
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
if (audioSource == null || audioSource.clip == null) return;
|
||||
if (!audioSource.isPlaying && isPlaying && Mathf.Abs(1 - audioSource.time / audioSource.clip.length) <= 0.01)
|
||||
{
|
||||
isPlaying = audioSource.isPlaying;
|
||||
Utl.doCallback(finishCallback, audioSource.clip);
|
||||
//stop();
|
||||
audioSource.time = 0;
|
||||
}
|
||||
else if(audioSource.isPlaying)
|
||||
{
|
||||
isPlaying = audioSource.isPlaying;
|
||||
Utl.doCallback(progressCallback, audioSource.time / audioSource.clip.length, audioSource.time);
|
||||
}
|
||||
}
|
||||
|
||||
public float progress()
|
||||
{
|
||||
if (audioSource == null || audioSource.clip == null)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
return audioSource.time / audioSource.clip.length;
|
||||
}
|
||||
|
||||
public void stop()
|
||||
{
|
||||
audioSource.Stop();
|
||||
}
|
||||
|
||||
public void release()
|
||||
{
|
||||
stop();
|
||||
if (audioSource.clip != null)
|
||||
{
|
||||
Destroy(audioSource.clip);
|
||||
audioSource.clip = null;
|
||||
}
|
||||
}
|
||||
|
||||
public void pause()
|
||||
{
|
||||
audioSource.Pause();
|
||||
}
|
||||
|
||||
public void rePlay()
|
||||
{
|
||||
audioSource.UnPause();
|
||||
if (!audioSource.isPlaying)
|
||||
{
|
||||
audioSource.Play();
|
||||
}
|
||||
}
|
||||
|
||||
public void seek(float persent)
|
||||
{
|
||||
if (audioSource != null)
|
||||
{
|
||||
float sec = audioSource.clip.length * persent;
|
||||
audioSource.time = sec;
|
||||
if (!audioSource.isPlaying)
|
||||
{
|
||||
audioSource.Play();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
11
Assets/trCRM/Scripts/NAudio/Mp3PlayerByUrl.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 468c5112a721645e78cea88b0e3d1ce7
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Scripts/public.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 220261da2d9c74669b6ec1b59f2b16b3
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
10
Assets/trCRM/Scripts/public/MyCfg.cs
Normal file
@@ -0,0 +1,10 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using Coolape;
|
||||
|
||||
public class MyCfg : CLCfgBase
|
||||
{
|
||||
public static int mode = 0;
|
||||
public string default_UID = "";
|
||||
//TODO:
|
||||
}
|
||||
11
Assets/trCRM/Scripts/public/MyCfg.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5e28cad2f718f443db7bef1ef8b01221
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
51
Assets/trCRM/Scripts/public/MyWWWTexture.cs
Normal file
@@ -0,0 +1,51 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using Coolape;
|
||||
|
||||
public class MyWWWTexture : MonoBehaviour
|
||||
{
|
||||
string mUrl;
|
||||
public UITexture texture;
|
||||
public bool pixelPerfect = true;
|
||||
|
||||
public void Start()
|
||||
{
|
||||
loadTextrue();
|
||||
}
|
||||
|
||||
public string url
|
||||
{
|
||||
get
|
||||
{
|
||||
return mUrl;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
if(value != null && !value.Equals(mUrl))
|
||||
{
|
||||
mUrl = value;
|
||||
loadTextrue();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void loadTextrue()
|
||||
{
|
||||
if (string.IsNullOrEmpty(url)) return;
|
||||
WWWEx.get(url, CLAssetType.texture, (Callback)onLoadTexture, null, url, true, 2);
|
||||
}
|
||||
|
||||
void onLoadTexture(params object[] objs)
|
||||
{
|
||||
Texture tex = objs[0] as Texture;
|
||||
string _url = objs[1] as string;
|
||||
if(_url.Equals(url))
|
||||
{
|
||||
texture.mainTexture = tex;
|
||||
if (pixelPerfect) texture.MakePixelPerfect();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
11
Assets/trCRM/Scripts/public/MyWWWTexture.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6acd50f2b7d0b4de3902d54ce2eb83f4
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Scripts/stomp.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 24ad222aaf90e4e88a89e4fd237253be
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Scripts/ui.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3563c9e91ebd246d1a21913a43bdb31f
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
72
Assets/trCRM/Scripts/ui/CLUICheckbox.cs
Normal file
@@ -0,0 +1,72 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using Coolape;
|
||||
|
||||
public class CLUICheckbox : CLUIElement
|
||||
{
|
||||
public bool isMultMode = true;
|
||||
object data;
|
||||
//ArrayList checkeds = new ArrayList();
|
||||
string _value = "";
|
||||
|
||||
public List<EventDelegate> onChange = new List<EventDelegate>();
|
||||
|
||||
public void init(object data)
|
||||
{
|
||||
this.data = data;
|
||||
}
|
||||
|
||||
protected void ExecuteOnChange()
|
||||
{
|
||||
if (EventDelegate.IsValid(onChange))
|
||||
{
|
||||
EventDelegate.Execute(onChange, gameObject); // modify by chenbin
|
||||
}
|
||||
}
|
||||
|
||||
public void OnClick()
|
||||
{
|
||||
CLPanelManager.getPanelAsy("PanelPopCheckBoxs", (Callback)onGetPanel);
|
||||
}
|
||||
void onGetPanel(params object[] obj)
|
||||
{
|
||||
CLPanelLua p = (CLPanelLua)(obj[0]);
|
||||
ArrayList orgs = new ArrayList();
|
||||
orgs.Add(data);
|
||||
orgs.Add(value);
|
||||
orgs.Add(isMultMode);
|
||||
orgs.Add((Callback)onSelectedValue);
|
||||
p.setData(orgs);
|
||||
CLPanelManager.showTopPanel(p, true, true);
|
||||
}
|
||||
|
||||
void onSelectedValue(params object[] orgs)
|
||||
{
|
||||
string val = orgs[0].ToString();
|
||||
value = val;
|
||||
}
|
||||
|
||||
public override object value
|
||||
{
|
||||
get
|
||||
{
|
||||
return _value;
|
||||
}
|
||||
set
|
||||
{
|
||||
_value = value.ToString();
|
||||
ExecuteOnChange();
|
||||
}
|
||||
}
|
||||
|
||||
public override object getValue()
|
||||
{
|
||||
return value;
|
||||
}
|
||||
|
||||
public override void setValue(object obj)
|
||||
{
|
||||
value = obj;
|
||||
}
|
||||
}
|
||||
11
Assets/trCRM/Scripts/ui/CLUICheckbox.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 10e537da23dab4a78b272e1caed2ad0f
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
33
Assets/trCRM/Scripts/ui/MyDragEvent4Page.cs
Normal file
@@ -0,0 +1,33 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using Coolape;
|
||||
using System.Collections.Generic;
|
||||
|
||||
public class MyDragEvent4Page : UIEventListener
|
||||
{
|
||||
public MyDragManager _dragPage;
|
||||
|
||||
public MyDragManager dragPage {
|
||||
get {
|
||||
if (_dragPage == null) {
|
||||
_dragPage = GetComponentInParent<MyDragManager> ();
|
||||
}
|
||||
return _dragPage;
|
||||
}
|
||||
}
|
||||
|
||||
public void OnPress (bool isPressed)
|
||||
{
|
||||
if (dragPage != null) {
|
||||
dragPage.OnPress (isPressed);
|
||||
}
|
||||
}
|
||||
|
||||
public void OnDrag (Vector2 delta)
|
||||
{
|
||||
if (dragPage != null) {
|
||||
dragPage.OnDrag (delta);
|
||||
dragPage.notifyDrag (delta);
|
||||
}
|
||||
}
|
||||
}
|
||||
11
Assets/trCRM/Scripts/ui/MyDragEvent4Page.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1c959b935cdd44607b9e8c846bbedee7
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
110
Assets/trCRM/Scripts/ui/MyDragManager.cs
Normal file
@@ -0,0 +1,110 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using Coolape;
|
||||
using System.Collections.Generic;
|
||||
|
||||
public class MyDragManager : UIEventListener
|
||||
{
|
||||
public UIDragPageContents _dragPage;
|
||||
|
||||
public UIDragPageContents dragPage {
|
||||
get {
|
||||
if (_dragPage == null) {
|
||||
UIGridPage gridpage = GetComponentInParent<UIGridPage> ();
|
||||
if (gridpage != null) {
|
||||
_dragPage = gridpage.GetComponentInParent<UIDragPageContents> ();
|
||||
}
|
||||
}
|
||||
return _dragPage;
|
||||
}
|
||||
}
|
||||
|
||||
public UIDragScrollView _dragContent;
|
||||
|
||||
public UIDragScrollView dragContent {
|
||||
get {
|
||||
if (_dragContent == null) {
|
||||
_dragContent = GetComponentInParent<UIDragScrollView> ();
|
||||
}
|
||||
return _dragContent;
|
||||
}
|
||||
}
|
||||
|
||||
// Vector2 totalDelta = Vector2.zero;
|
||||
|
||||
public void Start ()
|
||||
{
|
||||
if (dragPage != null)
|
||||
dragPage.enabled = true;
|
||||
if (dragContent != null)
|
||||
dragContent.enabled = true;
|
||||
}
|
||||
|
||||
bool canDrag = false;
|
||||
|
||||
public void OnPress (bool isPressed)
|
||||
{
|
||||
if (!NGUITools.GetActive (this))
|
||||
return;
|
||||
if (isPressed) {
|
||||
canDrag = true;
|
||||
if (dragPage != null) {
|
||||
dragPage.enabled = true;
|
||||
dragPage.OnPress (isPressed);
|
||||
}
|
||||
if (dragContent != null) {
|
||||
dragContent.enabled = true;
|
||||
dragContent.OnPress (isPressed);
|
||||
}
|
||||
} else {
|
||||
canDrag = false;
|
||||
|
||||
if (dragPage != null) {
|
||||
dragPage.enabled = true;
|
||||
dragPage.OnPress (isPressed);
|
||||
}
|
||||
if (dragContent != null) {
|
||||
dragContent.enabled = true;
|
||||
dragContent.OnPress (isPressed);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void notifyDrag (Vector2 delta)
|
||||
{
|
||||
if (!NGUITools.GetActive (this))
|
||||
return;
|
||||
if (dragPage != null && dragPage.enabled) {
|
||||
dragPage.OnDrag (delta);
|
||||
}
|
||||
if (dragContent != null && dragContent.enabled) {
|
||||
dragContent.OnDrag (delta);
|
||||
}
|
||||
}
|
||||
|
||||
public void OnDrag (Vector2 delta)
|
||||
{
|
||||
if (!NGUITools.GetActive (this))
|
||||
return;
|
||||
if (!canDrag) {
|
||||
return;
|
||||
}
|
||||
canDrag = false;
|
||||
if (Mathf.Abs (delta.x) > Mathf.Abs (delta.y)) {
|
||||
// dragPage.enabled = true;
|
||||
if (dragPage != null) {
|
||||
dragPage.enabled = true;
|
||||
dragContent.enabled = false;
|
||||
// dragPage.OnPress (true);
|
||||
// dragPage.OnDrag (delta);
|
||||
}
|
||||
} else {
|
||||
if (dragContent != null) {
|
||||
dragContent.enabled = true;
|
||||
dragPage.enabled = false;
|
||||
// dragContent.OnPress (true);
|
||||
// dragContent.OnDrag (delta);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
11
Assets/trCRM/Scripts/ui/MyDragManager.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ea1ee2de65dd74683b569d4604546609
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
73
Assets/trCRM/Scripts/ui/MyInputReset.cs
Normal file
@@ -0,0 +1,73 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class MyInputReset : UIEventListener
|
||||
{
|
||||
public UIInput input;
|
||||
|
||||
private void Start()
|
||||
{
|
||||
if (input == null)
|
||||
{
|
||||
input = GetComponentInParent<UIInput>();
|
||||
}
|
||||
if (input != null)
|
||||
{
|
||||
EventDelegate newDel = new EventDelegate();
|
||||
newDel.target = this;
|
||||
newDel.methodName = "onInputChg";
|
||||
input.onChange.Add(newDel);
|
||||
onInputChg(input.gameObject);
|
||||
}
|
||||
}
|
||||
|
||||
bool _disabled = false;
|
||||
public bool disabled
|
||||
{
|
||||
set
|
||||
{
|
||||
_disabled = value;
|
||||
if (value)
|
||||
{
|
||||
gameObject.SetActive(false);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (input != null)
|
||||
{
|
||||
onInputChg(input.gameObject);
|
||||
}
|
||||
}
|
||||
}
|
||||
get
|
||||
{
|
||||
return _disabled;
|
||||
}
|
||||
}
|
||||
|
||||
public void onInputChg(GameObject go)
|
||||
{
|
||||
if (disabled) return;
|
||||
if (string.IsNullOrEmpty(input.value))
|
||||
{
|
||||
gameObject.SetActive(false);
|
||||
}
|
||||
else
|
||||
{
|
||||
gameObject.SetActive(true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void OnClick()
|
||||
{
|
||||
if (disabled) return;
|
||||
if (input != null)
|
||||
{
|
||||
input.value = "";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
11
Assets/trCRM/Scripts/ui/MyInputReset.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ce7ce3a27703447e98bd5b91307e34c8
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
44
Assets/trCRM/Scripts/ui/MyUIElementRedstar.cs
Normal file
@@ -0,0 +1,44 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class MyUIElementRedstar : MonoBehaviour
|
||||
{
|
||||
public CLUIElement _element;
|
||||
CLUIElement element
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_element == null)
|
||||
{
|
||||
_element = GetComponent<CLUIElement>();
|
||||
if (_element == null)
|
||||
{
|
||||
_element = GetComponentInParent<CLUIElement>();
|
||||
|
||||
}
|
||||
}
|
||||
return _element;
|
||||
}
|
||||
}
|
||||
UILabel _label;
|
||||
UILabel label
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_label == null)
|
||||
{
|
||||
_label = GetComponent<UILabel>();
|
||||
}
|
||||
return _label;
|
||||
}
|
||||
}
|
||||
|
||||
private void LateUpdate()
|
||||
{
|
||||
if (label != null && element != null)
|
||||
{
|
||||
label.enabled = !element.canNull;
|
||||
}
|
||||
}
|
||||
}
|
||||
11
Assets/trCRM/Scripts/ui/MyUIElementRedstar.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bd5e9ed3dcd9e4e4c81c8ceeeabc37bb
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
11
Assets/trCRM/Scripts/ui/MyUIPanel.cs
Normal file
@@ -0,0 +1,11 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using Coolape;
|
||||
using XLua;
|
||||
|
||||
public class MyUIPanel : CLPanelLua
|
||||
{
|
||||
[HideInInspector]
|
||||
public string titleKeyName = "";
|
||||
}
|
||||
11
Assets/trCRM/Scripts/ui/MyUIPanel.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1ff491def90b44724978eb9e0b2b558f
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
48
Assets/trCRM/Scripts/ui/MyUIWidgetAdjustWidth.cs
Normal file
@@ -0,0 +1,48 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
[ExecuteInEditMode]
|
||||
public class MyUIWidgetAdjustWidth : MonoBehaviour
|
||||
{
|
||||
public UIWidget widget;
|
||||
public int offset = 0;
|
||||
|
||||
public float sizeAdjust = 1;
|
||||
// Start is called before the first frame update
|
||||
void Start()
|
||||
{
|
||||
init();
|
||||
}
|
||||
|
||||
public void init()
|
||||
{
|
||||
if (widget == null)
|
||||
{
|
||||
widget = GetComponent<UIWidget>();
|
||||
}
|
||||
UIRoot root = UIRoot.list[0];
|
||||
sizeAdjust = (root != null) ? root.pixelSizeAdjustment : 1f;
|
||||
sizeAdjust = sizeAdjust < 0.001f ? 1 : sizeAdjust;
|
||||
OnEnable();
|
||||
}
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
init();
|
||||
}
|
||||
|
||||
#if UNITY_EDITOR
|
||||
private void Update()
|
||||
{
|
||||
OnEnable();
|
||||
}
|
||||
#endif
|
||||
void OnEnable()
|
||||
{
|
||||
if (widget)
|
||||
{
|
||||
widget.width = (int)(Screen.width * sizeAdjust - offset * 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
11
Assets/trCRM/Scripts/ui/MyUIWidgetAdjustWidth.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0dbe6448146c445e5ae7040ea035c0fa
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Scripts/xLua.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 87162ec3f77fd492b9b5ca2dbb929917
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
360
Assets/trCRM/Scripts/xLua/XluaGenCodeConfig.cs
Normal file
@@ -0,0 +1,360 @@
|
||||
//配置的详细介绍请看Doc下《XLua的配置.doc》
|
||||
using System;
|
||||
using UnityEngine;
|
||||
using XLua;
|
||||
using Coolape;
|
||||
using System.Collections;
|
||||
using System.IO;
|
||||
using System.Collections.Generic;
|
||||
|
||||
|
||||
public static class XluaGenCodeConfig
|
||||
{
|
||||
//lua中要使用到C#库的配置,比如C#标准库,或者Unity API,第三方库等。
|
||||
[LuaCallCSharp]
|
||||
public static System.Collections.Generic.List<Type> LuaCallCSharp = new System.Collections.Generic.List<Type>() {
|
||||
typeof(System.Object),
|
||||
typeof(UnityEngine.Object),
|
||||
typeof(Vector2),
|
||||
typeof(Vector3),
|
||||
typeof(Vector4),
|
||||
typeof(Rect),
|
||||
typeof(Quaternion),
|
||||
typeof(Color),
|
||||
typeof(Ray),
|
||||
typeof(Ray2D),
|
||||
typeof(Bounds),
|
||||
typeof(Time),
|
||||
typeof(GameObject),
|
||||
typeof(Component),
|
||||
typeof(Behaviour),
|
||||
typeof(Transform),
|
||||
typeof(Resources),
|
||||
typeof(TextAsset),
|
||||
typeof(Keyframe),
|
||||
typeof(AnimationCurve),
|
||||
typeof(AnimationClip),
|
||||
typeof(MonoBehaviour),
|
||||
typeof(ParticleSystem),
|
||||
typeof(SkinnedMeshRenderer),
|
||||
typeof(Renderer),
|
||||
//typeof(WWW),
|
||||
typeof(System.Collections.Generic.List<int>),
|
||||
typeof(Action<string>),
|
||||
typeof(UnityEngine.Debug),
|
||||
typeof(Hashtable),
|
||||
typeof(ArrayList),
|
||||
typeof(Queue),
|
||||
typeof(Stack),
|
||||
typeof(GC),
|
||||
typeof(File),
|
||||
typeof(Directory),
|
||||
typeof(Application),
|
||||
typeof(SystemInfo),
|
||||
typeof(RaycastHit),
|
||||
typeof(System.IO.Path),
|
||||
typeof(System.IO.MemoryStream),
|
||||
typeof(Screen),
|
||||
typeof(PlayerPrefs),
|
||||
typeof(Shader),
|
||||
|
||||
//NGUI
|
||||
typeof(UIRoot),
|
||||
typeof(UICamera),
|
||||
typeof(Localization),
|
||||
typeof(NGUITools),
|
||||
typeof(UIRect),
|
||||
typeof(UIWidget),
|
||||
typeof(UIWidgetContainer),
|
||||
typeof(UILabel),
|
||||
typeof(UIToggle),
|
||||
typeof(UIBasicSprite),
|
||||
typeof(UITexture),
|
||||
typeof(UISprite),
|
||||
typeof(UIProgressBar),
|
||||
typeof(UISlider),
|
||||
typeof(UIGrid),
|
||||
typeof(UITable),
|
||||
typeof(UIInput),
|
||||
typeof(UIScrollView),
|
||||
typeof(UITweener),
|
||||
typeof(TweenWidth),
|
||||
typeof(TweenRotation),
|
||||
typeof(TweenPosition),
|
||||
typeof(TweenScale),
|
||||
typeof(TweenAlpha),
|
||||
typeof(UICenterOnChild),
|
||||
typeof(UIAtlas),
|
||||
typeof(UILocalize),
|
||||
typeof(UIPlayTween),
|
||||
typeof(UIRect.AnchorPoint),
|
||||
typeof(UIButton),
|
||||
typeof(UIPopupList),
|
||||
|
||||
//Coolape
|
||||
typeof(CLAssetsManager),
|
||||
typeof(CLAssetsPoolBase<UnityEngine.Object>),
|
||||
typeof(B2InputStream),
|
||||
typeof(B2OutputStream),
|
||||
typeof(CLBulletBase),
|
||||
typeof(CLBulletPool),
|
||||
typeof(CLEffect),
|
||||
typeof(CLEffectPool),
|
||||
typeof(CLMaterialPool),
|
||||
typeof(CLRolePool),
|
||||
typeof(CLSoundPool),
|
||||
typeof(CLSharedAssets),
|
||||
typeof(CLSharedAssets.CLMaterialInfor),
|
||||
typeof(CLTexturePool),
|
||||
typeof(CLThingsPool),
|
||||
typeof(CLBaseLua),
|
||||
typeof(CLBehaviour4Lua),
|
||||
typeof(CLUtlLua),
|
||||
typeof(CLMainBase),
|
||||
typeof(Net),
|
||||
typeof(Net.NetWorkType),
|
||||
typeof(CLCfgBase),
|
||||
typeof(CLPathCfg),
|
||||
typeof(CLVerManager),
|
||||
typeof(CLAssetType),
|
||||
typeof(CLRoleAction),
|
||||
typeof(CLRoleAvata),
|
||||
typeof(CLUnit),
|
||||
|
||||
typeof(ColorEx),
|
||||
typeof(BlockWordsTrie),
|
||||
typeof(DateEx),
|
||||
typeof(FileEx),
|
||||
typeof(HttpEx),
|
||||
typeof(JSON),
|
||||
typeof(ListEx),
|
||||
typeof(MapEx),
|
||||
typeof(MyMainCamera),
|
||||
typeof(MyTween),
|
||||
typeof(NewList),
|
||||
typeof(NewMap),
|
||||
typeof(SoundEx),
|
||||
typeof(NumEx),
|
||||
typeof(ObjPool),
|
||||
typeof(PStr),
|
||||
typeof(SScreenShakes),
|
||||
typeof(StrEx),
|
||||
typeof(Utl),
|
||||
typeof(WWWEx),
|
||||
typeof(ZipEx),
|
||||
typeof(XXTEA),
|
||||
|
||||
typeof(CLButtonMsgLua),
|
||||
typeof(CLJoystick),
|
||||
typeof(CLUIDrag4World),
|
||||
typeof(CLUILoopGrid),
|
||||
typeof(CLUILoopTable),
|
||||
// typeof(CLUILoopGrid2),
|
||||
typeof(CLUIPlaySound),
|
||||
typeof(TweenSpriteFill),
|
||||
typeof(UIDragPage4Lua),
|
||||
typeof(UIDragPageContents),
|
||||
typeof(UIGridPage),
|
||||
typeof(UIMoveToCell),
|
||||
typeof(UISlicedSprite),
|
||||
|
||||
typeof(CLAlert),
|
||||
typeof(CLCellBase),
|
||||
typeof(CLCellLua),
|
||||
typeof(CLPanelBase),
|
||||
typeof(CLPanelLua),
|
||||
typeof(CLPanelManager),
|
||||
typeof(CLPanelMask4Panel),
|
||||
typeof(CLPBackplate),
|
||||
typeof(CLUIInit),
|
||||
typeof(CLUIOtherObjPool),
|
||||
typeof(CLUIRenderQueue),
|
||||
typeof(CLUIUtl),
|
||||
typeof(EffectNum),
|
||||
typeof(TweenProgress),
|
||||
typeof(B2Int),
|
||||
typeof(AngleEx),
|
||||
typeof(CLGridPoints),
|
||||
typeof(CLUIFormRoot),
|
||||
typeof(CLUIFormUtl),
|
||||
typeof(CLUIElement),
|
||||
typeof(CLUIElementDate),
|
||||
typeof(CLUIElementPopList),
|
||||
//==========================
|
||||
typeof(MyMain),
|
||||
typeof(MyCfg),
|
||||
typeof(NativeGallery),
|
||||
typeof(NativeGalleryUtl),
|
||||
typeof(LBSUtl),
|
||||
typeof(MyWWWTexture),
|
||||
typeof(MyLocation),
|
||||
typeof(MyLocation.CoorType),
|
||||
typeof(AndroidStatusBar),
|
||||
typeof(Uri),
|
||||
typeof(Time),
|
||||
typeof(Dist.SpringWebsocket.Client),
|
||||
typeof(Dist.SpringWebsocket.StompFrame),
|
||||
typeof(Dist.SpringWebsocket.StatusCodeEnum),
|
||||
typeof(Mp3PlayerByUrl),
|
||||
typeof(CLUICheckbox),
|
||||
typeof(CLUIPopListPanel),
|
||||
};
|
||||
|
||||
//C#静态调用Lua的配置(包括事件的原型),仅可以配delegate,interface
|
||||
[CSharpCallLua]
|
||||
public static System.Collections.Generic.List<Type> CSharpCallLua = new System.Collections.Generic.List<Type>() {
|
||||
typeof(Action),
|
||||
typeof(Func<double, double, double>),
|
||||
typeof(Action<string>),
|
||||
typeof(Action<double>),
|
||||
typeof(UnityEngine.Events.UnityAction),
|
||||
typeof(Coolape.Callback),
|
||||
};
|
||||
|
||||
//黑名单
|
||||
[BlackList]
|
||||
public static List<List<string>> BlackList = new List<List<string>>() {
|
||||
new List<string>(){ "UnityEngine.WWW", "movie" },
|
||||
new List<string>(){ "UnityEngine.Texture2D", "alphaIsTransparency" },
|
||||
new List<string>(){ "UnityEngine.Security", "GetChainOfTrustValue" },
|
||||
new List<string>(){ "UnityEngine.CanvasRenderer", "onRequestRebuild" },
|
||||
new List<string>(){ "UnityEngine.Light", "areaSize" },
|
||||
new List<string>(){ "UnityEngine.AnimatorOverrideController", "PerformOverrideClipListCleanup" },
|
||||
#if !UNITY_WEBPLAYER
|
||||
new List<string>(){ "UnityEngine.Application", "ExternalEval" },
|
||||
#endif
|
||||
new List<string>(){ "UnityEngine.GameObject", "networkView" }, //4.6.2 not support
|
||||
new List<string>(){ "UnityEngine.Component", "networkView" }, //4.6.2 not support
|
||||
new List<string>() {
|
||||
"System.IO.FileInfo",
|
||||
"GetAccessControl",
|
||||
"System.Security.AccessControl.AccessControlSections"
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.FileInfo",
|
||||
"SetAccessControl",
|
||||
"System.Security.AccessControl.FileSecurity"
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.DirectoryInfo",
|
||||
"GetAccessControl",
|
||||
"System.Security.AccessControl.AccessControlSections"
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.DirectoryInfo",
|
||||
"SetAccessControl",
|
||||
"System.Security.AccessControl.DirectorySecurity"
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.DirectoryInfo",
|
||||
"CreateSubdirectory",
|
||||
"System.String",
|
||||
"System.Security.AccessControl.DirectorySecurity"
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.DirectoryInfo",
|
||||
"Create",
|
||||
"System.Security.AccessControl.DirectorySecurity"
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.Directory",
|
||||
"CreateDirectory",
|
||||
"System.String",
|
||||
"System.Security.AccessControl.DirectorySecurity"
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.Directory",
|
||||
"SetAccessControl",
|
||||
"System.String",
|
||||
"System.Security.AccessControl.DirectorySecurity"
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.Directory",
|
||||
"GetAccessControl",
|
||||
"System.String"
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.Directory",
|
||||
"GetAccessControl",
|
||||
"System.String",
|
||||
"System.Security.AccessControl.AccessControlSections"
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.File",
|
||||
"Create",
|
||||
"System.String",
|
||||
"System.Int32",
|
||||
"System.IO.FileOptions"
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.File",
|
||||
"Create",
|
||||
"System.String",
|
||||
"System.Int32",
|
||||
"System.IO.FileOptions",
|
||||
"System.Security.AccessControl.FileSecurity"
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.File",
|
||||
"GetAccessControl",
|
||||
"System.String",
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.File",
|
||||
"GetAccessControl",
|
||||
"System.String",
|
||||
"System.Security.AccessControl.AccessControlSections",
|
||||
},
|
||||
new List<string>() {
|
||||
"System.IO.File",
|
||||
"SetAccessControl",
|
||||
"System.String",
|
||||
"System.Security.AccessControl.FileSecurity",
|
||||
},
|
||||
new List<string>() {
|
||||
"Coolape.CLUnit",
|
||||
"OnDrawGizmos",
|
||||
},
|
||||
#if UNITY_ANDROID || UNITY_IOS
|
||||
new List<string>() {
|
||||
"UIInput",
|
||||
"ProcessEvent",
|
||||
"UnityEngine.Event",
|
||||
},
|
||||
#endif
|
||||
new List<string>() {
|
||||
"UIWidget",
|
||||
"showHandlesWithMoveTool",
|
||||
},
|
||||
new List<string>() {
|
||||
"UIWidget",
|
||||
"showHandles",
|
||||
},
|
||||
|
||||
new List<string>() {
|
||||
"Coolape.PStr",
|
||||
"a",
|
||||
"System.Byte",
|
||||
},
|
||||
|
||||
new List<string>() {
|
||||
"Coolape.PStr",
|
||||
"a",
|
||||
"System.Byte[]",
|
||||
},
|
||||
|
||||
new List<string>() {
|
||||
"UnityEngine.MonoBehaviour",
|
||||
"runInEditMode",
|
||||
},
|
||||
|
||||
new List<string>() {
|
||||
"Coolape.CLAssetsManager",
|
||||
"debugKey",
|
||||
},
|
||||
new List<string>() {
|
||||
"MyCfg",
|
||||
"default_UID",
|
||||
},
|
||||
};
|
||||
}
|
||||
11
Assets/trCRM/Scripts/xLua/XluaGenCodeConfig.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bef664080cb6346ffb54ad3b1c4b5738
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Templates.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 61079fad9f98e48619b9a5f507c61f86
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/Templates/lua.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7185dd4122bc040819c3c6ad2c8f8463
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
60
Assets/trCRM/Templates/lua/NewClassLuaPanel.lua
Normal file
@@ -0,0 +1,60 @@
|
||||
|
||||
---@type IDBasePanel
|
||||
local TRBasePanel = require("ui.panel.TRBasePanel")
|
||||
---@class #SCRIPTNAME#:TRBasePanel 邮件列表
|
||||
local #SCRIPTNAME# = class("#SCRIPTNAME#", TRBasePanel)
|
||||
|
||||
local uiobjs = {}
|
||||
-- 初始化,只会调用一次
|
||||
function #SCRIPTNAME#:init(csObj)
|
||||
#SCRIPTNAME#.super.init(self, csObj)
|
||||
|
||||
self:setEventDelegate()
|
||||
end
|
||||
|
||||
-- 设置数据
|
||||
---@param paras _Param#SCRIPTNAME#
|
||||
function #SCRIPTNAME#:setData(paras)
|
||||
self.mdata = paras
|
||||
end
|
||||
|
||||
-- 显示,在c#中。show为调用refresh,show和refresh的区别在于,当页面已经显示了的情况,当页面再次出现在最上层时,只会调用refresh
|
||||
function #SCRIPTNAME#:show()
|
||||
end
|
||||
|
||||
-- 刷新
|
||||
function #SCRIPTNAME#:refresh()
|
||||
end
|
||||
|
||||
-- 关闭页面
|
||||
function #SCRIPTNAME#:hide()
|
||||
end
|
||||
|
||||
-- 网络请求的回调;cmd:指命,succ:成功失败,msg:消息;paras:服务器下行数据
|
||||
function #SCRIPTNAME#:procNetwork(cmd, succ, msg, paras)
|
||||
if (succ == NetSuccess) then
|
||||
--[[
|
||||
if cmd == xx then
|
||||
end
|
||||
]]
|
||||
end
|
||||
end
|
||||
|
||||
function #SCRIPTNAME#:setEventDelegate()
|
||||
self.EventDelegate = {
|
||||
}
|
||||
end
|
||||
-- 处理ui上的事件,例如点击等
|
||||
function #SCRIPTNAME#:uiEventDelegate(go)
|
||||
local func = self.EventDelegate[go.name]
|
||||
if func then
|
||||
func()
|
||||
end
|
||||
end
|
||||
|
||||
-- 当顶层页面发生变化时回调
|
||||
function #SCRIPTNAME#:onTopPanelChange(topPanel)
|
||||
end
|
||||
|
||||
--------------------------------------------
|
||||
return #SCRIPTNAME#
|
||||
7
Assets/trCRM/Templates/lua/NewClassLuaPanel.lua.meta
Normal file
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: afb13db3b7bd3480bb36d3a6886bb8ac
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/_scene.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2502ce9b044d84b6b96dc44635d0d5c0
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
1886
Assets/trCRM/_scene/Main.unity
Normal file
7
Assets/trCRM/_scene/Main.unity.meta
Normal file
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: de80522379ddb4a188cd8952ab6b26e2
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
10
Assets/trCRM/trCRM.code-workspace
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"folders": [
|
||||
{
|
||||
"path": "upgradeRes4Dev"
|
||||
},
|
||||
{
|
||||
"path": "../../UnityAPI"
|
||||
}
|
||||
]
|
||||
}
|
||||
7
Assets/trCRM/trCRM.code-workspace.meta
Normal file
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5b7e285362dcf4fc3ac872889f4b71f9
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/upgradeRes4Dev.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5904f6a8f4b9646e0b96cf84ecf34b1d
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/upgradeRes4Dev/other.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 070089df3267d4e75a004b8b08888a0a
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/trCRM/upgradeRes4Dev/other/Materials.meta
Normal file
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 56c42d3fd510e4971b5af24431d8d323
|
||||
folderAsset: yes
|
||||
timeCreated: 1498220621
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/trCRM/upgradeRes4Dev/other/Textures.meta
Normal file
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e2f7d25eee4e14b039f09947cfc1ff79
|
||||
folderAsset: yes
|
||||
timeCreated: 1498220621
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/trCRM/upgradeRes4Dev/other/bullet.meta
Normal file
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ec1df1efe62c44207bfd15283039dcd6
|
||||
folderAsset: yes
|
||||
timeCreated: 1498220621
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/trCRM/upgradeRes4Dev/other/effect.meta
Normal file
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8ca68eaa4427041b1b52f8eb546ba471
|
||||
folderAsset: yes
|
||||
timeCreated: 1498220621
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/upgradeRes4Dev/other/roles.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 048b2cb8354d746649768ed6ab646169
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/trCRM/upgradeRes4Dev/other/sound.meta
Normal file
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f910205a28f1b42d19bc44a959056d42
|
||||
folderAsset: yes
|
||||
timeCreated: 1498220621
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/trCRM/upgradeRes4Dev/other/things.meta
Normal file
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 32e2827f76cc6403aa14a5a882b6638b
|
||||
folderAsset: yes
|
||||
timeCreated: 1498220621
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/trCRM/upgradeRes4Dev/other/uiAtlas.meta
Normal file
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 09f646f4169f143608bec3a0f8cc0241
|
||||
folderAsset: yes
|
||||
timeCreated: 1498220621
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/coolape.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 13a81768f78bb42a0ab12a7f2c6fc6de
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/coolape/button.png
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
@@ -0,0 +1,88 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 34a13a762f979405da2019bc47ef3133
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
externalObjects: {}
|
||||
serializedVersion: 9
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 2
|
||||
aniso: 1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 2
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/coolape/input.png
Normal file
|
After Width: | Height: | Size: 3.5 KiB |
101
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/coolape/input.png.meta
Normal file
@@ -0,0 +1,101 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3730b2cb9ff204a328ad565cebde69f8
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 10
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 2
|
||||
aniso: 1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 2
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
- serializedVersion: 2
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: 13
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 1
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/coolape/logo.png
Normal file
|
After Width: | Height: | Size: 7.7 KiB |
@@ -0,0 +1,88 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1a54375d647424c86a1368977f7d3a10
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
externalObjects: {}
|
||||
serializedVersion: 9
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 2
|
||||
aniso: 1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 2
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/coolape/name.PNG
Normal file
|
After Width: | Height: | Size: 4.3 KiB |
101
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/coolape/name.PNG.meta
Normal file
@@ -0,0 +1,101 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ff1b81589915d4b5582348dead863b57
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 10
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 2
|
||||
aniso: 1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 2
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
- serializedVersion: 2
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: 13
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 1
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/coolape/password.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
@@ -0,0 +1,112 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f4cfc190e55724122bbe41324f497993
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 10
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 2
|
||||
aniso: 1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 2
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
- serializedVersion: 2
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
- serializedVersion: 2
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: 13
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 1
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/coolape/user.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
101
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/coolape/user.png.meta
Normal file
@@ -0,0 +1,101 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 386c953cce3f44d468d6ed4837821250
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 10
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 2
|
||||
aniso: 1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 2
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
- serializedVersion: 2
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: 13
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 1
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/cust.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 75ca8b3e0dedb40f6a06fa750c53a7ff
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/cust/add.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
88
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/cust/add.png.meta
Normal file
@@ -0,0 +1,88 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8b9adcfbb0b2b46d8b5c1d7ae56984a8
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
externalObjects: {}
|
||||
serializedVersion: 9
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 2
|
||||
aniso: 1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 2
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/cust/bg.png
Normal file
|
After Width: | Height: | Size: 3.7 KiB |
88
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/cust/bg.png.meta
Normal file
@@ -0,0 +1,88 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1cc6b9e44359b4615be188fc3f648c5d
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
externalObjects: {}
|
||||
serializedVersion: 9
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 2
|
||||
aniso: 1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 2
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/trCRM/upgradeRes4Dev/other/uiAtlas/cust/border.png
Normal file
|
After Width: | Height: | Size: 191 B |