public void checkIn(MapMarker marker)
    {
        if (!playerTransform)
        {
            //error was already fired in Awake()
            return;
        }

        float scaledRadarDistance = radarDistance * scale;
        float scaledMaxRadarDistance = maxRadarDistance * scale;

        if (marker.isActive)
        {
            float distance = distanceToPlayer(marker.getPosition());
            float opacity = 1.0f;

            if (distance > scaledRadarDistance)
            {
                if (hideOutOfRadius)
                {
                    if (marker.isVisible())
                    {
                        marker.hide();
                    }
                    return;
                }
                else
                {
                    if (distance > scaledMaxRadarDistance)
                    {
                        if (marker.isVisible())
                        {
                            marker.hide();
                        }
                        return;
                    }
                    else
                    {
                        if (useOpacity)
                        {
                            float opacityRange = scaledMaxRadarDistance - scaledRadarDistance;
                            if (opacityRange <= 0)
                            {
                                Debug.LogError("Max radar distance should be bigger than radar distance");
                                return;
                            }
                            else
                            {
                                float distanceDiff = distance - scaledRadarDistance;
                                opacity = 1 - (distanceDiff / opacityRange);

                                if (opacity < minimalOpacity)
                                {
                                    opacity = minimalOpacity;
                                }
                            }
                        }
                        distance = scaledRadarDistance;
                    }
                }
            }

            if (!marker.isVisible())
            {
                marker.show();
            }

            Vector3 posDif = marker.getPosition() - playerTransform.position;
            Vector3 newPos = new Vector3(posDif.x, posDif.z, 0);
            newPos.Normalize();

            float markerRadius = (marker.markerSize / 2);
            float newLen = (distance / scaledRadarDistance) * (innerMapRadius - markerRadius);

            newPos *= newLen;
            marker.setLocalPos(newPos);
            marker.setOpacity(opacity);
        }
        else
        {
            if (marker.isVisible())
            {
                marker.hide();
            }
        }
    }
Esempio n. 2
0
    // Token: 0x0600079E RID: 1950 RVA: 0x00032EB8 File Offset: 0x000312B8
    public void checkIn(MapMarker marker)
    {
        if (!this.playerTransform)
        {
            return;
        }
        float num  = this.radarDistance * this.scale;
        float num2 = this.maxRadarDistance * this.scale;

        if (marker.isActive)
        {
            float num3 = this.distanceToPlayer(marker.getPosition());
            float num4 = 1f;
            if (num3 > num)
            {
                if (this.hideOutOfRadius)
                {
                    if (marker.isVisible())
                    {
                        marker.hide();
                    }
                    return;
                }
                if (num3 > num2)
                {
                    if (marker.isVisible())
                    {
                        marker.hide();
                    }
                    return;
                }
                if (this.useOpacity)
                {
                    float num5 = num2 - num;
                    if (num5 <= 0f)
                    {
                        Debug.LogError("Max radar distance should be bigger than radar distance");
                        return;
                    }
                    float num6 = num3 - num;
                    num4 = 1f - num6 / num5;
                    if (num4 < this.minimalOpacity)
                    {
                        num4 = this.minimalOpacity;
                    }
                }
                num3 = num;
            }
            if (!marker.isVisible())
            {
                marker.show();
            }
            Vector3 vector  = marker.getPosition() - this.playerTransform.position;
            Vector3 vector2 = new Vector3(vector.x, vector.z, 0f);
            vector2.Normalize();
            float num7 = marker.markerSize / 2f;
            float d    = num3 / num * (this.innerMapRadius - num7);
            vector2 *= d;
            marker.setLocalPos(vector2);
            marker.setOpacity(num4);
        }
        else if (marker.isVisible())
        {
            marker.hide();
        }
    }
    public void checkIn(MapMarker marker)
    {
        if (!playerTransform)
        {
            //error was already fired in Awake()
            return;
        }

        float scaledRadarDistance    = radarDistance * scale;
        float scaledMaxRadarDistance = maxRadarDistance * scale;

        if (marker.isActive)
        {
            float distance = distanceToPlayer(marker.getPosition());
            float opacity  = 1.0f;

            if (distance > scaledRadarDistance)
            {
                if (hideOutOfRadius)
                {
                    if (marker.isVisible())
                    {
                        marker.hide();
                    }
                    return;
                }
                else
                {
                    if (distance > scaledMaxRadarDistance)
                    {
                        if (marker.isVisible())
                        {
                            marker.hide();
                        }
                        return;
                    }
                    else
                    {
                        if (useOpacity)
                        {
                            float opacityRange = scaledMaxRadarDistance - scaledRadarDistance;
                            if (opacityRange <= 0)
                            {
                                Debug.LogError("Max radar distance should be bigger than radar distance");
                                return;
                            }
                            else
                            {
                                float distanceDiff = distance - scaledRadarDistance;
                                opacity = 1 - (distanceDiff / opacityRange);

                                if (opacity < minimalOpacity)
                                {
                                    opacity = minimalOpacity;
                                }
                            }
                        }
                        distance = scaledRadarDistance;
                    }
                }
            }

            if (!marker.isVisible())
            {
                marker.show();
            }

            Vector3 posDif = marker.getPosition() - playerTransform.position;
            Vector3 newPos = new Vector3(posDif.x, posDif.z, 0);
            newPos.Normalize();

            float markerRadius = (marker.markerSize / 2);
            float newLen       = (distance / scaledRadarDistance) * (innerMapRadius - markerRadius);

            newPos *= newLen;
            marker.setLocalPos(newPos);
            marker.setOpacity(opacity);
        }
        else
        {
            if (marker.isVisible())
            {
                marker.hide();
            }
        }
    }
Esempio n. 4
0
    public void checkIn(MapMarker marker)
    {
        if (!playerTransform)
        {
            //error was already fired in Awake()
            return;
        }

        float scaledRadarDistance    = radarDistance * scale;
        float scaledMaxRadarDistance = maxRadarDistance * scale;

        if (marker.isActive)
        {
            float distance = distanceToPlayer(marker.getPosition());
            float opacity  = 1.0f;

            if (distance > scaledRadarDistance)
            {
                if (hideOutOfRadius)
                {
                    Debug.Log("Clamp Player: 1: " + marker.markerImageObject.GetComponent <MarkerImageBehaviour>().ParentObject.name);
//                    if (marker.isVisible())
//                    {
//           //             marker.hide();
//                    }
//                    return;
                }
                else
                {
                    if (distance > scaledMaxRadarDistance)
                    {
                        Debug.Log("Clamp Player: 2" + marker.markerImageObject.GetComponent <MarkerImageBehaviour>().ParentObject.name);
//                        if (marker.isVisible())
//                        {
//            //                marker.hide();
//                        }
//                        return;
                    }
                    else
                    {
                        if (useOpacity)
                        {
                            float opacityRange = scaledMaxRadarDistance - scaledRadarDistance;
                            if (opacityRange <= 0)
                            {
                                Debug.LogError("Max radar distance should be bigger than radar distance");
                                //    return;
                            }
                            else
                            {
                                float distanceDiff = distance - scaledRadarDistance;
                                opacity = 1 - (distanceDiff / opacityRange);

                                if (opacity < minimalOpacity)
                                {
                                    opacity = minimalOpacity;
                                }
                            }
                        }
                        distance = scaledRadarDistance;
                    }
                }
            }

            if (!marker.isVisible())
            {
                marker.show();
            }

            Vector3 posDif = marker.getPosition() - playerTransform.position;
            //    Debug.Log("Distance of " + marker.markerImageObject.GetComponent<MarkerImageBehaviour>().ParentObject.name + ": " + posDif.ToString());
            Vector3 newPos = new Vector3(posDif.x, posDif.z, 0);
            newPos.Normalize();

            float markerRadius = (marker.markerSize / 2);
            float newLen       = (distance / scaledRadarDistance) * (innerMapRadius - markerRadius);

            newPos *= newLen;
            marker.setLocalPos(newPos);
            marker.setOpacity(opacity);
        }
        else
        {
//            if (marker.isVisible())
//            {
//                marker.hide();
//            }
        }
    }