From 4452398ebaa94bf8b6c31ee9d6e72bbe566e109d Mon Sep 17 00:00:00 2001 From: Joshua Sigona Date: Mon, 4 Oct 2021 07:05:30 +0900 Subject: [PATCH] Add automatic detection of condition --- SigCrafter/src/sig/ColorPosition.java | 13 + SigCrafter/src/sig/SigCraft.java | 224 +++++++++++++++--- SigCrafter/src/sig/Skill.java | 9 +- SigCrafter/src/sig/skills/BasicSynthesis.java | 8 +- SigCrafter/src/sig/skills/BasicTouch.java | 7 +- .../src/sig/skills/BrandOfTheElements.java | 8 +- .../src/sig/skills/ByregotsBlessing.java | 24 ++ SigCrafter/src/sig/skills/GreatStrides.java | 8 +- SigCrafter/src/sig/skills/HastyTouch.java | 8 +- SigCrafter/src/sig/skills/InnerQuiet.java | 8 +- SigCrafter/src/sig/skills/Innovation.java | 8 +- SigCrafter/src/sig/skills/MastersMend.java | 8 +- .../src/sig/skills/NameOfTheElements.java | 8 +- SigCrafter/src/sig/skills/Observe.java | 8 +- SigCrafter/src/sig/skills/RapidSynthesis.java | 8 +- SigCrafter/src/sig/skills/StandardTouch.java | 8 +- .../src/sig/skills/TricksOfTheTrade.java | 8 +- SigCrafter/src/sig/skills/Veneration.java | 8 +- SigCrafter/src/sig/skills/WasteNot.java | 8 +- SigCrafter/src/sig/skills/WasteNotII.java | 8 +- 20 files changed, 336 insertions(+), 61 deletions(-) create mode 100644 SigCrafter/src/sig/ColorPosition.java create mode 100644 SigCrafter/src/sig/skills/ByregotsBlessing.java diff --git a/SigCrafter/src/sig/ColorPosition.java b/SigCrafter/src/sig/ColorPosition.java new file mode 100644 index 0000000..89504a8 --- /dev/null +++ b/SigCrafter/src/sig/ColorPosition.java @@ -0,0 +1,13 @@ +package sig; + +import java.awt.Color; +import java.awt.Point; + +public class ColorPosition { + Point p; + Color c; + ColorPosition(int x,int y,int r,int g, int b) { + this.p=new Point(x,y); + this.c=new Color(r,g,b); + } +} diff --git a/SigCrafter/src/sig/SigCraft.java b/SigCrafter/src/sig/SigCraft.java index 3a64b36..169a33b 100644 --- a/SigCrafter/src/sig/SigCraft.java +++ b/SigCrafter/src/sig/SigCraft.java @@ -1,13 +1,23 @@ package sig; +import java.awt.AWTException; +import java.awt.Color; +import java.awt.GraphicsEnvironment; +import java.awt.Point; +import java.awt.Robot; +import java.awt.event.KeyEvent; +import java.awt.image.BufferedImage; +import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.regex.Pattern; import sig.skills.BasicSynthesis; import sig.skills.BasicTouch; import sig.skills.BrandOfTheElements; +import sig.skills.ByregotsBlessing; import sig.skills.GreatStrides; import sig.skills.HastyTouch; import sig.skills.InnerQuiet; @@ -45,6 +55,12 @@ public class SigCraft { public static Craft BEST_CRAFT; + public static Robot r; + + public static ColorPosition CRAFTING_WINDOW_PIXELS = new ColorPosition(284,68,77,77,77); + public static ColorPosition CRAFT_START_PIXELS = new ColorPosition(334,130,74,77,74); + public static ColorPosition READY_FOR_ACTION_PIXELS = new ColorPosition(1031,892,230,197,164); + //Quality = (0.37 * Control + 32.6) * (1 - 0.05 * min(max(Recipe Level - Character Level, 0), 5)) //Good +50%, Excellent +300% @@ -53,23 +69,32 @@ public class SigCraft { public static ArrayList SucceededCrafts = new ArrayList(); public static void main(String[] args) { - SKILLLIST.put("Rapid Synthesis",new RapidSynthesis("Rapid Synthesis",0,false,9)); - SKILLLIST.put("Basic Synthesis",new BasicSynthesis("Basic Synthesis",0,true,1)); - SKILLLIST.put("Brand of the Elements",new BrandOfTheElements("Brand of the Elements",6,true,37)); - SKILLLIST.put("Basic Touch",new BasicTouch("Basic Touch",18,true,5)); - SKILLLIST.put("Hasty Touch",new HastyTouch("Hasty Touch",0,false,9)); - SKILLLIST.put("Standard Touch",new StandardTouch("Standard Touch",32,true,18)); + + try { + r = new Robot(); + } catch (AWTException e) { + e.printStackTrace(); + } + + SKILLLIST.put("Rapid Synthesis",new RapidSynthesis("Rapid Synthesis",0,false,9,KeyEvent.VK_SHIFT,KeyEvent.VK_4)); + SKILLLIST.put("Basic Synthesis",new BasicSynthesis("Basic Synthesis",0,true,1,KeyEvent.VK_1)); + SKILLLIST.put("Brand of the Elements",new BrandOfTheElements("Brand of the Elements",6,true,37,KeyEvent.VK_CONTROL,KeyEvent.VK_X)); + SKILLLIST.put("Basic Touch",new BasicTouch("Basic Touch",18,true,5,KeyEvent.VK_2)); + SKILLLIST.put("Hasty Touch",new HastyTouch("Hasty Touch",0,false,9,KeyEvent.VK_CONTROL,KeyEvent.VK_3)); + SKILLLIST.put("Standard Touch",new StandardTouch("Standard Touch",32,true,18,KeyEvent.VK_SHIFT,KeyEvent.VK_2)); //SKILLLIST.add(new Skill("Byregot's Blessing",24,true,50)); //TODO We don't know how this works yet. - SKILLLIST.put("Tricks of the Trade",new TricksOfTheTrade("Tricks of the Trade",0,true,13)); - SKILLLIST.put("Master's Mend",new MastersMend("Master's Mend",88,true,7)); - SKILLLIST.put("Waste Not",new WasteNot("Waste Not",56,true,15)); - SKILLLIST.put("Waste Not II",new WasteNotII("Waste Not II",98,true,47)); - SKILLLIST.put("Inner Quiet",new InnerQuiet("Inner Quiet",18,true,11)); - SKILLLIST.put("Veneration",new Veneration("Veneration",18,true,15)); - SKILLLIST.put("Great Strides",new GreatStrides("Great Strides",32,true,21)); - SKILLLIST.put("Innovation",new Innovation("Innovation",18,true,26)); - SKILLLIST.put("Name of the Elements",new NameOfTheElements("Name of the Elements",30,true,37)); - SKILLLIST.put("Observe",new Observe("Observe",7,true,13)); + SKILLLIST.put("Tricks of the Trade",new TricksOfTheTrade("Tricks of the Trade",0,true,13,KeyEvent.VK_CONTROL,KeyEvent.VK_2)); + SKILLLIST.put("Master's Mend",new MastersMend("Master's Mend",88,true,7,KeyEvent.VK_3)); + SKILLLIST.put("Waste Not",new WasteNot("Waste Not",56,true,15,KeyEvent.VK_CONTROL,KeyEvent.VK_1)); + SKILLLIST.put("Waste Not II",new WasteNotII("Waste Not II",98,true,47,KeyEvent.VK_CONTROL,KeyEvent.VK_4)); + SKILLLIST.put("Inner Quiet",new InnerQuiet("Inner Quiet",18,true,11,KeyEvent.VK_5)); + SKILLLIST.put("Veneration",new Veneration("Veneration",18,true,15,KeyEvent.VK_SHIFT,KeyEvent.VK_1)); + SKILLLIST.put("Great Strides",new GreatStrides("Great Strides",32,true,21,KeyEvent.VK_CONTROL,KeyEvent.VK_5)); + SKILLLIST.put("Innovation",new Innovation("Innovation",18,true,26,KeyEvent.VK_4)); + SKILLLIST.put("Name of the Elements",new NameOfTheElements("Name of the Elements",30,true,37,KeyEvent.VK_CONTROL,KeyEvent.VK_Z)); + SKILLLIST.put("Observe",new Observe("Observe",7,true,13,KeyEvent.VK_C)); + SKILLLIST.put("Byregot's Blessing",new ByregotsBlessing("Byregot's Blessing",24,true,50,KeyEvent.VK_ALT,KeyEvent.VK_2)); + BUFFLIST.put("Inner Quiet",new Buff("Inner Quiet",0)); BUFFLIST.put("Veneration",new Buff("Veneration",0)); @@ -80,7 +105,125 @@ public class SigCraft { BUFFLIST.put("Inner Quiet",new Buff("Inner Quiet", 0)); BUFFLIST.put("Waste Not",new Buff("Waste Not",0)); - SetupCraft(); + //SetupCraft(); + + //284,68 77,77,77 + while (true) { + r.delay(1000); + try { + Color col=null; + LookForScreenPixels(CRAFTING_WINDOW_PIXELS); + System.out.println("Detected crafting window..."); + PressKey(KeyEvent.VK_NUMPAD0);r.delay(300); + PressKey(KeyEvent.VK_NUMPAD0);r.delay(300); + PressKey(KeyEvent.VK_NUMPAD0);r.delay(300); + PressKey(KeyEvent.VK_NUMPAD0);r.delay(300); + //334,130 74,77,74 + LookForScreenPixels(CRAFT_START_PIXELS); + System.out.println("Craft started..."); + //336,267 151,220,96 + LookForScreenPixels(READY_FOR_ACTION_PIXELS); + LoadRotation_40Durability_1700Quality_1Synth_280CP_LV47(); + } catch (IOException | InterruptedException e) { + e.printStackTrace(); + } + //break; + } + } + + private static void LoadRotation_40Durability_1700Quality_1Synth_280CP_LV47() { + PerformSkill("Inner Quiet"); + PerformSkill("Innovation"); + PerformSkill("Waste Not II"); + PerformSkill("Basic Touch",true); + PerformSkill("Standard Touch",true); + PerformSkill("Basic Touch",true); + PerformSkill("Standard Touch",true); + PerformSkill("Innovation",true); + PerformSkill("Basic Touch",true); + PerformSkill("Standard Touch",true); + PerformSkill("Basic Touch",true); + PerformSkill("Basic Synthesis"); + } + + private static void LoadRotation_40Durability_1900Quality_1Synth_280CP_LV45() { + PerformSkill("Inner Quiet"); + PerformSkill("Waste Not"); + PerformSkill("Basic Touch",true); + PerformSkill("Standard Touch",true); + PerformSkill("Basic Touch",true); + PerformSkill("Standard Touch",true); + PerformSkill("Innovation",true); + PerformSkill("Basic Touch",true); + PerformSkill("Standard Touch",true); + PerformSkill("Basic Touch",true); + PerformSkill("Basic Synthesis"); + } + + private static void GetCondition() { + + } + + private static void PerformSkill(String string) { + PerformSkill(string,false); + } + + private static void PerformSkill(String string,boolean checkForMaxQuality) { + try { + LookForScreenPixels(READY_FOR_ACTION_PIXELS); + } catch (IOException | InterruptedException e) { + e.printStackTrace(); + } + r.delay(100); + Skill s = SKILLLIST.get(string); + if (s==null) { + System.err.println("Could not find skill "+string+"!"); + System.exit(1); + } + if (checkForMaxQuality&&MaxQuality()) {return;} + if (s.modifier!=-1) { + PressKeyWithModifier(s.modifier,s.key); + } else { + PressKey(s.key); + } + r.delay(500); + //1031,892 115,98,82 230,197,164 + } + + private static boolean MaxQuality() { + Color col=null; + try { + col = new Color(CaptureScreen().getRGB(336, 267)); + } catch (IOException e) { + e.printStackTrace(); + } + return col.getRed()==151&&col.getGreen()==220&&col.getBlue()==96; + } + + private static void LookForScreenPixels(ColorPosition cp) throws IOException, InterruptedException { + Color col; + do { + col = new Color(CaptureScreen().getRGB(cp.p.x, cp.p.y)); + r.delay(100); + } while (!cp.c.equals(col)); + } + + private static BufferedImage CaptureScreen() throws IOException { + BufferedImage screenshot = r.createScreenCapture(GraphicsEnvironment.getLocalGraphicsEnvironment().getMaximumWindowBounds()); + //ImageIO.write(screenshot,"png",new File("screenshot.png")); + return screenshot; + } + + private static void PressKey(int keycode) { + r.keyPress(keycode); + r.keyRelease(keycode); + } + + private static void PressKeyWithModifier(int modifier,int keycode) { + r.keyPress(modifier); + r.keyPress(keycode); + r.keyRelease(keycode);r.delay(100); + r.keyRelease(modifier); } public static boolean IsThereEnoughTurns(int durability,Map bufflist,int turnsRequired) { @@ -92,7 +235,7 @@ public class SigCraft { } public static void SetupCraft() { - + List progress_rotation1 = new ArrayList(); int progressSteps = 0; int PROGRESS_FINAL_STEPS = 0; @@ -135,19 +278,25 @@ public class SigCraft { PROGRESS_FINAL_STEPS = progress_rotation1.size(); System.out.println("\tUsing standard rotation for Progress. Quality CP Available: "+qualityCPRemaining); } + + RunCraftCheck(new String[]{},new String[]{"Basic Touch"},new String[]{}); - //Can we just straight up craft? - List quality_rotation1 = new ArrayList(); - Craft c3 = new Craft(CONTROL,LEVEL,CP,BASE_PROGRESS,PROGRESS_GOAL,QUALITY_GOAL,GUARANTEED,DURABILITY,CRAFT_PROGRESS,CRAFT_QUALITY,DURABILITY,qualityCPRemaining,1,1,1,RECIPE_LEVEL,Status.NORMAL,BUFFLIST); boolean combo=false; - while (c3.craft_quality quality_rotation1 = new ArrayList(); + Craft c3 = new Craft(CONTROL,LEVEL,CP,BASE_PROGRESS,PROGRESS_GOAL,QUALITY_GOAL,GUARANTEED,DURABILITY,CRAFT_PROGRESS,CRAFT_QUALITY,DURABILITY,qualityCPRemaining,1,1,1,RECIPE_LEVEL,Status.NORMAL,BUFFLIST); + combo=false; + while (c3.craft_quality quality_rotation2 = new ArrayList(); @@ -435,6 +584,25 @@ public class SigCraft { } + private static void RunCraftCheck(String[] preAbilities, String[] repeatAbilities, String[] reapplyBuffs, int qualityCPRemaining, int PROGRESS_FINAL_STEPS) { + List rotation = new ArrayList(); + Craft craft = new Craft(CONTROL,LEVEL,CP,BASE_PROGRESS,PROGRESS_GOAL,QUALITY_GOAL,GUARANTEED,DURABILITY,CRAFT_PROGRESS,CRAFT_QUALITY,DURABILITY,qualityCPRemaining,1,1,1,RECIPE_LEVEL,Status.NORMAL,BUFFLIST); + for (String s : preAbilities) { + Skill ss = SKILLLIST.get(s); + ss.useSkill(craft); + rotation.add(ss); + } + while (craft.craft_quality quality_rotation1, Craft c3, boolean combo) { Skill s; diff --git a/SigCrafter/src/sig/Skill.java b/SigCrafter/src/sig/Skill.java index ddc2c26..ad8e8c1 100644 --- a/SigCrafter/src/sig/Skill.java +++ b/SigCrafter/src/sig/Skill.java @@ -5,11 +5,18 @@ public class Skill implements SkillInterface{ public int CPCost; public boolean guaranteed; public int lvReq; - public Skill(String name, int CPCost, boolean guaranteed, int lvReq) { + public int modifier; + public int key; + public Skill(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { this.name = name; this.CPCost = CPCost; this.guaranteed = guaranteed; this.lvReq = lvReq; + this.modifier=modifier; + this.key=key; + } + public Skill(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + this(name,CPCost,guaranteed,lvReq,-1,key); } public String getName() { return name; diff --git a/SigCrafter/src/sig/skills/BasicSynthesis.java b/SigCrafter/src/sig/skills/BasicSynthesis.java index 497111c..ca81285 100644 --- a/SigCrafter/src/sig/skills/BasicSynthesis.java +++ b/SigCrafter/src/sig/skills/BasicSynthesis.java @@ -5,8 +5,12 @@ import sig.Skill; public class BasicSynthesis extends Skill { - public BasicSynthesis(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public BasicSynthesis(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public BasicSynthesis(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/BasicTouch.java b/SigCrafter/src/sig/skills/BasicTouch.java index 7f4a1b3..bf44280 100644 --- a/SigCrafter/src/sig/skills/BasicTouch.java +++ b/SigCrafter/src/sig/skills/BasicTouch.java @@ -5,8 +5,11 @@ import sig.Skill; public class BasicTouch extends Skill { - public BasicTouch(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public BasicTouch(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq,modifier,key); + } + public BasicTouch(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq,key); } @Override diff --git a/SigCrafter/src/sig/skills/BrandOfTheElements.java b/SigCrafter/src/sig/skills/BrandOfTheElements.java index a1260d1..3a2e162 100644 --- a/SigCrafter/src/sig/skills/BrandOfTheElements.java +++ b/SigCrafter/src/sig/skills/BrandOfTheElements.java @@ -5,8 +5,12 @@ import sig.Skill; public class BrandOfTheElements extends Skill { - public BrandOfTheElements(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public BrandOfTheElements(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public BrandOfTheElements(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/ByregotsBlessing.java b/SigCrafter/src/sig/skills/ByregotsBlessing.java new file mode 100644 index 0000000..54a122a --- /dev/null +++ b/SigCrafter/src/sig/skills/ByregotsBlessing.java @@ -0,0 +1,24 @@ +package sig.skills; + +import sig.Buff; +import sig.Craft; +import sig.Skill; + +public class ByregotsBlessing extends Skill { + public ByregotsBlessing(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public ByregotsBlessing(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); + } + + @Override + public void useSkill(Craft c) { + super.useSkill(c); + //TODO Actually implement it. + c.craft_quality += 1 * (c.quality_mult+c.BuffList.get("Inner Quiet").stackCount*0.2) * (0.37*c.control+32.6)*(1-0.05*Math.min(Math.max(c.recipe_level-c.level,0),5)); + c.craft_durability -= 10 * c.durability_mult; + if (c.BuffList.get("Inner Quiet").stackCount>0) {c.BuffList.get("Inner Quiet").stackCount++;} + } +} diff --git a/SigCrafter/src/sig/skills/GreatStrides.java b/SigCrafter/src/sig/skills/GreatStrides.java index 1284b1f..738ea05 100644 --- a/SigCrafter/src/sig/skills/GreatStrides.java +++ b/SigCrafter/src/sig/skills/GreatStrides.java @@ -5,8 +5,12 @@ import sig.Craft; import sig.Skill; public class GreatStrides extends Skill { - public GreatStrides(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public GreatStrides(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public GreatStrides(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/HastyTouch.java b/SigCrafter/src/sig/skills/HastyTouch.java index 9f2eedb..6118d7d 100644 --- a/SigCrafter/src/sig/skills/HastyTouch.java +++ b/SigCrafter/src/sig/skills/HastyTouch.java @@ -5,8 +5,12 @@ import sig.Skill; public class HastyTouch extends Skill { - public HastyTouch(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public HastyTouch(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public HastyTouch(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/InnerQuiet.java b/SigCrafter/src/sig/skills/InnerQuiet.java index d001fd4..195e81e 100644 --- a/SigCrafter/src/sig/skills/InnerQuiet.java +++ b/SigCrafter/src/sig/skills/InnerQuiet.java @@ -5,8 +5,12 @@ import sig.Craft; import sig.Skill; public class InnerQuiet extends Skill { - public InnerQuiet(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public InnerQuiet(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public InnerQuiet(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/Innovation.java b/SigCrafter/src/sig/skills/Innovation.java index d844e67..3a70c5d 100644 --- a/SigCrafter/src/sig/skills/Innovation.java +++ b/SigCrafter/src/sig/skills/Innovation.java @@ -5,8 +5,12 @@ import sig.Craft; import sig.Skill; public class Innovation extends Skill { - public Innovation(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public Innovation(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public Innovation(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/MastersMend.java b/SigCrafter/src/sig/skills/MastersMend.java index 246748f..327c846 100644 --- a/SigCrafter/src/sig/skills/MastersMend.java +++ b/SigCrafter/src/sig/skills/MastersMend.java @@ -5,8 +5,12 @@ import sig.Skill; public class MastersMend extends Skill { - public MastersMend(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public MastersMend(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public MastersMend(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/NameOfTheElements.java b/SigCrafter/src/sig/skills/NameOfTheElements.java index dafc2cf..86abe89 100644 --- a/SigCrafter/src/sig/skills/NameOfTheElements.java +++ b/SigCrafter/src/sig/skills/NameOfTheElements.java @@ -5,8 +5,12 @@ import sig.Craft; import sig.Skill; public class NameOfTheElements extends Skill { - public NameOfTheElements(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public NameOfTheElements(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public NameOfTheElements(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/Observe.java b/SigCrafter/src/sig/skills/Observe.java index 2a5830a..38dfce6 100644 --- a/SigCrafter/src/sig/skills/Observe.java +++ b/SigCrafter/src/sig/skills/Observe.java @@ -4,8 +4,12 @@ import sig.Craft; import sig.Skill; public class Observe extends Skill { - public Observe(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public Observe(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public Observe(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/RapidSynthesis.java b/SigCrafter/src/sig/skills/RapidSynthesis.java index d4877f9..52fc88f 100644 --- a/SigCrafter/src/sig/skills/RapidSynthesis.java +++ b/SigCrafter/src/sig/skills/RapidSynthesis.java @@ -5,8 +5,12 @@ import sig.Skill; public class RapidSynthesis extends Skill { - public RapidSynthesis(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public RapidSynthesis(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public RapidSynthesis(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/StandardTouch.java b/SigCrafter/src/sig/skills/StandardTouch.java index fee9b4b..84ccd3b 100644 --- a/SigCrafter/src/sig/skills/StandardTouch.java +++ b/SigCrafter/src/sig/skills/StandardTouch.java @@ -5,8 +5,12 @@ import sig.Skill; public class StandardTouch extends Skill { - public StandardTouch(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public StandardTouch(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public StandardTouch(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/TricksOfTheTrade.java b/SigCrafter/src/sig/skills/TricksOfTheTrade.java index 1ec29bb..13aae1a 100644 --- a/SigCrafter/src/sig/skills/TricksOfTheTrade.java +++ b/SigCrafter/src/sig/skills/TricksOfTheTrade.java @@ -6,8 +6,12 @@ import sig.Status; public class TricksOfTheTrade extends Skill { - public TricksOfTheTrade(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public TricksOfTheTrade(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public TricksOfTheTrade(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/Veneration.java b/SigCrafter/src/sig/skills/Veneration.java index 76fc7e2..830bdf8 100644 --- a/SigCrafter/src/sig/skills/Veneration.java +++ b/SigCrafter/src/sig/skills/Veneration.java @@ -5,8 +5,12 @@ import sig.Craft; import sig.Skill; public class Veneration extends Skill { - public Veneration(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public Veneration(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public Veneration(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/WasteNot.java b/SigCrafter/src/sig/skills/WasteNot.java index 1f33b26..7225449 100644 --- a/SigCrafter/src/sig/skills/WasteNot.java +++ b/SigCrafter/src/sig/skills/WasteNot.java @@ -6,8 +6,12 @@ import sig.Skill; public class WasteNot extends Skill { - public WasteNot(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public WasteNot(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public WasteNot(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override diff --git a/SigCrafter/src/sig/skills/WasteNotII.java b/SigCrafter/src/sig/skills/WasteNotII.java index 9111e9f..3c3248b 100644 --- a/SigCrafter/src/sig/skills/WasteNotII.java +++ b/SigCrafter/src/sig/skills/WasteNotII.java @@ -5,8 +5,12 @@ import sig.Craft; import sig.Skill; public class WasteNotII extends Skill { - public WasteNotII(String name, int CPCost, boolean guaranteed, int lvReq) { - super(name, CPCost, guaranteed, lvReq); + public WasteNotII(String name, int CPCost, boolean guaranteed, int lvReq, int modifier, int key) { + super(name, CPCost, guaranteed, lvReq, modifier, key); + } + + public WasteNotII(String name, int CPCost, boolean guaranteed, int lvReq, int key) { + super(name, CPCost, guaranteed, lvReq, key); } @Override