1
0
Fork 0
mirror of https://github.com/Orama-Interactive/Pixelorama.git synced 2025-01-31 07:29:49 +00:00
Pixelorama/Translations
Manolis Papadeas 375f3d4cb6 Implement a basic extension system
Importing .pck or .zip Godot resource pack files into Pixelorama is now possible. This needs to be documented properly, but here's the basic idea, for now at least. This is super early work and I haven't tested it with a proper extension yet, so all of this could be a subject of change. I tested it with a custom theme extension though and it seems to be working perfectly.

Importing resource pack files, either by dragging and dropping them into the app window or by going to Edit>Preferences>Extensions>Add Extension, copies the files into user://extensions/. Extensions can be enabled/disabled and uninstalled. Uninstalling them deletes the resource pack files from user://extensions/.

The extension project source files need to be in a folder inside src/Extensions/ with the same name as the .pck or .zip file. **This is required for now, otherwise it will not work.** Inside that folder there also needs to be an extension.json file, with a structure similar to this:

{
	"name": "ExtensionName",
	"display_name": "Extension Name",
	"description": "A Pixelorama extension",
	"author": "Orama Interactive",
	"version": "0.1",
	"license": "MIT",
	"nodes": [
		"ExtensionExample.tscn"
	]
}

The `nodes` array leads to the packed scene files with the nodes that are to be instantiated. **The root nodes of these scenes need to have the same name as the .tscn files they belong to.** The scripts of these nodes should have _enter_tree() and _exit_tree() methods to handle the extension enabling/disabling (or even uninstalling) logic. Note that .json files need to be included in the export options while exporting the extension from Godot.

Enabling an extension means that the scenes found in the extension.json's "nodes" array get instantiated, and disabling gets rid of these nodes from Pixelorama's SceneTree.
2022-02-19 03:21:08 +02:00
..
af_ZA.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
ar_SA.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
ca_ES.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
cs_CZ.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
da_DK.po New Crowdin updates (#629) 2022-01-11 00:04:11 +02:00
de_DE.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
el_GR.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
en.po Improved CreateNewImage dialog #178 (#181) 2020-04-03 03:12:42 +03:00
en_US.po New Crowdin translations (#212) 2020-05-05 13:50:37 +03:00
eo_UY.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
es_ES.po New Crowdin updates (#635) 2022-01-18 23:46:54 +02:00
fi_FI.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
fr_FR.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
he_IL.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
hi_IN.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
hu_HU.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
id_ID.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
it_IT.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
ja_JP.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
ko_KR.po New Crowdin updates (#629) 2022-01-11 00:04:11 +02:00
lv_LV.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
ml_IN.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
nb_NO.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
nl_NL.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
no_NO.po New Crowdin updates (#477) 2021-06-10 16:02:55 -07:00
pl_PL.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
pt_BR.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
pt_PT.po New Crowdin updates (#635) 2022-01-18 23:46:54 +02:00
README.md Create README.md 2020-01-22 03:04:08 +02:00
ro_RO.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
ru_RU.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
si_LK.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
sr_SP.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
sv_SE.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
tr_TR.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
Translations.pot Implement a basic extension system 2022-02-19 03:21:08 +02:00
uk_UA.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
vi_VN.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
zh_CN.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00
zh_TW.po New Crowdin updates (#621) 2022-01-06 18:38:18 +02:00

Contributing Translations

If you wish to contribute a translation, make sure to use Pixelorama's Crowdin page. Crowdin is a web-based translation platform, where people can contribute translations together and with ease. Please use Crowdin and do not directly open pull requests to Pixelorama's GitHub repository.

Link: https://crowdin.com/project/pixelorama