public void setWeapon(Ship host, GameRenderer renderer, String WeaponName, boolean allyControlled, boolean autonomous) {
        double prevWeaponYaw = 0;
        if (weapon != null) prevWeaponYaw = getWeapon().getYaw();

        if (WeaponName.equals("TwinFiveInch")) {
            weapon = new TwinFiveInch(host, renderer, prevWeaponYaw, getPosition(), allyControlled, autonomous);
        } else if (WeaponName.equals("TwinFifteenInch")) {
            weapon = new TwinFifteenInch(host, renderer, prevWeaponYaw, getPosition(), allyControlled, autonomous);
        } else if (WeaponName.equals("FourPointFive")) {
            weapon = new FourPointFive(host, renderer, prevWeaponYaw, getPosition(), allyControlled, autonomous);
        } else if (WeaponName.equals("PrototypeLaser")) {
            weapon = new PrototypeLaser(host, renderer, prevWeaponYaw, getPosition(), allyControlled, autonomous);
        } else if (WeaponName.equals("Vickers303")) {
            weapon = new Vickers303(host, renderer, prevWeaponYaw, getPosition(), allyControlled, autonomous);
        } else if (WeaponName.equals("HarpoonLauncher")) {
            weapon = new HarpoonLauncher(host, renderer, prevWeaponYaw, getPosition(), allyControlled, autonomous);
        } else if (WeaponName.equals("SuperUltraMegaNukeLauncher")) {
            weapon = new SuperUltraMegaNukeLauncher(host, renderer, prevWeaponYaw, getPosition(), allyControlled, autonomous);
        }
    }