public void SendMessage(HoloNetMessage message, DestinationGroup group, bool isReliable) { SendInternal(message, isReliable, new RaiseEventOptions { Receivers = ConvertDestinationToPhotonReceiverEnum(group) } ); }
public NonGroceries(string name, string producer, int price, int quantity, Dimensions dimensions, DestinationGroup group) { this.name = name; this.producer = producer; this.price = price; this.quantity = quantity; this.dimensions = dimensions; this.group = group; isChanged = false; }
public void SendMessage(HoloNetMessage message, DestinationGroup group, bool isReliable) { Debug.Log($"[HOLONET] Messaging - Sending message {message.GetType().Name}"); message.sendTime = HoloNetAppModule.instance.provider.GetServerTime(); if (group == DestinationGroup.All) { HoloNetAppModule.instance.provider.SendMessage(message, DestinationGroup.Others, isReliable); ApplyMessage(message); } else if (group == DestinationGroup.Self || (group == DestinationGroup.Server && HoloNetPlayer.Local.isServer)) { ApplyMessage(message); } else { HoloNetAppModule.instance.provider.SendMessage(message, group, isReliable); } HoloNetAppModule.instance.objectPool.Push(message); }
private static ReceiverGroup ConvertDestinationToPhotonReceiverEnum(DestinationGroup group) { var photonGroup = ReceiverGroup.All; switch (group) { case DestinationGroup.All: photonGroup = ReceiverGroup.All; break; case DestinationGroup.Others: photonGroup = ReceiverGroup.Others; break; case DestinationGroup.Server: photonGroup = ReceiverGroup.MasterClient; break; } return(photonGroup); }
public static void SendUnreliable(HoloNetGlobalMessage message, DestinationGroup group = DestinationGroup.All) { HoloNetAppModule.instance.messenger.SendMessage(message, group, false); }
private void openFileButton_pictureBox_Click(object sender, EventArgs e) { try { OpenFileDialog openFile = new OpenFileDialog(); openFile.Title = "Open from file"; openFile.Filter = "Text files (*.txt)|*.txt"; if (openFile.ShowDialog() == DialogResult.OK && openFile.FileName.Length > 0) { using (System.IO.StreamReader of = new System.IO.StreamReader(openFile.FileName)) { while (!of.EndOfStream) { bool check = false; string type = of.ReadLine(); if (type == "Grocerie") { string name = of.ReadLine(); if (name == "") { name = "No_name"; } string producer = of.ReadLine(); if (producer == "") { producer = "No_producer"; } string strPrice = of.ReadLine(); int price; if (int.TryParse(strPrice, out price) == false) { price = 0; } string strQuantity = of.ReadLine(); int quantity; if (int.TryParse(strQuantity, out quantity) == false) { quantity = 0; } string strWeight = of.ReadLine(); int weight; if (int.TryParse(strWeight, out weight) == false) { weight = 0; } string strDate = of.ReadLine(); DateTime dateCreation; if (DateTime.TryParse(strDate, out dateCreation) == false) { dateCreation = DateTime.Now; } strDate = of.ReadLine(); DateTime dateExpiration; if (DateTime.TryParse(strDate, out dateExpiration) == false) { dateExpiration = DateTime.Now; } Groceries grocerie = new Groceries(name, producer, price, quantity, weight, dateCreation, dateExpiration); foreach (Goods item in storage.GetStorage) { if (item is Groceries) { Groceries tmp = item as Groceries; if (tmp == grocerie) { check = true; item.quantity += grocerie.quantity; for (int i = 0; i < items_listView.Items.Count; i++) { if (items_listView.Items[i].Tag == item) { items_listView.Items[i].SubItems[4].Text = item.quantity.ToString(); } } break; } } } if (check) { continue; } storage.AddItem(grocerie); ListViewItem listViewItem = new ListViewItem(grocerie.name, 0); listViewItem.Tag = grocerie; listViewItem.SubItems.Add("Grocerie"); listViewItem.SubItems.Add(grocerie.producer); listViewItem.SubItems.Add(grocerie.price.ToString()); listViewItem.SubItems.Add(grocerie.quantity.ToString()); items_listView.Items.Add(listViewItem); } else if (type == "Non-Grocerie") { string name = of.ReadLine(); if (name == "") { name = "No_name"; } string producer = of.ReadLine(); if (producer == "") { producer = "No_producer"; } string strPrice = of.ReadLine(); int price; if (int.TryParse(strPrice, out price) == false) { price = 0; } string strQuantity = of.ReadLine(); int quantity; if (int.TryParse(strQuantity, out quantity) == false) { quantity = 0; } Dimensions dimensions = new Dimensions(); string dimension = of.ReadLine(); if (int.TryParse(dimension, out dimensions.height) == false) { dimensions.height = 0; } dimension = of.ReadLine(); if (int.TryParse(dimension, out dimensions.length)) { dimensions.length = 0; } dimension = of.ReadLine(); if (int.TryParse(dimension, out dimensions.width) == false) { dimensions.width = 0; } string strGroup = of.ReadLine(); int group; if (int.TryParse(strGroup, out group) == false) { group = 0; } DestinationGroup destinationGroup = new DestinationGroup(); switch (group) { case 2: destinationGroup = DestinationGroup.Clothes; break; case 3: destinationGroup = DestinationGroup.Machinery; break; case 4: destinationGroup = DestinationGroup.Furniture; break; case 5: destinationGroup = DestinationGroup.Dishes; break; case 6: destinationGroup = DestinationGroup.Jewelry; break; default: destinationGroup = DestinationGroup.Nothing; break; } NonGroceries nonGroceries = new NonGroceries(name, producer, price, quantity, dimensions, destinationGroup); foreach (Goods item in storage.GetStorage) { if (item is NonGroceries) { NonGroceries tmp = item as NonGroceries; if (tmp == nonGroceries) { check = true; item.quantity += nonGroceries.quantity; item.quantity += nonGroceries.quantity; for (int i = 0; i < items_listView.Items.Count; i++) { if (items_listView.Items[i].Tag == item) { items_listView.Items[i].SubItems[4].Text = item.quantity.ToString(); } } break; } } } if (check) { continue; } storage.AddItem(nonGroceries); ListViewItem listViewItem = new ListViewItem(nonGroceries.name, 1); listViewItem.Tag = nonGroceries; listViewItem.SubItems.Add("NonGrocerie"); listViewItem.SubItems.Add(nonGroceries.producer); listViewItem.SubItems.Add(nonGroceries.price.ToString()); listViewItem.SubItems.Add(nonGroceries.quantity.ToString()); items_listView.Items.Add(listViewItem); } else if (type == "") { return; } else { Exception exception = new Exception("File have mistakes"); throw exception; } } } } } catch (Exception exp) { MessageBox.Show(exp.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public void SendUnreliable(HoloNetObjectMessage message, DestinationGroup group = DestinationGroup.All) { message.receiverId = oid; HoloNetAppModule.instance.messenger.SendMessage(message, group, false); }
private void acceptButton_pictureBox_Click(object sender, EventArgs e) { try { if (name_textBox.Text == "") { Exception exception = new Exception("name"); throw exception; } if (producer_textBox.Text == "") { Exception exception = new Exception("producer"); throw exception; } if (Convert.ToUInt64(price_textBox.Text) == 0) { Exception exception = new Exception("price"); throw exception; } if (Convert.ToUInt16(quantity_numericUpDown.Value) == 0) { Exception exception = new Exception("quantity"); throw exception; } if (type_comboBox.SelectedItem.ToString() == "Grocerie") { if (int.Parse(weightOrHeight_textBox.Text) == 0) { Exception exception = new Exception("weight"); throw exception; } } if (type_comboBox.SelectedItem.ToString() == "Non-grocerie") { if (weightOrHeight_textBox.Text == "Height" || Convert.ToUInt64(weightOrHeight_textBox.Text) == 0 || length_textBox.Text == "Length" || Convert.ToUInt64(length_textBox.Text) == 0 || width_textBox.Text == "Width" || Convert.ToUInt64(width_textBox.Text) == 0) { Exception exception = new Exception("dimensions"); throw exception; } if (destinationGroup_comboBox.SelectedIndex == -1) { Exception exception = new Exception("destination group"); throw exception; } } string name = name_textBox.Text; int price = Convert.ToInt32(price_textBox.Text); int quantity = Convert.ToInt32(quantity_numericUpDown.Value); string producer = producer_textBox.Text; if (type_comboBox.SelectedItem.ToString() == "Grocerie") { check = true; isGrocerie = 1; int weight = Convert.ToInt32(weightOrHeight_textBox.Text); DateTime dateCreation = dateCreation_dateTimePicker.Value; DateTime expirationDate = dateExpiration_dateTimePicker.Value; TimeSpan usingTime; TimeSpan remainingTime; double usingTimeI; double remainingTimeI; usingTime = expirationDate - dateCreation; remainingTime = expirationDate - DateTime.Now; usingTimeI = usingTime.TotalSeconds; remainingTimeI = remainingTime.TotalSeconds; bool isChanged; if ((usingTimeI * 0.2) > remainingTimeI) { price /= 2; isChanged = true; } else { isChanged = false; } groceries = new Groceries(name, producer, price, quantity, weight, dateCreation, expirationDate); groceries.isChanged = isChanged; this.Close(); } else { check = true; isGrocerie = 2; Dimensions dimensions = new Dimensions(); dimensions.height = Convert.ToInt32(weightOrHeight_textBox.Text); dimensions.length = Convert.ToInt32(length_textBox.Text); dimensions.width = Convert.ToInt32(width_textBox.Text); DestinationGroup destinationGroup = new DestinationGroup(); switch (destinationGroup_comboBox.SelectedIndex) { case 0: destinationGroup = DestinationGroup.Clothes; break; case 1: destinationGroup = DestinationGroup.Machinery; break; case 2: destinationGroup = DestinationGroup.Furniture; break; case 3: destinationGroup = DestinationGroup.Dishes; break; case 4: destinationGroup = DestinationGroup.Jewelry; break; default: destinationGroup = DestinationGroup.Nothing; break; } bool isChanged; if ((dimensions.height + dimensions.length + dimensions.width) > 600) { price *= 120; price /= 100; isChanged = true; } else { isChanged = false; } nonGroceries = new NonGroceries(name, producer, price, quantity, dimensions, destinationGroup); nonGroceries.isChanged = isChanged; this.Close(); } } catch (Exception text) { string message = "You made wrong input in "; message += text.Message; MessageBox.Show(message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }