Skip to content

πŸ’œ LiteSkullAPI - Fast and extensive skull library for Bukkit/Spigot/Paper plugins.

License

Notifications You must be signed in to change notification settings

Rollczi/LiteSkullAPI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

62 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ’œ LiteSkullAPI

Fast and extensive skull library for Bukkit/Spigot/Paper plugins.

Helpful links:

mineCodes Repository (Maven or Gradle) ❀️

<repository> <id>minecodes-repository</id> <url>https://repository.minecodes.pl/releases</url> </repository>
maven { url "https://repository.minecodes.pl/releases" }

Dependencies (Maven or Gradle)

Framework Core

<dependency> <groupId>dev.rollczi</groupId> <artifactId>liteskullapi</artifactId> <version>2.0.0</version> </dependency>
implementation("dev.rollczi:liteskullapi:2.0.0")

How use LiteSkullAPI?

public final class ExamplePlugin extends JavaPlugin { private SkullAPI skullAPI; @Override public void onEnable() { this.skullAPI = LiteSkullFactory.builder() .cacheExpireAfterWrite(Duration.ofMinutes(45L)) .bukkitScheduler(this) .build(); } }

Accept synchronous with Minecraft Server

Lambda will be run in the server sync task (see .bukkitScheduler() or .scheduler())

// you can use this item when skull will be found (synchronous) skullAPI.acceptSyncSkull("Rollczi", itemStack -> { player.getInventory().addItem(itemStack); }); skullAPI.acceptSyncSkullData("Rollczi", skullData -> { String value = skullData.getValue(); String signature = skullData.getSignature(); });

Accept asynchronous

// you can use this item when skull will be found (asynchronous) skullAPI.acceptAsyncSkull("Rollczi", itemStack -> { itemStack // some code }); skullAPI.acceptAsyncSkullData("Rollczi", skullData -> { String value = skullData.getValue(); // texture value String signature = skullData.getSignature(); // texture signature });

CompletableFuture

// you can get completable future with skull item CompletableFuture<ItemStack> completableFuture = skullAPI.getSkull("Rollczi"); completableFuture.thenAcceptAsync(itemStack -> { itemStack // some code }); // you can get completable future with skull data CompletableFuture<SkullData> completableFuture = skullAPI.getSkullData("Rollczi"); completableFuture.thenAcceptAsync(skullData -> { String value = skullData.getValue(); // texture value String signature = skullData.getSignature(); // texture signature });

Await for skull (⚠️ Blocking)

ItemStack itemStack = skullAPI.awaitForSkull("Rollczi", 10, TimeUnit.SECONDS); SkullData skullData = skullAPI.awaitForSkullData("Rollczi", 10, TimeUnit.SECONDS);

About

πŸ’œ LiteSkullAPI - Fast and extensive skull library for Bukkit/Spigot/Paper plugins.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages