Beispiel #1
0
        public override StatefulCargoData GetNetworkObject()
        {
            CargoModuleData data = new CargoModuleData(ModuleType, Level);

            data.CargoType = CargoType;
            data.Id        = Id;
            return(data);
        }
Beispiel #2
0
        public static Module InstantiateModule(CargoModuleData data)
        {
            Module retModule = null;

            int  id    = data.Id;
            byte level = data.Level;

            switch (data.ModuleType)
            {
            case ModuleTypes.EnergyRegenModule:
            {
                retModule = new EnergyRegenModule(id, level);
                break;
            }

            case ModuleTypes.MaxEnergyModule:
            {
                retModule = new MaxEnergyModule(id, level);
                break;
            }

            case ModuleTypes.MaxShieldModule:
            {
                retModule = new MaxShieldModule(id, level);
                break;
            }

            case ModuleTypes.ShieldRegenModule:
            {
                retModule = new ShieldRegenModule(id, level);
                break;
            }

            case ModuleTypes.ThrustModule:
            {
                retModule = new ThrustModule(id, level);
                break;
            }

            case ModuleTypes.DamageModule:
            {
                retModule = new DamageModule(id, level);
                break;
            }

            case ModuleTypes.DefenseModule:
            {
                retModule = new DefenseModule(id, level);
                break;
            }

            case ModuleTypes.TurnRateModule:
            {
                retModule = new TurnRateModule(id, level);
                break;
            }

            case ModuleTypes.LateralThrustModule:
            {
                retModule = new LateralThrustModule(id, level);
                break;
            }

            case ModuleTypes.TopSpeedModule:
            {
                retModule = new TopSpeedModule(id, level);
                break;
            }

            default:
                throw new NotImplementedException("Module type not implemented in MessageReader.ReadModule");
            }

            return(retModule);
        }