11package io .github .sefiraat .slimetinker ;
22
3- import io .github .mooy1 .infinitylib .core .AbstractAddon ;
3+ import java .text .MessageFormat ;
4+
5+ import javax .annotation .Nonnull ;
6+ import javax .annotation .Nullable ;
7+
48import io .github .sefiraat .slimetinker .itemgroups .ItemGroups ;
59import io .github .sefiraat .slimetinker .items .Casts ;
610import io .github .sefiraat .slimetinker .items .Dies ;
1620import io .github .sefiraat .slimetinker .managers .MemoryManager ;
1721import io .github .sefiraat .slimetinker .managers .TraitManager ;
1822import io .github .sefiraat .slimetinker .runnables .RunnableManager ;
23+ import io .github .thebusybiscuit .slimefun4 .api .SlimefunAddon ;
24+ import io .github .thebusybiscuit .slimefun4 .libraries .dough .updater .BlobBuildUpdater ;
25+
1926import org .bstats .bukkit .Metrics ;
27+ import org .bukkit .plugin .java .JavaPlugin ;
2028
21- public class SlimeTinker extends AbstractAddon {
29+ public class SlimeTinker extends JavaPlugin implements SlimefunAddon {
2230
2331 public static final int RUNNABLE_TICK_RATE = 40 ;
2432
2533 private static SlimeTinker instance ;
2634
35+ private final String username ;
36+ private final String repo ;
37+ private final String branch ;
38+
2739 private RunnableManager runnableManager ;
2840 private ListenerManager listenerManager ;
2941 private TinkerMaterialManager tinkerMaterialManager ;
@@ -33,11 +45,13 @@ public class SlimeTinker extends AbstractAddon {
3345 private MemoryManager memoryManager ;
3446
3547 public SlimeTinker () {
36- super ("Sefiraat" , "SlimeTinker" , "master" , "auto-update" );
48+ this .username = "Sefiraat" ;
49+ this .repo = "SlimeTinker" ;
50+ this .branch = "master" ;
3751 }
3852
3953 @ Override
40- public void enable () {
54+ public void onEnable () {
4155
4256 new Metrics (this , 11748 );
4357
@@ -64,10 +78,13 @@ public void enable() {
6478
6579 this .listenerManager = new ListenerManager (this , this .getServer ().getPluginManager ());
6680
81+ if (getConfig ().getBoolean ("auto-update" ) && getDescription ().getVersion ().startsWith ("DEV" )) {
82+ new BlobBuildUpdater (this , getFile (), "SlimeTinker" , "Dev" ).start ();
83+ }
6784 }
6885
6986 @ Override
70- protected void disable () {
87+ public void onDisable () {
7188 saveConfig ();
7289 instance = null ;
7390 }
@@ -101,6 +118,18 @@ public TraitManager getTraitManager() {
101118 return traitManager ;
102119 }
103120
121+ @ Nonnull
122+ @ Override
123+ public JavaPlugin getJavaPlugin () {
124+ return this ;
125+ }
126+
127+ @ Nullable
128+ @ Override
129+ public String getBugTrackerURL () {
130+ return MessageFormat .format ("https://github.com/{0}/{1}/issues/" , this .username , this .repo );
131+ }
132+
104133 public static SlimeTinker getInstance () {
105134 return instance ;
106135 }
0 commit comments