Exemple #1
0
    public void AddElectricalNode(Vector3Int position, ElectricalCableTile electricalCableTile, bool AddTile = false)
    {
        var checkPos = position;

        checkPos.z = 0;
        var metaData = metaDataLayer.Get(checkPos, true);
        var newdata  = new ElectricalMetaData();

        newdata.Initialise(electricalCableTile, metaData, position, this);
        metaData.ElectricalData.Add(newdata);
        if (AddTile)
        {
            if (electricalCableTile != null)
            {
                if (UnderFloorLayer == null)
                {
                    underFloorLayer = GetComponentInChildren <UnderFloorLayer>();
                }
                if (UnderFloorLayer != null)
                {
                    UnderFloorLayer.SetTile(position, electricalCableTile, Matrix4x4.identity);
                }
            }
        }
    }
 public void SetUp(IntrinsicElectronicData indata)
 {
     Categorytype       = indata.Categorytype;
     ConnectionReaction = indata.ConnectionReaction;
     Present            = indata.Present;
     MetaDataPresent    = indata.MetaDataPresent;
     CanConnectTo       = indata.CanConnectTo;
     WireEndB           = indata.WireEndB;
     WireEndA           = indata.WireEndA;
 }
Exemple #3
0
    public void AddElectricalNode(Vector3Int position, WireConnect wireConnect)
    {
        var metaData = metaDataLayer.Get(position, true);
        var newdata  = new ElectricalMetaData();

        newdata.Initialise(wireConnect, metaData, position, this);
        metaData.ElectricalData.Add(newdata);

        UnderFloorElectricalSetTile(wireConnect.InData.WireEndA, wireConnect.InData.WireEndB,
                                    wireConnect.InData.Categorytype, position, newdata);
    }
Exemple #4
0
    public void AddElectricalNode(Vector3Int position, ElectricalCableTile wireConnect)
    {
        var checkPos = position;

        checkPos.z = 0;
        var metaData = metaDataLayer.Get(checkPos, true);
        var newdata  = new ElectricalMetaData();

        newdata.Initialise(wireConnect, metaData, position, this);
        metaData.ElectricalData.Add(newdata);
    }
Exemple #5
0
    public void AddElectricalNode(Vector3Int position, ElectricalCableTile electricalCableTile, bool AddTile = false)
    {
        var checkPos = position;

        checkPos.z = 0;
        var metaData = metaDataLayer.Get(checkPos, true);
        var newdata  = new ElectricalMetaData();

        newdata.Initialise(electricalCableTile, metaData, position, this);
        metaData.ElectricalData.Add(newdata);
        if (AddTile)
        {
            if (electricalCableTile != null)
            {
                AddUnderFloorTile(position, electricalCableTile, Matrix4x4.identity, Color.white);
            }
        }
    }
Exemple #6
0
    public void AddElectricalNode(Vector3Int position, WireConnect wireConnect)
    {
        var metaData = metaDataLayer.Get(position, true);
        var newdata  = new ElectricalMetaData();

        newdata.Initialise(wireConnect, metaData, position, this);
        metaData.ElectricalData.Add(newdata);

        ElectricalCableTile Tile = null;
        string Compound;

        if (newdata.InData.WireEndA < newdata.InData.WireEndB)
        {
            Compound = newdata.InData.WireEndA + "_" + newdata.InData.WireEndB;
        }
        else
        {
            Compound = newdata.InData.WireEndB + "_" + newdata.InData.WireEndA;
        }
        int spriteIndex = WireDirections.GetSpriteIndex(Compound);

        switch (newdata.InData.Categorytype)
        {
        case PowerTypeCategory.StandardCable:
            Tile = ElectricalManager.Instance.MediumVoltageCables.Tiles[spriteIndex];
            break;

        case PowerTypeCategory.LowVoltageCable:
            Tile = ElectricalManager.Instance.LowVoltageCables.Tiles[spriteIndex];
            break;

        case PowerTypeCategory.HighVoltageCable:
            Tile = ElectricalManager.Instance.HighVoltageCables.Tiles[spriteIndex];
            break;
        }
        newdata.RelatedTile = Tile;
        if (Tile != null)
        {
            if (metaTileMap != null)
            {
                metaTileMap.SetTile(position, Tile);
            }
        }
    }
Exemple #7
0
    public void AddElectricalNode(Vector3Int position, ElectricalCableTile electricalCableTile, bool AddTile = false)
    {
        var checkPos = position;

        checkPos.z = 0;
        var metaData = metaDataLayer.Get(checkPos, true);

        if (AddTile)
        {
            if (electricalCableTile != null)
            {
                position = TileChangeManager.UpdateTile(position, electricalCableTile);
            }
        }

        var newdata = new ElectricalMetaData();

        newdata.Initialise(electricalCableTile, metaData, position, this);
        metaData.ElectricalData.Add(newdata);
    }
Exemple #8
0
    private void UnderFloorElectricalSetTile(Connection WireEndA, Connection WireEndB,
                                             PowerTypeCategory powerTypeCategory, Vector3Int position, ElectricalMetaData newdata = null)
    {
        ElectricalCableTile Tile = ElectricityFunctions.RetrieveElectricalTile(WireEndA, WireEndB, powerTypeCategory);

        if (newdata != null)
        {
            newdata.RelatedTile = Tile;
        }

        if (Tile != null)
        {
            AddUnderFloorTile(position, Tile, Matrix4x4.identity, Color.white);
        }
    }
Exemple #9
0
    private void UnderFloorElectricalSetTile(Connection WireEndA, Connection WireEndB, PowerTypeCategory powerTypeCategory, Vector3Int position, ElectricalMetaData newdata = null)
    {
        ElectricalCableTile Tile = ElectricityFunctions.RetrieveElectricalTile(WireEndA, WireEndB, powerTypeCategory);

        if (newdata != null)
        {
            newdata.RelatedTile = Tile;
        }
        if (Tile != null)
        {
            if (UnderFloorLayer == null)
            {
                underFloorLayer = GetComponentInChildren <UnderFloorLayer>();
            }
            if (UnderFloorLayer != null)
            {
                UnderFloorLayer.SetTile(position, Tile, Matrix4x4.identity);
            }
        }
    }