Пример #1
0
 //Calls Component from a gameobject
 void Awake()
 {
     tickerMsg          = GameObject.Find("DisplayTicker").GetComponent <TickerMessage>();
     newQuest           = GameObject.Find("GUIQUnlock").GetComponent <QuestUnlocked>();
     touch              = GameObject.Find("Player").GetComponent <PlayerMovements>();
     MusicAudioListener = GameObject.Find("MusicManager").GetComponent <AudioListener>();       //r
 }
Пример #2
0
 void Awake()
 {
     touch              = GameObject.Find("Player").GetComponent <PlayerMovements>();
     tickerMsg          = GameObject.Find("DisplayTicker").GetComponent <TickerMessage>(); //r
     newQuest           = GameObject.Find("GUIQUnlock").GetComponent <QuestUnlocked>();
     MusicAudioListener = GameObject.Find("MusicManager").GetComponent <AudioListener>();  //r //comment this if you are about to edit the scene
 }
Пример #3
0
 public ZombieTransition(Spawner s, int lev = 0)
 {
     spawner       = s;
     level         = lev;
     initialWave   = emptyComposition();
     humanTickers  = new TickerMessage[Script_ZombieZone.numTickers];
     zombieTickers = new TickerMessage[Script_ZombieZone.numTickers];
 }
Пример #4
0
 public void FromString_move()
 {
     TickerMessage.CreateFromString(TestSocketMessages.TickerMessage, new SubscriptionStatus()
     {
         ChannelId = 123,
         Pair      = "XBT/EUR"
     });
 }
Пример #5
0
 void Awake()
 {
     GameObject.Find("Player").GetComponent <NewAct4Part3>().enabled = false;
     MakeAllFalse();
     AllFalse();
     touch              = GameObject.Find("Player").GetComponent <PlayerMovements>();
     tickerMsg          = GameObject.Find("DisplayTicker").GetComponent <TickerMessage>(); //r
     newQuest           = GameObject.Find("GUIQUnlock").GetComponent <QuestUnlocked>();
     st                 = GameObject.Find("Store").GetComponent <Store>();
     MusicAudioListener = GameObject.Find("MusicManager").GetComponent <AudioListener>();       //r //comment this if you are about to edit the scene
 }
Пример #6
0
        private void HandleData(KrakenMessageEventArgs eventArgs, SubscriptionStatus subscription)
        {
            var dataType = subscription.Subscription.Name;

            if (dataType == SubscribeOptionNames.Ticker)
            {
                var tickerMessage = TickerMessage.CreateFromString(eventArgs.RawContent, subscription);
                TickerReceived.InvokeAll(this, new TickerEventArgs(subscription.ChannelId.Value, subscription.Pair, tickerMessage));
            }
            if (dataType == SubscribeOptionNames.OHLC)
            {
                var ohlcMessage = OhlcMessage.CreateFromString(eventArgs.RawContent);
                OhlcReceived.InvokeAll(this, new OhlcEventArgs(subscription.ChannelId.Value, subscription.Pair, ohlcMessage));
            }
            if (dataType == SubscribeOptionNames.Trade)
            {
                var tradeMessage = TradeMessage.CreateFromString(eventArgs.RawContent);
                TradeReceived.InvokeAll(this, new TradeEventArgs(subscription.ChannelId.Value, subscription.Pair, tradeMessage));
            }
            if (dataType == SubscribeOptionNames.Spread)
            {
                var spreadMessage = SpreadMessage.CreateFromString(eventArgs.RawContent);
                SpreadReceived.InvokeAll(this, new SpreadEventArgs(subscription.ChannelId.Value, subscription.Pair, spreadMessage));
            }
            if (dataType == SubscribeOptionNames.Book)
            {
                if (eventArgs.RawContent.Contains(@"""as"":") && eventArgs.RawContent.Contains(@"""bs"":"))
                {
                    var bookSnapshotMessage = BookSnapshotMessage.CreateFromString(eventArgs.RawContent);
                    BookSnapshotReceived.InvokeAll(this, new KrakenDataEventArgs <BookSnapshotMessage>(eventArgs.ChannelId.Value, subscription.Pair, bookSnapshotMessage));
                }
                if (eventArgs.RawContent.Contains(@"""a"":") || eventArgs.RawContent.Contains(@"""b"":"))
                {
                    var bookUpdateMessage = BookUpdateMessage.CreateFromString(eventArgs.RawContent);
                    BookUpdateReceived.InvokeAll(this, new KrakenDataEventArgs <BookUpdateMessage>(eventArgs.ChannelId.Value, subscription.Pair, bookUpdateMessage));
                }
            }
        }
Пример #7
0
    void Awake()
    {
        //content.image = (Texture2D)textwin;
        touch   = GameObject.Find("Player").GetComponent <PlayerMovements>();
        storage = GameObject.Find("Storage").GetComponent <Storage> ();
        move    = GameObject.Find("Bonifacio_0").GetComponent <Move> ();
//		MusicAudioListener = GameObject.Find("MusicManager").GetComponent<AudioListener>();//r //comment this if you are about to edit the scene
        New = storage.newer;

        if (New == 1)
        {
            isTrigShow = true;
            isHide     = true;
            touch.stopMovements();
            GC       = true;
            onQuest3 = true;
            onQuest1 = false;
            PlayerPrefs.SetInt("stopButton", 0);
            //GameObject.Find("Player").GetComponent<NewAct4FinalPart1>().enabled = true;
        }
        //tickers
        tickerMsg = GameObject.Find("DisplayTicker").GetComponent <TickerMessage>();
        newQuest  = GameObject.Find("GUIQUnlock").GetComponent <QuestUnlocked>();
    }
Пример #8
0
    // Use this for initialization

    void Awake()
    {
        identify  = GameObject.Find("Player").GetComponent <NewAct4Part3>();
        tickerMsg = GameObject.Find("DisplayTicker").GetComponent <TickerMessage>();        //r
        newQuest  = GameObject.Find("GUIQUnlock").GetComponent <QuestUnlocked>();
    }
Пример #9
0
        public void WebSocketMessageHandler(MessageArgs e)
        {
            //cout(e.Text);
            string text = e.Text.Replace("\u0000", string.Empty);

            if (text.StartsWith("["))
            {
                JArray array  = JArray.Parse(text);
                int    chanId = array[0].Value <int>();

                // Check the ChannelId of the message
                if (m_tickerChannelIds.ContainsKey(chanId))     // is this channel id in our TICKER list?
                {
                    string symbol = m_tickerChannelIds[chanId];
                    JArray ja     = array[1] as JArray;
                    if (ja == null)
                    {
                        string msgtype = array[1].Value <string>();
                        if (msgtype == "hb")
                        {
                            //dout("BITFINEX:HEARTBEAT");
                        }
                        else
                        {
                            ErrorMessage("Bitfinex::WebSocketMessageHandler=> Unknown ticker message type: {0}", msgtype);
                        }
                        return;
                    }
                    var tim = new TickerMessage(ja);
                    // TODO: Fire event with this ticker update
                    cout("BITFINEX Ticker: {0} {1}", symbol, tim.ToString());
                    return;
                }
                else if (m_tradeChannelIds.ContainsKey(chanId)) // is this channel id in our TRADE list?
                {
                    string symbol = m_tradeChannelIds[chanId];
                    JArray ja     = array[1] as JArray;
                    if (ja == null)
                    {
                        string msgtype = array[1].Value <string>();
                        if (msgtype == "hb")
                        {
                            //dout("BITFINEX:HEARTBEAT");
                        }
                        else if (msgtype == "te")
                        {
                            ja = array[2] as JArray;
                            var trm = new TradeMessage(ja);
                            // TODO: Fire event with this trade execution
                            cout("BITFINEX Trade Execution: {0} {1}", symbol, trm.ToString());
                        }
                        else if (msgtype == "tu")
                        {
                            ja = array[2] as JArray;
                            var trm = new TradeMessage(ja);
                            // TODO: Fire event with this trade execution update
                            cout("BITFINEX Trade Execution Update: {0} {1}", symbol, trm.ToString());
                        }
                        else
                        {
                            ErrorMessage("Bitfinex::WebSocketMessageHandler=> Unknown trade message type: {0}", msgtype);
                        }
                        return;
                    }
                    foreach (JArray t in ja)
                    {
                        var trm = new TradeMessage(t);
                        // TODO: Fire event with this trade update
                        cout("BITFINEX Trade: {0} {1}", symbol, trm.ToString());
                    }
                    return;
                }

                if (array[1] is JArray)
                {
                    JArray book = array[1].Value <JArray>();
                    if (book[0] is JArray)
                    {
                        //m_orderBook.Clear();
                        for (int i = 0; i < book.Count; ++i)
                        {
                            var   bookEntry     = book[i].Value <JArray>();
                            float price         = bookEntry[0].Value <float>();
                            int   ordersAtLevel = bookEntry[1].Value <int>();
                            float amount        = bookEntry[2].Value <float>();
                            //cout("{0} {1} {2}", price, ordersAtLevel, amount);
                            if (ordersAtLevel == 0)
                            {
                                m_orderBook.UpdateBid(price.ToString(), 0);
                                m_orderBook.UpdateAsk(price.ToString(), 0);
                            }
                            else
                            {
                                if (amount >= 0)     // bid
                                {
                                    m_orderBook.UpdateBid(price.ToString(), amount.ToString());
                                }
                                if (amount <= 0)    // ask
                                {
                                    m_orderBook.UpdateAsk(price.ToString(), (-amount).ToString());
                                }
                            }
                        }
                        FireOrderBookUpdate();
                    }
                    else        // only contains a SINGLE book entry (a single list containing 3 values)
                    {
                        float price         = book[0].Value <float>();
                        int   ordersAtLevel = book[1].Value <int>();
                        float amount        = book[2].Value <float>();
                        //cout("{0} {1} {2}", price, ordersAtLevel, amount);
                        if (ordersAtLevel == 0)
                        {
                            m_orderBook.UpdateBid(price.ToString(), 0);
                            m_orderBook.UpdateAsk(price.ToString(), 0);
                        }
                        else
                        {
                            if (amount >= 0)     // bid
                            {
                                m_orderBook.UpdateBid(price.ToString(), amount.ToString());
                            }
                            if (amount <= 0)    // ask
                            {
                                m_orderBook.UpdateAsk(price.ToString(), (-amount).ToString());
                            }
                        }
                        FireOrderBookUpdate();
                    }
                }
                else
                {
                    if (array[1].Type == JTokenType.String && array[1].Value <string>() == "hb")
                    {
                        dout("{0} BITFINEX:HEARTBEAT", DateTime.Now.ToString("HH:mm:ss"));
                    }
                    else
                    {
                        ErrorMessage("BITFINEX: Unknown message: {0}", array[1]);
                    }
                }
            }
            else
            {
                JObject msg = JObject.Parse(text);
                if (msg["event"] != null)
                {
                    string msgType = msg["event"].Value <string>();
                    if (msgType == "info")
                    {
                        var version = msg["version"];
                        if (version != null)
                        {
                            int     iversion = version.Value <int>();
                            JObject platform = msg["platform"] as JObject;
                            int     status   = platform["status"].Value <int>();
                            dout("BITFINEX: info  version={0} status={1}", iversion, status);
                        }
                        var code = msg["code"];
                        if (code != null)
                        {
                            int    icode   = code.Value <int>();
                            string message = msg["msg"].Value <string>();
                            dout("BITFINEX: info  code={0} message:{1}", icode, message);
                        }
                    }
                    else if (msgType == "subscribed")
                    {
                        //dout("BITFINEX: subscribed");
                        string channel = msg["channel"].Value <string>();
                        int    chanId  = msg["chanId"].Value <int>();
                        string symbol  = msg["symbol"].Value <string>();
                        string pair    = msg["pair"].Value <string>();
                        if (channel == "ticker")
                        {
                            m_tickerChannelIds[chanId] = pair;
                        }
                        else if (channel == "trades")
                        {
                            m_tradeChannelIds[chanId] = pair;
                        }
                        else
                        {
                            ErrorMessage("Bitfinex::WebSocketMessageHandler=> Unknown channel in 'subscribed' message: {0}", channel);
                        }
                        dout("BITFINEX:subscribed  channel={0} chanId={1} symbol={2} pair={3}", channel, chanId, symbol, pair);
                    }
                }
                else
                {
                    ErrorMessage("Unknown message type: ", Str(msg));
                }
            }

            return;
        }
Пример #10
0
        private void HandleIncomingMessage(object sender, KrakenMessageEventArgs eventArgs)
        {
            logger.LogDebug("Handling incoming '{event}' message", eventArgs.Event);

            switch (eventArgs.Event)
            {
            case Heartbeat.EventName:
                var heartbeat = serializer.Deserialize <Heartbeat>(eventArgs.RawContent);
                logger.LogTrace("Heartbeat received: {heartbeat}", heartbeat);
                HeartbeatReceived.InvokeAll(this, heartbeat);
                break;

            case SystemStatus.EventName:
                var systemStatus = serializer.Deserialize <SystemStatus>(eventArgs.RawContent);
                logger.LogTrace("System status changed: {systemStatus}", systemStatus);
                SystemStatus = systemStatus;
                SystemStatusChanged.InvokeAll(this, systemStatus);
                break;

            case SubscriptionStatus.EventName:
                var subscriptionStatus = serializer.Deserialize <SubscriptionStatus>(eventArgs.RawContent);
                logger.LogTrace("Subscription status changed: {subscriptionStatus}", subscriptionStatus);

                SynchronizeSubscriptions(subscriptionStatus);
                SubscriptionStatusChanged.InvokeAll(this, subscriptionStatus);

                break;

            case "data":

                var subscription = Subscriptions.ContainsKey(eventArgs.ChannelId.Value) ? Subscriptions[eventArgs.ChannelId.Value] : null;
                if (subscription == null)
                {
                    logger.LogWarning("Didn't find a subscription for channelId {channelId}", eventArgs.ChannelId);
                    break;
                }

                var dataType = subscription.Subscription.Name;

                if (dataType == SubscribeOptionNames.Ticker)
                {
                    var tickerMessage = TickerMessage.CreateFromString(eventArgs.RawContent, subscription);
                    TickerReceived.InvokeAll(this, new TickerEventArgs(subscription.ChannelId.Value, subscription.Pair, tickerMessage));
                }
                if (dataType == SubscribeOptionNames.OHLC)
                {
                    var ohlcMessage = OhlcMessage.CreateFromString(eventArgs.RawContent);
                    OhlcReceived.InvokeAll(this, new OhlcEventArgs(subscription.ChannelId.Value, subscription.Pair, ohlcMessage));
                }
                if (dataType == SubscribeOptionNames.Trade)
                {
                    var tradeMessage = TradeMessage.CreateFromString(eventArgs.RawContent);
                    TradeReceived.InvokeAll(this, new TradeEventArgs(subscription.ChannelId.Value, subscription.Pair, tradeMessage));
                }
                if (dataType == SubscribeOptionNames.Spread)
                {
                    var spreadMessage = SpreadMessage.CreateFromString(eventArgs.RawContent);
                    SpreadReceived.InvokeAll(this, new SpreadEventArgs(subscription.ChannelId.Value, subscription.Pair, spreadMessage));
                }
                if (dataType == SubscribeOptionNames.Book)
                {
                    if (eventArgs.RawContent.Contains(@"""as"":") && eventArgs.RawContent.Contains(@"""bs"":"))
                    {
                        var bookSnapshotMessage = BookSnapshotMessage.CreateFromString(eventArgs.RawContent);
                        BookSnapshotReceived.InvokeAll(this, new KrakenDataEventArgs <BookSnapshotMessage>(eventArgs.ChannelId.Value, subscription.Pair, bookSnapshotMessage));
                    }
                    if (eventArgs.RawContent.Contains(@"""a"":") || eventArgs.RawContent.Contains(@"""b"":"))
                    {
                        var bookUpdateMessage = BookUpdateMessage.CreateFromString(eventArgs.RawContent);
                        BookUpdateReceived.InvokeAll(this, new KrakenDataEventArgs <BookUpdateMessage>(eventArgs.ChannelId.Value, subscription.Pair, bookUpdateMessage));
                    }
                }

                break;

            default:
                logger.LogWarning("Could not handle incoming message: {message}", eventArgs.RawContent);
                break;
            }
        }
Пример #11
0
 internal Ticker(int instrumentId, TickerMessage message)
 {
     InstrumentId = instrumentId;
     BestAsk      = message.BestAsk.PositiveOrNull();
     BestBid      = message.BestBid.PositiveOrNull();
 }
Пример #12
0
 public void FromString_TickerRawContentValue_ThrowsArgumentOutOfRangeException(string value)
 {
     Assert.Equal("rawMessage",
                  Assert.Throws <ArgumentOutOfRangeException>(() => TickerMessage.CreateFromString(value, subscription.Object)).ParamName);
 }
Пример #13
0
 public void FromString_TickerRawContentNull_ThrowsArgumentNullException()
 {
     Assert.Equal("rawMessage",
                  Assert.Throws <ArgumentNullException>(() => TickerMessage.CreateFromString(null, subscription.Object)).ParamName);
 }