Example #1
0
        public static Pirates ResumeEncounter(GameDatabase gamedb)
        {
            Pirates    pirates    = new Pirates();
            PlayerInfo playerInfo = gamedb.GetPlayerInfos().ToList <PlayerInfo>().FirstOrDefault <PlayerInfo>((Func <PlayerInfo, bool>)(x =>
            {
                if (!x.isStandardPlayer)
                {
                    return(x.Name.Contains("Pirate"));
                }
                return(false);
            }));

            pirates.PlayerId = playerInfo == null?gamedb.InsertPlayer("Pirate", "slavers", new int?(), new Vector3(0.0f), new Vector3(0.0f), "", "\\base\\factions\\slavers\\avatars\\Slavers_Avatar.tga", 0.0, 0, false, false, false, 0, AIDifficulty.Normal) : playerInfo.ID;

            DesignInfo designInfo = gamedb.GetDesignInfosForPlayer(pirates.PlayerId).FirstOrDefault <DesignInfo>((Func <DesignInfo, bool>)(x => x.Name == "Pirate Base"));

            pirates._pirateBaseDesignId = designInfo != null ? designInfo.ID : -1;
            return(pirates);
        }
Example #2
0
        public static Pirates InitializeEncounter(GameDatabase gamedb, AssetDatabase assetdb)
        {
            Pirates pirates = new Pirates();

            pirates.PlayerId = gamedb.InsertPlayer("Pirate", "slavers", new int?(), assetdb.RandomEncounterPrimaryColor, new Vector3(0.0f), "", "\\base\\factions\\slavers\\avatars\\Slavers_Avatar.tga", 0.0, 0, false, false, false, 0, AIDifficulty.Normal);
            foreach (LogicalWeapon weapon in assetdb.Weapons)
            {
                gamedb.InsertWeapon(weapon, pirates.PlayerId);
            }
            if (gamedb.HasEndOfFleshExpansion())
            {
                pirates._pirateBaseDesignId = gamedb.InsertDesignByDesignInfo(new DesignInfo(pirates.PlayerId, "Pirate Base", new string[1]
                {
                    string.Format("factions\\{0}\\sections\\{1}", (object)"slavers", (object)"sn_piratebase.section")
                })
                {
                    StationType = StationType.NAVAL
                });
            }
            return(pirates);
        }