Sector.activate C# (CSharp) Method

activate() public method

public activate ( ) : void
return void
    public void activate()
    {        
        this.switchOn();
        
        bool contains = false;
        
        foreach(Sector sector in allSectors)
        {
            if(sector.id != this.id)
            {
                contains = false;
                if((null != neighboringSectors) && (0 != neighboringSectors.Length))
                {
                    foreach(Sector neighbor in neighboringSectors)
                    {
                        if(sector == neighbor)
                        {
                            contains = true;
                            break;
                        }
                    }
                }
                if(!sector._areEmittersOn && contains)
                {
                    sector.switchOn();
                }
                else if(sector._areEmittersOn && !contains)
                {
                    sector.switchOff();
                }
            }
        }        
    }

Usage Example

示例#1
0
    // Manages sector when entering into the sector.
    void manageSector(Collider col)
    {
        Sector sector = col.GetComponent <Sector>();

        if (null != sector)
        {
            Logger.Log("Hero::manageSector collided with sector=" + sector.ToString(), Logger.Level.INFO);
            sector.activate();
        }
    }