Calendar Events icon

Calendar Events -----

Call a custom event at specific dates and times




Since all events get called in the first second of a minute, the placeholder
"until-min" shows one minute less, than one would expect. There now is an
"until-min-plus-one" placeholder which does exactly what it says :)
----------, Dec 3, 2020

Now fully supports mc 1.16.4
----------, Nov 18, 2020

Quick update to support PlaceholderAPI in all commands and broadcasts in the listener section.
----------, Jun 7, 2020

This version is for MC 1.14+ and no longer triggers legacy support for the newer versions.

For MC < 1.14 please use the latest version of CalendarEvents v1 (at the time of writing 1.9.0)
----------, Apr 8, 2020

Two new placeholders for commands:
  • `%allOffline%` will run for all offline players
  • `%allPlayers%` runs for online AND offline players
----------, Apr 8, 2020

  • '/ce reload' now also correctly reloads combined events
  • New command '/ce list' that shows all event labels and their next call time (no support for combined events jet :s)
  • Small help command
----------, Jan 30, 2020

As the title already suggests, CalendarEvents now supports sending action bars and titles to players in Minecraft v1.15.
----------, Jan 6, 2020

Happy new year
  • Placeholders from PlaceholderAPI are now supported in action bar and title messages as well as in commands
  • Combined events are also reloaded now when using the reload command (Bugfix)
----------, Jan 4, 2020

  • allow events to fire when a specified list of other events was fired
    • this allows special scheduling like e.g. "first/second/third" sunday of a month
Example: Event that fires every first sunday in a month
Code (YAML):
  # lets create some normal events to use in a combined event
  sunday
: # every sunday
    timing
:
      occasion
: "sunday"
      time
: "12:00" # SAME TIME AS THE OTHER EVENT BELOW (IMPORTANT)
  firstWeekOfMonth
: # every day of the first week in a month
    timing
:
      occasion
: "01, 02, 03, 04, 05, 06, 07"
      time
: "12:00"

  # this event will fire on every first sunday in a month at 12:00
  firstSundayInMonth
:
    events
: # lables of the two "normal" events above
      - "sunday"
      - "firstWeekOfMonth"
----------, Aug 27, 2019

You can now display the time till an event is called via PlaceholderAPI

"%calendarevents_until:myEventLabel%" returns time in d h min s
"%calendarevents_until-s:myEventLabel%" returns time in s
"%calendarevents_until-min:myEventLabel%" returns time in min
"%calendarevents_until-h:myEventLabel%" returns time in h
"%calendarevents_until-d:myEventLabel%" returns time in d
----------, Jun 29, 2019

CalendarEvents now supports 1.14 and 1.14.1
----------, May 17, 2019

  • You can now run commands only for players with a specific permission
Code (YAML):
    # all commands in this section will run for EVERY player that has the given permission
    commandsWithPerm
:
      # for every unique key commands and perm have to be defined
      example
:
        # list of commands.
        #     %player% is replaced by the player name
        #     %allOnline% is replaced by the player name
        #     %perm% is replaced by the permission
        commands
:
         - "tell %player% &4Hey there %player% &1You have the permission %perm%"
        # the commands above are only dispatched for the player, if he has the defined permission
        perm
: "example.perm"
 
  • You can customise the time a title is shown to the players
Code (YAML):
    # %player% will be replaced with the players name
    title
:
      # perm is optional. If empty, the title will be send to everyone
      perm
: "example.perm"
      title
: "&1Hi there %player%"
      subTitle
: "It's now &4%time%&r!"
      # ticks (20 = 1s) the title is visible (default 10). 10 ticks fading-in and 10 ticks fading-out are hardcoded!
      ticksToDisplay
: 20
----------, May 4, 2019

CalendarEvents now supports title and actionbar messages on MC 1.13 and 1.13.1
----------, Sep 19, 2018

Until now the plugin disabled itself when the server was running on an unsupported version. But since only title and actionbar messages depend on the version I've changed the behavior. Title and actionbar messages will now simply not work below 1.8. Broadcasts and commands will work on all versions.
----------, Apr 4, 2018

New settings in config.yml:
  • Hours offset from server time to players time
    • Example:
      -> Server time: 14:30
      -> Most players: 15:30

      Set the offset to 1 and all your events will be called at the configured time with respect to your players' time zone, not your servers' time zone.
  • Locale setting for day and month names (see new placeholders below)

New placeholders:
  • %day% -> full name of the day (e.g. Monday)
  • %month% -> name of the month
There were a lot of changes in the repository. All nms code was moved to a separate project and is shaded. There is a new maven repository.
----------, Mar 24, 2018

Version 1.3.3

  • The default configuration file is cleaner, better documented and has less actions that are seen by players on the server.
    • Most action examples are now either commented out, or require an example permission.
    • If you were already using an old version, there is no need to update your config file.
  • There are two new API methods
    • Find out whether a specific label is registered as an event
    • Get the seconds until the next call of a specific event
      • This can be used to give a countdown on demand. For example send back a message to a requesting player like: "This mine resets in XX minutes"
----------, Feb 19, 2018

Version 1.3.2

It came to my attention, that the reload command ( ce reload) removes all events added through the API. This was (of course) not intended and has been resolved in this version.
Additionally there are some code improvements.

The example project using the API has been mavenized and updated. It can be found here: https://github.com/NiklasEi/ExampleCalendarEventsAPI
----------, Feb 18, 2018

changes:
----------, Nov 28, 2017

From this version on it is easier to setup timings for events. One can use 'x' or 'X' as a placeholder, which will be interpreted as any possible and valid number.

Examples:

Code (Text):
exampleEvent:
  timing:
    occasion: "every day"
    time: "00:x5"
Is the same as
Code (Text):
exampleEvent:
  timing:
    occasion: "every day"
    time: "00:05, 00:15, 00:25, 00:35, 00:45, 00:55"


Or:
Code (Text):
everyHourOnWeekends:
  timing:
    occasion: "saturday, sunday"
    time: "XX:00"
Will be called on every full hour on Saturdays and Sundays.
----------, Sep 17, 2017

With /calendarevents reload (short: /ce reload) all timings and the listener will be reloaded.

Needed permission: calendarevents.reload
Default: OP
----------, Jul 3, 2017

  • Added NMS for minecraft 1.12
  • Made rest of the code compatible with Bukkit 1.12
    • There should not be any functional differences
----------, Jun 8, 2017

  • The API makes it possible to add and remove events on runtime
    • To get the API, add CalendarEvents to your dependencies. Get the plugin instance with Bukkit.getPluginManager().getPlugin("CalendarEvents")
    • Cast it to me.nikl.calendarevents.Main
    • Get the API with
      APICalendarEvents api = calendarEvents.getApi()
    • There is an example plugin using the API on GitHub
  • Preventing overriding of events with same labels
  • Events with times only in the past will be removed now
  • More effiecient algorithm to get the next timings
  • Recalculating timings if there are no future timings left (This should fix any problems when the plugin runs for a long time without reload/restart)
  • Removed unused data-file. I had plans with it in the past, but I forgot them :D
----------, Apr 21, 2017

I cleaned up the code a bit and cloned my GitLab repository into a public GitHub repository (because sadly the possible permission groups on GitLab are not so nice for open source).

Now about the real changes:
  • Added actions title and actionbar
    • These actions are version dependent. The plugin will send a warning if they do not work with your current minecraft version.
  • Added placeholder %player% for some actions
  • Added placeholder %time% for all actions. It will be replaced by the time of the event in the format hh:mm
----------, Jan 30, 2017

  • The events are now being called with a precision of ~ 100ms
  • Added a method to the event to directly get the time as the String 'hh:mm'
----------, Jan 29, 2017

Resource Information
Author:
----------
Total Downloads: 11,909
First Release: Jan 28, 2017
Last Update: Dec 3, 2020
Category: ---------------
All-Time Rating:
21 ratings
Find more info at nikl.me...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings