Ejemplo n.º 1
0
        public IEnumerable <RaceFile> GetRaces()
        {
            var raceLoader = new RaceLoader();

            return(sgaFileReader.GetRaces()
                   .Select(x => new MemoryStream(x.Data))
                   .Select(x => raceLoader.Load(x)));
        }
        public IEnumerable <RaceFile> GetRaces()
        {
            var    raceLoader = new RaceLoader();
            string path       = Path.Combine(rootDir, "Data", "attrib", "racebps");

            foreach (string file in GetFiles(path, "*.rgd", SearchOption.TopDirectoryOnly))
            {
                yield return(raceLoader.Load(file));
            }
        }
Ejemplo n.º 3
0
        public override void HandlePacket(BinaryReader reader, int whoAmI)
        {
            var msgType = (MrPlagueRacesMessageType)reader.ReadByte();

            switch (msgType)
            {
            case MrPlagueRacesMessageType.MrPlagueRacesPlayerSyncPlayer:
            {
                byte playernumber        = reader.ReadByte();
                var  MrPlagueRacesPlayer = Main.player[playernumber].GetModPlayer <MrPlagueRacesPlayer>();
                int  PlayerRace          = reader.ReadInt32();

                if (RaceLoader.TryGetRace(PlayerRace, out var race))
                {
                    MrPlagueRacesPlayer.race = race;
                }

                MrPlagueRacesPlayer.RaceStats                 = reader.ReadBoolean();
                MrPlagueRacesPlayer.GotStatToggler            = reader.ReadBoolean();
                MrPlagueRacesPlayer.GotRaceItems              = reader.ReadBoolean();
                MrPlagueRacesPlayer.IsNewCharacter1           = reader.ReadBoolean();
                MrPlagueRacesPlayer.IsNewCharacter2           = reader.ReadBoolean();
                MrPlagueRacesPlayer.MrPlagueRaceInfo          = reader.ReadBoolean();
                MrPlagueRacesPlayer.MrPlagueRacesNonStopParty = reader.ReadBoolean();
                break;
            }

            case MrPlagueRacesMessageType.MrPlagueRacesNonStopPartyChanged:
            {
                byte playernumber        = reader.ReadByte();
                var  MrPlagueRacesPlayer = Main.player[playernumber].GetModPlayer <MrPlagueRacesPlayer>();
                MrPlagueRacesPlayer.MrPlagueRacesNonStopParty = reader.ReadBoolean();

                if (Main.netMode == NetmodeID.Server)
                {
                    var packet = GetPacket();
                    packet.Write((byte)MrPlagueRacesMessageType.MrPlagueRacesNonStopPartyChanged);
                    packet.Write(playernumber);
                    packet.Write(MrPlagueRacesPlayer.MrPlagueRacesNonStopParty);
                    packet.Send(-1, playernumber);
                }

                break;
            }

            default:
                Logger.WarnFormat("MrPlagueRaces: Something went wrong:", msgType);
                break;
            }
        }
Ejemplo n.º 4
0
 public override void Load(TagCompound tag)
 {
     resetDefaultColors = false;
     if ((tag.ContainsKey("Race") && RaceLoader.TryGetRace(tag.GetString("Race"), out var loadedRace)) || (tag.ContainsKey("PlayerRace") && RaceLoader.TryGetRaceFromLegacyId(tag.GetInt("PlayerRace"), out loadedRace)))
     {
         race = loadedRace;
     }
     RaceStats       = tag.GetBool("RaceStats");
     GotStatToggler  = tag.GetBool("GotStatToggler");
     GotRaceItems    = tag.GetBool("GotRaceItems");
     IsNewCharacter1 = tag.GetBool("IsNewCharacter1");
     IsNewCharacter2 = tag.GetBool("IsNewCharacter2");
     race.Load(player);
 }