示例#1
0
    async void Start()
    {
        websocket = new WebSocket(SERVER_URL);

        websocket.OnOpen += () =>
        {
            Debug1.Log("Connection open!");
        };

        websocket.OnError += (e) =>
        {
            Debug1.Log("Error! " + e);
        };

        websocket.OnClose += (e) =>
        {
            Debug1.Log("Connection closed!");
        };

        websocket.OnMessage += (bytes) =>
        {
            var message = System.Text.Encoding.UTF8.GetString(bytes);

            OnlineData sync = JsonUtility.FromJson <OnlineData>(message);

            if (!dic.ContainsKey(sync.id))
            {
                GameObject go   = Instantiate(player, sync.desirePos, Quaternion.identity);
                var        comp = go.GetComponent <SyncPosition>().data;
                comp.id        = sync.id;
                comp.desirePos = sync.desirePos;
                comp.state     = sync.state;
                comp.speed     = sync.speed;

                go.transform.GetChild(0).GetComponent <TextMeshPro>().text = sync.id;

                dic.Add(sync.id, go.GetComponent <SyncPosition>());
            }
            else
            {
                if (sync.id != playerid)
                {
                    dic[sync.id].data.desirePos = sync.desirePos;
                    dic[sync.id].data.state     = sync.state;
                }
            }
        };

        InvokeRepeating("SendWebSocketMessage", 0.0f, 0.3f);

        await websocket.Connect();
    }
示例#2
0
    void Awake()
    {
        tp_data[0]               = "1";
        tp_dataItems[0]          = "1";
        tp_dataSkills[0]         = "1";
        tp_dataEnemySkills[0]    = "1";
        tp_dataInventoryItems[0] = "1";
        tp_dataCharacters[0]     = "1";



        k_storage = this;
    }
示例#3
0
    private void Awake()
    {
        Instance = this;
        DontDestroyOnLoad(gameObject);
        dic = new Dictionary <string, SyncPosition>();
        OnlineData data = new OnlineData();

        data.id        = playerid;
        data.desirePos = player.transform.position;
        data.speed     = 4f;
        player.GetComponent <SyncPosition>().data = data;
        player.transform.GetChild(0).GetComponent <TextMeshPro>().text = playerid;
        dic.Add(playerid, player.GetComponent <SyncPosition>());
    }
示例#4
0
 public virtual void Reset()
 {
     username    = "";
     password    = "";
     offlineData = new OfflineData();
     onlineData  = new OnlineData();
     for (int i = 0; i < ArchivesManager.MAX_ACCOUNTS; i++)
     {
         offlineData.battleMode.versusHuman.data[i] = new OfflineBattleDataEntry();
         offlineData.battleMode.versusHuman.noSwitchingVariant.data[i]     = new OfflineBattleDataEntry();
         offlineData.battleMode.versusHuman.switchPositionsVariant.data[i] = new OfflineBattleDataEntry();
         offlineData.battleMode.versusHuman.switchControlVariant.data[i]   = new OfflineBattleDataEntry();
     }
 }
示例#5
0
    void Start()
    {
        if (GameObject.Find(MainMenu.ArraysDataName) == null)
        {
            SceneManager.LoadScene("Assets/Scenes/Main Menu.unity", LoadSceneMode.Single);
            return;
        }

        arraysData = GameObject.Find(MainMenu.ArraysDataName).GetComponent <ArraysData>();
        startedCoroutineBombKnife   = new Queue <Coroutine>();
        Application.targetFrameRate = 300;

        online = gameObject.GetComponent <GameScriptOnline>();
        GameObject data = GameObject.Find("Data");

        isOnline = data != null;
        if (isOnline)
        {
            EndGameShow.addPlays(-1);
            online_data = data.GetComponent <OnlineData>();
            strategy    = Online.WRITE;
            rank        = (PlayerPrefs.GetInt("rank", 4) + online_data.rank_him) / 2;
        }
        else
        {
            rank     = PlayerPrefs.GetInt("rank", 4);
            strategy = Online.OFFLINE;
            hideOnlineObjects();
        }
        isT = isOnline? online_data.getTeam() : Random.Range(0, 2) == 1;
        initializeMyTeam();
        gameMode       = 0;
        enemysNameList = new List <String>();
        kills          = 0;
        round          = (WIN_SCORE - round_per_half);
        ctScore        = round / 2;
        tScore         = round - ctScore;
        yourName       = PlayerPrefs.GetString("name", LanguageSystem.GET_NAME());
        maxLooks       = isT ? T_aimPoints.Length : CT_aimPoints.Length;
        getEnemySpawn().initEnemysFirstNameList(START_ENEMY_COUNT, isOnline);
        newTeam();
        resetLook();

        beforeNewRound();
    }
示例#6
0
    void Awake()
    {
        isStarter        = false;
        BattleLoaded     = false;
        tp_characters    = "";
        k_storage        = transform.GetComponent <OnlineData> ();
        CharactersLoaded = 0;
        itemCount        = 0;
        loadedItems      = 0;
        InventoryItems   = new List <Item> ();
        OutstandingLoot  = new List <Item> ();
        itemsloaded      = false;
        LoginCorrect     = false;
        sceneloaded      = false;
        Characters       = new Character[0];
        StartCoroutine(WaitForLogin());
        GameObject tp_manager = GameObject.FindGameObjectWithTag("PlayerManager");

        DontDestroyOnLoad(tp_manager);
        PhotonNetwork.OnEventCall += this.OnEvent;
    }
示例#7
0
 public void initEnemysFirstNameList(int count, bool isOnline)
 {
     main.GetComponent <GetRandomEnemyName>().initNames();
     if (!isOnline)
     {
         for (int i = 0; i < count; i++)
         {
             game.enemysNameList.Add(main.GetComponent <GetRandomEnemyName>().getRandomName());
         }
     }
     else
     {
         OnlineData data = main.GetComponent <GameScript>().online_data;
         if (data.otherTeam == null)
         {
             return;
         }
         for (int i = 0; i < count; i++)
         {
             game.enemysNameList.Add(i < data.otherTeam.Length ? data.otherTeam[i] : main.GetComponent <GetRandomEnemyName>().getRandomName());
         }
     }
 }
示例#8
0
            public static OnlineData ParseData(string onlineString)
            {
                string[] split = onlineString.Split('\n');
                var returnData = new OnlineData();

                //First Line
                string[] first = split[0].Split('|');
                returnData.BeatmapID = int.Parse(first[2]);
                returnData.SongID = int.Parse(first[3]);
                returnData.TotalOnlineRanks = int.Parse(first[4]);

                //Second Line

                //Third Line
                string[] third = split[2].Split('|');
                returnData.SongArtist = third[0].Substring(third[0].LastIndexOf(']') + 1);
                returnData.SongName = third[1];

                //Fourth Line

                //Fifth Line
                returnData.MainPlayer = OnlineScore.ParseScore(split[4]);

                //Remainder of lines
                var scoreList = new List<OnlineScore>();
                for (int i = 5; i < split.Count(); i++) scoreList.Add(OnlineScore.ParseScore(split[i]));
                returnData.TopFifty = scoreList.ToArray();

                return returnData;
            }