예제 #1
0
 private void SaveProperty_fieldChangeEvent(Netcode.NetString field, string oldValue, string newValue)
 {
     if (newValue != LastUpdate)
     {
         ParseDataString(newValue);
     }
 }
예제 #2
0
 public PyDataSync(Netcode.NetString field, Dictionary <string, string> data)
 {
     Data  = data;
     Field = field;
     Field.fieldChangeEvent += SaveProperty_fieldChangeEvent;
     Update();
 }
예제 #3
0
 public PyDataSync(Netcode.NetString field, string key = "", string value = "")
 {
     Data = new Dictionary <string, string>();
     if (key != "")
     {
         Data.Add(key, value);
     }
     Field = field;
     Field.fieldChangeEvent += SaveProperty_fieldChangeEvent;
     Update();
 }
예제 #4
0
 public void InitNetFields()
 {
     if (Game1.IsMultiplayer == false && (Game1.IsClient == false || Game1.IsClient == false))
     {
         return;
     }
     this.initNetFields();
     this.syncObject = new PySync(this);
     this.NetFields.AddField(this.syncObject);
     this.netItemInfo = new Netcode.NetString(this.ItemInfo);
     this.NetFields.AddField(this.netItemInfo);
 }
예제 #5
0
        private void RandomButtonPressed()
        {
            if (GetNumberOfLocalMiniJukeboxes() == 0) // this shouldn't happen!
            {
                Monitor.Log("RandomButtonPressed() despite no mini-jukeboxes!", LogLevel.Error);
                return;
            }

            ChooseAction("random"); // NOTE: this will not include "typically removed" tracks even if enabled
            // above sets GameLocation.randomMiniJukeboxTrack.Value
            // vanilla bug(?): only happens IF miniJukeboxTrack is "random", which is set AFTER the randomize attempt is made

            Netcode.NetString randomTrack = Game1.player.currentLocation.randomMiniJukeboxTrack;
            if (randomTrack.Value is null || randomTrack.Value.Equals(""))
            {
                ChooseAction("random"); // do it again
            }
            PlayingIndex = -1;
            IsRandom     = true;

            Monitor.Log("Random selected! Now playing: " + Game1.player.currentLocation.randomMiniJukeboxTrack.Value);

            // Game1.playSound("select");
        }