Exemple #1
0
    private void Start()
    {
        DataPublisher publisher = GetComponent <DataPublisher>();

        m_temperaturePort = new DataPublisher.DataPort("Temperature");
        publisher.SetPort(m_temperaturePort);
    }
Exemple #2
0
    private void Start()
    {
        DataPublisher publisher = GetComponent <DataPublisher>();

        m_presencePort = new DataPublisher.DataPort("IsDetected");
        publisher.SetPort(m_presencePort);
    }
Exemple #3
0
    // IMover end

    private void Start()
    {
        m_tileComponent = GetComponent <TileObject>();
        m_direction     = m_tileComponent.Direction;

        m_consumerComponent = GetComponent <EnergyConsumer>();

        m_animator = GetComponent <Animator>();
        if (m_animator != null)
        {
            m_animator.enabled = false;
            m_animationEnabled = false;
        }
        else
        {
            Debug.LogError("Animator is not found for conveyer.");
        }

        DataPublisher publisher = GetComponent <DataPublisher>();

        if (publisher == null)
        {
            Debug.LogWarning("There is no publisher attached to conveyer object!");
            return;
        }

        m_directionPort = new DataPublisher.DataPort("IsReversed");
        m_speedPort     = new DataPublisher.DataPort("Speed");

        publisher.SetPort(m_directionPort);
        publisher.SetPort(m_speedPort);
    }
Exemple #4
0
    public void OnPortReleased(DataPublisher.DataPort port)
    {
        port.Reset();
        Reset();
        HidePortList();

        m_logger.Log($"Release port {port.Name}.");
    }
Exemple #5
0
    private void Start()
    {
        m_logger = new LogUtils.DebugLogger("Press");

        m_state    = PressState.Up;
        m_consumer = GetComponent <EnergyConsumer>();
        m_animator = GetComponent <Animator>();

        DataPublisher publisher = GetComponent <DataPublisher>();

        m_pressPort = new DataPublisher.DataPort("IsPressed");
        publisher.SetPort(m_pressPort);
    }
Exemple #6
0
    private void CreatePortListItem(DataPublisher.DataPort port, Vector2 pos, int index)
    {
        var item = Instantiate(ListItemPrefab, pos, Quaternion.identity, PortList);

        item.localScale = new Vector3(1.0f, 1.0f, 1.0f); // prevent wrong scaling

        string buttonLabel = port.Name;
        var    toggle      = item.GetComponent <Toggle>();

        if (!port.IsConnected)
        {
            var i = index; // local var to make a closure
            toggle.onValueChanged.AddListener((val) =>
            {
                if (val)
                {
                    OnPortSelected(port);
                    m_selectedPortIndex = i;
                }
            });

            buttonLabel += " (connect)";
        }
        else
        {
            if (m_state == State.SelectPortFrom)
            {
                toggle.onValueChanged.AddListener((val) =>
                {
                    if (val)
                    {
                        OnPortReleased(port);
                    }
                });
            }
            else
            {
                toggle.enabled = false;
            }

            buttonLabel += " (release)";
        }

        var text = item.GetComponent <TextMeshProUGUI>();

        text.alignment = TextAlignmentOptions.Center;
        text.text      = buttonLabel;
    }
Exemple #7
0
    public void OnPortSelected(DataPublisher.DataPort port)
    {
        m_mouseEventReady = false;

        if (m_state == State.SelectPortFrom)
        {
            m_selectedPortFrom = port;
            m_state            = State.WirePlacing;
        }
        else if (m_state == State.SelectPortTo)
        {
            m_selectedPortTo = port;
            WirePorts();
            m_line = null; // prevent line destroying
            Reset();
        }

        HidePortList();
    }