Skip to content

Latest commit

 

History

History
85 lines (69 loc) · 2.02 KB

File metadata and controls

85 lines (69 loc) · 2.02 KB

Description

This doucment describes how to make a Minigame, Third-Party plugin.

Features

  • Simple and foolish API
  • Custom data with Map<String, Object> which user can edit
  • Each minigames is isolated from the each other (doesn't affect to each other)
  • Minigame util tools (score, soreboard, live, task ...etc)
  • API for 3rd-party
  • Custom Events
  • Update checker
  • Language support

Tutorial

API design

classDiagram
    MiniGame <|-- GameA
    MiniGameWorld -- GameA
    MiniGameWorld -- 3rdParty
    MiniGameAccessor *-- 3rdParty
    MwUtil *-- 3rdParty

    class MiniGameWorld{
        create(version)
        joinGame(Player, title)
        leaveGame(Player)
        viewGame(Player, title)
        unviewGame(Player)
        registerGame(MiniGame)
        getTemplateGames()
        partyManager()
        settings()
    }
    class MwUtil{
        isPlayingGame(Player)
        isViewingGame(Player)
        checkPermission(Sender, perm)
    }
    class MiniGameAccessor{
        isStarted()
        players()
        settings()
        customOption()
    }
    class MiniGame{
        startGame()
        finishGame()
    }
    class GameA{
        gameVar
        gameMethod()
    }
    class 3rdParty{
        saveRank()
        giveReward()
    }
Loading

More