diff --git a/README.md b/README.md
index 05558d0..1177748 100644
--- a/README.md
+++ b/README.md
@@ -1,33 +1,33 @@
# cocosocket
-cocosocket是一个为cocos2d-x和unity 3D手机网络游戏准备的底层通信框架,满足网络游戏客户端
-对于高性能网络通信的需求,适用于基于socket的手机网游。
+cocosocketһΪcocos2d-xunity 3DֻϷĵײͨſܣϷͻ
+ڸͨŵڻsocketֻΡ
-## 问题
+##
-开发cocos2d-x网络游戏其中一个重点是书写稳定可靠的socket通信层。而bsd socket是
-一个c语言的函数库,使用起来颇繁琐(beykery不喜欢),我们需要一个稳定可靠并且
-api又足够简洁的通信层。它需要具备建立连接读写基本类型(byte、short、int、long、
-utf8字符串)的能力、可灵活设计通信协议(分帧、处理粘包)的能力;它还需要运行在
-独立于游戏主线程的线程里、网络事件(建立、关闭、异常、包到来等)发生时回调监听
-器。或许我们还有同步的需求假如我们把收到的包放到一个待处理队列(queue)里面,
-而游戏主线程需要访问这个队列。
+cocos2d-xϷһصдȶɿsocketͨŲ㡣bsd socket
+һcԵĺ⣬ʹķbeykeryϲҪһȶɿ
+api㹻ͨŲ㡣Ҫ߱Ӷдͣbyteshortintlong
+utf8ַͨЭ飨֡ճҪ
+Ϸ̵߳߳¼رա쳣ȣʱص
+ǻͬǰյİŵһУqueue棬
+Ϸ߳ҪС
-## 解决方案
+##
-cocosocket在bsd socket基础上实现了一个简洁优雅的c++的api,除了线程、线程池、
-队列、套接字(socket)、套接字监听器(socketlisterner)外,重要的是还提供了
-一种自定义通信协议的api(Protocal),并提供了一个基于lengthfield的协议实现
-(推荐使用lengthfield);cocosocket提供了基本数据类型的读写api,而这些读写
-是按照网络流(big endian)顺序处理的。
+cocosocketbsd socketʵһŵc++api̡̳߳߳ء
+С֣socketּsocketlisterner⣬Ҫǻṩ
+һԶͨЭapiProtocalṩһlengthfieldЭʵ
+Ƽʹlengthfieldcocosocketṩ˻͵ĶдapiЩд
+ǰbig endian˳ġ
-cocosocket还拥有关于锁、队列、同步队列、线程池的实现,这些内容有些不是必须的
-,但我想也会有助于扩展功能。
+cocosocketӵйСͬС̳߳صʵ֣ЩЩDZ
+Ҳչܡ
-## 使用
+## ʹ
-使用cocosocket是很简单的,看下面代码:
+ʹcocosocketǺܼģ룺
Socket* s = new Socket();//1
SocketListerner* sl = new DefaultListerner();//2
@@ -35,64 +35,64 @@ cocosocket还拥有关于锁、队列、同步队列、线程池的实现,这
s->SetProtocal(new LVProtocal());//4
s->Connect("192.168.1.100", 3333);//5
-是的,就是这么使用,我将分别介绍这几行代码及其背后的机制
+ǵģôʹãҽֱ⼸д뼰䱳Ļ
-1,初始化一个Socket对象。
+1ʼһSocket
-2,3,两行初始化一个SocketListerner并设置,这个listerner就是socket各种事件的
-的回调接口,需要用户根据自己的需求实现一个SocketListerner(继承它),这个监听
-器会处理这几个事件:socket连接成功(OnOpen)、socket连接关闭(OnClose)、消息
-到来(OnMessage)、连接超时(OnIdle)、连接异常(OnError);这些方法的回调,
-是独立于游戏主线程的,因为socket运行在一个独立的线程里。DefaultListerner仅仅
-是beykery用来测试的,使用cocosocket的时候,需要你自己定制自己的listerner。
+23гʼһSocketListernerãlisternersocket¼
+ĻصӿڣҪûԼʵһSocketListerner̳
+ᴦ⼸¼socketӳɹOnOpensocketӹرգOnCloseϢ
+OnMessageӳʱOnIdle쳣OnErrorЩĻص
+ǶϷ̵߳ģΪsocketһ߳DefaultListerner
+beykeryԵģʹcocosocketʱҪԼԼlisterner
-4,初始化一个Protocal并设置为socket的分帧协议。分帧是这样的,由于发送方(服务
-器)发送的消息是一个不间断的流,因此我们需要从这个流里面分析出一个个帧(代表
-某种逻辑意义)出来,换句话说,就是我们要找到每一帧的起始和终止位置并提取出来
-。举个例子:服务器发送两帧数据过来,AB和CD,客户端接收的情况就很复杂,有可能是
-先收到A,然后收到BCD;也有可能是先收到A,然后收到B,最后收到CD;等等等等复杂
-情况,显然,我们的逻辑要求AB是一个逻辑单位(帧),CD是一个逻辑单位,如果按照
-每次收到的信息作为一帧,则无法处理业务逻辑。
+4ʼһProtocalΪsocketķ֡Э顣֡ģڷͷ
+͵ϢһϵҪһ֡
+ij壩仰˵Ҫҵÿһ֡ʼֹλòȡ
+ٸӣ֡ݹ,ABCDͻ˽յͺܸӣп
+յAȻյBCDҲпյAȻյBյCDȵȵȵȸ
+ȻǵҪABһλ֡CDһλ
+ÿյϢΪһ֡ҵ
-接下来看看LVProtocal,这个类继承了Protocal,它实现的分帧逻辑是这样的:先读取
-两个字节,组合为一个两字节整数x,接下来会读入x字节的数据,如果当前数据较少,
-则有多少读入多少;否则读入x字节。读完整x字节后,则一帧数据读完,之后SocketListerner
-的OnMessage将会被调用。
+LVProtocal̳Protocalʵֵķ֡ģȶȡ
+ֽڣΪһֽxxֽڵݣǰݽ٣
+жٶ٣xֽڡxֽںһ֡ݶ֮꣬SocketListerner
+OnMessageᱻá
-如果你想要使用不同的分帧逻辑,则需要自己实现一个Protocal。建议使用LVProtocal
-,因为这个只是分帧的逻辑,分完帧以后,也就是分出来的x字节,它的内容,就是我们
-的业务协议的内容了,可能是一个字符串,或者按照某种特定顺序组织的(比如先两个
-字节的整型代表协议号,然后八个字节是一个长整形表示用户的id,然后。。。),当
-然也有可能这x个字节是经过某个加密算法加密过的,那么需要解密后再按照业务协议来进
-行解析。
+Ҫʹòͬķ֡ҪԼʵһProtocalʹLVProtocal
+ΪֻǷ֡֡ԺҲǷֳxֽڣݣ
+ҵЭˣһַ߰ijض˳֯ģ
+ֽڵʹЭţȻ˸ֽһαʾûidȻ
+ȻҲпxֽǾij㷨ܹģôҪٰܺҵЭ
+н
-5,连接服务器,需要指定服务器ip地址和端口,如果连接成功,则SocketListerner的
-OnOpen函数会被调用,如果失败OnClose将被调用。
+5ӷҪָipַͶ˿ڣӳɹSocketListerner
+OnOpenᱻãʧOnCloseá
-##关于cocosocket-server
+##cocosocket-server
-server部分是一个java程序,其底层依赖于netty,netty是一个真正高性能的通信框架
-,cocosocket-server隐藏了许多netty的复杂性(netty不仅仅用于tcp/ip协议的通信)
-,如果跟cocosocket-client作对比你会发现,他们的api很相似,这在某种程度上简化
-了理解这两者的难度,你可以从server端或client端入手,这将非常有助于理解另一端
-。坐标:
+serverһjavaײnettynettyһܵͨſ
+cocosocket-servernettyĸԣnettytcp/ipЭͨţ
+cocosocket-clientԱ֣ᷢǵapiƣij̶ֳϼ
+ߵѶȣԴserver˻client֣⽫dzһ
+꣺
```xml
org.beykery
cocosocket
- 1.0.4
+ 1.0.5
```
-##关于cocosocket4unity
+##cocosocket4unity
-这个程序是为unity 3D准备的,api和c++版本的客户端很像,实现的是相同的功能,适用
-于unity 3D网游。里面我嵌入了litjson的代码用并修复了它的一个bug:utf8字符串乱码
-,如果你刚好需要json解析,那么建议使用,否则请删去litjson的代码即可。
+Ϊunity 3Dģapic++汾Ŀͻ˺ʵֵͬĹܣ
+unity 3DΡǶlitjsonĴòһbugutf8ַ
+պҪjsonôʹãɾȥlitjsonĴ뼴ɡ
-## 结语
+##
-ok,那么我想你现在应该对cocosocket有个大概了解了。enjoy it.
+okôӦöcocosocketи˽ˡenjoy it.
diff --git a/cocosocket/pom.xml b/cocosocket/pom.xml
index 3236dcb..e8d6314 100644
--- a/cocosocket/pom.xml
+++ b/cocosocket/pom.xml
@@ -3,7 +3,7 @@
4.0.0
org.beykery
cocosocket
- 1.0.4
+ 1.0.6
jar
UTF-8
@@ -111,7 +111,7 @@
io.netty
netty-all
- 4.0.34.Final
+ 4.1.0.Final
\ No newline at end of file
diff --git a/cocosocket/src/main/java/org/ngame/socket/NClient.java b/cocosocket/src/main/java/org/ngame/socket/NClient.java
index c23238c..305a80c 100644
--- a/cocosocket/src/main/java/org/ngame/socket/NClient.java
+++ b/cocosocket/src/main/java/org/ngame/socket/NClient.java
@@ -119,15 +119,13 @@ public final class NClient extends ChannelInboundHandlerAdapter
ctx.channel().close();
}
} else//服务器
- {
- if (msg instanceof FullHttpRequest)
+ if (msg instanceof FullHttpRequest)
{
handleHttpRequest(ctx, (FullHttpRequest) msg);
} else if (msg instanceof WebSocketFrame)
{
handleWebSocketFrame(ctx, (WebSocketFrame) msg);
}
- }
break;
case NServer.NETWORK_HTTP:
if (msg instanceof DefaultFullHttpRequest)//server
diff --git a/cocosocket/src/main/java/org/ngame/socket/NServer.java b/cocosocket/src/main/java/org/ngame/socket/NServer.java
index 0203170..60f3a0f 100644
--- a/cocosocket/src/main/java/org/ngame/socket/NServer.java
+++ b/cocosocket/src/main/java/org/ngame/socket/NServer.java
@@ -66,7 +66,7 @@ public abstract class NServer extends NListener
{
MAX_THREAD_SELECTOR = Integer.parseInt(System.getProperty("game.socket.server.thread.selector"));
MAX_THREAD_IO = Integer.parseInt(System.getProperty("game.socket.server.thread.io"));
- linux = System.getProperty("os", "win").contains("linux");
+ linux = System.getProperty("os.name", "win").contains("linux");
maxCount = Integer.parseInt(System.getProperty("game.socket.server.busy.maxCount", "0"));
interval = Integer.parseInt(System.getProperty("game.socket.server.busy.interval", "0"));
} catch (Exception e)
@@ -215,7 +215,7 @@ public abstract class NServer extends NListener
}
s.setNetwork(NServer.this.network);
ch.pipeline().addLast(s);
- if (maxCount > 0)
+ if (maxCount > 0 && interval > 0)
{
s.busy(maxCount, interval);
}
diff --git a/cocosocket/src/main/java/org/ngame/socket/SocketClient.java b/cocosocket/src/main/java/org/ngame/socket/SocketClient.java
index d36fa67..cec1c7f 100644
--- a/cocosocket/src/main/java/org/ngame/socket/SocketClient.java
+++ b/cocosocket/src/main/java/org/ngame/socket/SocketClient.java
@@ -33,7 +33,7 @@ public abstract class SocketClient extends NListener
static
{
- linux = System.getProperty("os", "win").contains("linux");
+ linux = System.getProperty("os.name", "win").contains("linux");
}
/**
diff --git a/cocosocket/src/main/java/org/ngame/socket/test/TestClient.java b/cocosocket/src/main/java/org/ngame/socket/test/TestClient.java
index 640e801..ec4a5d6 100644
--- a/cocosocket/src/main/java/org/ngame/socket/test/TestClient.java
+++ b/cocosocket/src/main/java/org/ngame/socket/test/TestClient.java
@@ -14,7 +14,8 @@ import org.ngame.socket.SocketClient;
import org.ngame.socket.framing.Varint32Framedata;
import org.ngame.socket.protocol.Protocol;
import org.ngame.socket.protocol.Varint32HeaderProtocol;
-
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.PooledByteBufAllocator;
/**
*
* @author beykery
@@ -96,8 +97,10 @@ public class TestClient extends SocketClient
*/
public static void main(String... args)
{
- TestClient tc = new TestClient(new InetSocketAddress(1106), new Varint32HeaderProtocol());
- tc.connect();
+ ByteBuf bb= PooledByteBufAllocator.DEFAULT.buffer(1);
+// TestClient tc = new TestClient(new InetSocketAddress(1106), new Varint32HeaderProtocol());
+// tc.connect();
+System.out.println(bb);
}
@Override
diff --git a/cocosocket4unity/Library/CurrentLayout.dwlt b/cocosocket4unity/Library/CurrentLayout.dwlt
index 76085b1..b778094 100644
Binary files a/cocosocket4unity/Library/CurrentLayout.dwlt and b/cocosocket4unity/Library/CurrentLayout.dwlt differ
diff --git a/cocosocket4unity/Library/ScriptAssemblies/BuiltinAssemblies.stamp b/cocosocket4unity/Library/ScriptAssemblies/BuiltinAssemblies.stamp
deleted file mode 100644
index 5200d73..0000000
--- a/cocosocket4unity/Library/ScriptAssemblies/BuiltinAssemblies.stamp
+++ /dev/null
@@ -1,2 +0,0 @@
-0000.566b98bc.0000
-0000.566b98e2.0000
\ No newline at end of file
diff --git a/cocosocket4unity/Library/assetDatabase3 b/cocosocket4unity/Library/assetDatabase3
index 6daa5eb..a408194 100644
Binary files a/cocosocket4unity/Library/assetDatabase3 and b/cocosocket4unity/Library/assetDatabase3 differ
diff --git a/cocosocket4unity/Library/expandedItems b/cocosocket4unity/Library/expandedItems
index 50c2f69..5484f89 100644
Binary files a/cocosocket4unity/Library/expandedItems and b/cocosocket4unity/Library/expandedItems differ
diff --git a/cocosocket4unity/Library/metadata/00/00000000000000004000000000000000 b/cocosocket4unity/Library/metadata/00/00000000000000004000000000000000
index 7c5dc00..2b77f5d 100644
Binary files a/cocosocket4unity/Library/metadata/00/00000000000000004000000000000000 and b/cocosocket4unity/Library/metadata/00/00000000000000004000000000000000 differ
diff --git a/cocosocket4unity/cocosocket4unity/USocket.cs b/cocosocket4unity/cocosocket4unity/USocket.cs
index 809bc9e..c69a434 100644
--- a/cocosocket4unity/cocosocket4unity/USocket.cs
+++ b/cocosocket4unity/cocosocket4unity/USocket.cs
@@ -99,12 +99,19 @@ namespace cocosocket4unity
*/
public void Close(bool serverClose=false)
{
- if (clientSocket != null && clientSocket.Connected)
+ try
{
- clientSocket.Shutdown(SocketShutdown.Both);
- clientSocket.Close();
- this.status = STATUS_CLOSED;
- this.serverClose = serverClose;
+ if (clientSocket != null && clientSocket.Connected)
+ {
+ clientSocket.Shutdown(SocketShutdown.Both);
+ clientSocket.Close();
+ this.status = STATUS_CLOSED;
+ this.serverClose = serverClose;
+ }
+ }
+ catch (Exception e)
+ {
+
}
}
/**
diff --git a/unityClientSample/Assets/src/cocosocket/USocket.cs b/unityClientSample/Assets/src/cocosocket/USocket.cs
index 809bc9e..c69a434 100644
--- a/unityClientSample/Assets/src/cocosocket/USocket.cs
+++ b/unityClientSample/Assets/src/cocosocket/USocket.cs
@@ -99,12 +99,19 @@ namespace cocosocket4unity
*/
public void Close(bool serverClose=false)
{
- if (clientSocket != null && clientSocket.Connected)
+ try
{
- clientSocket.Shutdown(SocketShutdown.Both);
- clientSocket.Close();
- this.status = STATUS_CLOSED;
- this.serverClose = serverClose;
+ if (clientSocket != null && clientSocket.Connected)
+ {
+ clientSocket.Shutdown(SocketShutdown.Both);
+ clientSocket.Close();
+ this.status = STATUS_CLOSED;
+ this.serverClose = serverClose;
+ }
+ }
+ catch (Exception e)
+ {
+
}
}
/**
diff --git a/unityClientSample/Library/CurrentLayout.dwlt b/unityClientSample/Library/CurrentLayout.dwlt
index 4b8f155..e4093fd 100644
Binary files a/unityClientSample/Library/CurrentLayout.dwlt and b/unityClientSample/Library/CurrentLayout.dwlt differ
diff --git a/unityClientSample/Library/InspectorExpandedItems.asset b/unityClientSample/Library/InspectorExpandedItems.asset
index 5b5466c..6fa05d1 100644
Binary files a/unityClientSample/Library/InspectorExpandedItems.asset and b/unityClientSample/Library/InspectorExpandedItems.asset differ
diff --git a/unityClientSample/Library/ScriptAssemblies/Assembly-CSharp.dll.mdb b/unityClientSample/Library/ScriptAssemblies/Assembly-CSharp.dll.mdb
index aad0ff0..f490971 100644
Binary files a/unityClientSample/Library/ScriptAssemblies/Assembly-CSharp.dll.mdb and b/unityClientSample/Library/ScriptAssemblies/Assembly-CSharp.dll.mdb differ
diff --git a/unityClientSample/Library/UnityAssemblies/UnityEngine.Advertisements.xml b/unityClientSample/Library/UnityAssemblies/UnityEngine.Advertisements.xml
deleted file mode 100644
index 69ff35b..0000000
--- a/unityClientSample/Library/UnityAssemblies/UnityEngine.Advertisements.xml
+++ /dev/null
@@ -1,155 +0,0 @@
-
-
-
-
- UnityEngine.Advertisements
-
-
-
- Unity Ads.
-
-
-
-
- Controls the amount of logging output from the advertisement system.
-
-
-
-
- Returns the game identifier for the current platform.
-
-
-
-
- Returns whether the advertisement system is initialized successfully.
-
-
-
-
- Returns whether an advertisement is currently being shown.
-
-
-
-
- Returns if the current platform is supported by the advertisement system.
-
-
-
-
- Returns whether the testing mode is enabled.
-
-
-
-
- Player debug message level.
-
-
-
-
- Prints all debugging messages.
-
-
-
-
- Prints all error messages.
-
-
-
-
- Prints all informational messages.
-
-
-
-
- Prints out no debugging output.
-
-
-
-
- Prints out warnings.
-
-
-
-
- Manually initializes the advertisement system. Normally this is done from editor, and you should only call this method if you have disabled UnityAds from the Editor settings in Connect window.
-
- Your game id. You can see a list of your registered games at the UnityAds admin site.
- In test mode, you will see test advertisement. Can be overruled by settings in the admin site for game.
-
-
-
- Manually initializes the advertisement system. Normally this is done from editor, and you should only call this method if you have disabled UnityAds from the Editor settings in Connect window.
-
- Your game id. You can see a list of your registered games at the UnityAds admin site.
- In test mode, you will see test advertisement. Can be overruled by settings in the admin site for game.
-
-
-
- Returns whether an advertisement is ready to be shown. Zones are configured per game in the UnityAds admin site, where you can also set your default zone.
-
- Optional zone identifier. If not specified, your default zone specified in UnityAds server-side admin settings will be used.
-
-
-
- Returns whether an advertisement is ready to be shown. Zones are configured per game in the UnityAds admin site, where you can also set your default zone.
-
- Optional zone identifier. If not specified, your default zone specified in UnityAds server-side admin settings will be used.
-
-
-
- Show an advertisement in your project.
-
- Optional zone identifier. If not specified, your default zone specified in the admin settings will be used.
- Specify e.g. callback handler to be called when video has finished.
-
-
-
- Show an advertisement in your project.
-
- Optional zone identifier. If not specified, your default zone specified in the admin settings will be used.
- Specify e.g. callback handler to be called when video has finished.
-
-
-
- Show an advertisement in your project.
-
- Optional zone identifier. If not specified, your default zone specified in the admin settings will be used.
- Specify e.g. callback handler to be called when video has finished.
-
-
-
- Collection of options that can be passed to Advertisements.Show to modify advertisement behaviour.
-
-
-
-
- Add a string to specify an identifier for a specific user in the game.
-
-
-
-
- Callback to recieve the result of the advertisement.
-
-
-
-
- ShowResult is passed to ShowOptions.resultCallback after the advertisement has completed.
-
-
-
-
- Indicates that the advertisement failed to complete.
-
-
-
-
- Indicates that the advertisement completed successfully.
-
-
-
-
- Indicates that the advertisement was skipped.
-
-
-
-
diff --git a/unityClientSample/Library/UnityAssemblies/UnityEngine.Analytics.xml b/unityClientSample/Library/UnityAssemblies/UnityEngine.Analytics.xml
deleted file mode 100644
index 89f7288..0000000
--- a/unityClientSample/Library/UnityAssemblies/UnityEngine.Analytics.xml
+++ /dev/null
@@ -1,123 +0,0 @@
-
-
-
-
- UnityEngine.Analytics
-
-
-
- Unity Analytics provides insight into your game users e.g. DAU, MAU.
-
-
-
-
- Custom Events (optional).
-
- Name of custom event. Name cannot include the prefix "unity." - This is a reserved keyword.
- Additional parameters sent to Unity Analytics at the time the custom event was triggered. Dictionary key cannot include the prefix "unity." - This is a reserved keyword.
-
-
-
- User Demographics (optional).
-
- Birth year of user. Must be 4-digit year format, only.
-
-
-
- User Demographics (optional).
-
- Gender of user can be "Female", "Male", or "Unknown".
-
-
-
- User Demographics (optional).
-
- User id.
-
-
-
- Tracking Monetization (optional).
-
- The id of the purchased item.
- The price of the item.
- Abbreviation of the currency used for the transaction. For example “USD” (United States Dollars). See http:en.wikipedia.orgwikiISO_4217 for a standardized list of currency abbreviations.
- Receipt data (iOS) receipt ID (android) for in-app purchases to verify purchases with Apple iTunes / Google Play. Use null in the absence of receipts.
- Android receipt signature. If using native Android use the INAPP_DATA_SIGNATURE string containing the signature of the purchase data that was signed with the private key of the developer. The data signature uses the RSASSA-PKCS1-v1_5 scheme. Pass in null in absence of a signature.
-
-
-
- Tracking Monetization (optional).
-
- The id of the purchased item.
- The price of the item.
- Abbreviation of the currency used for the transaction. For example “USD” (United States Dollars). See http:en.wikipedia.orgwikiISO_4217 for a standardized list of currency abbreviations.
- Receipt data (iOS) receipt ID (android) for in-app purchases to verify purchases with Apple iTunes / Google Play. Use null in the absence of receipts.
- Android receipt signature. If using native Android use the INAPP_DATA_SIGNATURE string containing the signature of the purchase data that was signed with the private key of the developer. The data signature uses the RSASSA-PKCS1-v1_5 scheme. Pass in null in absence of a signature.
-
-
-
- Analytics API result.
-
-
-
-
- Analytics API result: Analytics is disabled.
-
-
-
-
- Analytics API result: Invalid argument value.
-
-
-
-
- Analytics API result: Analytics not initialized.
-
-
-
-
- Analytics API result: Sucess.
-
-
-
-
- Analytics API result: Argument size limit.
-
-
-
-
- Analytics API result: Too many parameters.
-
-
-
-
- Analytics API result: Too many requests.
-
-
-
-
- Analytics API result: This platform doesn't support Analytics.
-
-
-
-
- User Demographics: Gender of a user.
-
-
-
-
- User Demographics: Female Gender of a user.
-
-
-
-
- User Demographics: Male Gender of a user.
-
-
-
-
- User Demographics: Unknown Gender of a user.
-
-
-
-
diff --git a/unityClientSample/Library/UnityAssemblies/version.txt b/unityClientSample/Library/UnityAssemblies/version.txt
index df4e69d..b5b2f69 100644
--- a/unityClientSample/Library/UnityAssemblies/version.txt
+++ b/unityClientSample/Library/UnityAssemblies/version.txt
@@ -1,10 +1,8 @@
5.2.4f1:2.1.0.0
StandaloneWindows
D:/programfiles/Unity524f1/Editor/Data/Managed/UnityEngine.dll
-D:/programfiles/Unity524f1/Editor/Data/UnityExtensions/Unity/Advertisements/UnityEngine.Advertisements.dll
D:/programfiles/Unity524f1/Editor/Data/UnityExtensions/Unity/GUISystem/UnityEngine.UI.dll
D:/programfiles/Unity524f1/Editor/Data/UnityExtensions/Unity/Networking/UnityEngine.Networking.dll
-D:/programfiles/Unity524f1/Editor/Data/UnityExtensions/Unity/UnityAnalytics/UnityEngine.Analytics.dll
D:/programfiles/Unity524f1/Editor/Data/Managed/UnityEditor.dll
D:/programfiles/Unity524f1/Editor/Data\Managed/Mono.Cecil.dll
D:/programfiles/Unity524f1/Editor/Data/PlaybackEngines/iOSSupport\UnityEditor.iOS.Extensions.Xcode.dll
\ No newline at end of file
diff --git a/unityClientSample/Library/assetDatabase3 b/unityClientSample/Library/assetDatabase3
index abef5c8..5e1f525 100644
Binary files a/unityClientSample/Library/assetDatabase3 and b/unityClientSample/Library/assetDatabase3 differ
diff --git a/unityClientSample/Library/expandedItems b/unityClientSample/Library/expandedItems
index 29c2cc1..11edd06 100644
Binary files a/unityClientSample/Library/expandedItems and b/unityClientSample/Library/expandedItems differ
diff --git a/unityClientSample/Library/metadata/00/00000000000000004000000000000000 b/unityClientSample/Library/metadata/00/00000000000000004000000000000000
index 236d61f..62340a6 100644
Binary files a/unityClientSample/Library/metadata/00/00000000000000004000000000000000 and b/unityClientSample/Library/metadata/00/00000000000000004000000000000000 differ
diff --git a/unityClientSample/Library/metadata/00/00000000000000006100000000000000 b/unityClientSample/Library/metadata/00/00000000000000006100000000000000
index f641f87..6a38bac 100644
Binary files a/unityClientSample/Library/metadata/00/00000000000000006100000000000000 and b/unityClientSample/Library/metadata/00/00000000000000006100000000000000 differ
diff --git a/unityClientSample/Library/metadata/00/00000000000000007100000000000000 b/unityClientSample/Library/metadata/00/00000000000000007100000000000000
index 39b9dab..ca4ac03 100644
Binary files a/unityClientSample/Library/metadata/00/00000000000000007100000000000000 and b/unityClientSample/Library/metadata/00/00000000000000007100000000000000 differ
diff --git a/unityClientSample/Library/metadata/00/00000000000000009100000000000000 b/unityClientSample/Library/metadata/00/00000000000000009100000000000000
index c93bd09..9b2c9be 100644
Binary files a/unityClientSample/Library/metadata/00/00000000000000009100000000000000 and b/unityClientSample/Library/metadata/00/00000000000000009100000000000000 differ
diff --git a/unityClientSample/Library/metadata/00/0000000000000000a100000000000000 b/unityClientSample/Library/metadata/00/0000000000000000a100000000000000
index 1ba3e20..7c0a752 100644
Binary files a/unityClientSample/Library/metadata/00/0000000000000000a100000000000000 and b/unityClientSample/Library/metadata/00/0000000000000000a100000000000000 differ
diff --git a/unityClientSample/Library/metadata/3c/3c0ad459c1534645b5d603b7cc258f97 b/unityClientSample/Library/metadata/3c/3c0ad459c1534645b5d603b7cc258f97
index a4c78e4..9cf8643 100644
Binary files a/unityClientSample/Library/metadata/3c/3c0ad459c1534645b5d603b7cc258f97 and b/unityClientSample/Library/metadata/3c/3c0ad459c1534645b5d603b7cc258f97 differ
diff --git a/unityClientSample/Library/metadata/5f/5f32cd94baa94578a686d4b9d6b660f7 b/unityClientSample/Library/metadata/5f/5f32cd94baa94578a686d4b9d6b660f7
index 8151b3d..7ad8153 100644
Binary files a/unityClientSample/Library/metadata/5f/5f32cd94baa94578a686d4b9d6b660f7 and b/unityClientSample/Library/metadata/5f/5f32cd94baa94578a686d4b9d6b660f7 differ
diff --git a/unityClientSample/Library/metadata/73/739bbd9f364b4268874f9fd86ab3beef b/unityClientSample/Library/metadata/73/739bbd9f364b4268874f9fd86ab3beef
index 1dd4955..a9b8543 100644
Binary files a/unityClientSample/Library/metadata/73/739bbd9f364b4268874f9fd86ab3beef and b/unityClientSample/Library/metadata/73/739bbd9f364b4268874f9fd86ab3beef differ
diff --git a/unityClientSample/Library/metadata/7c/7cbab2be89b54486bbd23a6fe637d30e b/unityClientSample/Library/metadata/7c/7cbab2be89b54486bbd23a6fe637d30e
index 16b571b..9402216 100644
Binary files a/unityClientSample/Library/metadata/7c/7cbab2be89b54486bbd23a6fe637d30e and b/unityClientSample/Library/metadata/7c/7cbab2be89b54486bbd23a6fe637d30e differ
diff --git a/unityClientSample/Library/metadata/80/80a3616ca19596e4da0f10f14d241e9f b/unityClientSample/Library/metadata/80/80a3616ca19596e4da0f10f14d241e9f
index bcb40d3..0a863e9 100644
Binary files a/unityClientSample/Library/metadata/80/80a3616ca19596e4da0f10f14d241e9f and b/unityClientSample/Library/metadata/80/80a3616ca19596e4da0f10f14d241e9f differ
diff --git a/unityClientSample/Library/metadata/85/852e56802eb941638acbb491814497b0 b/unityClientSample/Library/metadata/85/852e56802eb941638acbb491814497b0
index dc5d627..d679834 100644
Binary files a/unityClientSample/Library/metadata/85/852e56802eb941638acbb491814497b0 and b/unityClientSample/Library/metadata/85/852e56802eb941638acbb491814497b0 differ
diff --git a/unityClientSample/Library/metadata/87/870353891bb340e2b2a9c8707e7419ba b/unityClientSample/Library/metadata/87/870353891bb340e2b2a9c8707e7419ba
index 5c045d0..8441b4e 100644
Binary files a/unityClientSample/Library/metadata/87/870353891bb340e2b2a9c8707e7419ba and b/unityClientSample/Library/metadata/87/870353891bb340e2b2a9c8707e7419ba differ
diff --git a/unityClientSample/Library/metadata/8e/8e0cd8ed44d4412cbe0642067abc9e44 b/unityClientSample/Library/metadata/8e/8e0cd8ed44d4412cbe0642067abc9e44
index a376789..ecb7840 100644
Binary files a/unityClientSample/Library/metadata/8e/8e0cd8ed44d4412cbe0642067abc9e44 and b/unityClientSample/Library/metadata/8e/8e0cd8ed44d4412cbe0642067abc9e44 differ
diff --git a/unityClientSample/Library/metadata/97/97decbdab0634cdd991f8d23ddf0dead b/unityClientSample/Library/metadata/97/97decbdab0634cdd991f8d23ddf0dead
index 99bda3a..074eb6e 100644
Binary files a/unityClientSample/Library/metadata/97/97decbdab0634cdd991f8d23ddf0dead and b/unityClientSample/Library/metadata/97/97decbdab0634cdd991f8d23ddf0dead differ
diff --git a/unityClientSample/Library/metadata/ad/adebbd281f1a4ef3a30be7f21937e02f b/unityClientSample/Library/metadata/ad/adebbd281f1a4ef3a30be7f21937e02f
index 10d8561..6b8fe3c 100644
Binary files a/unityClientSample/Library/metadata/ad/adebbd281f1a4ef3a30be7f21937e02f and b/unityClientSample/Library/metadata/ad/adebbd281f1a4ef3a30be7f21937e02f differ
diff --git a/unityClientSample/Library/metadata/f5/f5f67c52d1564df4a8936ccd202a3bd8 b/unityClientSample/Library/metadata/f5/f5f67c52d1564df4a8936ccd202a3bd8
index acbe5df..88ac3fd 100644
Binary files a/unityClientSample/Library/metadata/f5/f5f67c52d1564df4a8936ccd202a3bd8 and b/unityClientSample/Library/metadata/f5/f5f67c52d1564df4a8936ccd202a3bd8 differ
diff --git a/unityClientSample/unityClientSample.CSharp.csproj b/unityClientSample/unityClientSample.CSharp.csproj
index 6ff8030..230e519 100644
--- a/unityClientSample/unityClientSample.CSharp.csproj
+++ b/unityClientSample/unityClientSample.CSharp.csproj
@@ -51,24 +51,12 @@
Library\UnityAssemblies\UnityEngine.dll
-
- Library\UnityAssemblies\UnityEngine.Advertisements.dll
-
Library\UnityAssemblies\UnityEngine.UI.dll
Library\UnityAssemblies\UnityEngine.Networking.dll
-
- Library\UnityAssemblies\UnityEngine.Analytics.dll
-
-
- Library\UnityAssemblies\UnityEngine.Advertisements.dll
-
-
- Library\UnityAssemblies\UnityEngine.Analytics.dll
-
Library\UnityAssemblies\UnityEngine.Networking.dll