Example #1
0
    public void callBattle()
    {
        enemyRadar = GameObject.Find("Dropdown");
        Guid id = OverworldNetManager.getIdByName(enemyRadar.GetComponent <Dropdown>().captionText.text);

        if (id != new Guid())
        {
            opponentID = id;
        }
        GenComManager.setUpdate(0, opponentID);

        //-----------------TEMPORARY TEST CODE----------------------

        //enemyRadar = GameObject.Find("Dropdown");
        //SceneManager.LoadScene("Battle");


        //use random id, not currently used for anything, should be id of landmark receiving items from
        //GenComManager.setUpdate(4, Guid.NewGuid());
        //GenComManager.setUpdate(1, new Guid("d585781ee9d521e687d200155d2a070e"));
        //GenComManager.setUpdate(2, new Guid("e5cadae5-e9d5-11e6-55d2-00155d2a070d"));


        //----------------------------------------------------------


        //SceneManager.LoadScene("Battle");
    }
Example #2
0
    public void DisplayWin()
    {
        // Battle was won, so create a win screen overlay
        GameObject win  = Instantiate(WinCanvas);
        Canvas     canv = win.GetComponent <Canvas>();

        canv.planeDistance = 0.4f;
        // and play win jingle
        winJingle.Play();

        // Set it to render over the local Main Camera
        win.GetComponent <Canvas>().worldCamera = Camera.main;

        if (GenComManager.getQuestID() == BattleNetManager.OpponentID)
        {
            Player.addEXP(500, false); // Exp is given by server so set client-side to false
            GenComManager.setUpdate(3, BattleNetManager.OpponentID);
        }

        // Find the exitButton on the canvas
        exitButton = GameObject.Find("BattleExit");

        // Bring up the exit button
        exitButton.SetActive(true);
    }
Example #3
0
    private void Update()
    {
        try
        {
            if (update)
            {
                //UnityEngine.Debug.Log("Test");
                loc        = locService.lastData;
                latitude   = loc.latitude;
                longtitude = loc.longitude;

                BitConverter.GetBytes(latitude).CopyTo(coords, 0);
                BitConverter.GetBytes(longtitude).CopyTo(coords, 4);

                client.Send(coords);

                if (responseTime.IsRunning)
                {
                    responseTime.Reset();
                }
                else
                {
                    responseTime.Start();
                }


                update = false;
            }

            if (!waitUpdate.WaitOne(0))
            {
                UnityEngine.Debug.Log(SceneManager.GetActiveScene().name);
                //place objects on screen or update position if guid already present, store respective guid with object for later use
                //objects stored in list nearbyObjects which is a list of NearbyObjects that contain lat, long, object type, and id
                //note: should check which scene is active before drawing, should be able to do that with scenemanager.getactivescene
                if (SceneManager.GetActiveScene().name.Equals("Overworld"))
                {
                    //UnityEngine.Debug.Log("there are: " + nearbyObjects.Count);
                    landmarks  = new List <OnlineMapsMarker3D>();
                    colosseums = new List <OnlineMapsMarker3D>();
                    enemyList  = new Dictionary <string, NearbyObject>();
                    enemyRadar.options.Clear();
                    enemyRadar.options.Add(new Dropdown.OptionData("(Select)"));
                    //enemyRadar.options.Add(new Dropdown.OptionData("Test"));
                    foreach (NearbyObject nearbyObject in nearbyObjects)
                    {
                        OnlineMapsMarker3D newMarker = new OnlineMapsMarker3D();
                        Console.WriteLine(nearbyObject.Name);
                        newMarker.id  = nearbyObject.Id;
                        newMarker.lat = nearbyObject.Latitude;
                        newMarker.lon = nearbyObject.Longtitude;
                        //UnityEngine.Debug.Log("???????????" + nearbyObject.Type);
                        switch (nearbyObject.Type)
                        {
                        case 0:
                            //UnityEngine.Debug.Log("found someone at least");
                            //newMarker.prefab = (GameObject)Instantiate(Resources.Load("EnemyPlayer"));
                            if (nearbyObject.Id != Player.playerID)
                            {
                                //UnityEngine.Debug.Log("enemy id found");
                                enemyList.Add(nearbyObject.Name, nearbyObject);
                            }
                            break;

                        case 1:
                            newMarker.prefab = coloPrefab;
                            newMarker.prefab.GetComponent <ColosseumFaction>().coloseumID = newMarker.id;
                            newMarker.prefab.GetComponent <ColosseumFaction>().UpdateFaction();
                            colosseums.Add(newMarker);
                            landmarks.Add(newMarker);
                            break;

                        case 2:
                            newMarker.prefab = landPrefab;
                            landmarks.Add(newMarker);
                            break;

                        default:
                            break;
                        }
                    }
                }

                // Add the enemies to the dropdown menu
                foreach (KeyValuePair <string, NearbyObject> enemy in enemyList)
                {
                    UnityEngine.Debug.Log("should be adding enemy id");
                    enemyRadar.options.Add(new Dropdown.OptionData(enemy.Value.Name.ToString()));
                }

                foreach (OnlineMapsMarker3D marker in landmarks)
                {
                    locationMarker = marker;
                    Vector2 locale = new Vector2((float)marker.lat, (float)marker.lon);
                    locationMarker = control.AddMarker3D(locale, locationMarker.prefab);
                }

                waitUpdate.Set();
            }
        }
        catch (Exception e) {
            UnityEngine.Debug.Log(e.ToString());
            waitUpdate.Set();
        }

        if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Began)
        {
            RaycastHit hit;
            Ray        ray = Camera.main.ScreenPointToRay(Input.GetTouch(0).position);
            //Ray ray2 = Camera.main.ScreenPointToRay(Input.mousePosition);
            if (Physics.Raycast(ray, out hit))
            {
                if (hit.collider.CompareTag("Landmark"))
                {
                    Land.enabled = true;
                    GenComManager.setUpdate(4, Player.playerID);
                }
                else if (hit.collider.CompareTag("Colosseum"))
                {
                    Colosseum.enabled = true;
                }
            }
        }
    }