示例#1
0
        public NienNunb() : base()
        {
            Types.Add(UpgradeType.Crew);
            Name = "Nien Nunb";
            Cost = 1;

            isUnique = true;

            AvatarOffset = new Vector2(50, 1);

            UpgradeAbilities.Add(new NienNunbCrewAbility());
        }
示例#2
0
        public Tactician() : base()
        {
            Types.Add(UpgradeType.Crew);
            Name = "Tactician";
            Cost = 2;

            isLimited = true;

            AvatarOffset = new Vector2(41, 1);

            UpgradeAbilities.Add(new TacticianAbility());
        }
示例#3
0
        public C3PO() : base()
        {
            IsHidden = true;

            Types.Add(UpgradeType.Crew);
            Name = "C-3PO";
            Cost = 3;

            isUnique = true;

            Avatar = new AvatarInfo(Faction.Rebel, new Vector2(47, 1));
        }
示例#4
0
        public LoneWolf() : base()
        {
            isUnique = true;

            Types.Add(UpgradeType.Elite);
            Name = "Lone Wolf";
            Cost = 2;

            UpgradeAbilities.Add(new LoneWolfAbility());

            SEImageNumber = 9;
        }
示例#5
0
        public AgileGunner() : base()
        {
            Types.Add(UpgradeType.Gunner);
            Name = "Agile Gunner";
            Cost = 10;

            UpgradeRuleType = typeof(SecondEdition);

            UpgradeAbilities.Add(new AgileGunnerAbility());

            SEImageNumber = 162;
        }
示例#6
0
 public Os1ArsenalLoadout() : base()
 {
     Types.Add(UpgradeType.Title);
     Name       = "Os-1 Arsenal Loadout";
     Cost       = 2;
     AddedSlots = new List <UpgradeSlot>
     {
         new UpgradeSlot(UpgradeType.Torpedo),
         new UpgradeSlot(UpgradeType.Missile)
     };
     UpgradeAbilities.Add(new Os1ArsenalLoadoutAbility());
 }
示例#7
0
 /// <summary>
 /// Gets the <see cref="RuntimeType"/> with the specified identifier.
 /// </summary>
 /// <value>The <see cref="RuntimeType"/>.</value>
 /// <param name="typeFullName">The identifier.</param>
 /// <param name="type">The type.</param>
 /// <returns></returns>
 IRuntimeType this[string typeFullName, IRuntimeType type]
 {
     get
     {
         if (!Types.ContainsKey(typeFullName))
         {
             Types.Add(typeFullName, type);
         }
         Types[typeFullName].RegisterTypeDefinition(type.TypeFullName);
         return(Types[typeFullName]);
     }
 }
示例#8
0
        public Sense() : base()
        {
            Types.Add(UpgradeType.Force);
            Name = "Sense";
            Cost = 6;

            UpgradeRuleType = typeof(SecondEdition);

            UpgradeAbilities.Add(new Abilities.SecondEdition.SenseAbility());

            SEImageNumber = 21;
        }
示例#9
0
        public TargetingCoordinator() : base()
        {
            IsHidden = true;

            Types.Add(UpgradeType.Crew);
            Name = "Targeting Coordinator";
            Cost = 4;

            isLimited = true;

            Avatar = new AvatarInfo(Faction.None, new Vector2(39, 1));
        }
示例#10
0
        public MaraJade() : base()
        {
            IsHidden = true;

            Types.Add(UpgradeType.Crew);
            Name = "Mara Jade";
            Cost = 3;

            isUnique = true;

            AvatarOffset = new Vector2(39, 1);
        }
示例#11
0
        public JynErso() : base()
        {
            Types.Add(UpgradeType.Crew);
            Name = "Jyn Erso";
            Cost = 2;

            isUnique = true;

            AvatarOffset = new Vector2(68, 0);

            UpgradeAbilities.Add(new JynErsoAbility());
        }
示例#12
0
        public R4Astromech() : base()
        {
            Types.Add(UpgradeType.Astromech);
            Name = "R4 Astromech";
            Cost = 2;

            UpgradeRuleType = typeof(SecondEdition);

            UpgradeAbilities.Add(new Abilities.SecondEdition.R4AstromechAbilitySE());

            SEImageNumber = 55;
        }
示例#13
0
        public MagvaYarro() : base()
        {
            Types.Add(UpgradeType.Crew);
            Name = "Magva Yarro";
            Cost = 2;

            isUnique = true;

            UpgradeAbilities.Add(new MagvaYarroAbility());

            //Avatar = new AvatarInfo(Faction.Rebel, new Vector2(0, 0));
        }
示例#14
0
        public TIEx7() : base()
        {
            Types.Add(UpgradeType.Title);
            Name = "TIE/x7";
            Cost = -2;

            ForbiddenSlots = new List <UpgradeType>
            {
                UpgradeType.Cannon,
                UpgradeType.Missile
            };
        }
示例#15
0
文件: IG88D.cs 项目: xNyer/FlyCasual
        public IG88D() : base()
        {
            Types.Add(UpgradeType.Crew);
            Name = "IG-88D";
            Cost = 1;

            isUnique = true;

            AvatarOffset = new Vector2(44, 2);

            UpgradeAbilities.Add(new Ig2000Ability());
        }
示例#16
0
        public EzraBridger() : base()
        {
            Types.Add(UpgradeType.Crew);
            Name = "Ezra Bridger";
            Cost = 3;

            Avatar = new AvatarInfo(Faction.Rebel, new Vector2(7, 2));

            isUnique = true;

            UpgradeAbilities.Add(new EzraBridgerAbility());
        }
示例#17
0
        public LattsRazzi() : base()
        {
            Types.Add(UpgradeType.Crew);
            Name = "Latts Razzi";
            Cost = 2;

            isUnique = true;

            Avatar = new AvatarInfo(Faction.Scum, new Vector2(37, 0));

            UpgradeAbilities.Add(new LattsRazziCrewAbility());
        }
示例#18
0
        public Maul() : base()
        {
            Types.Add(UpgradeType.Crew);
            Name = "Maul";
            Cost = 3;

            isUnique = true;

            AvatarOffset = new Vector2(59, 0);

            UpgradeAbilities.Add(new MaulCrewAbility());
        }
示例#19
0
        public VeteranTurretGunner() : base()
        {
            Types.Add(UpgradeType.Gunner);
            Name = "Veteran Turret Gunner";
            Cost = 8;

            UpgradeRuleType = typeof(SecondEdition);

            UpgradeAbilities.Add(new VeteranTurretGunnerAbility());

            SEImageNumber = 52;
        }
示例#20
0
        public Sense() : base()
        {
            Types.Add(UpgradeType.Elite);
            Name = "Sense";
            Cost = 10;

            ImageUrl = "https://i.imgur.com/1SbeVeC.png";

            UpgradeRuleType = typeof(SecondEdition);

            UpgradeAbilities.Add(new Abilities.SecondEdition.SenseAbility());
        }
示例#21
0
        public PerceptiveCopilot() : base()
        {
            Types.Add(UpgradeType.Crew);
            Name = "Perceptive Copilot";
            Cost = 10;

            UpgradeRuleType = typeof(SecondEdition);

            UpgradeAbilities.Add(new ReconSpecialistAbility());

            SEImageNumber = 46;
        }
示例#22
0
        public SystemsOfficer() : base()
        {
            Types.Add(UpgradeType.Crew);
            Name = "Systems Officer";
            Cost = 2;

            isLimited = true;

            AvatarOffset = new Vector2(45, 1);

            UpgradeAbilities.Add(new SystemsOfficerAbility());
        }
示例#23
0
        public Tactician() : base()
        {
            Types.Add(UpgradeType.Crew);
            Name = "Tactician";
            Cost = 2;

            isLimited = true;

            Avatar = new AvatarInfo(Faction.Imperial, new Vector2(41, 1));

            UpgradeAbilities.Add(new TacticianAbility());
        }
示例#24
0
        public Finn() : base()
        {
            Types.Add(UpgradeType.Crew);
            Name = "Finn";
            Cost = 5;

            AvatarOffset = new Vector2(53, 0);

            isUnique = true;

            UpgradeAbilities.Add(new FinnAbility());
        }
示例#25
0
        private string AddType(Type type)
        {
            if (type == typeof(object))
            {
                return("object");
            }

            if (type.GetCustomAttribute <NoContractGenerationAttribute>() != null)
            {
                NotGeneratedTypes.Add(type.FullName);
                return(type.FullName);
            }

            if (type.IsEnum)
            {
                AddEnumType(type);
                return(type.Name);
            }

            var typeName = type.Name;

            if (type.IsInterface)
            {
                typeName = typeName.Substring(1);
            }
            if (type.IsPrimitive)
            {
                return(typeName);
            }

            if (Types.ContainsKey(typeName))
            {
                return(typeName);
            }

            if (type.IsArray)
            {
                AddType(type.GetElementType());
                return(typeName);
            }

            var properties = type
                             .GetProperties();
            var filteredProperties = properties
                                     .Where(x => x.GetCustomAttribute <JsonIgnoreAttribute>() == null);
            var typeData = filteredProperties
                           .ToDictionary(x => x.Name, x => AddType(x.PropertyType));

            Types.Add(typeName, typeData);

            return(typeName);
        }
示例#26
0
 public void AddFrom(MfModelDicts dict)
 {
     foreach (var c in dict.Cates)
     {
         if (!Cates.ContainsKey(c.Key))
         {
             Cates.Add(c.Key, c.Value);
         }
     }
     foreach (var c in dict.Elems)
     {
         if (!Elems.ContainsKey(c.Key))
         {
             Elems.Add(c.Key, c.Value);
         }
     }
     foreach (var c in dict.Fams)
     {
         if (!Fams.ContainsKey(c.Key))
         {
             Fams.Add(c.Key, c.Value);
         }
     }
     foreach (var c in dict.Floors)
     {
         if (!Floors.ContainsKey(c.Key))
         {
             Floors.Add(c.Key, c.Value);
         }
     }
     foreach (var c in dict.Mats)
     {
         if (!Mats.ContainsKey(c.Key))
         {
             Mats.Add(c.Key, c.Value);
         }
     }
     foreach (var c in dict.Types)
     {
         if (!Types.ContainsKey(c.Key))
         {
             Types.Add(c.Key, c.Value);
         }
     }
     foreach (var c in dict.Views)
     {
         if (!Views.ContainsKey(c.Key))
         {
             Views.Add(c.Key, c.Value);
         }
     }
 }
示例#27
0
        public PunishingOne() : base()
        {
            Types.Add(UpgradeType.Title);
            Name = "Punishing One";
            Cost = 12;

            isUnique   = true;
            AddedSlots = new List <UpgradeSlot>
            {
                new UpgradeSlot(UpgradeType.Astromech)
            };
            UpgradeAbilities.Add(new PunishingOneAbility());
        }
示例#28
0
        public IonCannonTurret() : base()
        {
            Types.Add(UpgradeType.Turret);

            Name = "Ion Cannon Turret";
            Cost = 5;

            MinRange    = 1;
            MaxRange    = 2;
            AttackValue = 3;

            CanShootOutsideArc = true;
        }
示例#29
0
        public SnapShot() : base()
        {
            Types.Add(UpgradeType.Elite);
            Name = "Snap Shot";
            // Hacking the range to remove this as a possible weapon when ability
            // is not triggered
            MinRange    = 0;
            MaxRange    = 0;
            AttackValue = 2;
            Cost        = 2;

            UpgradeAbilities.Add(new SnapShotAbility());
        }
示例#30
0
        public EmperorPalpatine() : base()
        {
            Types.Add(UpgradeType.Crew);
            Types.Add(UpgradeType.Crew);
            Name = "Emperor Palpatine";
            Cost = 8;

            isUnique = true;

            AvatarOffset = new Vector2(68, 9);

            UpgradeAbilities.Add(new EmperorPalpatineCrewAbility());
        }
示例#31
0
        private void Addmodule(string fileName, Types.AvailableEISModules Modules)
        {
            Assembly moduleAssembly = Assembly.LoadFrom(fileName);

            foreach (Type moduleType in moduleAssembly.GetTypes())
            {
                if (moduleType.IsPublic)
                {
                    if (!moduleType.IsAbstract)
                    {
                        Type typeInterface = moduleType.GetInterface("EISModuleComponents.EISModule", true);

                        if (typeInterface != null)
                        {
                            try
                            {
                                Types.AvailableEISModule newmodule = new Types.AvailableEISModule();
                                newmodule.AssemblyPath = fileName;
                                newmodule.Instance = (EISModule)Activator.CreateInstance(moduleType);
                                newmodule.Instance.HostModule = this;
                                newmodule.Instance.InitializeModule();

                                Modules.Add(newmodule);

                                newmodule = null;
                            }
                            catch (Exception e)
                            {
                                 this.Notify("Error while loading module: \n" + e.TargetSite.ToString() + "\nReason:\n" + e.Message,EISErrorTypes.Error);
                            }
                        }
                        typeInterface = null;

                    }
                }
            }
            moduleAssembly = null;
        }