예제 #1
0
    void Update()
    {
        if (image.enabled)
        {
            foreach (GameObject g in Effects)
            {
#pragma warning disable 618
                g.GetComponent <ParticleSystem>().enableEmission = true;
            }
        }
        else
        {
            foreach (GameObject g in Effects)
            {
                g.GetComponent <ParticleSystem>().enableEmission = false;
#pragma warning restore 618
            }
        }

        if (Hide)
        {
            if (Time.time >= StartTime + TurnOffDelay)
            {
                image.enabled = false;
            }
        }

        _Revealer.visionRange = VisionRange;

        if (Faction != FogOfWar.RevealFaction)
        {
            if (FogOfWar.IsPositionRevealedByFaction(transform.position, FogOfWar.RevealFactionInt))
            {
                if (Hide)
                {
                    Hide = false;
                }
                image.enabled = true;
            }
            else
            {
                if (!Hide)
                {
                    StartTime = Time.time;
                    Hide      = true;
                }
            }
        }
        else
        {
            if (!image.enabled)
            {
                image.enabled = true;
            }
        }
    }
예제 #2
0
    void Update()
    {
        if (FogOfWar.fogAlignment == FogOfWar.FogAlignment.Horizontal || FogOfWar.fogAlignment == FogOfWar.FogAlignment.Vertical)
        {
            if (revealer == null)
            {
                return;
            }

            revealer.visionRange = visionRange;

            if (faction != FogOfWar.RevealFaction)
            {
                if (FogOfWar.IsPositionRevealedByFaction(transform.position, FogOfWar.RevealFactionInt))
                {
                    isInTheSightRange = true;//명우가넣은거
                    Check();
                    //Show();
                }
                else
                {
                    isInTheSightRange = false;//명우가넣은거
                    Check();
                    //Hide();
                }
            }
            else
            {
                isInTheSightRange = true;//명우가넣은거
                Check();
                //Show();
            }
        }
        else
        {
            if (previousFaction != FogOfWar3D.currentlyRevealed)
            {
                previousFaction = FogOfWar3D.currentlyRevealed;
                if (faction != FogOfWar3D.currentlyRevealed)
                {
                    sphereCollider.radius = 0f;
                    isInTheSightRange     = false;//명우가넣은거
                    Check();
                    //Hide();
                }
                else
                {
                    sphereCollider.radius = visionRange;
                    isInTheSightRange     = true;//명우가넣은거
                    Check();
                    //Show();
                }
            }
        }
    }
예제 #3
0
    public void OnEnable()
    {
        meshRenderer = GetComponent <MeshRenderer>();

        FogOfWar.RegisterVisionBlocker(gameObject);

        if (FogOfWar.IsPositionRevealedByFaction(transform.position, FogOfWar.RevealFactionInt))
        {
            meshRenderer.enabled = true;
        }
        else
        {
            meshRenderer.enabled = false;
        }
    }
예제 #4
0
    void Update()
    {
        if (Hide)
        {
            if (Time.time >= StartTime + TurnOffDelay)
            {
                meshRenderer.enabled = false;
            }
        }

        _Revealer.visionRange = VisionRange;

        if (Faction != FogOfWar.RevealFaction)
        {
            if (FogOfWar.IsPositionRevealedByFaction(transform.position, FogOfWar.RevealFactionInt))
            {
                if (Hide)
                {
                    Hide = false;
                }
                meshRenderer.enabled = true;
            }
            else
            {
                if (!Hide)
                {
                    StartTime = Time.time;
                    Hide      = true;
                }
            }
        }
        else
        {
            if (!meshRenderer.enabled)
            {
                meshRenderer.enabled = true;
            }
        }
    }
예제 #5
0
    public void OnEnable()
    {
        if (!meshRenderer)
        {
            meshRenderer = gameObject.GetComponent <MeshRenderer>();
        }

        _Revealer = new Revealer(VisionRange,
                                 Faction,
                                 UpVision,
                                 gameObject);

        FogOfWar.RegisterRevealer(_Revealer);

        if (FogOfWar.IsPositionRevealedByFaction(transform.position, FogOfWar.RevealFactionInt))
        {
            meshRenderer.enabled = true;
        }
        else
        {
            meshRenderer.enabled = false;
        }
    }
예제 #6
0
    public void Start()
    {
        if (!image)
        {
            image = gameObject.GetComponent <Image>();
        }

        _Revealer = new Revealer(VisionRange,
                                 Faction,
                                 UpVision,
                                 gameObject);

        FogOfWar.RegisterRevealer(_Revealer);

        if (FogOfWar.IsPositionRevealedByFaction(transform.position, FogOfWar.RevealFactionInt))
        {
            image.enabled = true;
        }
        else
        {
            image.enabled = false;
        }
    }