@@ -0,0 +1,2768 @@
+package scorched.android;%0A%0Aimport java.util.HashMap;%0A%0Apublic abstract class WeaponType %7B%0A    /*================= Constants =================*/%0A    public final static String TAG = %22WeaponType%22;%0A%0A    public final static int UNLIMITED = -1;%0A%0A    /*================= Types =================*/%0A%0A    /*================= Access =================*/%0A    /** Returns the name of the weapon */%0A    public abstract String getName();%0A%0A    /** Returns the size of the explosion%0A      */%0A    public abstract float getExplosionSize();%0A%0A    /** Returns the number of weapons of this type initially in the player's%0A     * inventory */%0A    public abstract int initialAmount();%0A%0A    /*================= Static =================*/%0A    //public static EmergencyTeleport%0A        //sEmergencyTeleport = new EmergencyTeleport();%0A    public static WeaponType%0A        sBabyMissile = new BabyMissile();%0A    public static WeaponType%0A        sMediumMissile = new MediumMissile();%0A    public static LargeMissile%0A        sLargeMissile = new LargeMissile();%0A    //public static NuclearMissile%0A        //sNuclearMissile = new NuclearMissile();%0A%0A    /*================= Data =================*/%0A    private static HashMap %3C String, WeaponType %3E%0A        sNameToWeaponType = new HashMap %3C String, WeaponType %3E();%0A%0A    /*================= Lifecycle =================*/%0A    public WeaponType(String name) %7B%0A        //sNameToWeaponType.put(name, this);%0A    %7D%0A%0A    /*================= Weapons =================*/%0A    static class BabyMissile extends WeaponType %7B%0A        private final static String NAME = %22BabyMissile%22;%0A        public String getName() %7B return NAME; %7D%0A        public float getExplosionSize() %7B return 1.0f; %7D%0A        public int initialAmount() %7B return UNLIMITED; %7D%0A        protected BabyMissile() %7B super(NAME); %7D%0A    %7D%0A%0A    static class MediumMissile extends WeaponType %7B%0A        private final static String NAME = %22MediumMissile%22;%0A        public String getName() %7B return NAME; %7D%0A        public float getExplosionSize() %7B return 2.0f; %7D%0A        public int initialAmount() %7B return 1; %7D%0A        protected MediumMissile() %7B super(NAME); %7D%0A    %7D%0A%0A    static class LargeMissile extends WeaponType %7B%0A        private final static String NAME = %22LargeMissile%22;%0A        public String getName() %7B return NAME; %7D%0A        public float getExplosionSize() %7B return 4.0f; %7D%0A        public int initialAmount() %7B return 0; %7D%0A        protected LargeMissile() %7B super(NAME); %7D%0A    %7D%0A%0A    /*================= Constants =================*/%0A    /*================= Types =================*/%0A    /*================= Operations =================*/%0A    /*================= Members =================*/%0A    /*================= Accessors =================*/%0A    /*================= Lifecycle =================*/%0A%7D%0A

Add file WeaponType.java