Beispiel #1
0
    public void Unequip(InternalConstructionModule module)
    {
        if (module.hullModule == null)
        {
            return;
        }
        if (module is BatteryConstructionModule)
        {
            energy.batteries.Remove((BatteryConstructionModule)module);
        }
        else if (module is PowerConstructionModule)
        {
            energy.powerPlants.Remove((PowerConstructionModule)module);
        }
        else if (module is FuelConstructionModule)
        {
            fuel.fuelTanks.Remove((FuelConstructionModule)module);
        }
        else if (module is CrewConstructionModule)
        {
            crew.crewPods.Remove((CrewConstructionModule)module);
        }
        HullConstructionModule hullModule = module.hullModule;

        hullModule.internalModule = null;
        module.hullModule         = null;
        hullModule.Activate();
        module.OnUnequip();
    }
Beispiel #2
0
 public void Unequip(InternalConstructionModule module, HullConstructionModule hullModule)
 {
     if (module.hullModule != hullModule)
     {
         return;
     }
     Unequip(module);
 }
Beispiel #3
0
    public void Reset()
    {
        Clear();

        // no manifest, create test inventory
        if (scene.inventoryManifest == null)
        {
            HullConstructionModule modulePrefab = game.GetConstructionModulePrefab(ModuleType.Hull) as HullConstructionModule;
            HullConstructionModule module       = Instantiate(modulePrefab) as HullConstructionModule;
            module.manifest = new ModuleManifest("Basic hull");
            AddModules(module, 20);

            ThrusterConstructionModule thrusterModulePrefab = game.GetConstructionModulePrefab(ModuleType.Thruster) as ThrusterConstructionModule;
            var thrusterModule = Instantiate(thrusterModulePrefab) as ThrusterConstructionModule;
            thrusterModule.manifest = new ModuleManifest("Basic thruster");
            AddModules(thrusterModule, 15);

            ManeuveringConstructionModule maneuveringModulePrefab = game.GetConstructionModulePrefab(ModuleType.Maneuvering) as ManeuveringConstructionModule;
            var maneuveringModule = Instantiate(maneuveringModulePrefab) as ManeuveringConstructionModule;
            maneuveringModule.manifest = new ModuleManifest("Basic turner");
            AddModules(maneuveringModule, 15);

            WeaponConstructionModule weaponModulePrefab = game.GetConstructionModulePrefab(ModuleType.Weapon) as WeaponConstructionModule;
            var weaponModule = Instantiate(weaponModulePrefab) as WeaponConstructionModule;
            weaponModule.manifest = new ModuleManifest("Missile weapon");
            AddModules(weaponModule, 15);

            BatteryConstructionModule batteryModulePrefab = game.GetConstructionModulePrefab(ModuleType.Battery) as BatteryConstructionModule;
            var batteryModule = Instantiate(batteryModulePrefab) as BatteryConstructionModule;
            batteryModule.manifest = new ModuleManifest("Battery");
            AddModules(batteryModule, 15);

            CrewConstructionModule crewModulePrefab = game.GetConstructionModulePrefab(ModuleType.Crew) as CrewConstructionModule;
            var crewModule = Instantiate(crewModulePrefab) as CrewConstructionModule;
            crewModule.manifest = new ModuleManifest("Crew");
            AddModules(crewModule, 15);

            FuelConstructionModule fuelModulePrefab = game.GetConstructionModulePrefab(ModuleType.Fuel) as FuelConstructionModule;
            FuelConstructionModule fuelModule       = Instantiate(fuelModulePrefab) as FuelConstructionModule;
            fuelModule.manifest = new ModuleManifest("Fuel");
            AddModules(fuelModule, 15);

            PowerConstructionModule powerModulePrefab = game.GetConstructionModulePrefab(ModuleType.Power) as PowerConstructionModule;
            PowerConstructionModule powerModule       = Instantiate(powerModulePrefab) as PowerConstructionModule;
            powerModule.manifest = new ModuleManifest("Power");
            AddModules(powerModule, 15);
        }

        // create inventory based on manifest
        else
        {
            Construct(scene.inventoryManifest);
        }
    }
Beispiel #4
0
 public void Equip(InternalConstructionModule module, HullConstructionModule hullModule)
 {
     if (module.hullModule == hullModule)
     {
         module.transform.localPosition = Vector2.zero;
         return;
     }
     if (!hullModule.available)
     {
         return;
     }
     if (module.hullModule != null)
     {
         Unequip(module);
     }
     module.transform.parent        = hullModule.transform;
     module.transform.localPosition = Vector2.zero;
     hullModule.internalModule      = module;
     module.hullModule = hullModule;
     hullModule.Deactivate();
     inventory.RemoveModule(module);
     module.OnEquip();
     if (module is BatteryConstructionModule)
     {
         energy.batteries.Add((BatteryConstructionModule)module);
     }
     else if (module is PowerConstructionModule)
     {
         energy.powerPlants.Add((PowerConstructionModule)module);
     }
     else if (module is FuelConstructionModule)
     {
         fuel.fuelTanks.Add((FuelConstructionModule)module);
     }
     else if (module is CrewConstructionModule)
     {
         crew.crewPods.Add((CrewConstructionModule)module);
     }
 }