001package com.fs.starfarer.api.loading;
002
003import java.util.ArrayList;
004import java.util.List;
005
006public class WeaponGroupSpec implements Cloneable {
007
008        private WeaponGroupType type = WeaponGroupType.LINKED;
009        private boolean autofireOnByDefault = false;
010        //private boolean isModuleGroup = false;
011        
012        private List<String> slots = new ArrayList<String>(); // list of slot ids
013
014        @Override
015        public WeaponGroupSpec clone() {
016                try {
017                        WeaponGroupSpec copy = (WeaponGroupSpec) super.clone();
018                        copy.slots = new ArrayList<String>();
019                        copy.slots.addAll(slots);
020                        return copy;
021                } catch (CloneNotSupportedException e) {
022                }
023                return null;
024        }
025
026        public WeaponGroupSpec() {
027        }
028
029        public WeaponGroupSpec(WeaponGroupType type) {
030                this.type = type;
031        }
032
033        public WeaponGroupType getType() {
034                return type;
035        }
036
037        public void setType(WeaponGroupType type) {
038                this.type = type;
039        }
040
041        public List<String> getSlots() {
042                return slots;
043        }
044        
045        public void addSlot(String slotId) {
046                slots.add(slotId);
047        }
048        
049        public void removeSlot(String slotId) {
050                slots.remove(slotId);
051        }
052
053        public boolean isAutofireOnByDefault() {
054                return autofireOnByDefault;
055        }
056
057        public void setAutofireOnByDefault(boolean autofireOnByDefault) {
058                this.autofireOnByDefault = autofireOnByDefault;
059        }
060
061//      public boolean isModuleGroup() {
062//              return isModuleGroup;
063//      }
064//
065//      public void setModuleGroup(boolean isModuleGroup) {
066//              this.isModuleGroup = isModuleGroup;
067//      }
068        
069
070}