Add gameconfig.lua
parent
e96cbf9b18
commit
a4a5e5a333
23
API.md
23
API.md
|
@ -20,6 +20,27 @@ The calendar mod uses cardinal numbers internally to store the date internally,
|
|||
this is only done to make calculations a bit simpler.
|
||||
`total_days` is also a cardinal number.
|
||||
|
||||
## Calendar configiguration
|
||||
In `gameconfig.lua`, there several variables that customize the calendar:
|
||||
|
||||
* `calendar.MONTH_DAYS`: Days in a month
|
||||
* `calendar.month_names`: List of month names
|
||||
* `calendar.month_names_short`: List of short month names
|
||||
* `calendar.weekday_names`: List of weekday names
|
||||
* `calendar.weekday_names_short`: List of short weekday names
|
||||
* `calendar.FIRST_WEEK_DAY`: Cardinal number of the weekday that
|
||||
marks the beginning of a week
|
||||
and the calendar
|
||||
|
||||
By default, a year has 12 months with 30 days each,
|
||||
the months are January to December,
|
||||
the week has 7 weekdays from Monday to Sunday, starting at Monday.
|
||||
|
||||
For convenience, there are also these shortcuts, derived from the other values:
|
||||
* `calendar.MONTHS`: Number of months in a year
|
||||
* `calendar.WEEK_DAYS`: Number of days in a week
|
||||
* `calendar.YEAR_DAYS`: Number of days in a year
|
||||
|
||||
## Functions
|
||||
|
||||
### `calendar.get_date(total_days, ordinal)`
|
||||
|
@ -101,3 +122,5 @@ have a tooltip.
|
|||
* `show_controls`: If `true`, show buttons to change the month and year
|
||||
* `wanted_months`: Which cardinal calendar month to show (default: current one)
|
||||
* `wanted_years`: Which cardinal calendar year to show (default: current one)
|
||||
|
||||
|
||||
|
|
11
README.md
11
README.md
|
@ -5,7 +5,15 @@ This mod adds a simple and customizable calender system.
|
|||
The calendar supports days, weeks, months and years.
|
||||
Holidays are also supported.
|
||||
|
||||
By default, a year has 12 months with 30 days each, with a total of 360 days.
|
||||
To make things simpler, all months have the same length.
|
||||
|
||||
By default, a year has 12 months (January to December) with 30 days each.
|
||||
There are 7 weekdays from Monday to Sunday, starting at Monday.
|
||||
The calendar starts at Day 1, Month 1 (January), Year 1.
|
||||
|
||||
## Customizing the calendar
|
||||
If you want to customize the calendar (e.g. change the length of months),
|
||||
read the text file `API.md`.
|
||||
|
||||
## Info for programmers
|
||||
See `API.md`.
|
||||
|
@ -15,3 +23,4 @@ Minetest stores the number of elapsed days in the world files and it
|
|||
can be queried in Lua via `minetest.get_day_count()`.
|
||||
The day count is stored in the world directory under `env_meta.txt` as
|
||||
`day_count`.
|
||||
|
||||
|
|
|
@ -0,0 +1,45 @@
|
|||
-- Get translator
|
||||
local S
|
||||
if minetest.get_translator then
|
||||
S = minetest.get_translator("calendar")
|
||||
else
|
||||
S = function(s) return s end
|
||||
end
|
||||
|
||||
|
||||
----------------------------------
|
||||
-- BEGINNING OF CALENDAR CONFIG --
|
||||
----------------------------------
|
||||
|
||||
-- Number of days in a month
|
||||
calendar.MONTH_DAYS = 30
|
||||
|
||||
-- List of long month names
|
||||
-- (also determines the number of months in a year)
|
||||
calendar.month_names = {
|
||||
S('January'), S('February'), S('March'), S('April'),
|
||||
S('May'), S('June'), S('July'), S('August'),
|
||||
S('September'), S('October'), S('November'), S('December')
|
||||
}
|
||||
-- Short month names
|
||||
-- (must have same length as `calendar.month.names`)
|
||||
calendar.month_names_short = {
|
||||
S('Jan'), S('Feb'), S('Mar'), S('Apr'),
|
||||
S('May'), S('Jun'), S('Jul'), S('Aug'),
|
||||
S('Sep'), S('Oct'), S('Nov'), S('Dec')
|
||||
}
|
||||
|
||||
-- Long week day names
|
||||
-- (also determines the number of days in a week)
|
||||
calendar.weekday_names = {
|
||||
S("Monday"), S("Tuesday"), S("Wednesday"),
|
||||
S("Thursday"), S("Friday"), S("Saturday"), S("Sunday")
|
||||
}
|
||||
-- Short week day names
|
||||
-- (must have same length as `calendar.weekday_names`)
|
||||
calendar.weekday_names_short = {
|
||||
S("Mo"), S("Tu"), S("We"), S("Th"), S("Fr"), S("Sa"), S("Su")
|
||||
}
|
||||
|
||||
-- Cardinal number of the week day that marks the beginning of a week
|
||||
calendar.FIRST_WEEK_DAY = 0
|
19
init.lua
19
init.lua
|
@ -7,23 +7,14 @@ else
|
|||
end
|
||||
local F = minetest.formspec_escape
|
||||
|
||||
calendar.MONTH_DAYS = 30
|
||||
dofile(minetest.get_modpath("calendar").."/gameconfig.lua")
|
||||
|
||||
-- Long month names
|
||||
calendar.month_names = { S('January'), S('February'), S('March'), S('April'), S('May'), S('June'), S('July'), S('August'), S('September'), S('October'), S('November'), S('December') }
|
||||
--calendar.month_names = { S('Spring'), S('Summer'), S('Harvest'), S('Winter') }
|
||||
-- Short month names
|
||||
calendar.month_names_short = { S('Jan'), S('Feb'), S('Mar'), S('Apr'), S('May'), S('Jun'), S('Jul'), S('Aug'), S('Sep'), S('Oct'), S('Nov'), S('Dec') }
|
||||
--calendar.month_names_short = { S('Spr'), S('Sum'), S('Har'), S('Win') }
|
||||
-- Number of months in a year
|
||||
calendar.MONTHS = #calendar.month_names
|
||||
|
||||
calendar.YEAR_DAYS = calendar.MONTHS * calendar.MONTH_DAYS
|
||||
|
||||
-- Week day names
|
||||
calendar.weekday_names = { S("Monday"), S("Tuesday"), S("Wednesday"), S("Thursday"), S("Friday"), S("Saturday"), S("Sunday") }
|
||||
calendar.weekday_names_short = { S("Mo"), S("Tu"), S("We"), S("Th"), S("Fr"), S("Sa"), S("Su") }
|
||||
-- Number of days in a week
|
||||
calendar.WEEK_DAYS = #calendar.weekday_names
|
||||
calendar.FIRST_WEEK_DAY = 0
|
||||
-- Number of days in a year
|
||||
calendar.YEAR_DAYS = calendar.MONTHS * calendar.MONTH_DAYS
|
||||
|
||||
local holidays = {}
|
||||
|
||||
|
|
Loading…
Reference in New Issue