OpenJS-docs
Download plugin
  • Overview
    • Welcome
  • Getting Started
    • Installing the plugin
    • Configuration file
    • Commands
    • Creating scripts
  • OpenJS Components
    • Feature Flags
    • Managing scripts within scripts
    • Sharing variables between scripts
    • Custom Commands
    • Using PlaceHolderApi
    • Listening and cancelling events
    • Custom events
    • Loading and saving data
    • Logging in console
    • Scheduling
    • Java imports
  • Example Scripts
    • spawn hit stand command
    • Knockbackstick command
    • No hit-cooldown script
    • NoBlockPlacing script
    • Saving Player data script
    • running code asynchronously
    • WhileTrue do script
Powered by GitBook
On this page
  1. Example Scripts

Saving Player data script

storagescript.js
var ValueName = "destroyedBlocks"

function getFileName(player) {
    return player.getUniqueId() + "_data"
}

registerEvent("org.bukkit.event.player.PlayerJoinEvent", {
    handleEvent: function(event) {
        registerSchedule(0, 0, {
            handler: function() {
                var player = event.getPlayer();
                var fileName = getFileName(player);
                DiskApi.loadFile(fileName, false, false);
                var breakedBlocks = DiskApi.getVar(fileName, ValueName, 0, false);
                player.sendMessage("You destroyed "+breakedBlocks+" blocks!")
        }}, "handler");
    }
})

registerEvent("org.bukkit.event.player.PlayerQuitEvent", {
    handleEvent: function(event) {
        registerSchedule(0, 0, {
            handler: function() {
                var player = event.getPlayer();
                var fileName = getFileName(player);
                log.info("Saving player data...")
                DiskApi.saveFile(fileName, false, false);
                log.info("Data saved!")
        }}, "handler");
    }
})

registerEvent("org.bukkit.event.block.BlockBreakEvent", {
    handleEvent: function(event) {
        var player = event.getPlayer()
        var fileName = getFileName(player);
        var destroyedBlocks = DiskApi.getVar(fileName, ValueName, 0, false) + 1
        DiskApi.setVar(fileName, "destroyedBlocks", destroyedBlocks, false)
        event.getPlayer().sendMessage("You destroyed " + destroyedBlocks + " blocks!");
    }
});
PreviousNoBlockPlacing scriptNextrunning code asynchronously

Last updated 6 days ago