Package edit

Source Code of edit.jTES5Edit

package edit;

import java.util.ArrayList;

import gui.StarterGUI;
import skyproc.GRUP;
import skyproc.MajorRecord;
import skyproc.Mod;
import skyproc.ModListing;
import skyproc.SPGlobal;

public class jTES5Edit {

  public static void main(String[] args) {

    //Schedule a job for the event-dispatching thread:
    //creating and showing this application's GUI.
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {

        SPGlobal.pathToData = "../data/";
        SPGlobal.createGlobalLog();
        // Turn Debugging off except for errors
        SPGlobal.logging(false);

        new StarterGUI();

        SPGlobal.closeDebug();

      }
    });



  }

 
  /**
   * These methods won't work until proper comparing of records has been implemented within SkyProc.
   */
  public static void removeITMs() {

    ModListing skyrim = new ModListing("Skyrim.esm");
    ModListing update = new ModListing("Update.esm");
    ArrayList<ModListing> modsToExport = new ArrayList<ModListing>();

    for(Mod mod : SPGlobal.getDB()) {

      if(!mod.getInfo().equals(skyrim) || !mod.getInfo().equals(update)) {

        for(GRUP grup : mod.getGRUPs().values()) {
          for(Object o : grup.getRecords()) {
            MajorRecord mr = ((MajorRecord) o);

            if(isIdenticalToMaster(mr, mod, grup)) {
              modsToExport.add(mr.getFormMaster());
              grup.removeRecord(mr.getForm());
            }
          }
        }

      }
    }
   
    for(ModListing ml : modsToExport) {
      try {
        SPGlobal.getDB().getMod(ml).export();
      } catch(Exception e) {
        e.printStackTrace();
      }
    }
   
    System.out.println("Removed ITMs");

  }

  private static boolean isIdenticalToMaster(MajorRecord mr, Mod mod, GRUP g) {

    boolean isIdentical = false;
    Mod master = null;

    for(ModListing masterListing : mod.getMasters()) {

      if(masterListing != null) {

        master = SPGlobal.getDB().getMod(masterListing);

        for(GRUP grup : master.getGRUPs().values()) {
          if(grup.contains(mr.getForm())) {
            if(mr.equals(grup.get(mr.getForm()))) {
              isIdentical = true;
            }
          }
        }

      }


    }

    return isIdentical;
  }


}
TOP

Related Classes of edit.jTES5Edit

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.