Exemplo n.º 1
0
    /// <summary> Handles when a pin is clicked </summary>
    public void Pin_Click(OnlineMapsMarkerBase marker)
    {
        try
        {
            Vector2 pos       = OnlineMapsLocationService.instance.position;
            Vector2 markerPos = marker.position;

            double pinDist = PinUtilities.DistanceInMeters(pos.y, pos.x, markerPos.y, markerPos.x);
            if (pinDist < pinRadius)
            {
                PointData pd = PinUtilities.GetPointData(marker.tags, PinUtilities.PointDatas);

                if (PinUtilities.GetTypeFromTag(marker.tags) != "Tokens")
                {
                    UserUtilities.AllocatePoints(pd._Value);
                    UIManager.Instance.IndicateScore(pd._Value, true);

                    SoundManager.Instance.PlaySound("CoinCollect");

                    long now = (long)(DateTime.UtcNow - epochStart).TotalMilliseconds;
                    PinUtilities.pinDeltas[marker.label] = now;

                    pd.RemovePin();

                    PinUtilities.SavePins();
                    UserUtilities.Save();

                    Organizations pinOrg = (Organizations)Enum.Parse(typeof(Organizations), pd._Type.ToString());

                    if (MinigamePinUnlock.Contains(pinOrg) && MiniGameEnabledOrgs.Contains(pinOrg))
                    {
                        Unlock(pinOrg);
                    }

                    if (TriviaEnabledOrgs.Contains(pinOrg))
                    {
                        TriviaGame.CheckForTrivia(marker.label);
                    }

                    return;
                }
                else
                {
                    pd = PinUtilities.GetPointData(marker.tags, PinUtilities.TokenPointDatas);
                    TokenPinActivate(pd, pd._Position.Latitude.ToString() + pd._Position.Longitude.ToString());
                }
            }
        }
        catch (Exception e)
        {
            Debug.Log("ERROR: " + e.Message);
        }
    }
Exemplo n.º 2
0
    public void EnterState()
    {
        switch (GameManager.Cur_State)
        {
        case GameManager.GameState.Splash:
            Splash_PNL.gameObject.SetActive(true);
            if (Splash_IMGs.Length > 0)
            {
                SplashDisplayImage.sprite = Splash_IMGs[0];
            }
            else
            {
                GameManager.Instance.SetState(GameManager.GameState.StartPage);
            }
            Timer = SplashDuration;
            break;

        case GameManager.GameState.StartPage:
            Start_PNL.SetActive(true);
            break;

        case GameManager.GameState.Login:
            if (gameObject.GetComponent <RawImage>())
            {
                Destroy(gameObject.GetComponent <RawImage>());
            }
            TouchScreenKeyboard.hideInput = true;
            Login_PNL.SetActive(true);
            if (UserUtilities.RememberMeExists())
            {
                RememberMe_TGL.isOn = true;
                UserUtilities.RememberMeRetrieve();
                LoginCard_INPT.text     = UserUtilities.User.CardNumber;
                LoginPassword_INPT.text = UserUtilities.User.Password;
            }
            else
            {
                RememberMe_TGL.isOn = false;
            }
            break;

        case GameManager.GameState.Register:
            TouchScreenKeyboard.hideInput = true;
            Register_PNL.SetActive(true);
            break;

        case GameManager.GameState.CheckIn:
            Main_PNL.SetActive(true);
            CheckIn_PNL.SetActive(true);
            Enable_BTNs();
            Checkin_BTN.interactable = false;
            Products.InitProducts();
            CreateProductList();
            List_BTN.interactable = false;
            List_Tab.SetActive(true);
            Scan_BTN.interactable = true;
            Scan_Tab.SetActive(false);

            break;

        case GameManager.GameState.Map:
            Main_PNL.SetActive(true);
            Map_PNL.SetActive(true);
            Enable_BTNs();
            Map_BTN.interactable     = false;
            OnlineMaps.instance.zoom = 18;
            if (FirstMapLoad)
            {
                FirstMapLoad = false;
                OnlineMaps.instance.RemoveAllMarkers();
                PinUtilities.GetPointData();
                PinUtilities.PinDelta();
                PinUtilities.TokenPinDelta();
                PinUtilities.AddPins();
                PinUtilities.AddTokenPins();
                OnlineMapsLocationService.instance.createMarkerInUserPosition = true;
                OnlineMaps.instance.RedrawImmediately();
            }
            OnlineMaps.instance.position = OnlineMapsLocationService.instance.position;
            break;

        case GameManager.GameState.Games:
            Main_PNL.SetActive(true);
            Games_PNL.SetActive(true);
            Enable_BTNs();
            Games_BTN.interactable = false;
            CreateGameList();
            break;

        case GameManager.GameState.Events:
            Main_PNL.SetActive(true);
            Events_PNL.SetActive(true);
            Enable_BTNs();
            Events_BTN.interactable = false;
            Events.InitEvents();
            CreateEventList();
            break;

        case GameManager.GameState.Profile:
            TouchScreenKeyboard.hideInput = true;
            Main_PNL.SetActive(true);
            Profile_PNL.UpdateProfile();
            Profile_PNL.gameObject.SetActive(true);
            Enable_BTNs();
            Profile_BTN.interactable = false;
            break;

        case GameManager.GameState.Minigame:
            Main_PNL.SetActive(false);
            break;
        }
    }