diff --git a/src/main/java/dev/salmonllama/fsbot/endpoints/scapefashion/ScapeFashionSlotOSRS.java b/src/main/java/dev/salmonllama/fsbot/endpoints/scapefashion/ScapeFashionSlotOSRS.java new file mode 100644 index 0000000..7a15895 --- /dev/null +++ b/src/main/java/dev/salmonllama/fsbot/endpoints/scapefashion/ScapeFashionSlotOSRS.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2020. Aleksei Gryczewski + * All rights reserved. + */ + +package dev.salmonllama.fsbot.endpoints.scapefashion; + +import java.util.Optional; + +// Source: https://github.com/ncpierson/fashionscape/blob/master/api/data/tools/slot.js +public enum ScapeFashionSlotOSRS { + AMMUNITION("ammunition"), + BODY("body"), + CAPE("cape"), + FEET("feet"), + HAND("hand"), + HEAD("head"), + LEG("leg"), + NECK("neck"), + RING("ring"), + SHIELD("shield"), + WEAPON("weapon"); + + private final String value; + + ScapeFashionSlotOSRS(String value) { + this.value = value; + } + + public String getValue() { + return value; + } + + public static Optional matches(String s) { + try { + var slot = ScapeFashionSlotOSRS.valueOf(s); + return Optional.of(slot); + } catch (IllegalArgumentException e) { + return Optional.empty(); + } + } +} diff --git a/src/main/java/dev/salmonllama/fsbot/endpoints/scapefashion/ScapeFashionSlotRs3.java b/src/main/java/dev/salmonllama/fsbot/endpoints/scapefashion/ScapeFashionSlotRs3.java new file mode 100644 index 0000000..d99cbe1 --- /dev/null +++ b/src/main/java/dev/salmonllama/fsbot/endpoints/scapefashion/ScapeFashionSlotRs3.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2020. Aleksei Gryczewski + * All rights reserved. + */ + +package dev.salmonllama.fsbot.endpoints.scapefashion; + +import java.util.Optional; + +// Source: https://github.com/ncpierson/fashionscape/blob/master/api/data/tools/slot.js +public enum ScapeFashionSlotRs3 { + AMMUNITION("ammunition"), + BACK("back"), + FEET("feet"), + HAND("hand"), + HEAD("head"), + LEG("leg"), + MAIN_HAND("main_hand"), + NECK("neck"), + OFF_HAND("off-hand"), + POCKET("pocket"), + RING("ring"), + SIGIL("sigil"), + TORSO("torso"), + TWO_HANDED("two-handed"); + + private final String value; + + ScapeFashionSlotRs3(String value) { + this.value = value; + } + + public String getValue() { + return value; + } + + public static Optional matches(String s) { + try { + var slot = ScapeFashionSlotRs3.valueOf(s); + return Optional.of(slot); + } catch (IllegalArgumentException e) { + return Optional.empty(); + } + } +}