예제 #1
0
    public void OnBuildButtonClick()
    {
        if (_selectBuildingInfo == null)
        {
            return;
        }
        if (_valueManager.GetValue("gustn").Value < _selectBuildingInfo.price)
        {
            _alertManager.AddAlert("notEnoughItem", Color.red);
            return;
        }
        var user = _areaManager.GetUser(buildHereObject.transform.position);

        if (_selectBuildingInfo.name.Equals("miner"))
        {
            if (user == null)
            {
                _alertManager.AddAlert("minerShould", Color.red);
                return;
            }
        }
        else if (user != null)
        {
            _alertManager.AddAlert("alreadyExists", Color.red);
            return;
        }

        _valueManager.GetValue("gustn").defaultValue -= _selectBuildingInfo.price;
        var go = _riceCakeManager.Instantiate(_selectBuildingInfo.name);

        go.transform.position = buildHereObject.transform.position;
        _alertManager.AddAlert("build", Color.black);
    }
예제 #2
0
    public void OnButtonClick(string name)
    {
        _audioManager.Play("click");
        switch (name)
        {
        case "Save":
            _dataManager.Save();
            _alertManager.AddAlert("save", Color.blue);
            break;

        case "Exit":
            _dialogManager.ShowYesOrNo("exit", Exit, null);
            break;

        case "Delete":
            _dialogManager.ShowYesOrNo("delete1", Delete1, null);
            break;
        }
    }
예제 #3
0
        public TradeConsole()
        {
            InitializeComponent();

            _alertManager             = new AlertManager();
            _alertManager.ThrowEvent += (sender, args) => OnAlertEvent(args);

            var repo = new Store();

            AllInstruments.SetInstruments(repo.GetInstruments());

            var alerts = repo.GetOpenAlerts();

            foreach (var alert in alerts)
            {
                var instrument = AllInstruments.GetInstrument(alert.Instrument.Market, alert.Instrument.Symbol);

                if (instrument == null)
                {
                    continue;
                }

                Alert a = new Alert
                {
                    AlertID         = alert.AlertID,
                    Instrument      = instrument,
                    Finished        = alert.DateClosed != null,
                    OpeningDate     = alert.DateOpened,
                    PriceTarget     = alert.PriceTarget,
                    TargetDirection = alert.TargetDirection
                };

                _alertManager.AddAlert(a);
            }

            EnumeratePlans();

            _tickPunker = new TickPunker();
            _tickPunker.ReceivedTick += new ReceivedTickEventHandler(GotTick);
            _tickPunker.StartWatcher();

            AddTextOutput("Started");
        }
예제 #4
0
        private void OnKeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar != (char)Keys.Return)
            {
                return;
            }

            string command = txtCommand.Text.ToLower().Trim();

            Regex regex = new Regex(@"^w\s+([a-z]{6})\s+([0-9\.]+)$");
            Match match = regex.Match(command);

            if (match.Success == true)
            {
                string  symbol = match.Groups[1].Value.ToUpper();
                decimal price  = Convert.ToDecimal(match.Groups[2].Value);

                Instrument instrument = AllInstruments.GetInstrument("Forex", symbol);

                if (instrument == null)
                {
                    AddTextOutput("Unknown instrument " + instrument);
                }
                else
                {
                    var alert = new Alert
                    {
                        Instrument  = instrument,
                        OpeningDate = DateTime.UtcNow,
                        PriceTarget = price
                    };

                    AddToStore(alert);

                    _alertManager.AddAlert(alert);

                    AddTextOutput("");
                    EnumeratePlans();
                }
            }
        }