Skip to content

Haruho/SocketProject

Repository files navigation

这是一个Unity使用Socket进行通讯的例子



第一个功能是聊天室


其他还有联机对战等功能

主要目标是解决网络连接中使用的函数  以及每一个函数的用处


理解网络通信的流程


//9-20更新
127.0.0.1是本机的IP
外网的话你需要有一个服务器
并在服务器上运行服务端的代码
填写服务端的IP
就能聊天了。
=======
理解网络通信的流程



//9-21
聊天功能已经实现



//9-21 

·添加了服务器代码,位置在ChatRoomServer文件夹



//9-25更新
有了服务器和客户端的交互之后,准备把这个工程做成一个卡牌游戏的模板
现在先实现一些基础的功能

Q:如何在Canvas中的渲染顺序?
A:观察之后发现越下面的物体会在最上层显示,所以每次鼠标扫描到卡片的时候,都要把当前卡片
通过SetAsLastSibling()函数把它放到Canvas的最下面。同样还有SetAsFirstSibling()和SetSiblingIndex(int index);函数


//2017-10-10
国庆好好休息了一下,家里给买了一辆车~

解决了出牌之后的缩进问题
解决办法1 其实使用Contentfitter组件就能实现实时缩进,但是这个组件我用了之后,每当鼠标扫过卡片的时候放大的效果会变得抖来抖去
就舍弃了,这个扫过放大是通过接口做的,为了让扫过的卡片在画面最上层,我用了上个push的方法,可能这个函数和那个组件有冲突

解决办法2  直接代码撸出来。所有的手牌存放在一个list中,出的牌作为标记,分成这张牌的前面和后面,前面的牌后移,后面的牌前移,脚本是InhandCards.cs


//10-11
添加了随即生成卡牌的功能
实例化UI的时候,位置找不到正确的了,然后打出来一句极其奇特的代码

go.GetComponent<RectTransform>().position = new Vector3(card.GetComponent<RectTransform>().rect.width * i + 280, 0, 0) + new Vector3(30 * i ,0 ,0);

go就是实例化的UI  之前两个Vector3是组合在一起的,但是实现不了效果,拆开之后可以了。。。Why?

添加了显示卡牌信息的功能,是UI悬浮哦~跟随鼠标位置的也在代码里,但是后来觉得效果不是那么理想,就注释掉了。
卡牌的信息是存在Xml中的(熟练使用并且只会使用Xml存数据。。。),层级什么的也不多解释,就是那样看一眼就明白了。
读取Xml的代码在CardInfo.cs   随机生成卡牌的代码在Manger.cs中

Q:明天研究研究服务器的交互,怎么把出牌等信息发送给另一位玩家。
找个好用的SDK做一下注册登陆功能。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages