h5p-memory-game/semantics.json

176 lines
4.6 KiB
JSON

[
{
"name": "cards",
"type": "list",
"widgets": [
{
"name": "VerticalTabs",
"label": "Default"
}
],
"label": "Cards",
"importance": "high",
"entity": "card",
"min": 2,
"max": 100,
"field": {
"type": "group",
"name": "card",
"label": "Card",
"importance": "high",
"fields": [
{
"name": "image",
"type": "image",
"label": "Image",
"importance": "high",
"ratio": 1
},
{
"name": "imageAlt",
"type": "text",
"label": "Alternative text for Image",
"importance": "high",
"description": "Describe what can be seen in the photo. The text is read by text-to-speech tools needed by visually impaired users."
},
{
"name": "match",
"type": "image",
"label": "Matching Image",
"importance": "low",
"optional": true,
"description": "An optional image to match against instead of using two cards with the same image.",
"ratio": 1
},
{
"name": "matchAlt",
"type": "text",
"label": "Alternative text for Matching Image",
"importance": "low",
"optional": true,
"description": "Describe what can be seen in the photo. The text is read by text-to-speech tools needed by visually impaired users."
},
{
"name": "description",
"type": "text",
"label": "Description",
"importance": "low",
"maxLength": 150,
"optional": true,
"description": "An optional short text that will pop up once the two matching cards are found."
}
]
}
},
{
"name": "behaviour",
"type": "group",
"label": "Behavioural settings",
"importance": "low",
"description": "These options will let you control how the game behaves.",
"optional": true,
"fields": [
{
"name": "useGrid",
"type": "boolean",
"label": "Position the cards in a square",
"description": "Will try to match the number of columns and rows when laying out the cards. Afterward, the cards will be scaled to fit the container.",
"importance": "low",
"default": true
},
{
"name": "numCardsToUse",
"type": "number",
"label": "Number of cards to use",
"description": "Setting this to a number greater than 2 will make the game pick random cards from the list of cards.",
"importance": "low",
"optional": true,
"min": 2
},
{
"name": "allowRetry",
"type": "boolean",
"label": "Add button for retrying when the game is over",
"importance": "low",
"default": true
}
]
},
{
"name": "lookNFeel",
"type": "group",
"label": "Look and feel",
"importance": "low",
"description": "Control the visuals of the game.",
"optional": true,
"fields": [
{
"name": "themeColor",
"type": "text",
"label": "Theme Color",
"importance": "low",
"description": "Choose a color to create a theme for your card game.",
"optional": true,
"default": "#909090",
"widget": "colorSelector",
"spectrum": {
"showInput": true
}
},
{
"name": "cardBack",
"type": "image",
"label": "Card Back",
"importance": "low",
"optional": true,
"description": "Use a custom back for your cards.",
"ratio": 1
}
]
},
{
"label": "Localization",
"importance": "low",
"name": "l10n",
"type": "group",
"common": true,
"fields": [
{
"label": "Card turns text",
"importance": "low",
"name": "cardTurns",
"type": "text",
"default": "Card turns"
},
{
"label": "Time spent text",
"importance": "low",
"name": "timeSpent",
"type": "text",
"default": "Time spent"
},
{
"label": "Feedback text",
"importance": "low",
"name": "feedback",
"type": "text",
"default": "Good work!"
},
{
"label": "Try again button text",
"importance": "low",
"name": "tryAgain",
"type": "text",
"default": "Reset"
},
{
"label": "Close button label",
"importance": "low",
"name": "closeLabel",
"type": "text",
"default": "Close"
}
]
}
]