001package com.fs.starfarer.api.combat;
002
003public class ShipAIConfig implements Cloneable {
004
005        
006        @Override
007        public ShipAIConfig clone() {
008                try {
009                        return (ShipAIConfig) super.clone();
010                } catch (CloneNotSupportedException e) {
011                        return null; // should not happen
012                }
013        }
014
015        public boolean alwaysStrafeOffensively = false;
016        public boolean backingOffWhileNotVentingAllowed = true;
017        public boolean turnToFaceWithUndamagedArmor = true;
018        
019        public boolean burnDriveIgnoreEnemies = false;
020        
021        public String personalityOverride = null;
022
023        public ShipAIConfig() {
024        }
025        
026        public void copyFrom(ShipAIConfig other) {
027                if (other == null) {
028                        return;
029                }
030                alwaysStrafeOffensively = other.alwaysStrafeOffensively;
031                backingOffWhileNotVentingAllowed = other.backingOffWhileNotVentingAllowed;
032                turnToFaceWithUndamagedArmor = other.turnToFaceWithUndamagedArmor;
033                burnDriveIgnoreEnemies = other.burnDriveIgnoreEnemies;
034                personalityOverride = other.personalityOverride;
035        }
036}