Usuário com melhor resposta
TCP Server into Unity C#

Pergunta
-
how can i do TCP Server into Unity C#?
//my code
using UnityEngine;
using UnityEngine.UI;
using System;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.Collections;
public class TalkBack_Script : MonoBehaviour {
//atributos principais
static TcpListener server;
static TcpClient clientT;
static NetworkStream conn;
static string totalData = "";
public static string hostName = "";
public static int numberPort = 0;
public static GameObject[] card = new GameObject[4];
//parametros para o envio e recebimentos de dados
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
public void SendTcpData(){
byte[] rec = Encoding.UTF8.GetBytes(SendData());conn.Write(rec, 0, rec.Lengh);
}
public void ReceiveData(){
byte[] rec = new byte[1024];
conn.Read(rec, 0, clientT.ReceiveBufferSize);
totalData = Encoding.UTF8.GetString (rec);
string[] piecesData = totalData.Split ('|');
//a cada 9 peças uma nova carta
//11 = uma carta
//20 = duas cartas
//29 = tres cartas
//38 = quatro cartas
int piece = 0;
FillCard (Battle_Script.enemyField, piecesData, piece);
//mana do inimigo
Battle_Script.enemyMana = int.Parse(piecesData[piece]);
Quick_Menu.myTurn = !bool.Parse (piecesData [piece]);
}
public static void ConnectOnTCP(bool isServer){
if (isServer) {
server = new TcpListener (IPAddress.Any, numberPort);
server.Start ();
clientT = server.AcceptTcpClient ();
} else {
clientT = new TcpClient (hostName, numberPort);
server.AcceptTcpClient ();
}
conn = clientT.GetStream ();
}
//construindo os dados a serem enviados
public string SendData(){
string premature = "";
foreach (GameObject card in Battle_Script.myField) {
//atributos das cartas
premature += card.GetComponent<Card_Script> ().id.ToString () + "|";
premature += card.GetComponent<Card_Script> ().nameCard.ToString () + "|";
premature += card.GetComponent<Card_Script> ().force.ToString () + "|";
premature += card.GetComponent<Card_Script> ().health.ToString () + "|";
premature += card.GetComponent<Card_Script> ().NumHab.ToString () + "|";
premature += card.GetComponent<Card_Script> ().HabValue.ToString () + "|";
premature += card.GetComponent<Card_Script> ().cost.ToString () + "|";
premature += card.GetComponent<Card_Script> ().element.ToString () + "|";
premature += card.GetComponent<Card_Script> ().actived.ToString () + "|";
}
//teste do turno do jogador
premature += Battle_Script.myMana.ToString () + "|";
premature += Quick_Menu.myTurn.ToString ();
return premature;
}
}
Respostas
-
Bom dia Saniston Rodrigues,
Primeiramente obrigado por postar em nosso fórum. Lembrando que essa página é para dúvidas em Português, caso queira postar no fórum em Inglês, segue o link:
https://social.msdn.microsoft.com/Forums/en-us/home
Abraço.
Thales F Quintas
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
TechNet Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Marcado como Resposta Thales F Quintas sexta-feira, 24 de junho de 2016 13:16
Todas as Respostas
-
Bom dia Saniston Rodrigues,
Primeiramente obrigado por postar em nosso fórum. Lembrando que essa página é para dúvidas em Português, caso queira postar no fórum em Inglês, segue o link:
https://social.msdn.microsoft.com/Forums/en-us/home
Abraço.
Thales F Quintas
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
TechNet Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Marcado como Resposta Thales F Quintas sexta-feira, 24 de junho de 2016 13:16
-
Bom dia,
Por falta de retorno, esta thread será encerrada.
Caso seja necessário, por gentileza, abra uma nova thread.
Atenciosamente
Thales F Quintas
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
TechNet Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.