Showing preview only (2,288K chars total). Download the full file or copy to clipboard to get everything.
Repository: mbrlabs/Lorien
Branch: main
Commit: 17e32227dfce
Files: 179
Total size: 2.2 MB
Directory structure:
gitextract_k0igh7rb/
├── .github/
│ ├── FUNDING.yml
│ ├── ISSUE_TEMPLATE/
│ │ ├── bug_report.md
│ │ └── feature_request.md
│ └── workflows/
│ └── build.yml
├── .gitignore
├── LICENSE
├── README.md
├── art/
│ ├── custom_icons.afdesign
│ └── logo.afdesign
├── docs/
│ ├── changelog.md
│ ├── contributing.md
│ ├── file_format.md
│ ├── i18n.md
│ ├── manuals/
│ │ ├── manual_v0.1.0.md
│ │ ├── manual_v0.2.0.md
│ │ ├── manual_v0.3.0.md
│ │ ├── manual_v0.4.0.md
│ │ ├── manual_v0.5.0.md
│ │ ├── manual_v0.6.0.md
│ │ └── manual_v0.7.0.md
│ └── roadmap.md
├── lorien/
│ ├── Assets/
│ │ ├── Cursors/
│ │ │ └── move_cursor.png.import
│ │ ├── I18n/
│ │ │ ├── ar.txt
│ │ │ ├── de.txt
│ │ │ ├── en.txt
│ │ │ ├── es.txt
│ │ │ ├── fr.txt
│ │ │ ├── it.txt
│ │ │ ├── ko.txt
│ │ │ ├── pt-BR.txt
│ │ │ ├── ru.txt
│ │ │ ├── tr.txt
│ │ │ ├── uk.txt
│ │ │ ├── zh-CN.txt
│ │ │ └── zh-TW.txt
│ │ ├── Icons/
│ │ │ ├── add.png.import
│ │ │ ├── brush_tool.png.import
│ │ │ ├── canvas_color_tool.png.import
│ │ │ ├── circle_tool.png.import
│ │ │ ├── clear_canvas.png.import
│ │ │ ├── close.png.import
│ │ │ ├── color_picker.png.import
│ │ │ ├── copy.png.import
│ │ │ ├── cursor_icon.png.import
│ │ │ ├── delete.png.import
│ │ │ ├── edit.png.import
│ │ │ ├── eraser_tool.png.import
│ │ │ ├── fullscreen.png.import
│ │ │ ├── grid.png.import
│ │ │ ├── line_tool.png.import
│ │ │ ├── menu.png.import
│ │ │ ├── move_tool.png.import
│ │ │ ├── new_file.png.import
│ │ │ ├── open_file.png.import
│ │ │ ├── plus.png.import
│ │ │ ├── rectangle_tool.png.import
│ │ │ ├── redo.png.import
│ │ │ ├── save_file.png.import
│ │ │ ├── selection_tool.png.import
│ │ │ ├── tools.png.import
│ │ │ └── undo.png.import
│ │ ├── Player/
│ │ │ ├── p1_duck.png.import
│ │ │ ├── p1_front.png.import
│ │ │ ├── p1_hurt.png.import
│ │ │ ├── p1_jump.png.import
│ │ │ ├── p1_stand.png.import
│ │ │ └── p1_walk/
│ │ │ ├── p1_walk01.png.import
│ │ │ ├── p1_walk02.png.import
│ │ │ ├── p1_walk03.png.import
│ │ │ ├── p1_walk04.png.import
│ │ │ ├── p1_walk05.png.import
│ │ │ ├── p1_walk06.png.import
│ │ │ ├── p1_walk07.png.import
│ │ │ ├── p1_walk08.png.import
│ │ │ ├── p1_walk09.png.import
│ │ │ ├── p1_walk10.png.import
│ │ │ └── p1_walk11.png.import
│ │ ├── Textures/
│ │ │ ├── arrow_right.png.import
│ │ │ ├── dot.png.import
│ │ │ ├── palette_button.png.import
│ │ │ ├── palette_button_outline.png.import
│ │ │ ├── scrollbar.png.import
│ │ │ ├── scrollbar_bg.png.import
│ │ │ ├── scrollbar_hl.png.import
│ │ │ ├── selection_cursor.png.import
│ │ │ ├── slider_knob_white.png.import
│ │ │ ├── switch_off.png.import
│ │ │ └── switch_on.png.import
│ │ └── icon.png.import
│ ├── BrushStroke/
│ │ ├── BrushStroke.gd
│ │ ├── BrushStroke.tscn
│ │ ├── BrushStrokeOptimizer.gd
│ │ └── BrushStrokeTexture.gd
│ ├── Config.gd
│ ├── InfiniteCanvas/
│ │ ├── Cursor/
│ │ │ ├── BaseCursor.gd
│ │ │ ├── BrushCursor/
│ │ │ │ ├── BrushCursor.gd
│ │ │ │ └── BrushCursor.tscn
│ │ │ ├── SelectionCursor/
│ │ │ │ ├── SelectionCursor.gd
│ │ │ │ └── SelectionCursor.tscn
│ │ │ └── cursor.gdshader
│ │ ├── DebugDraw.gd
│ │ ├── InfiniteCanvas.gd
│ │ ├── InfiniteCanvas.tscn
│ │ ├── InfiniteCanvasGrid.gd
│ │ ├── PanZoomCamera.gd
│ │ ├── Tools/
│ │ │ ├── BrushTool.gd
│ │ │ ├── CanvasTool.gd
│ │ │ ├── CircleTool.gd
│ │ │ ├── EraserTool.gd
│ │ │ ├── LineTool.gd
│ │ │ ├── RectangleTool.gd
│ │ │ ├── SelectionRectangle.gd
│ │ │ ├── SelectionTool.gd
│ │ │ └── selection_rectangle.gdshader
│ │ ├── constant_pressure_curve.tres
│ │ └── default_pressure_curve.tres
│ ├── Main.gd
│ ├── Main.tscn
│ ├── Misc/
│ │ ├── GlobalSignals.gd
│ │ ├── I18nParser.gd
│ │ ├── KeybindingsManager.gd
│ │ ├── Player/
│ │ │ ├── Player.gd
│ │ │ └── Player.tscn
│ │ ├── Settings.gd
│ │ ├── StatePersistence.gd
│ │ ├── SvgExporter.gd
│ │ ├── Types.gd
│ │ └── Utils.gd
│ ├── Palette/
│ │ ├── Palette.gd
│ │ ├── PaletteManager.gd
│ │ └── default_palette.tres
│ ├── ProjectManager/
│ │ ├── Project.gd
│ │ ├── ProjectManager.gd
│ │ ├── ProjectMetadata.gd
│ │ └── Serializer.gd
│ ├── UI/
│ │ ├── ColorPalettePicker.gd
│ │ ├── ColorPalettePicker.tscn
│ │ ├── Components/
│ │ │ ├── FlatTextureButton.gd
│ │ │ ├── KeybindItem.gd
│ │ │ ├── KeybindItem.tscn
│ │ │ ├── PaletteButton.gd
│ │ │ └── PaletteButton.tscn
│ │ ├── Dialogs/
│ │ │ ├── AboutDialog.gd
│ │ │ ├── AboutDialog.tscn
│ │ │ ├── AddKeyDialog.tscn
│ │ │ ├── AlertDialog.gd
│ │ │ ├── AlertDialog.tscn
│ │ │ ├── DeletePaletteDialog.gd
│ │ │ ├── DeletePaletteDialog.tscn
│ │ │ ├── EditPaletteDialog.gd
│ │ │ ├── EditPaletteDialog.tscn
│ │ │ ├── ExitDialog.tscn
│ │ │ ├── NewPaletteDialog.gd
│ │ │ ├── NewPaletteDialog.tscn
│ │ │ ├── SettingsDialog.gd
│ │ │ ├── SettingsDialog.tscn
│ │ │ ├── UnsavedChangesDialog.gd
│ │ │ └── UnsavedChangesDialog.tscn
│ │ ├── MainMenu.gd
│ │ ├── MainMenu.tscn
│ │ ├── Menubar.gd
│ │ ├── Menubar.tscn
│ │ ├── Statusbar.gd
│ │ ├── Statusbar.tscn
│ │ ├── Themes/
│ │ │ ├── dark/
│ │ │ │ ├── tab_active.tres
│ │ │ │ ├── tab_inactive.tres
│ │ │ │ ├── theme.tres
│ │ │ │ └── toolbar.tres
│ │ │ └── light/
│ │ │ ├── tab_active.tres
│ │ │ ├── tab_inactive.tres
│ │ │ ├── theme.tres
│ │ │ └── toolbar.tres
│ │ ├── Toolbar.gd
│ │ └── Toolbar.tscn
│ ├── export_presets.cfg
│ └── project.godot
└── public/
└── linux/
├── com.github.mbrlabs.Lorien.desktop
├── com.github.mbrlabs.Lorien.metainfo.xml
└── x-lorien-canvas.mimetype.xml
================================================
FILE CONTENTS
================================================
================================================
FILE: .github/FUNDING.yml
================================================
ko_fi: mbrlabs
custom: https://www.paypal.me/mbrlabs
================================================
FILE: .github/ISSUE_TEMPLATE/bug_report.md
================================================
---
name: Bug report
about: Report a bug in Lorien
title: ''
labels: bug
assignees: ''
---
<!-- Please search existing issues for potential duplicates before filing yours:
https://github.com/mbrlabs/lorien/issues?q=is%3Aissue
-->
**Lorien version:**
<!-- Specify commit hash if using a non-official build. -->
**OS/device including version:**
<!-- Specify GPU model and drivers if graphics-related. -->
**Issue description:**
<!-- What happened, and what was expected. -->
**Steps to reproduce:**
================================================
FILE: .github/ISSUE_TEMPLATE/feature_request.md
================================================
---
name: Feature/enhancement request
about: Request a new feature or enhancement in Lorien
title: ''
labels: enhancement
assignees: ''
---
<!-- Please search existing issues for potential duplicates before filing yours:
https://github.com/mbrlabs/lorien/issues?q=is%3Aissue
-->
**Feature/enhancement description:**
<!-- Describe the user-visible benefits if this feature is implemented. -->
================================================
FILE: .github/workflows/build.yml
================================================
name: "build"
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
env:
GODOT_VERSION: 4.3
EXPORT_NAME: Lorien
LORIEN_VERSION: v0.7.0-dev
jobs:
windows-export:
name: Windows Export
runs-on: ubuntu-latest
container:
image: docker://barichello/godot-ci:4.3
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup
run: |
mkdir -v -p build/${EXPORT_NAME}_${LORIEN_VERSION}_Windows
mkdir -v -p ~/.local/share/godot/export_templates
mv /root/.local/share/godot/export_templates/${GODOT_VERSION}.stable ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable
- name: Build
run: |
cd lorien
godot --headless -v --export-release "Windows Desktop" ../build/${EXPORT_NAME}_${LORIEN_VERSION}_Windows/${EXPORT_NAME}_${LORIEN_VERSION}.exe
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: Lorien Windows
path: build/${{ env.EXPORT_NAME }}_${{ env.LORIEN_VERSION }}_Windows
retention-days: 14
linux-export:
name: Linux Export
runs-on: ubuntu-latest
container:
image: docker://barichello/godot-ci:4.3
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup
run: |
mkdir -v -p build/${EXPORT_NAME}_${LORIEN_VERSION}_Linux
mkdir -v -p ~/.local/share/godot/export_templates
mv /root/.local/share/godot/export_templates/${GODOT_VERSION}.stable ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable
- name: Build
run: |
cd lorien
godot --headless -v --export-release "Linux" ../build/${EXPORT_NAME}_${LORIEN_VERSION}_Linux/${EXPORT_NAME}_${LORIEN_VERSION}.x86_64
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: Lorien Linux
path: build/${{ env.EXPORT_NAME }}_${{ env.LORIEN_VERSION }}_Linux
retention-days: 14
mac-export:
name: Mac Export
runs-on: ubuntu-latest
container:
image: docker://barichello/godot-ci:4.3
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup
run: |
mkdir -v -p build/${EXPORT_NAME}_${LORIEN_VERSION}_Mac
mkdir -v -p ~/.local/share/godot/export_templates
mv /root/.local/share/godot/export_templates/${GODOT_VERSION}.stable ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable
- name: Build
run: |
cd lorien
godot --headless -v --export-release "macOS" ../build/${EXPORT_NAME}_${LORIEN_VERSION}_Mac/${EXPORT_NAME}_${LORIEN_VERSION}.zip
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: Lorien Mac
path: build/${{ env.EXPORT_NAME }}_${{ env.LORIEN_VERSION }}_Mac
retention-days: 14
================================================
FILE: .gitignore
================================================
# Godot-specific ignores
.import/
.godot/
# Mono-specific ignores
.mono/
data_*/
# Visual Studio Code-specific ignores
.vscode/
================================================
FILE: LICENSE
================================================
MIT License
Copyright (c) 2021-2025 Marcus Brummer
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
================================================
FILE: README.md
================================================
<img src="https://raw.githubusercontent.com/mbrlabs/Lorien/main/images/lorien.png" align="left"/>
# Lorien
<p>
<a href="https://github.com/mbrlabs/Lorien/actions">
<img src="https://github.com/mbrlabs/Lorien/workflows/build/badge.svg" alt="Build Passing" />
</a>
<a href="https://github.com/mbrlabs/Lorien/blob/main/LICENSE">
<img src="https://img.shields.io/github/license/mbrlabs/Lorien.svg" alt="License" />
</a>
</p>
Lorien is an **infinite canvas drawing/note-taking app that is focused on performance, small savefiles and simplicity**. It's not based on bitmap images like Krita, Gimp or Photoshop; it rather saves brush strokes as a collection of points and renders them at runtime (kind of like SVG). It's primarily designed to be used as a digital notebook and as brainstorming tool. While it can totally be used to make small sketches and diagrams, it is not meant to replace traditional art programs that operate on bitmap images. It is entirely written in the [Godot Game Engine](https://godotengine.org/). For an overview on how to use Lorien have a look [at the manual](docs/manuals/manual_v0.6.0.md).

⚠ **This is very much a WIP and still a bit rough around the edges** ⚠. The savefile format *might* also change in the future. Contributions (be it bug reports, code, art or [translations](docs/i18n.md)) are very welcome.
## Features as of v0.7.0-dev:
- Infinite canvas
- Infinite undo/redo
- (Almost) Infinite zoom
- Infinite grid
- Zen mode (toggles the UI on/off)
- Extremely small savefiles ([File format specs](docs/file_format.md))
- Work on multiple documents simultaneously
- [Tools](docs/manuals/manual_v0.7.0.md): Freehand brush, eraser, line tool, rectangle tool, circle/ellipse tool, selection tool
- Move and delete selected brush strokes
- SVG export
- Rebindable keyboard shortcuts
- Built-in and custom color palettes
- Designed to be used with a drawing tablet (Wacom, etc.). It also supports pressure sensitivity
- A little Surprise Mechanic™ when pressing F12
- Runs on Windows, Linux & macOS
- Localizations: German, English, Spanish, French, Italian, Korean, Brasilian Portuguese, Russian, Turkish, Ukrainian, Chinese
## Download
You can download the latest stable releases on [Github](https://github.com/mbrlabs/Lorien/releases).
If you want to check out the bleeding edge main branch without building the project yourself you can also check out the [CI builds](https://github.com/mbrlabs/Lorien/actions). But make sure to backup your files and be prepared for bugs if you do that.
## More information
- [Contributing Guide](docs/contributing.md)
- [Localization](docs/i18n.md)
- [Changelog](docs/changelog.md)
- [Roadmap](docs/roadmap.md)
## Credits
- Brush stroke antialiasing: [godot-antialiased-line2d](https://github.com/godot-extended-libraries/godot-antialiased-line2d)
- Icons used for the UI: [Remix Icon](https://remixicon.com/)
- Blurred background image of demo screenshot: https://unsplash.com/photos/nO0V_T0g2fM
================================================
FILE: docs/changelog.md
================================================
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
## [0.7.0]
### Breaking Changes
- The keybindings format is different, so you will need to update them again in case you changed them
### Added
- Brush stroke stabilizer/smoothing
- Adaptive frame rate for reduced GPU/CPU load when the user is idle
- Velocity based line thickness (in addition to pen pressure)
- File tabs are now responsive and can be scrolled when not enough screen width is availble
- File tabs can be moved via drag and drop
- Native file dialogs
- Option to change the internally used drawing tablet driver in the settings
- Setting to disable pressure sensitivity and always draw with a constant brush width
- Quit shortcut (`CTRL+Q` by default)
- Alternative way to pan the canvas by holding `SPACE` and moving the mouse
- The rectangle tool will now draw a perfect square while holding `SHIFT`
- Translations: Ukrainian, Arabic
### Fixed
- Fixed SVG export for brush strokes that have been moved using the move tool
- Made zooming to the mouse cursor in the canvas more accurate
- Made it easier to delete single dots with the eraser tool
### Changed
- Migrated from Godot 3.5.3 to Godot 4.3
- Improved stability and quality of the brush tool
- UI overhaul
- Decreased max line thickness from 50 to 32
- Improved icon resolution on Windows
- Disabled all audio functionality inherited from Godot
## [0.6.0] - 2023-11-06
It's been a while - but here is a another release! Special thanks goes to [@MrApplejuice](https://github.com/MrApplejuice) for adding support for rebindable keyboard shortcuts and [@hansemro](https://github.com/hansemro) for enabling the eraser mode when the pen is inverted!
This will be the last "major" version using Godot 3. After this release i will start porting Lorien to Godot 4.
### Added
- Rebindable keyboard shortcuts
- Use eraser tool while tablet pen is inverted
- Dotted grid pattern; can be changed back to lines (or none at all) in the settings
- Translations: Simplified Chinese, Traditional Chinese
### Fixed
- Fixed blurry interface on some macOS devices
- Fixed invisible cursor in some situations
- Fixed issue where moved brush strokes stayed in their original positions after exporting to SVG
- Fixed not being able to draw simple dots by just clicking/tapping the brush once
### Changed
- Changing the application language does not require a restart now
- Improved translations: Spanish, Brasilian Portuguese
- Improved UI auto scaling, especially for Windows and OSX
- Moved to grid toggle button from the toolbar to the settings
- Removed the canvas background color from the toolbar and moved it to Settings > Canvas Color. The previous setting (Appearance > Default canvas color was removed)
- `.lorien` files do no longer store the canvas background color
- Updated to Godot 3.5.3
## [0.5.0] - 2022-06-12
### Breaking Changes
Version `v0.5` of Lorien features a new SuperEraser, which erases brush strokes as soon as it inserects with them. The previous implementation just painted over new brush strokes, which always had the same color as the background - giving you the illusion of a traditional eraser like in bitmap-based programs (Gimp, Photoshop, etc.). The old implementation has been completely removed in favor of the SuperEraser.
The savefile format did not change. However previously made eraser-strokes will be skipped when loading `.lorien` files. Moreover when saving these files, the eraser-strokes will be permanently lost.
If you rely on these eraser-strokes: DO NOT UPDATE to this version or BACKUP you `.lorien` files before opening them in the new version.
### Added
- Zooming with CTRL+MMB
- Automatically remembering and auto-opening .lorien files upon exit & launch
- Fullscreen support
- Basic SVG exporter
- Circle/Ellipse tool
- New eraser tool behaviour (SuperEraser): intersecting a brush stroke with the eraser brush removes the entiry brush stroke
- The window size will be saved and restored across program restarts
- Center the canvas based on current mouse position (shortcut: `SPACE`)
- UI scaling for high-dpi monitors
- Toolbar can be scrolled through when the entire toolbar cannot be shown
- Changing the brush color while having strokes actively selected changes the color of these strokes
- Translations: Turkish, Brazilian Portuguese
### Fixed
- Fixed misplaced color picker after window resize
- Fixed keyboard shortcuts for MacOS
### Changed
- Updated to Godot 3.4.4
- Enabled low-energy mode
- Improved brush stroke antialiasing
- Improved selection tool performance on large documents
- Removed old fake-eraser in favor of new SuperEraser
- Removed rudimentary png export in favor of the new SVG exporter
- Made the brush stroke optimizer less aggresive, which results in smoother lines at the expense of slightly bigger savefiles
- Increased the default pressure sensitvity from 1.0 to 1.5
- Lowered minimum window size
- Default to rounded brush stoke caps
## [0.4.0] - 2021-10-10
### Added
- Distraction free mode which hides the UI. Can be toggled with TAB
- Color palettes: You can use the built-in palette or create custom palettes yourself
- Easteregg: Pressing F12 spwans a playable character who can walk on the drawn lines
- Rectangle tool: Easily draw rectangular shapes
- Translations: Korean, French
### Fixed
- Issue where the the mouse cursor vanished when switching from annother program to Lorien while a dialog was open
- Some UI elements were not hooked up to the localization system
### Changed
- Updated to Godot 3.3.4
- Lines created with the line tool are now subdivided (more points between start and end point) so that it's easier to select them
- Removed the color picker tool in favour of the new palette system
- Removed the default brush color setting in favour of the new palette system
- UI: subtle rounded corners for most elements
- UI: replaced some default Godot icons with custom versions
- UI: General polish
## [0.3.0] - 2021-07-23
### Added
- Infinite grid
- Copy-Paste selected brush strokes with CTRL+C/CTRL+V or duplicate in one step with CTRL+D
- The selection tool can now also deselect seperate brush strokes by holding down shift
- "Save as" functionality to save a file as a new file with a new file name, while keeping the original
- Implemented "Open" and "Save" functionality in menu
- Translations: Spanish, Russian
- Open files via drag'n drop from the filesystem
- Open files via cli arguments and "Open with.." functionality on Windows
- Option to set foreground and backgound FPS in the settings menu
- Option to set the line cap in settings menu (flat & round)
- Option to change the pressure sensitivity by a fixed multilpier
### Fixed
- Fixed camera position & zoom getting reset when switching between tabs
- Fixed an issue where a brush stroke disappeared if it got too long (See: [#26](https://github.com/mbrlabs/Lorien/issues/26))
- Use default canvas color from settings for newly opened tabs
- Fixed wrong pen pressure display in status bar
- Wrong scaling of cursors when switching between files
- Fixed issue where the brush tool won't activate when switching from annother program to the unfocused Lorien window
### Changed
- Disabled VSync and set the fixed target FPS to 144, which results in much smoother brush strokes and a better feeling on low Hz monitors
- Lower the FPS to 10 if the window is unfocused to reduce the CPU/GPU load and save energy
- Improved camera zoom
- Switched to GLES3 backend
- Removed unimplemented color-preset ui-elements from colorpickers
- Introduced a minimum window size so it can't be resized to 0 anymore
- The selection tool now selects any brush stroke when at least one stroke point is inside the selection rectangle
## [0.2.0] - 2021-06-03
### Added
- Mention contributors in the About Dialog
- Improved closing of files with unsaved changes
- Export the whole canvas as PNG image
- Implemented the color picker tool, which let's you pick any color on the canvas
- Selection tool
- Ability to move selected brush strokes
- Ability to delete selected brush strokes with delete key
- Added an option to switch between languages: English, German and Italian
- Line Tool: snap in 15° steps when holding down shift
### Fixed
- Fixed the size of the drawing area/viewport for [high resolution displays](https://github.com/mbrlabs/Lorien/issues/1)
- Fixed some memory leaks
- Various smaller fixes
### Changed
- Switched to GLES2 for better compability with older hardware
- Improved tooltip styling
## [0.1.0] - 2021-05-23
### Added
- Infinite canvas
- Infinite undo/redo
- (Almost) Infinite zoom
- Extremely small savefiles
- Work on multiple documents simultaneously
- Tools: Freehand brush, eraser, line tool
- You can choose different colors for brush strokes and the canvas background via an easy to use color picker
- Designed to be used with a drawing tablet (Wacom, etc.). It also supports pressure sensitivity
- Runs on Windows, Linux & Mac
[0.6.0]: https://github.com/mbrlabs/lorien/compare/v0.5.0...v0.6.0
[0.5.0]: https://github.com/mbrlabs/lorien/compare/v0.4.0...v0.5.0
[0.4.0]: https://github.com/mbrlabs/lorien/compare/v0.3.0...v0.4.0
[0.3.0]: https://github.com/mbrlabs/lorien/compare/v0.2.0...v0.3.0
[0.2.0]: https://github.com/mbrlabs/lorien/compare/v0.1.0...v0.2.0
[0.1.0]: https://github.com/mbrlabs/lorien/releases/tag/v0.1.0
================================================
FILE: docs/contributing.md
================================================
# How to contribute
## General
This guide is loosly based on [Godot's contributing guidelines](https://github.com/godotengine/godot/blob/master/CONTRIBUTING.md):
- We use Godot 4.3-stable
- If you want to implement a big feature, open an issue or a [Github discussion](https://github.com/mbrlabs/Lorien/discussions) so we can talk about it first
- Format your commit messages with readability in mind
## Codestyle
- Adapt to the project's coding style
- Use C-style logical operators: `&&`, `||`, `!` instead of `and`, `or`, `not`
- Use function separators (see any `.gd` file in this repository for examples)
- Always use static typing
================================================
FILE: docs/file_format.md
================================================
# File Format
TODO because not final.
See: https://github.com/mbrlabs/Lorien/blob/main/lorien/ProjectManager/Serializer.gd
================================================
FILE: docs/i18n.md
================================================
# Localization
### How Lorien handles localization
Godot has two ways to handle multiple languages right now:
- Putting all translations into one CSV file
- Gettext (.po files)
The CSV file way of doing things is fine if you work alone, but once you have multiple people working on translations you will get lot's of merge conflicts.
Gettext is more powerful and splits translations into seperate files, but i don't like the format.
However, you can add translations in code by using the TranslationServer. My localization files are simple `.txt` files. This makes translating strings really easy. The file format is very straight forward: One translation per line; then a key followed by the translation (sperated by at least one whitespace). The first key **must be** `LANGUAGE_NAME` followed by the language's name (in that same language, not in english). Here is an example for `English`:
`en.txt`:
```
LANGUAGE_NAME English
GREETING Hello World!
SAVE Save
# This is a comment
SAVE_AS Save as.. # This is also a comment
TOOL_BRUSH Brush Tool
```
### How to add new translations
If you want to add more translations all you need to do is:
- Create a new translation file in `Assets/i18n/` using an external text editor
- That's it. The `.txt` file will be loaded automatically.
================================================
FILE: docs/manuals/manual_v0.1.0.md
================================================
# Lorien Manual v0.1.0
Drawing tablets are supported and recommended, but you can also just use Keyboard+Mouse.
## Basic Usage
- Draw with the left mouse button or with your drawing tablet's pen
- Pan/drag across the canvas with the middle mouse button (i recommend to map a button on your pen to the middle mouse button for easy navigation)
- Zoom with mouse wheel
## Keyboard shortcuts
- <kbd>Ctrl</kbd> + <kbd>S</kbd>: Saves the current file
- <kbd>Ctrl</kbd> + <kbd>N</kbd>: Open a new file
- <kbd>Ctrl</kbd> + <kbd>O</kbd>: Open a new empty tab
- <kbd>Ctrl</kbd> + <kbd>Z</kbd>: Undo a brush stroke
- <kbd>Ctrl</kbd> + <kbd>Y</kbd>: Redo a brush stroke
- <kbd>B</kbd>: Brush tool
- <kbd>E</kbd>: Eraser tool
- <kbd>L</kbd>: Line tool
- <kbd>C</kbd>: Color picker tool
================================================
FILE: docs/manuals/manual_v0.2.0.md
================================================
# Lorien Manual v0.2.0
Drawing tablets are supported and recommended, but you can also just use Keyboard+Mouse.
## Basic Usage
- Draw with the left mouse button (<kbd>LMB</kbd>) or with your drawing tablet's pen
- Pan/drag across the canvas with the middle mouse button (i recommend to map a button on your pen to the middle mouse button for easy navigation)
- Zoom with mouse wheel
## Selection Tool
- With the Selection tool you can select a number of brush strokes by dragging across the screen with your <kbd>LMB</kbd> pressed. Brush strokes which are considered inside the selection recatangle will be added to the current selection. You can add more strokes to your current selection by holding down <kbd>Shift</kbd> while dragging.
- You can deselect your current selection by pressing <kbd>RMB</kbd> or <kbd>Esc</kbd>.
- To move the selected strokes simply drag them while holding down <kbd>LMB</kbd>. If you did not move your mouse while pressing <kbd>LMB</kbd>, everything will be deselected automatically.
- Press <kbd>Delete</kbd> to delete the current selection
## Line Tool
- You can hold down <kbd>Shift</kbd> while using the line tool to snap the line in 15° increments
## Keyboard shortcuts
- <kbd>Ctrl</kbd> + <kbd>S</kbd>: Saves the current file
- <kbd>Ctrl</kbd> + <kbd>N</kbd>: Open a new file
- <kbd>Ctrl</kbd> + <kbd>O</kbd>: Open a new empty tab
- <kbd>Ctrl</kbd> + <kbd>Z</kbd>: Undo a brush stroke
- <kbd>Ctrl</kbd> + <kbd>Y</kbd>: Redo a brush stroke
- <kbd>B</kbd>: Brush tool
- <kbd>E</kbd>: Eraser tool
- <kbd>L</kbd>: Line tool
- <kbd>C</kbd>: Color picker tool
- <kbd>S</kbd>: Selection tool
- <kbd>Esc</kbd> or <kbd>RMB</kbd>: Deselect everything
- <kbd>Delete</kbd>: Deletes selected brush strokes
================================================
FILE: docs/manuals/manual_v0.3.0.md
================================================
# Lorien Manual v0.3.0
Drawing tablets are supported and recommended, but you can also just use Keyboard+Mouse.
## Basic Usage
- Draw with the left mouse button (<kbd>LMB</kbd>) or with your drawing tablet's pen
- Pan/drag across the canvas with the middle mouse button (I recommend to map a button on your pen to the middle mouse button for easy navigation)
- Zoom with mouse wheel
- You can open files by dragging them into the window or by opening it via the menu (Shortcut <kbd>CTRL</kbd> + <kbd>O</kbd>)
## Selection Tool
- With the Selection tool you can select a number of brush strokes by dragging across the screen with your <kbd>LMB</kbd> pressed. Brush strokes which are considered inside the selection recatangle will be added to the current selection. You can add more strokes to your current selection by holding down <kbd>Shift</kbd> while dragging.
- You can deselect your current selection by pressing <kbd>RMB</kbd> or <kbd>Esc</kbd>.
- To move the selected strokes simply drag them while holding down <kbd>LMB</kbd>. If you did not move your mouse while pressing <kbd>LMB</kbd>, everything will be deselected automatically.
- Press <kbd>Delete</kbd> to delete the current selection
- Press <kbd>CTRL</kbd> + <kbd>C</kbd> to copy the current selection
- Press <kbd>CTRL</kbd> + <kbd>V</kbd> to paste the copied brush strokes
- Press <kbd>CTRL</kbd> + <kbd>D</kbd> to duplicate the current selection
## Line Tool
- You can hold down <kbd>Shift</kbd> while using the line tool to snap the line in 15° increments
## Keyboard shortcuts
- <kbd>Ctrl</kbd> + <kbd>S</kbd>: Saves the current file
- <kbd>Ctrl</kbd> + <kbd>N</kbd>: Open a new file
- <kbd>Ctrl</kbd> + <kbd>O</kbd>: Open a new empty tab
- <kbd>Ctrl</kbd> + <kbd>Z</kbd>: Undo a brush stroke
- <kbd>Ctrl</kbd> + <kbd>Y</kbd>: Redo a brush stroke
- <kbd>Ctrl</kbd> + <kbd>C</kbd>: Copy selected brush strokes
- <kbd>Ctrl</kbd> + <kbd>V</kbd>: Paste copied brush strokes
- <kbd>Ctrl</kbd> + <kbd>D</kbd>: Duplicate selected brush strokes
- <kbd>B</kbd>: Brush tool
- <kbd>E</kbd>: Eraser tool
- <kbd>L</kbd>: Line tool
- <kbd>C</kbd>: Color picker tool
- <kbd>S</kbd>: Selection tool
- <kbd>Esc</kbd> or <kbd>RMB</kbd>: Deselect everything
- <kbd>Delete</kbd>: Deletes selected brush strokes
================================================
FILE: docs/manuals/manual_v0.4.0.md
================================================
# Lorien Manual v0.4.0
Drawing tablets are supported and recommended, but you can also just use Keyboard+Mouse.
## Basic Usage
- Draw with the left mouse button (<kbd>LMB</kbd>) or with your drawing tablet's pen
- Pan/drag across the canvas with the middle mouse button (i recommend to map a button on your pen to the middle mouse button for easy navigation)
- Zoom with mouse wheel
- You can open files by dragging them into the window or by opening it via the menu (Shortcut <kbd>CTRL</kbd> + <kbd>O</kbd>)
## Tools
Lorien provides you with different tools which you can find in the toolbar. If you want to enable a tool all you have to do is click on it or use the keyboard shortcut. If you hover over the icons you can also see a short description including the keyboard shortcut.
### Brush Tool
- The brush tool is selected by default. It allows you to freely draw on the canvas with your mouse or drawing tablet.
- You can change the brush size with the adjuster in the toolbar
- The brush color can be changed by clicking on the colored button in the toolbar next to the brush size adjuster
- It is pressure sensitve
### Rectangle Tool
- You can use the rectangle tool to create perfect (unfilled) rectagles
- Not pressure sensitive
### Line Tool
- Allows you to draw perfect lines
- You can hold down <kbd>Shift</kbd> while using the line tool to snap the line in 15° increments
- Not pressure sensitve
### Eraser Tool
- Allows you to erease any brush stroke
- Otherwise behaves like the brush tool
### Selection Tool
- With the Selection tool you can select a number of brush strokes by dragging across the screen with your <kbd>LMB</kbd> pressed. Brush strokes which are considered inside the selection recatangle will be added to the current selection. You can add more strokes to your current selection by holding down <kbd>Shift</kbd> while dragging.
- You can deselect your current selection by pressing <kbd>RMB</kbd> or <kbd>Esc</kbd>.
- To move the selected strokes simply drag them while holding down <kbd>LMB</kbd>. If you did not move your mouse while pressing <kbd>LMB</kbd>, everything will be deselected automatically.
- Press <kbd>Delete</kbd> to delete the current selection
- Press <kbd>CTRL</kbd> + <kbd>C</kbd> to copy the current selection
- Press <kbd>CTRL</kbd> + <kbd>V</kbd> to paste the copied brush strokes
- Press <kbd>CTRL</kbd> + <kbd>D</kbd> to duplicate the current selection
## Color Palettes
- Color palettes allow you to easily switch between different pre-defined colors. To open the pallete you have to click on the colored button in the toolbar next to the brush size adjsuter.
- You can add/edit/delete custom color palettes
- The default color palette can't be edited or deleted. If you want to customize it you can can make a copy of it and edit that instead.
## Keyboard shortcuts
- <kbd>Ctrl</kbd> + <kbd>S</kbd>: Saves the current file
- <kbd>Ctrl</kbd> + <kbd>N</kbd>: Open a new file
- <kbd>Ctrl</kbd> + <kbd>O</kbd>: Open a new empty tab
- <kbd>Ctrl</kbd> + <kbd>Z</kbd>: Undo a brush stroke
- <kbd>Ctrl</kbd> + <kbd>Y</kbd>: Redo a brush stroke
- <kbd>Ctrl</kbd> + <kbd>C</kbd>: Copy selected brush strokes
- <kbd>Ctrl</kbd> + <kbd>V</kbd>: Paste copied brush strokes
- <kbd>Ctrl</kbd> + <kbd>D</kbd>: Duplicate selected brush strokes
- <kbd>B</kbd>: Brush tool
- <kbd>R</kbd>: Rectangle tool
- <kbd>E</kbd>: Eraser tool
- <kbd>L</kbd>: Line tool
- <kbd>S</kbd>: Selection tool
- <kbd>Esc</kbd> or <kbd>RMB</kbd>: Deselect everything
- <kbd>Delete</kbd>: Deletes selected brush strokes
- <kbd>Tab</kbd>: enter/exit distraction free mode (no UI)
- <kbd>F12</kbd>: Spwans a playable character at the mouse position who can walk on the drawn lines (easteregg)
================================================
FILE: docs/manuals/manual_v0.5.0.md
================================================
# Lorien Manual v0.5.0
Drawing tablets are supported and recommended, but you can also just use Keyboard+Mouse.
## Basic Usage
- Draw with the left mouse button (<kbd>LMB</kbd>) or with your drawing tablet's pen
- Pan/drag across the canvas with the middle mouse button (i recommend to map a button on your pen to the middle mouse button for easy navigation)
- Zoom with the mouse wheel. You can also zoom while holding <kbd>CTRL</kbd> and the middle mouse button <kbd>MMB</kbd> while moving the mose up/down. This is especially useful when using a drawing tablet with a pen.
- You can open files by dragging them into the window or by opening it via the menu (Shortcut <kbd>CTRL</kbd> + <kbd>O</kbd>)
## Tools
Lorien provides you with different tools which you can find in the toolbar. If you want to enable a tool all you have to do is click on it or use the keyboard shortcut. If you hover over the icons you can also see a short description including the keyboard shortcut.
### Brush Tool
- The brush tool is selected by default. It allows you to freely draw on the canvas with your mouse or drawing tablet.
- You can change the brush size with the adjuster in the toolbar
- The brush color can be changed by clicking on the colored button in the toolbar next to the brush size adjuster
- It is pressure sensitve
### Rectangle Tool
- You can use the rectangle tool to create perfect (unfilled) rectagles
- Not pressure sensitive
### Line Tool
- Allows you to draw perfect lines
- You can hold down <kbd>Shift</kbd> while using the line tool to snap the line in 15° increments
- Not pressure sensitve
### Circle Tool
- Allows you to draw perfect ellipses and circles
- You can hold down <kbd>Shift</kbd> while using the circle tool to draw perfect circles. Otherwise it defaults to ellipses
- Not pressure sensitve
### Eraser Tool
- Allows you to erease brush strokes by drawing over it. Once the eraser intersects with a brush stroke, the whole brush stroke will be removed
- The brush size affects the area of effect
### Selection Tool
- With the Selection tool you can select a number of brush strokes by dragging across the screen with your <kbd>LMB</kbd> pressed. Brush strokes which are considered inside the selection recatangle will be added to the current selection. You can add more strokes to your current selection by holding down <kbd>Shift</kbd> while dragging.
- You can deselect your current selection by pressing <kbd>RMB</kbd> or <kbd>Esc</kbd>.
- To move the selected strokes simply drag them while holding down <kbd>LMB</kbd>. If you did not move your mouse while pressing <kbd>LMB</kbd>, everything will be deselected automatically.
- Press <kbd>Delete</kbd> to delete the current selection
- Press <kbd>CTRL</kbd> + <kbd>C</kbd> to copy the current selection
- Press <kbd>CTRL</kbd> + <kbd>V</kbd> to paste the copied brush strokes
- Press <kbd>CTRL</kbd> + <kbd>D</kbd> to duplicate the current selection
## Color Palettes
- Color palettes allow you to easily switch between different pre-defined colors. To open the pallete you have to click on the colored button in the toolbar next to the brush size adjsuter.
- You can add/edit/delete custom color palettes
- The default color palette can't be edited or deleted. If you want to customize it you can can make a copy of it and edit that instead.
## Keyboard shortcuts
- <kbd>Ctrl</kbd> + <kbd>S</kbd>: Saves the current file
- <kbd>Ctrl</kbd> + <kbd>N</kbd>: Open a new file
- <kbd>Ctrl</kbd> + <kbd>O</kbd>: Open a new empty tab
- <kbd>Ctrl</kbd> + <kbd>E</kbd>: Opens the SVG export dialog
- <kbd>Ctrl</kbd> + <kbd>Z</kbd>: Undo a brush stroke
- <kbd>Ctrl</kbd> + <kbd>Y</kbd>: Redo a brush stroke
- <kbd>Ctrl</kbd> + <kbd>C</kbd>: Copy selected brush strokes
- <kbd>Ctrl</kbd> + <kbd>V</kbd>: Paste copied brush strokes
- <kbd>Ctrl</kbd> + <kbd>D</kbd>: Duplicate selected brush strokes
- <kbd>SPACE</kbd>: Center the canvas based on current mouse position
- <kbd>B</kbd>: Brush tool
- <kbd>R</kbd>: Rectangle tool
- <kbd>E</kbd>: Eraser tool
- <kbd>L</kbd>: Line tool
- <kbd>C</kbd>: Circle tool
- <kbd>S</kbd>: Selection tool
- <kbd>Esc</kbd> or <kbd>RMB</kbd>: Deselect everything
- <kbd>Delete</kbd>: Deletes selected brush strokes
- <kbd>Tab</kbd>: enter/exit distraction free mode (no UI)
- <kbd>F12</kbd>: Spwans a playable character at the mouse position who can walk on the drawn lines (easteregg)
================================================
FILE: docs/manuals/manual_v0.6.0.md
================================================
# Lorien Manual v0.6.0
Drawing tablets are supported and recommended, but you can also just use Keyboard+Mouse.
## Basic Usage
- Draw with the left mouse button (<kbd>LMB</kbd>) or with your drawing tablet's pen
- Pan/drag across the canvas with the middle mouse button (i recommend to map a button on your pen to the middle mouse button for easy navigation)
- Zoom with the mouse wheel. You can also zoom while holding <kbd>CTRL</kbd> and the middle mouse button <kbd>MMB</kbd> while moving the mose up/down. This is especially useful when using a drawing tablet with a pen.
- You can open files by dragging them into the window or by opening it via the menu (Shortcut <kbd>CTRL</kbd> + <kbd>O</kbd>)
## Tools
Lorien provides you with different tools which you can find in the toolbar. If you want to enable a tool all you have to do is click on it or use the keyboard shortcut. If you hover over the icons you can also see a short description including the keyboard shortcut.
### Brush Tool
- The brush tool is selected by default. It allows you to freely draw on the canvas with your mouse or drawing tablet.
- You can change the brush size with the adjuster in the toolbar
- The brush color can be changed by clicking on the colored button in the toolbar next to the brush size adjuster
- It is pressure sensitve
### Rectangle Tool
- You can use the rectangle tool to create perfect (unfilled) rectagles
- Not pressure sensitive
### Line Tool
- Allows you to draw perfect lines
- You can hold down <kbd>Shift</kbd> while using the line tool to snap the line in 15° increments
- Not pressure sensitve
### Circle Tool
- Allows you to draw perfect ellipses and circles
- You can hold down <kbd>Shift</kbd> while using the circle tool to draw perfect circles. Otherwise it defaults to ellipses
- Not pressure sensitve
### Eraser Tool
- Allows you to erease brush strokes by drawing over it. Once the eraser intersects with a brush stroke, the whole brush stroke will be removed
- The brush size affects the area of effect
- When using a stylus/pen that supports erasing with the other side, Lorien automatically switches into the eraser mode
### Selection Tool
- With the Selection tool you can select a number of brush strokes by dragging across the screen with your <kbd>LMB</kbd> pressed. Brush strokes which are considered inside the selection recatangle will be added to the current selection. You can add more strokes to your current selection by holding down <kbd>Shift</kbd> while dragging.
- You can deselect your current selection by pressing <kbd>RMB</kbd> or <kbd>Esc</kbd>.
- To move the selected strokes simply drag them while holding down <kbd>LMB</kbd>. If you did not move your mouse while pressing <kbd>LMB</kbd>, everything will be deselected automatically.
- Press <kbd>Delete</kbd> to delete the current selection
- Press <kbd>CTRL</kbd> + <kbd>C</kbd> to copy the current selection
- Press <kbd>CTRL</kbd> + <kbd>V</kbd> to paste the copied brush strokes
- Press <kbd>CTRL</kbd> + <kbd>D</kbd> to duplicate the current selection
## Color Palettes
- Color palettes allow you to easily switch between different pre-defined colors. To open the pallete you have to click on the colored button in the toolbar next to the brush size adjsuter.
- You can add/edit/delete custom color palettes
- The default color palette can't be edited or deleted. If you want to customize it you can can make a copy of it and edit that instead.
## Keyboard shortcuts
- <kbd>Ctrl</kbd> + <kbd>S</kbd>: Saves the current file
- <kbd>Ctrl</kbd> + <kbd>N</kbd>: Open a new file
- <kbd>Ctrl</kbd> + <kbd>O</kbd>: Open a new empty tab
- <kbd>Ctrl</kbd> + <kbd>E</kbd>: Opens the SVG export dialog
- <kbd>Ctrl</kbd> + <kbd>Z</kbd>: Undo a brush stroke
- <kbd>Ctrl</kbd> + <kbd>Y</kbd>: Redo a brush stroke
- <kbd>Ctrl</kbd> + <kbd>C</kbd>: Copy selected brush strokes
- <kbd>Ctrl</kbd> + <kbd>V</kbd>: Paste copied brush strokes
- <kbd>Ctrl</kbd> + <kbd>D</kbd>: Duplicate selected brush strokes
- <kbd>SPACE</kbd>: Center the canvas based on current mouse position
- <kbd>B</kbd>: Brush tool
- <kbd>R</kbd>: Rectangle tool
- <kbd>E</kbd>: Eraser tool
- <kbd>L</kbd>: Line tool
- <kbd>C</kbd>: Circle tool
- <kbd>S</kbd>: Selection tool
- <kbd>Esc</kbd> or <kbd>RMB</kbd>: Deselect everything
- <kbd>Delete</kbd>: Deletes selected brush strokes
- <kbd>Tab</kbd>: enter/exit distraction free mode (no UI)
- <kbd>F12</kbd>: Spwans a playable character at the mouse position who can walk on the drawn lines (easteregg)
================================================
FILE: docs/manuals/manual_v0.7.0.md
================================================
# Lorien Manual v0.7.0
Drawing tablets are supported and recommended, but you can also just use Keyboard+Mouse.
## Basic Usage
- Draw with the left mouse button (<kbd>LMB</kbd>) or with your drawing tablet's pen
- Pan/drag across the canvas with the middle mouse button (i recommend to map a button on your pen to the middle mouse button for easy navigation)
- Zoom with the mouse wheel. You can also zoom while holding <kbd>CTRL</kbd> and the middle mouse button <kbd>MMB</kbd> while moving the mose up/down. This is especially useful when using a drawing tablet with a pen.
- You can open files by dragging them into the window or by opening it via the menu (Shortcut <kbd>CTRL</kbd> + <kbd>O</kbd>)
## Tools
Lorien provides you with different tools which you can find in the toolbar. If you want to enable a tool all you have to do is click on it or use the keyboard shortcut. If you hover over the icons you can also see a short description including the keyboard shortcut.
### Brush Tool
- The brush tool is selected by default. It allows you to freely draw on the canvas with your mouse or drawing tablet.
- You can change the brush size with the adjuster in the toolbar
- The brush color can be changed by clicking on the colored button in the toolbar next to the brush size adjuster
- It is pressure sensitve
### Rectangle Tool
- You can use the rectangle tool to create perfect (unfilled) rectagles
- Not pressure sensitive
### Line Tool
- Allows you to draw perfect lines
- You can hold down <kbd>Shift</kbd> while using the line tool to snap the line in 15° increments
- Not pressure sensitve
### Circle Tool
- Allows you to draw perfect ellipses and circles
- You can hold down <kbd>Shift</kbd> while using the circle tool to draw perfect circles. Otherwise it defaults to ellipses
- Not pressure sensitve
### Eraser Tool
- Allows you to erease brush strokes by drawing over it. Once the eraser intersects with a brush stroke, the whole brush stroke will be removed
- The brush size affects the area of effect
- When using a stylus/pen that supports erasing with the other side, Lorien automatically switches into the eraser mode
### Selection Tool
- With the Selection tool you can select a number of brush strokes by dragging across the screen with your <kbd>LMB</kbd> pressed. Brush strokes which are considered inside the selection recatangle will be added to the current selection. You can add more strokes to your current selection by holding down <kbd>Shift</kbd> while dragging.
- You can deselect your current selection by pressing <kbd>RMB</kbd> or <kbd>Esc</kbd>.
- To move the selected strokes simply drag them while holding down <kbd>LMB</kbd>. If you did not move your mouse while pressing <kbd>LMB</kbd>, everything will be deselected automatically.
- Press <kbd>Delete</kbd> to delete the current selection
- Press <kbd>CTRL</kbd> + <kbd>C</kbd> to copy the current selection
- Press <kbd>CTRL</kbd> + <kbd>V</kbd> to paste the copied brush strokes
- Press <kbd>CTRL</kbd> + <kbd>D</kbd> to duplicate the current selection
## Color Palettes
- Color palettes allow you to easily switch between different pre-defined colors. To open the pallete you have to click on the colored button in the toolbar next to the brush size adjsuter.
- You can add/edit/delete custom color palettes
- The default color palette can't be edited or deleted. If you want to customize it you can can make a copy of it and edit that instead.
## Keyboard shortcuts
- <kbd>Ctrl</kbd> + <kbd>S</kbd>: Saves the current file
- <kbd>Ctrl</kbd> + <kbd>N</kbd>: Open a new file
- <kbd>Ctrl</kbd> + <kbd>O</kbd>: Open a new empty tab
- <kbd>Ctrl</kbd> + <kbd>E</kbd>: Opens the SVG export dialog
- <kbd>Ctrl</kbd> + <kbd>Z</kbd>: Undo a brush stroke
- <kbd>Ctrl</kbd> + <kbd>Y</kbd>: Redo a brush stroke
- <kbd>Ctrl</kbd> + <kbd>C</kbd>: Copy selected brush strokes
- <kbd>Ctrl</kbd> + <kbd>V</kbd>: Paste copied brush strokes
- <kbd>Ctrl</kbd> + <kbd>D</kbd>: Duplicate selected brush strokes
- <kbd>B</kbd>: Brush tool
- <kbd>R</kbd>: Rectangle tool
- <kbd>E</kbd>: Eraser tool
- <kbd>L</kbd>: Line tool
- <kbd>C</kbd>: Circle tool
- <kbd>S</kbd>: Selection tool
- <kbd>Esc</kbd> or <kbd>RMB</kbd>: Deselect everything
- <kbd>Delete</kbd>: Deletes selected brush strokes
- <kbd>Tab</kbd>: Toggle zen mode (no UI)
- <kbd>F12</kbd>: Easteregg: spwans a playable character at the mouse position who can walk/jump/crouch on brush strokes.
================================================
FILE: docs/roadmap.md
================================================
# Roadmap
The old roadmap is for the most part implemented or obsolete.
So this needs to be updated at some point :)
================================================
FILE: lorien/Assets/Cursors/move_cursor.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cynvq1tyvqx67"
path="res://.godot/imported/move_cursor.png-443b66feec64cf631c7817838e2e4aaa.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Cursors/move_cursor.png"
dest_files=["res://.godot/imported/move_cursor.png-443b66feec64cf631c7817838e2e4aaa.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/I18n/ar.txt
================================================
LANGUAGE_NAME العربية
# -----------------------------------------------------------------------------
# Menu strings
# -----------------------------------------------------------------------------
MENU_OPEN فتح
MENU_SAVE حفظ
MENU_SAVE_AS حفظ باسم
MENU_SETTINGS إعدادات
MENU_MANUAL الدليل
MENU_BUG_TRACKER مراقب الأخطاء
MENU_ABOUT حول
MENU_EXPORT إخراج
MENU_QUIT Quit # TODO
# -----------------------------------------------------------------------------
# Toolbar
# -----------------------------------------------------------------------------
TOOLBAR_TOOLTIP_NEW_FILE إنشاء ملف جديد
TOOLBAR_TOOLTIP_OPEN_FILE فتح ملف
TOOLBAR_TOOLTIP_SAVE_FILE حفظ ملف
TOOLBAR_TOOLTIP_UNDO تراجع عن الإجراء
TOOLBAR_TOOLTIP_REDO إعادة الإجراء
TOOLBAR_TOOLTIP_BRUSH_TOOL الفرشاة
TOOLBAR_TOOLTIP_RECTANGLE_TOOL المستطيل
TOOLBAR_TOOLTIP_CIRCLE_TOOL الدائرة
TOOLBAR_TOOLTIP_LINE_TOOL سطر
TOOLBAR_TOOLTIP_ERASER_TOOL ممحاة
TOOLBAR_TOOLTIP_BRUSH_COLOR لون الفرشاة
TOOLBAR_TOOLTIP_BRUSH_SIZE مقاس الفرشاة
TOOLBAR_TOOLTIP_CANVAS_COLOR لون اللوحة
TOOLBAR_FULLSCREEN_TOGGLE تبديل ملء الشاشة
# -----------------------------------------------------------------------------
# Color Palette Picker
# -----------------------------------------------------------------------------
COLOR_PALETTE_PICKER_HINT_NEW إنشاء لوح ألوان جديد
COLOR_PALETTE_PICKER_HINT_EDIT تعديل لوح الألوان الحالي
COLOR_PALETTE_PICKER_HINT_DUPLICATE كرر لوح الألوان الحالي
COLOR_PALETTE_PICKER_HINT_DELETE حذف لوح الألوان الحالي نهائيًا
# -----------------------------------------------------------------------------
# Statusbar strings
# -----------------------------------------------------------------------------
STATUSBAR_POSITION موقع
STATUSBAR_ZOOM تكبير
STATUSBAR_PRESSURE ضغط
STATUSBAR_FPS عدد الأطر في الثانية
STATUSBAR_STROKES خطوط
STATUSBAR_POINTS نقاط
# -----------------------------------------------------------------------------
# Settings strings
# -----------------------------------------------------------------------------
SETTINGS_TITLE إعدادات
SETTINGS_GENERAL عام
SETTINGS_APPEARANCE مظهر
SETTINGS_RENDERING العرض
SETTINGS_PRESSURE_SENSITIVITY حساسية الضغط
SETTINGS_BRUSH_SIZE مقاس الفرشاة الافتراضي
SETTINGS_CANVAS_COLOR لون اللوحة الافتراضي
SETTINGS_PROJECT_FOLDER ملف المشروع الافتراضي
SETTINGS_LANGUAGE اللغة
SETTINGS_TABLET_DRIVER Tablet Driver
SETTINGS_THEME الشكل
SETTINGS_UI_SCALE حجم واجهة المستخدم
SETTINGS_UI_SCALE_AUTO تلقائي
SETTINGS_UI_SCALE_CUSTOM مخصص
SETTINGS_FPS_FOREGROUND عدد الأطر في الثانية(الأمامية)
SETTINGS_FPS_BACKGROUND عدد الأطر في الثانية(الخلفية)
SETTINGS_BRUSH_CAPS وضع تدوير الفرشاة
SETTINGS_BRUSH_CAPS_FLAT مسطح
SETTINGS_BRUSH_CAPS_ROUND دائري
SETTINGS_RESTART_NOTICE مطلوب إعادة التشغيل لتطبيق الإعدادات الجديدة
# -----------------------------------------------------------------------------
# About dialog strings
# -----------------------------------------------------------------------------
ABOUT_DIALOG_TITLE حول
ABOUT_DIALOG_COPYRIGHT © 2021-2024 Marcus Brummer & contributors
ABOUT_DIALOG_LICSENSE Lorien is licensed under:
ABOUT_DIALOG_BASED_ON Lorien is based on:
ABOUT_DIALOG_EASTEREGG Easteregg character:
# -----------------------------------------------------------------------------
# Unsaved changes dialog
# -----------------------------------------------------------------------------
UNSAVED_CHANGES_DIALOG_TITLE حفظ التغييرات؟
UNSAVED_CHANGES_DIALOG_TEXT هل تريد حفظ التغييرات قبل إغلاق الملف؟
# -----------------------------------------------------------------------------
# Exit dialog
# -----------------------------------------------------------------------------
EXIT_DIALOG_TITLE حفظ التغييرات؟
EXIT_DIALOG_TEXT هل تريد حفظ التغييرات قبل الخروج من Lorien؟
# -----------------------------------------------------------------------------
# New palette dialog
# -----------------------------------------------------------------------------
NEW_PALETTE_DIALOG_CREATE_TITLE لوح ألوان جديد
NEW_PALETTE_DIALOG_DUPLICATE_TITLE كرر لوح الألوان
NEW_PALETTE_DIALOG_PLACEHOLDER اسم لوح الألوان
# -----------------------------------------------------------------------------
# Delete palette dialog
# -----------------------------------------------------------------------------
DELETE_PALETTE_DIALOG_TITLE مسح لوح الألوان
DELETE_PALETTE_DIALOG_TEXT هل أنت متأكد أنك تريد حذف نهائيًا:
# -----------------------------------------------------------------------------
# Edit palette dialog
# -----------------------------------------------------------------------------
EDIT_PALETTE_DIALOG_TITLE تعديل لوح الألوان
# -----------------------------------------------------------------------------
# Error/Alert messages
# -----------------------------------------------------------------------------
ERROR_NOT_IMPLEMENTED لم تنفذ بعد.
ERROR_AUTOSAVE_NOT_IMPLEMENTED لم يتم تنفيذ "الحفظ التلقائي" لملف "بدون عنوان". يرجى حفظه يدويًا.
ALERT_EDITING_BUILTIN_PALETTE تعديل لوحات الألوان المدمجة غير ممكن. إذا كنت ترغب في تخصيص هذه اللوحة ، يمكنك عمل نسخة و تعديلها بدلاً من ذلك.
ALERT_DELETING_BUILTIN_PALETTE لا يمكن حذف لوحات الألوان المدمجة في البرنامج.
# -----------------------------------------------------------------------------
# Generic strings
# -----------------------------------------------------------------------------
SAVE حفظ
DISCARD رفض
CANCEL إلغاء
DELETE مسح
================================================
FILE: lorien/Assets/I18n/de.txt
================================================
LANGUAGE_NAME Deutsch
# --------------------------------------------------------------------------------
# Menu
# --------------------------------------------------------------------------------
MENU_OPEN Öffnen...
MENU_SAVE Speichern
MENU_SAVE_AS Speichern als...
MENU_SETTINGS Einstellungen
MENU_MANUAL Benutzeranleitung
MENU_BUG_TRACKER Bug Tracker
MENU_ABOUT Über
MENU_EXPORT Exportieren...
MENU_QUIT Schließen
# -----------------------------------------------------------------------------
# Toolbar
# -----------------------------------------------------------------------------
TOOLBAR_TOOLTIP_NEW_FILE Neue Datei anlegen
TOOLBAR_TOOLTIP_OPEN_FILE Datei öffnen
TOOLBAR_TOOLTIP_SAVE_FILE Datei speichern
TOOLBAR_TOOLTIP_UNDO Undo Action
TOOLBAR_TOOLTIP_REDO Redo Action
TOOLBAR_TOOLTIP_BRUSH_TOOL Pinsel Werkzeug
TOOLBAR_TOOLTIP_RECTANGLE_TOOL Rechteck Werkzeug
TOOLBAR_TOOLTIP_LINE_TOOL Linien Werkzeug
TOOLBAR_TOOLTIP_ERASER_TOOL Radierer
TOOLBAR_TOOLTIP_SELECT_TOOL Auswahl Werkzeug
TOOLBAR_TOOLTIP_BRUSH_COLOR Pinsel Farbe
TOOLBAR_TOOLTIP_BRUSH_SIZE Pinsel Größe
TOOLBAR_TOOLTIP_CANVAS_COLOR Canvas Farbe
# -----------------------------------------------------------------------------
# Color Palette Picker
# -----------------------------------------------------------------------------
COLOR_PALETTE_PICKER_HINT_EDIT Aktuelle Farbpalette editieren
COLOR_PALETTE_PICKER_HINT_NEW Neue Farbpalette anlegen
COLOR_PALETTE_PICKER_HINT_DUPLICATE Aktuelle Farbpalette duplizieren
COLOR_PALETTE_PICKER_HINT_DELETE Aktuelle Farbpalette permanent löschen
# -----------------------------------------------------------------------------
# Statusbar
# -----------------------------------------------------------------------------
STATUSBAR_POSITION Position
STATUSBAR_ZOOM Zoom
STATUSBAR_PRESSURE Druck
STATUSBAR_FPS FPS
STATUSBAR_STROKES Striche
STATUSBAR_POINTS Punkte
# -----------------------------------------------------------------------------
# Settings
# -----------------------------------------------------------------------------
SETTINGS_TITLE Einstellungen
SETTINGS_GENERAL Generell
SETTINGS_APPEARANCE Ansicht
SETTINGS_RENDERING Rendering
SETTINGS_PRESSURE_SENSITIVITY Druckempfindlichkeit
SETTINGS_BRUSH_SIZE Default Pinsel Größe
SETTINGS_PROJECT_FOLDER Default Project Ordner
SETTINGS_LANGUAGE Sprache
SETTINGS_TABLET_DRIVER Tablet Treiber
SETTINGS_THEME Theme
SETTINGS_GRID_SIZE Grid Größe
SETTINGS_GRID_PATTERN Grid Pattern
SETTINGS_CANVAS_COLOR Canvas Farbe
SETTINGS_FPS_FOREGROUND Vordergrund Fps
SETTINGS_FPS_BACKGROUND Hintergrund Fps
SETTINGS_BRUSH_CAPS Pinsel Abrundung
SETTINGS_BRUSH_CAPS_FLAT Flach
SETTINGS_BRUSH_CAPS_ROUND Abgerundet
SETTINGS_RESTART_NOTICE Ein Neustart ist notwendig um die Einstellungen zu übernehmen
# -----------------------------------------------------------------------------
# About dialog
# -----------------------------------------------------------------------------
ABOUT_DIALOG_TITLE Über
ABOUT_DIALOG_COPYRIGHT © 2021-2024 Marcus Brummer & Mitwirkende
ABOUT_DIALOG_LICSENSE Lorien ist lizenziert unter:
ABOUT_DIALOG_BASED_ON Lorien basiert auf:
ABOUT_DIALOG_EASTEREGG Easteregg Charakter:
# -----------------------------------------------------------------------------
# Unsaved changes dialog
# -----------------------------------------------------------------------------
UNSAVED_CHANGES_DIALOG_TITLE Warnung
UNSAVED_CHANGES_DIALOG_TEXT Willst du deine Änderungen speichern?
# -----------------------------------------------------------------------------
# New palette dialog
# -----------------------------------------------------------------------------
NEW_PALETTE_DIALOG_CREATE_TITLE Neue Farbpalette
NEW_PALETTE_DIALOG_DUPLICATE_TITLE Farbpalette duplizieren
NEW_PALETTE_DIALOG_PLACEHOLDER Palette Name
# -----------------------------------------------------------------------------
# Delete palette dialog
# -----------------------------------------------------------------------------
DELETE_PALETTE_DIALOG_TITLE Farbpalette löschen
DELETE_PALETTE_DIALOG_TEXT Bist du sicher folgende Farbpalette permanent zu löschen:
# -----------------------------------------------------------------------------
# Edit palette dialog
# -----------------------------------------------------------------------------
EDIT_PALETTE_DIALOG_TITLE Palette bearbeiten
# -----------------------------------------------------------------------------
# Error/Alert messages
# -----------------------------------------------------------------------------
ALERT_EDITING_BUILTIN_PALETTE Built-in Paletten können nicht verändert werden. Um diese Palette zu anzupassen, mache eine Kopie und verändere diese stattdessen.
ALERT_DELETING_BUILTIN_PALETTE Built-in Farbpaletten können nicht gelöscht werden.
# -----------------------------------------------------------------------------
# Generic strings
# -----------------------------------------------------------------------------
SAVE Speichern
DISCARD Verwerfen
CANCEL Abbrechen
DELETE Löschen
# -----------------------------------------------------------------------------
# Action names
# -----------------------------------------------------------------------------
ACTION_shortcut_save_project Datei speichern
ACTION_shortcut_new_project Neue Datei
ACTION_shortcut_open_project Datei öffnen
ACTION_shortcut_close_project Datei schließen
ACTION_shortcut_quit Schließen
ACTION_shortcut_undo Undo
ACTION_shortcut_redo Redo
ACTION_shortcut_brush_tool Pinsel Werkzeug
ACTION_shortcut_line_tool Linien Werkzeug
ACTION_shortcut_eraser_tool Radiergummi
ACTION_shortcut_select_tool Auswahl Werkzeug
ACTION_shortcut_rectangle_tool Rechteck Werkzeug
ACTION_shortcut_circle_tool Kreis Werkzeug
ACTION_shortcut_export_project Datei exportieren
ACTION_deselect_all_strokes Aktuelle Auswahl entfernen
ACTION_delete_selected_strokes Aktuelle Auswahl löschen
ACTION_copy_strokes Kopieren
ACTION_paste_strokes Einfügen
ACTION_duplicate_strokes Auswahl duplizieren
ACTION_toggle_zen_mode Toggle Zen Mode
ACTION_toggle_player Toggle Easteregg
ACTION_toggle_fullscreen Vollbildmodus
================================================
FILE: lorien/Assets/I18n/en.txt
================================================
LANGUAGE_NAME English
# -----------------------------------------------------------------------------
# Menu strings
# -----------------------------------------------------------------------------
MENU_OPEN Open...
MENU_SAVE Save
MENU_SAVE_AS Save as...
MENU_SETTINGS Settings
MENU_MANUAL Online Manual
MENU_BUG_TRACKER Bug Tracker
MENU_ABOUT About
MENU_EXPORT Export...
MENU_QUIT Quit
# -----------------------------------------------------------------------------
# Project
# -----------------------------------------------------------------------------
PROJECT_NAME_UNTITLED Untitled
PROJECT_NAME_UNTITLED_UNSAVED Untitled (*)
# -----------------------------------------------------------------------------
# Toolbar
# -----------------------------------------------------------------------------
TOOLBAR_TOOLTIP_NEW_FILE Create New File
TOOLBAR_TOOLTIP_OPEN_FILE Open File
TOOLBAR_TOOLTIP_SAVE_FILE Save File
TOOLBAR_TOOLTIP_UNDO Undo Action
TOOLBAR_TOOLTIP_REDO Redo Action
TOOLBAR_TOOLTIP_BRUSH_TOOL Brush Tool
TOOLBAR_TOOLTIP_RECTANGLE_TOOL Rectangle Tool
TOOLBAR_TOOLTIP_CIRCLE_TOOL Circle Tool
TOOLBAR_TOOLTIP_LINE_TOOL Line Tool
TOOLBAR_TOOLTIP_ERASER_TOOL Eraser
TOOLBAR_TOOLTIP_SELECT_TOOL Selection Tool
TOOLBAR_TOOLTIP_BRUSH_COLOR Brush Color
TOOLBAR_TOOLTIP_BRUSH_SIZE Brush Size
TOOLBAR_TOOLTIP_CANVAS_COLOR Canvas Color
TOOLBAR_FULLSCREEN_TOGGLE Toggle fullscreen
# -----------------------------------------------------------------------------
# Color Palette Picker
# -----------------------------------------------------------------------------
COLOR_PALETTE_PICKER_HINT_NEW Create new color palette
COLOR_PALETTE_PICKER_HINT_EDIT Edit the current color palette
COLOR_PALETTE_PICKER_HINT_DUPLICATE Duplicate the current color palette
COLOR_PALETTE_PICKER_HINT_DELETE Delete the current color palette permanently
# -----------------------------------------------------------------------------
# Statusbar strings
# -----------------------------------------------------------------------------
STATUSBAR_POSITION Position
STATUSBAR_ZOOM Zoom
STATUSBAR_PRESSURE Pressure
STATUSBAR_FPS FPS
STATUSBAR_STROKES Strokes
STATUSBAR_POINTS Points
# -----------------------------------------------------------------------------
# Settings strings
# -----------------------------------------------------------------------------
SETTINGS_TITLE Settings
SETTINGS_GENERAL General
SETTINGS_APPEARANCE Appearance
SETTINGS_RENDERING Rendering
SETTINGS_KEYBINDINGS Keybindings
SETTINGS_PRESSURE_SENSITIVITY Pressure Sensitivity
SETTINGS_CONSTANT_PRESSURE Constant Pressure
SETTINGS_STABILIZER_STRENGTH Stabilizer Strength
SETTINGS_BRUSH_SIZE Default Brush Size
SETTINGS_PROJECT_FOLDER Default save/load folder
SETTINGS_PROJECT_FOLDER_PLACEHOLDER e.g. C:/Users/me/Lorien
SETTINGS_GRID_SIZE Grid Size
SETTINGS_LANGUAGE Language
SETTINGS_TABLET_DRIVER Tablet Driver
SETTINGS_THEME Theme
SETTINGS_THEME_DARK Dark Mode
SETTINGS_THEME_LIGHT Light Mode
SETTINGS_UI_SCALE UI Scale
SETTINGS_UI_SCALE_AUTO Auto
SETTINGS_UI_SCALE_CUSTOM Custom
SETTINGS_GRID_SIZE Grid Size
SETTINGS_GRID_PATTERN Grid Pattern
SETTINGS_GRID_PATTERN_DOTS Dots
SETTINGS_GRID_PATTERN_LINES Lines
SETTINGS_GRID_PATTERN_NONE None
SETTINGS_CANVAS_COLOR Canvas Color
SETTINGS_FPS_FOREGROUND Foreground Fps
SETTINGS_FPS_BACKGROUND Background Fps
SETTINGS_BRUSH_CAPS Brush Rounding Mode
SETTINGS_BRUSH_CAPS_FLAT Flat
SETTINGS_BRUSH_CAPS_ROUND Round
SETTINGS_RESTART_NOTICE Restart required to apply the new settings
SETTINGS_TOOL_PRESSURE Default Tools Pressure
# -----------------------------------------------------------------------------
# About dialog strings
# -----------------------------------------------------------------------------
ABOUT_DIALOG_TITLE About
ABOUT_DIALOG_COPYRIGHT © 2021-2024 Marcus Brummer & contributors
ABOUT_DIALOG_LICSENSE Lorien is licensed under:
ABOUT_DIALOG_BASED_ON Lorien is based on:
ABOUT_DIALOG_EASTEREGG Easteregg character:
# -----------------------------------------------------------------------------
# Unsaved changes dialog
# -----------------------------------------------------------------------------
UNSAVED_CHANGES_DIALOG_TITLE Warning
UNSAVED_CHANGES_DIALOG_TEXT Do you want to save your changes before closing the file(s)?
# -----------------------------------------------------------------------------
# New palette dialog
# -----------------------------------------------------------------------------
NEW_PALETTE_DIALOG_CREATE_TITLE New Palette
NEW_PALETTE_DIALOG_DUPLICATE_TITLE Duplicate Palette
NEW_PALETTE_DIALOG_PLACEHOLDER Palette name
# -----------------------------------------------------------------------------
# Delete palette dialog
# -----------------------------------------------------------------------------
DELETE_PALETTE_DIALOG_TITLE Delete palette
DELETE_PALETTE_DIALOG_TEXT Are you sure you want to permanently delete:
# -----------------------------------------------------------------------------
# Edit palette dialog
# -----------------------------------------------------------------------------
EDIT_PALETTE_DIALOG_TITLE Edit Palette
# -----------------------------------------------------------------------------
# Error/Alert messages
# -----------------------------------------------------------------------------
ALERT_EDITING_BUILTIN_PALETTE Editing built-in palettes is not possible. If you want to customize this palette you can make a copy and edit that instead. # TODO
ALERT_DELETING_BUILTIN_PALETTE Deleting built-in palettes is not possible.
# -----------------------------------------------------------------------------
# Generic strings
# -----------------------------------------------------------------------------
SAVE Save
DISCARD Discard
CANCEL Cancel
DELETE Delete
# -----------------------------------------------------------------------------
# Action names
# -----------------------------------------------------------------------------
ACTION_shortcut_save_project Save File
ACTION_shortcut_new_project New File
ACTION_shortcut_open_project Open File
ACTION_shortcut_close_project Close File
ACTION_shortcut_quit Quit
ACTION_shortcut_undo Undo
ACTION_shortcut_redo Redo
ACTION_shortcut_brush_tool Brush Tool
ACTION_shortcut_line_tool Line Tool
ACTION_shortcut_eraser_tool Eraser Tool
ACTION_shortcut_select_tool Selection Tool
ACTION_shortcut_rectangle_tool Rectangle Tool
ACTION_shortcut_circle_tool Circle Tool
ACTION_shortcut_export_project Export File
ACTION_deselect_all_strokes Deselect All Strokes
ACTION_delete_selected_strokes Delete Selected Strokes
ACTION_copy_strokes Copy
ACTION_paste_strokes Paste
ACTION_duplicate_strokes Duplicate strokes
ACTION_toggle_zen_mode Toggle Zen Mode
ACTION_toggle_player Toggle Easteregg
ACTION_toggle_fullscreen Toggle Fullscreen
ACTION_canvas_pan_key Pan Key
================================================
FILE: lorien/Assets/I18n/es.txt
================================================
LANGUAGE_NAME Español
# -----------------------------------------------------------------------------
# Menu strings
# -----------------------------------------------------------------------------
MENU_OPEN Abrir...
MENU_SAVE Guardar
MENU_SAVE_AS Guardar como...
MENU_SETTINGS Configuración
MENU_MANUAL Manual en línea
MENU_BUG_TRACKER Reportar un error
MENU_ABOUT Acerca de
MENU_EXPORT Exportar...
MENU_QUIT Salir
# -----------------------------------------------------------------------------
# Project
# -----------------------------------------------------------------------------
PROJECT_NAME_UNTITLED Sin título
PROJECT_NAME_UNTITLED_UNSAVED Sin título (*)
# -----------------------------------------------------------------------------
# Toolbar
# -----------------------------------------------------------------------------
TOOLBAR_TOOLTIP_NEW_FILE Crear Nuevo Archivo
TOOLBAR_TOOLTIP_OPEN_FILE Abrir Archivo
TOOLBAR_TOOLTIP_SAVE_FILE Guardar Archivo
TOOLBAR_TOOLTIP_UNDO Deshacer Acción
TOOLBAR_TOOLTIP_REDO Rehacer Acción
TOOLBAR_TOOLTIP_BRUSH_TOOL Herramienta de Pincel
TOOLBAR_TOOLTIP_RECTANGLE_TOOL Herramienta de Rectángulo
TOOLBAR_TOOLTIP_CIRCLE_TOOL Herramienta de Círculo
TOOLBAR_TOOLTIP_LINE_TOOL Herramienta de Línea
TOOLBAR_TOOLTIP_ERASER_TOOL Herramienta de Borrador
TOOLBAR_TOOLTIP_SELECT_TOOL Herramienta de Selección
TOOLBAR_TOOLTIP_BRUSH_COLOR Color de Pincel
TOOLBAR_TOOLTIP_BRUSH_SIZE Tamaño de Pincel
TOOLBAR_TOOLTIP_CANVAS_COLOR Color de Lienzo
TOOLBAR_FULLSCREEN_TOGGLE Alternar pantalla completa
# -----------------------------------------------------------------------------
# Color Palette Picker
# -----------------------------------------------------------------------------
COLOR_PALETTE_PICKER_HINT_NEW Crear una nueva paleta de colores
COLOR_PALETTE_PICKER_HINT_EDIT Editar la paleta de colores actual
COLOR_PALETTE_PICKER_HINT_DUPLICATE Duplicar la paleta de colores actual
COLOR_PALETTE_PICKER_HINT_DELETE Eliminar permanentemente la paleta de colores actual
# -----------------------------------------------------------------------------
# Statusbar strings
# -----------------------------------------------------------------------------
STATUSBAR_POSITION Posición
STATUSBAR_ZOOM Zoom
STATUSBAR_PRESSURE Presión
STATUSBAR_FPS FPS
STATUSBAR_STROKES Trazos
STATUSBAR_POINTS Puntos
# -----------------------------------------------------------------------------
# Settings strings
# -----------------------------------------------------------------------------
SETTINGS_TITLE Configuración
SETTINGS_GENERAL General
SETTINGS_APPEARANCE Apariencia
SETTINGS_RENDERING Renderizado
SETTINGS_KEYBINDINGS Atajos de teclado
SETTINGS_PRESSURE_SENSITIVITY Sensibilidad de presión
SETTINGS_CONSTANT_PRESSURE Presión constante
SETTINGS_STABILIZER_STRENGTH Fuerza del estabilizador
SETTINGS_BRUSH_SIZE Tamaño de Pincel predeterminado
SETTINGS_PROJECT_FOLDER Carpeta de carga y guardado predeterminada
SETTINGS_PROJECT_FOLDER_PLACEHOLDER p.ej. C:/Users/yo/Lorien
SETTINGS_GRID_SIZE Tamaño de Cuadrícula
SETTINGS_LANGUAGE Idioma
SETTINGS_TABLET_DRIVER Driver de tableta
SETTINGS_THEME Tema
SETTINGS_THEME_DARK Modo oscuro
SETTINGS_THEME_LIGHT Modo claro
SETTINGS_UI_SCALE Escala de interfaz de usuario
SETTINGS_UI_SCALE_AUTO Automática
SETTINGS_UI_SCALE_CUSTOM Personalizada
SETTINGS_GRID_SIZE Tamaño de Cuadrícula
SETTINGS_GRID_PATTERN Patrón de Cuadrícula
SETTINGS_GRID_PATTERN_DOTS Puntos
SETTINGS_GRID_PATTERN_LINES Líneas
SETTINGS_GRID_PATTERN_NONE Ninguno
SETTINGS_CANVAS_COLOR Color de Lienzo
SETTINGS_FPS_FOREGROUND FPS en primer plano
SETTINGS_FPS_BACKGROUND FPS en fondo
SETTINGS_BRUSH_CAPS Modo de Redondeado de Pincel
SETTINGS_BRUSH_CAPS_FLAT Plano
SETTINGS_BRUSH_CAPS_ROUND Redondo
SETTINGS_RESTART_NOTICE Se requiere de un reinicio para aplicar la nueva configuración
SETTINGS_TOOL_PRESSURE Presión de las herramientas predeterminada
# -----------------------------------------------------------------------------
# About dialog strings
# -----------------------------------------------------------------------------
ABOUT_DIALOG_TITLE Acerca de
ABOUT_DIALOG_COPYRIGHT © 2021-2024 Marcus Brummer & colaboradores
ABOUT_DIALOG_LICSENSE Lorien está licenciado bajo:
ABOUT_DIALOG_BASED_ON Lorien está basado en:
ABOUT_DIALOG_EASTEREGG Personaje secreto:
# -----------------------------------------------------------------------------
# Unsaved changes dialog
# -----------------------------------------------------------------------------
UNSAVED_CHANGES_DIALOG_TITLE Advertencia
UNSAVED_CHANGES_DIALOG_TEXT ¿Quieres guardar los cambios antes de cerrar el(los) archivo(s)?
# -----------------------------------------------------------------------------
# New palette dialog
# -----------------------------------------------------------------------------
NEW_PALETTE_DIALOG_CREATE_TITLE Nueva Paleta
NEW_PALETTE_DIALOG_DUPLICATE_TITLE Duplicar Paleta
NEW_PALETTE_DIALOG_PLACEHOLDER Nombre de Paleta
# -----------------------------------------------------------------------------
# Delete palette dialog
# -----------------------------------------------------------------------------
DELETE_PALETTE_DIALOG_TITLE Eliminar Paleta
DELETE_PALETTE_DIALOG_TEXT ¿Estás seguro de que deseas eliminar permanentemente?:
# -----------------------------------------------------------------------------
# Edit palette dialog
# -----------------------------------------------------------------------------
EDIT_PALETTE_DIALOG_TITLE Editar Paleta
# -----------------------------------------------------------------------------
# Error/Alert messages
# -----------------------------------------------------------------------------
ALERT_EDITING_BUILTIN_PALETTE No es posible editar las paletas incorporadas. Si deseas personalizar esta paleta, puedes copiarla y editarla. # TODO
ALERT_DELETING_BUILTIN_PALETTE No es posible eliminar las paletas incorporadas.
# -----------------------------------------------------------------------------
# Generic strings
# -----------------------------------------------------------------------------
SAVE Guardar
DISCARD Descartar
CANCEL Cancelar
DELETE Eliminar
# -----------------------------------------------------------------------------
# Action names
# -----------------------------------------------------------------------------
ACTION_shortcut_save_project Guardar Archivo
ACTION_shortcut_new_project Nuevo Archivo
ACTION_shortcut_open_project Abrir Archivo
ACTION_shortcut_close_project Cerrar Archivo
ACTION_shortcut_quit Salir
ACTION_shortcut_undo Deshacer
ACTION_shortcut_redo Rehacer
ACTION_shortcut_brush_tool Herramienta de Pincel
ACTION_shortcut_line_tool Herramienta de Línea
ACTION_shortcut_eraser_tool Herramienta de Borrador
ACTION_shortcut_select_tool Herramienta de Selección
ACTION_shortcut_rectangle_tool Herramienta de Rectángulo
ACTION_shortcut_circle_tool Herramienta de Círculo
ACTION_shortcut_export_project Exportar Archivo
ACTION_deselect_all_strokes Deseleccionar todos los trazos
ACTION_delete_selected_strokes Eliminar los trazos seleccionados
ACTION_copy_strokes Copiar
ACTION_paste_strokes Pegar
ACTION_duplicate_strokes Duplicar trazos
ACTION_toggle_zen_mode Alternar Modo Zen
ACTION_toggle_player Alternar Huevo de Pascua
ACTION_toggle_fullscreen Alternar Pantalla Completa
ACTION_canvas_pan_key Tecla panorámica
================================================
FILE: lorien/Assets/I18n/fr.txt
================================================
LANGUAGE_NAME Français
# -----------------------------------------------------------------------------
# Menu strings
# -----------------------------------------------------------------------------
MENU_OPEN Ouvrir...
MENU_SAVE Enregistrer
MENU_SAVE_AS Enregistrer sous...
MENU_SETTINGS Paramètres
MENU_MANUAL Documentation
MENU_BUG_TRACKER Suivi des bogues
MENU_ABOUT À propos
MENU_EXPORT Exporter...
MENU_QUIT Quitter
# -----------------------------------------------------------------------------
# Toolbar
# -----------------------------------------------------------------------------
TOOLBAR_TOOLTIP_NEW_FILE Créer un nouveau fichier
TOOLBAR_TOOLTIP_OPEN_FILE Ouvrir un fichier
TOOLBAR_TOOLTIP_SAVE_FILE Enregistrer un fichier
TOOLBAR_TOOLTIP_UNDO Annuler l'action
TOOLBAR_TOOLTIP_REDO Rétablir l'action
TOOLBAR_TOOLTIP_BRUSH_TOOL Pinceau
TOOLBAR_TOOLTIP_RECTANGLE_TOOL Rectangle
TOOLBAR_TOOLTIP_LINE_TOOL Ligne
TOOLBAR_TOOLTIP_ERASER_TOOL Gomme
TOOLBAR_TOOLTIP_SELECT_TOOL Outil de sélection
TOOLBAR_TOOLTIP_BRUSH_COLOR Couleur de la brosse
TOOLBAR_TOOLTIP_BRUSH_SIZE Épaisseur de la brosse
TOOLBAR_TOOLTIP_CANVAS_COLOR Couleur du canevas
# -----------------------------------------------------------------------------
# Color Palette Picker
# -----------------------------------------------------------------------------
COLOR_PALETTE_PICKER_HINT_NEW Créer une nouvelle palette de couleurs
COLOR_PALETTE_PICKER_HINT_EDIT Editer la palette de couleurs active
COLOR_PALETTE_PICKER_HINT_DUPLICATE Dupliquer la palette de couleurs active
COLOR_PALETTE_PICKER_HINT_DELETE Supprimer la palette de couleurs active de façon permanente
# -----------------------------------------------------------------------------
# Statusbar strings
# -----------------------------------------------------------------------------
STATUSBAR_POSITION Position
STATUSBAR_ZOOM Échelle
STATUSBAR_PRESSURE Pression
STATUSBAR_FPS FPS
STATUSBAR_STROKES Courbes
STATUSBAR_POINTS Points
# -----------------------------------------------------------------------------
# Settings strings
# -----------------------------------------------------------------------------
SETTINGS_TITLE Paramètres
SETTINGS_GENERAL Général
SETTINGS_APPEARANCE Apparence
SETTINGS_RENDERING Affichage
SETTINGS_PRESSURE_SENSITIVITY Sensibilité de la pression
SETTINGS_BRUSH_SIZE Épaisseur par défaut de la brosse
SETTINGS_PROJECT_FOLDER Dossier par défaut du projet
SETTINGS_LANGUAGE Langue
SETTINGS_TABLET_DRIVER Tablet Driver
SETTINGS_THEME Thème
SETTINGS_FPS_FOREGROUND Fps lorsque actif
SETTINGS_FPS_BACKGROUND Fps lorsque inactif
SETTINGS_CANVAS_COLOR Couleur du canevas
SETTINGS_BRUSH_CAPS Extrémités des tracés
SETTINGS_BRUSH_CAPS_FLAT Plates
SETTINGS_BRUSH_CAPS_ROUND Arrondies
SETTINGS_RESTART_NOTICE Un redémarrage est nécessaire pour appliquer les changements
# -----------------------------------------------------------------------------
# About dialog strings
# -----------------------------------------------------------------------------
ABOUT_DIALOG_TITLE A propos
ABOUT_DIALOG_COPYRIGHT © 2021-2024 Marcus Brummer & contributeurs
ABOUT_DIALOG_LICSENSE Lorien est sous licence:
ABOUT_DIALOG_BASED_ON Lorien est basé sur:
ABOUT_DIALOG_EASTEREGG Personnage Easter egg:
# -----------------------------------------------------------------------------
# Unsaved changes dialog
# -----------------------------------------------------------------------------
UNSAVED_CHANGES_DIALOG_TITLE Warning # TODO
UNSAVED_CHANGES_DIALOG_TEXT Voulez-vous enregistrer les changements avant de fermer?
# -----------------------------------------------------------------------------
# New palette dialog
# -----------------------------------------------------------------------------
NEW_PALETTE_DIALOG_CREATE_TITLE Nouvelle palette
NEW_PALETTE_DIALOG_DUPLICATE_TITLE Dupliquer palette
NEW_PALETTE_DIALOG_PLACEHOLDER Nom de la palette
# -----------------------------------------------------------------------------
# Delete palette dialog
# -----------------------------------------------------------------------------
DELETE_PALETTE_DIALOG_TITLE Supprimer palette
DELETE_PALETTE_DIALOG_TEXT Êtes-vous sûr de vouloir supprimer de façon permanente la palette?
# -----------------------------------------------------------------------------
# Edit palette dialog
# -----------------------------------------------------------------------------
EDIT_PALETTE_DIALOG_TITLE Modifier la palette
# -----------------------------------------------------------------------------
# Error/Alert messages
# -----------------------------------------------------------------------------
ALERT_EDITING_BUILTIN_PALETTE L'édition de palettes pré-existances n'est pas possible. Si vous souhaitez la modifier, vous pouvez en faire une copie et l'éditer.
ALERT_DELETING_BUILTIN_PALETTE La suppression de palettes pré-existantes n'est pas possible.
# -----------------------------------------------------------------------------
# Generic strings
# -----------------------------------------------------------------------------
SAVE Enregistrer
DISCARD Ignorer
CANCEL Annuler
DELETE Supprimer
================================================
FILE: lorien/Assets/I18n/it.txt
================================================
LANGUAGE_NAME Italiano
# -----------------------------------------------------------------------------
# Menu
# -----------------------------------------------------------------------------
MENU_OPEN Apri...
MENU_SAVE Salva
MENU_SAVE_AS Salva come...
MENU_SETTINGS Impostazioni
MENU_MANUAL Manuale
MENU_BUG_TRACKER Monitoraggio dei bug
MENU_ABOUT Informazioni
MENU_EXPORT Esporta...
MENU_QUIT Esci
# -----------------------------------------------------------------------------
# Toolbar
# -----------------------------------------------------------------------------
TOOLBAR_TOOLTIP_NEW_FILE Crea nuovo file
TOOLBAR_TOOLTIP_OPEN_FILE Apri File
TOOLBAR_TOOLTIP_SAVE_FILE Salva File
TOOLBAR_TOOLTIP_UNDO Annulla Azione
TOOLBAR_TOOLTIP_REDO Ripeti Azione
TOOLBAR_TOOLTIP_BRUSH_TOOL Strumento Pennello
TOOLBAR_TOOLTIP_RECTANGLE_TOOL Strumento Rettangolo
TOOLBAR_TOOLTIP_LINE_TOOL Strumento Linea
TOOLBAR_TOOLTIP_ERASER_TOOL Gomma per cancellare
TOOLBAR_TOOLTIP_SELECT_TOOL Seleziona strumento
TOOLBAR_TOOLTIP_BRUSH_COLOR Colore Pennello
TOOLBAR_TOOLTIP_BRUSH_SIZE Dimensione del Pennello
TOOLBAR_FULLSCREEN_TOGGLE Commuta la modalità a schermo intero
# -----------------------------------------------------------------------------
# Color Palette Picker
# -----------------------------------------------------------------------------
COLOR_PALETTE_PICKER_HINT_NEW Crea una nuova tavolozza di colori
COLOR_PALETTE_PICKER_HINT_EDIT Modifica la tavolozza dei colori corrente
COLOR_PALETTE_PICKER_HINT_DUPLICATE Duplica la tavolozza dei colori corrente
COLOR_PALETTE_PICKER_HINT_DELETE Elimina la tavolozza dei colori corrente in modo permanente
# -----------------------------------------------------------------------------
# Statusbar strings
# -----------------------------------------------------------------------------
STATUSBAR_POSITION Posizione
STATUSBAR_ZOOM Zoom
STATUSBAR_PRESSURE Pressione
STATUSBAR_FPS FPS
STATUSBAR_STROKES Tratti
STATUSBAR_POINTS Punti
# -----------------------------------------------------------------------------
# Settings strings
# -----------------------------------------------------------------------------
SETTINGS_TITLE Impostazioni
SETTINGS_GENERAL Generale
SETTINGS_APPEARANCE Aspetto
SETTINGS_RENDERING Rendering
SETTINGS_PRESSURE_SENSITIVITY Sensibilità alla pressione
SETTINGS_BRUSH_SIZE Dimensione Pennello Predefinita
SETTINGS_PROJECT_FOLDER Cartella di Progetto Predefinita
SETTINGS_LANGUAGE Lingua
SETTINGS_TABLET_DRIVER Driver del tablet
SETTINGS_THEME Tema
SETTINGS_FPS_FOREGROUND Fps in primo piano
SETTINGS_FPS_BACKGROUND Fps sullo sfondo
SETTINGS_CANVAS_COLOR Colore della Tela
SETTINGS_BRUSH_CAPS Modalità arrotondamento pennello
SETTINGS_BRUSH_CAPS_FLAT Piatto
SETTINGS_BRUSH_CAPS_ROUND Rotondo
SETTINGS_RESTART_NOTICE È necessario riavviare per applicare le nuove impostazioni
# -----------------------------------------------------------------------------
# About dialog strings
# -----------------------------------------------------------------------------
ABOUT_DIALOG_TITLE Informazioni
ABOUT_DIALOG_COPYRIGHT © 2021-2024 Marcus Brummer & contributori
ABOUT_DIALOG_LICSENSE Lorien è concesso in licenza sotto:
ABOUT_DIALOG_BASED_ON Lorien si basa su:
ABOUT_DIALOG_EASTEREGG Carattere Easteregg:
# -----------------------------------------------------------------------------
# Unsaved changes dialog
# -----------------------------------------------------------------------------
UNSAVED_CHANGES_DIALOG_TITLE Attenzione # TODO
UNSAVED_CHANGES_DIALOG_TEXT Vuoi salvare le modifiche prima di chiudere il file?
# -----------------------------------------------------------------------------
# New palette dialog
# -----------------------------------------------------------------------------
NEW_PALETTE_DIALOG_CREATE_TITLE Nuova tavolozza
NEW_PALETTE_DIALOG_DUPLICATE_TITLE Tavolozza duplicata
NEW_PALETTE_DIALOG_PLACEHOLDER Nome della tavolozza
# -----------------------------------------------------------------------------
# Delete palette dialog
# -----------------------------------------------------------------------------
DELETE_PALETTE_DIALOG_TITLE Elimina tavolozza
DELETE_PALETTE_DIALOG_TEXT Sei sicuro di voler eliminare definitivamente:
# -----------------------------------------------------------------------------
# Edit palette dialog
# -----------------------------------------------------------------------------
EDIT_PALETTE_DIALOG_TITLE Modifica tavolozza
# -----------------------------------------------------------------------------
# Error/Alert messages
# -----------------------------------------------------------------------------
ALERT_EDITING_BUILTIN_PALETTE Non è possibile modificare le tavolozze integrate. Se desideri personalizzare questa tavolozza, puoi crearne una copia e modificarla.
ALERT_DELETING_BUILTIN_PALETTE Non è possibile eliminare le tavolozze integrate.
# -----------------------------------------------------------------------------
# Generic strings
# -----------------------------------------------------------------------------
SAVE Salva
DISCARD Abbandona
CANCEL Cancella
DELETE Elimina
#----------------------------------------------------------------------------
# Action names
#----------------------------------------------------------------------------
ACTION_shortcut_save_project Salva il progetto
ACTION_shortcut_new_project Nuovo progetto
ACTION_shortcut_open_project Apri il progetto
ACTION_shortcut_quit Esci
ACTION_shortcut_undo Torna indietro
ACTION_shortcut_redo Ripeti azione
ACTION_shortcut_brush_tool Strumento Pennello
ACTION_shortcut_line_tool Strumento Linea
ACTION_shortcut_eraser_tool Strumento Gomma
ACTION_shortcut_select_tool Seleziona Strumento
ACTION_shortcut_rectangle_tool Strumento Rettangolo
ACTION_shortcut_circle_tool Strumento Cerchio
ACTION_shortcut_export_project Esporta progetto
ACTION_deselect_all_strokes Deseleziona tutti i tratti
ACTION_delete_selected_strokes Elimina i tratti selezionati
ACTION_copy_strokes Copia i tratti
ACTION_paste_strokes Incolla i tratti
ACTION_duplicate_strokes Duplica i tratti
ACTION_toggle_zen_mode Attiva la modalità Zen
ACTION_toggle_player Attiva Easteregg
ACTION_toggle_fullscreen Schermo intero
#---------------------------------------------------------------------------
# Keybindings dialog messages
#---------------------------------------------------------------------------
#Bind key dialog
KEYBINDING_DIALOG_BIND_WINDOW_NAME Assegna scorciatoia
KEYBINDING_DIALOG_BIND_ACTION Scorciatoia: {action}
#Rebin already bound key dialog
KEYBINDING_DIALOG_REBIND_WINDOW_NAME Riassegnare la scorciatoia?
KEYBINDING_DIALOG_REBIND_MESSAGE 'event' è già assegnata to {action}.\n\nSei sicuro di volerla riassegnare?
================================================
FILE: lorien/Assets/I18n/ko.txt
================================================
LANGUAGE_NAME 한국어
# -----------------------------------------------------------------------------
# Menu strings
# -----------------------------------------------------------------------------
MENU_OPEN 열기...
MENU_SAVE 저장
MENU_SAVE_AS 다른 이름으로 저장...
MENU_SETTINGS 설정
MENU_MANUAL 설명서
MENU_BUG_TRACKER 버그 제보
MENU_ABOUT 정보
MENU_EXPORT 내보내기...
MENU_QUIT 종료
# -----------------------------------------------------------------------------
# Toolbar
# -----------------------------------------------------------------------------
TOOLBAR_TOOLTIP_NEW_FILE 새 파일 만들기
TOOLBAR_TOOLTIP_OPEN_FILE 파일 열기
TOOLBAR_TOOLTIP_SAVE_FILE 파일 저장하기
TOOLBAR_TOOLTIP_UNDO 되돌리기
TOOLBAR_TOOLTIP_REDO 다시하기
TOOLBAR_TOOLTIP_BRUSH_TOOL 브러쉬
TOOLBAR_TOOLTIP_RECTANGLE_TOOL 사각형
TOOLBAR_TOOLTIP_CIRCLE_TOOL 원
TOOLBAR_TOOLTIP_LINE_TOOL 직선
TOOLBAR_TOOLTIP_ERASER_TOOL 지우개
TOOLBAR_TOOLTIP_SELECT_TOOL 범위 선택
TOOLBAR_TOOLTIP_BRUSH_COLOR 브러쉬 색깔
TOOLBAR_TOOLTIP_BRUSH_SIZE 브러쉬 크기
TOOLBAR_FULLSCREEN_TOGGLE 전체화면/원래대로
# -----------------------------------------------------------------------------
# Color Palette Picker
# -----------------------------------------------------------------------------
COLOR_PALETTE_PICKER_HINT_NEW 새 컬러 팔레트 만들기
COLOR_PALETTE_PICKER_HINT_EDIT 현재 컬러 팔레트 수정
COLOR_PALETTE_PICKER_HINT_DUPLICATE 현재 컬러 팔레트 복제
COLOR_PALETTE_PICKER_HINT_DELETE 현재 컬러 팔레트를 완전히 삭제
# -----------------------------------------------------------------------------
# Statusbar strings
# -----------------------------------------------------------------------------
STATUSBAR_POSITION 위치
STATUSBAR_ZOOM 확대
STATUSBAR_PRESSURE 필압
STATUSBAR_FPS 프레임
STATUSBAR_STROKES 획
STATUSBAR_POINTS 점
# -----------------------------------------------------------------------------
# Settings strings
# -----------------------------------------------------------------------------
SETTINGS_TITLE 설정
SETTINGS_GENERAL 일반
SETTINGS_APPEARANCE 모양
SETTINGS_RENDERING 렌더링
SETTINGS_PRESSURE_SENSITIVITY 필압 민감도
SETTINGS_BRUSH_SIZE 기본 브러쉬 크기
SETTINGS_PROJECT_FOLDER 기본 프로젝트 풀더
SETTINGS_LANGUAGE 언어
SETTINGS_TABLET_DRIVER Tablet Driver
SETTINGS_THEME 테마
SETTINGS_UI_SCALE UI 표시 배율
SETTINGS_UI_SCALE_AUTO 자동
SETTINGS_UI_SCALE_CUSTOM 수동
SETTINGS_FPS_FOREGROUND 필기 프레임
SETTINGS_FPS_BACKGROUND 배경 프레임
SETTINGS_CANVAS_COLOR 배경 색깔
SETTINGS_BRUSH_CAPS 브러쉬 끝 부분 모양
SETTINGS_BRUSH_CAPS_FLAT 평평하게
SETTINGS_BRUSH_CAPS_ROUND 둥굴게
SETTINGS_RESTART_NOTICE 변경된 설정을 적용하려면 재시작이 필요합니다.
# -----------------------------------------------------------------------------
# About dialog strings
# -----------------------------------------------------------------------------
ABOUT_DIALOG_TITLE 정보
ABOUT_DIALOG_COPYRIGHT © 2021-2024 Marcus Brummer 와 기여자들
ABOUT_DIALOG_LICSENSE Lorien은 다음의 라이센스를 따릅니다:
ABOUT_DIALOG_BASED_ON Lorien은 다음의 기술을 기반으로 합니다:
ABOUT_DIALOG_EASTEREGG 이스터에그:
# -----------------------------------------------------------------------------
# Unsaved changes dialog
# -----------------------------------------------------------------------------
UNSAVED_CHANGES_DIALOG_TITLE Warning # TODO
UNSAVED_CHANGES_DIALOG_TEXT 파일을 닫기 전에 저장할까요?
# -----------------------------------------------------------------------------
# New palette dialog
# -----------------------------------------------------------------------------
NEW_PALETTE_DIALOG_CREATE_TITLE 새로운 팔레트
NEW_PALETTE_DIALOG_DUPLICATE_TITLE 팔레트 복제
NEW_PALETTE_DIALOG_PLACEHOLDER 팔레트 이름
# -----------------------------------------------------------------------------
# Delete palette dialog
# -----------------------------------------------------------------------------
DELETE_PALETTE_DIALOG_TITLE 팔레트 삭제
DELETE_PALETTE_DIALOG_TEXT 이 팔레트를 완전히 삭제하시겠습니까?
# -----------------------------------------------------------------------------
# Edit palette dialog
# -----------------------------------------------------------------------------
EDIT_PALETTE_DIALOG_TITLE 팔레트 수정
# -----------------------------------------------------------------------------
# Error/Alert messages
# -----------------------------------------------------------------------------
ALERT_EDITING_BUILTIN_PALETTE 내장된 팔레트를 수정할 수 없습니다. 수정이 필요하시면 내장된 팔레트를 복제 후 이용하세요.
ALERT_DELETING_BUILTIN_PALETTE 내장된 팔레트를 수정할 수 없습니다.
# -----------------------------------------------------------------------------
# Generic strings
# -----------------------------------------------------------------------------
SAVE 저장하고 나가기
DISCARD 저장하지 않고 나가기
CANCEL 취소
DELETE 삭제
================================================
FILE: lorien/Assets/I18n/pt-BR.txt
================================================
LANGUAGE_NAME Português Brasileiro
# -----------------------------------------------------------------------------
# Menu strings
# -----------------------------------------------------------------------------
MENU_OPEN Abrir...
MENU_SAVE Salvar
MENU_SAVE_AS Salvar como...
MENU_SETTINGS Configurações
MENU_MANUAL Manual
MENU_BUG_TRACKER Rastreador de Bugs
MENU_ABOUT Sobre
MENU_EXPORT Exportar...
MENU_QUIT Sair
# -----------------------------------------------------------------------------
# Toolbar
# -----------------------------------------------------------------------------
TOOLBAR_TOOLTIP_NEW_FILE Novo Arquivo
TOOLBAR_TOOLTIP_OPEN_FILE Abrir Arquivo
TOOLBAR_TOOLTIP_SAVE_FILE Salvar Arquivo
TOOLBAR_TOOLTIP_UNDO Desfazer Ação
TOOLBAR_TOOLTIP_REDO Refazer Ação
TOOLBAR_TOOLTIP_BRUSH_TOOL Pincel
TOOLBAR_TOOLTIP_RECTANGLE_TOOL Ferramenta Retângulo
TOOLBAR_TOOLTIP_CIRCLE_TOOL Ferramenta Círculo
TOOLBAR_TOOLTIP_LINE_TOOL Ferramenta Linha
TOOLBAR_TOOLTIP_ERASER_TOOL Borracha
TOOLBAR_TOOLTIP_SELECT_TOOL Ferramenta de Seleção
TOOLBAR_TOOLTIP_BRUSH_COLOR Cor do Pincel
TOOLBAR_TOOLTIP_BRUSH_SIZE Tamanho do Pincel
TOOLBAR_FULLSCREEN_TOGGLE (Des)ativar Tela Cheia
# -----------------------------------------------------------------------------
# Color Palette Picker
# -----------------------------------------------------------------------------
COLOR_PALETTE_PICKER_HINT_NEW Nova paleta de cores
COLOR_PALETTE_PICKER_HINT_EDIT Editar a paleta de cores atual
COLOR_PALETTE_PICKER_HINT_DUPLICATE Duplicar a paleta de cores atual
COLOR_PALETTE_PICKER_HINT_DELETE Deletar a paleta de cores atual permanentemente
# -----------------------------------------------------------------------------
# Statusbar strings
# -----------------------------------------------------------------------------
STATUSBAR_POSITION Posição
STATUSBAR_ZOOM Ampliação
STATUSBAR_PRESSURE Pressão
STATUSBAR_FPS FPS
STATUSBAR_STROKES Traços
STATUSBAR_POINTS Pontos
# -----------------------------------------------------------------------------
# Settings strings
# -----------------------------------------------------------------------------
SETTINGS_TITLE Configurações
SETTINGS_GENERAL Geral
SETTINGS_APPEARANCE Aparência
SETTINGS_RENDERING Renderização
SETTINGS_KEYBINDINGS Teclas de Atalho
SETTINGS_PRESSURE_SENSITIVITY Sensibilidade à Pressão
SETTINGS_CONSTANT_PRESSURE Pressão Constante?
SETTINGS_BRUSH_SIZE Tamanho Padrão do Pincel
SETTINGS_CANVAS_COLOR Cor da Área de Desenho
SETTINGS_PROJECT_FOLDER Pasta Padrão do Projeto
SETTINGS_LANGUAGE Idioma
SETTINGS_TABLET_DRIVER Tablet Driver
SETTINGS_THEME Tema
SETTINGS_UI_SCALE Escala da Interface
SETTINGS_UI_SCALE_AUTO Automática
SETTINGS_UI_SCALE_CUSTOM Personalizada
SETTINGS_FPS_FOREGROUND FPS em Primeiro Plano
SETTINGS_FPS_BACKGROUND FPS em Segundo Plano
SETTINGS_BRUSH_CAPS Modo de Arredondamento do Pincel
SETTINGS_BRUSH_CAPS_FLAT Uniforme
SETTINGS_BRUSH_CAPS_ROUND Redondo
SETTINGS_RESTART_NOTICE É necessário reiniciar para aplicar as novas configurações
# -----------------------------------------------------------------------------
# About dialog strings
# -----------------------------------------------------------------------------
ABOUT_DIALOG_TITLE Sobre
ABOUT_DIALOG_COPYRIGHT © 2021-2024 Marcus Brummer & contribuidores
ABOUT_DIALOG_LICSENSE Lorien é licenciado sob:
ABOUT_DIALOG_BASED_ON Lorien é baseado em:
ABOUT_DIALOG_EASTEREGG Personagem secreto:
# -----------------------------------------------------------------------------
# Unsaved changes dialog
# -----------------------------------------------------------------------------
UNSAVED_CHANGES_DIALOG_TITLE Warning # TODO
UNSAVED_CHANGES_DIALOG_TEXT Quer salvar suas alterações antes de fechar o arquivo?
# -----------------------------------------------------------------------------
# New palette dialog
# -----------------------------------------------------------------------------
NEW_PALETTE_DIALOG_CREATE_TITLE Nova paleta
NEW_PALETTE_DIALOG_DUPLICATE_TITLE Duplicar paleta
NEW_PALETTE_DIALOG_PLACEHOLDER Nome da paleta
# -----------------------------------------------------------------------------
# Delete palette dialog
# -----------------------------------------------------------------------------
DELETE_PALETTE_DIALOG_TITLE Deletar paleta
DELETE_PALETTE_DIALOG_TEXT Tem certeza que quer remover permanentemente:
# -----------------------------------------------------------------------------
# Edit palette dialog
# -----------------------------------------------------------------------------
EDIT_PALETTE_DIALOG_TITLE Editar paleta
# -----------------------------------------------------------------------------
# Error/Alert messages
# -----------------------------------------------------------------------------
ALERT_EDITING_BUILTIN_PALETTE Não é possível editar paletas predefinidas, pode fazer uma cópia e editá-la em vez disso. # TODO
ALERT_DELETING_BUILTIN_PALETTE Não é possível deletar paletas predefinidas.
# -----------------------------------------------------------------------------
# Generic strings
# -----------------------------------------------------------------------------
SAVE Salvar
DISCARD Descartar
CANCEL Cancelar
DELETE Deletar
# -----------------------------------------------------------------------------
# Action names
# -----------------------------------------------------------------------------
ACTION_shortcut_save_project Salvar Projeto
ACTION_shortcut_new_project Novo Projeto
ACTION_shortcut_open_project Abrir Projeto
ACTION_shortcut_quit Quit # TODO
ACTION_shortcut_undo Desfazer
ACTION_shortcut_redo Refazer
ACTION_shortcut_brush_tool Pincel
ACTION_shortcut_line_tool Ferramenta Linha
ACTION_shortcut_eraser_tool Borracha
ACTION_shortcut_select_tool Ferramenta de Seleção
ACTION_shortcut_rectangle_tool Ferramenta Retângulo
ACTION_shortcut_circle_tool Ferramenta Círculo
ACTION_shortcut_export_project Exportar Projeto
ACTION_deselect_all_strokes Desmarcar todos os traços
ACTION_delete_selected_strokes Deletar traços selecionados
ACTION_copy_strokes Copiar traços
ACTION_paste_strokes Colar traços
ACTION_duplicate_strokes Duplicar traços
ACTION_toggle_zen_mode Toggle Zen Mode
ACTION_toggle_player Toggle Easteregg
ACTION_toggle_fullscreen (Des)ativar Tela Cheia
# -----------------------------------------------------------------------------
# Kebindings dialog messages
# -----------------------------------------------------------------------------
# Bind key dialog
KEYBINDING_DIALOG_BIND_WINDOW_NAME Vincular tecla
KEYBINDING_DIALOG_BIND_ACTION Ação: {action}
# Rebind already bound key dialog
KEYBINDING_DIALOG_REBIND_WINDOW_NAME Redefinir tecla?
KEYBINDING_DIALOG_REBIND_MESSAGE '{event}' já está vinculado com {action}.\n\nQuer redefinir?
================================================
FILE: lorien/Assets/I18n/ru.txt
================================================
LANGUAGE_NAME Русский
# -----------------------------------------------------------------------------
# Menu strings
# -----------------------------------------------------------------------------
MENU_OPEN Open... # TODO
MENU_SAVE Сохранить
MENU_SAVE_AS Сохранить как...
MENU_SETTINGS Настройки
MENU_MANUAL Руководство
MENU_BUG_TRACKER Баг трекер
MENU_ABOUT О Lorien
MENU_EXPORT Экспортировать...
MENU_QUIT Выход
# -----------------------------------------------------------------------------
# Toolbar
# -----------------------------------------------------------------------------
TOOLBAR_TOOLTIP_NEW_FILE Создать новый файл
TOOLBAR_TOOLTIP_OPEN_FILE Открыть файл
TOOLBAR_TOOLTIP_SAVE_FILE Сохранить файл
TOOLBAR_TOOLTIP_UNDO Отменить действие
TOOLBAR_TOOLTIP_REDO Повторить действие
TOOLBAR_TOOLTIP_BRUSH_TOOL Кисть
TOOLBAR_TOOLTIP_RECTANGLE_TOOL Rectangle Tool # TODO
TOOLBAR_TOOLTIP_LINE_TOOL Линия
TOOLBAR_TOOLTIP_ERASER_TOOL Стерка
TOOLBAR_TOOLTIP_SELECT_TOOL Выделить
TOOLBAR_TOOLTIP_BRUSH_SIZE Размер кисти
TOOLBAR_TOOLTIP_CANVAS_COLOR Цвет холста
# -----------------------------------------------------------------------------
# Color Palette Picker
# -----------------------------------------------------------------------------
COLOR_PALETTE_PICKER_HINT_NEW Create new color palette # TODO
COLOR_PALETTE_PICKER_HINT_EDIT Edit the current color palette # TODO
COLOR_PALETTE_PICKER_HINT_DUPLICATE Duplicate the current color palette # TODO
COLOR_PALETTE_PICKER_HINT_DELETE Delete the current color palette permanently # TODO
# -----------------------------------------------------------------------------
# Statusbar strings
# -----------------------------------------------------------------------------
STATUSBAR_POSITION Позиция
STATUSBAR_ZOOM Zoom
STATUSBAR_PRESSURE Давление
STATUSBAR_FPS FPS
STATUSBAR_STROKES Штрихи
STATUSBAR_POINTS Количество точек
# -----------------------------------------------------------------------------
# Settings strings
# -----------------------------------------------------------------------------
SETTINGS_TITLE Настройки
SETTINGS_GENERAL Общее
SETTINGS_APPEARANCE Внешний вид
SETTINGS_RENDERING Рендеринг
SETTINGS_PRESSURE_SENSITIVITY Pressure Sensitivity # TODO
SETTINGS_BRUSH_SIZE Размер кисти по умолчанию
SETTINGS_CANVAS_COLOR Цвет кисти
SETTINGS_PROJECT_FOLDER Папка проекта по умолчанию
SETTINGS_LANGUAGE Язык
SETTINGS_TABLET_DRIVER Tablet Driver
SETTINGS_THEME Тема
SETTINGS_FPS_FOREGROUND Foreground Fps # TODO
SETTINGS_FPS_BACKGROUND Background Fps # TODO
SETTINGS_BRUSH_CAPS Brush Rounding Mode # TODO
SETTINGS_BRUSH_CAPS_FLAT Flat # TODO
SETTINGS_BRUSH_CAPS_ROUND Round # TODO
SETTINGS_RESTART_NOTICE Restart required to apply the new settings # TODO
# -----------------------------------------------------------------------------
# About dialog strings
# -----------------------------------------------------------------------------
ABOUT_DIALOG_TITLE О Lorien
ABOUT_DIALOG_COPYRIGHT © 2021-2024 Marcus Brummer и контрибютеры
ABOUT_DIALOG_LICSENSE Lorien находится под лицензией:
ABOUT_DIALOG_BASED_ON Lorien основан на:
ABOUT_DIALOG_EASTEREGG Easteregg character: # TODO
# -----------------------------------------------------------------------------
# Unsaved changes dialog
# -----------------------------------------------------------------------------
UNSAVED_CHANGES_DIALOG_TITLE Warning # TODO
UNSAVED_CHANGES_DIALOG_TEXT Вы хотите сохранить изменения перед закрытием файла?
# -----------------------------------------------------------------------------
# New palette dialog
# -----------------------------------------------------------------------------
NEW_PALETTE_DIALOG_CREATE_TITLE New Palette # TODO
NEW_PALETTE_DIALOG_DUPLICATE_TITLE Duplicate Palette # TODO
NEW_PALETTE_DIALOG_PLACEHOLDER Palette name # TODO
# -----------------------------------------------------------------------------
# Delete palette dialog
# -----------------------------------------------------------------------------
DELETE_PALETTE_DIALOG_TITLE Delete palette # TODO
DELETE_PALETTE_DIALOG_TEXT Are you sure you want to permanently delete: # TODO
# -----------------------------------------------------------------------------
# Edit palette dialog
# -----------------------------------------------------------------------------
EDIT_PALETTE_DIALOG_TITLE Edit Palette # TODO
# -----------------------------------------------------------------------------
# Error/Alert messages
# -----------------------------------------------------------------------------
ALERT_EDITING_BUILTIN_PALETTE Editing built-in palettes is not possible. If you want to customize this palette you can make a copy and edit that instead. # TODO
ALERT_DELETING_BUILTIN_PALETTE Deleting built-in palettes is not possible. # TODO
# -----------------------------------------------------------------------------
# Generic strings
# -----------------------------------------------------------------------------
SAVE Сохранить
DISCARD Отказаться
CANCEL Отмена
DELETE Delete # TODO
================================================
FILE: lorien/Assets/I18n/tr.txt
================================================
LANGUAGE_NAME Türkçe
# -----------------------------------------------------------------------------
# Menu strings
# -----------------------------------------------------------------------------
MENU_OPEN ... Aç
MENU_SAVE Kaydet
MENU_SAVE_AS ... Olarak Kaydet
MENU_SETTINGS Ayarlar
MENU_MANUAL Kullanım Kılauzu
MENU_BUG_TRACKER Hata İzleyici
MENU_ABOUT Hakkında
MENU_EXPORT ... Dışa Aktar
MENU_QUIT Oyunu Kapat
# -----------------------------------------------------------------------------
# Toolbar
# -----------------------------------------------------------------------------
TOOLBAR_TOOLTIP_NEW_FILE Yeni Dosya Oluştur
TOOLBAR_TOOLTIP_OPEN_FILE Dosya Aç
TOOLBAR_TOOLTIP_SAVE_FILE Dosya Kaydet
TOOLBAR_TOOLTIP_UNDO Geri Al
TOOLBAR_TOOLTIP_REDO İleri Al
TOOLBAR_TOOLTIP_BRUSH_TOOL Fırça
TOOLBAR_TOOLTIP_RECTANGLE_TOOL Dikdörtgen Aracı
TOOLBAR_TOOLTIP_CIRCLE_TOOL Çember Aracı
TOOLBAR_TOOLTIP_LINE_TOOL Çizgi Aracı
TOOLBAR_TOOLTIP_ERASER_TOOL Silgi
TOOLBAR_TOOLTIP_SELECT_TOOL Seçim Aracı
TOOLBAR_TOOLTIP_BRUSH_COLOR Fırça Rengi
TOOLBAR_TOOLTIP_BRUSH_SIZE Fırça Boyutu
TOOLBAR_FULLSCREEN_TOGGLE Tam Ekran
# -----------------------------------------------------------------------------
# Color Palette Picker
# -----------------------------------------------------------------------------
COLOR_PALETTE_PICKER_HINT_NEW Yeni renk paleti oluştur
COLOR_PALETTE_PICKER_HINT_EDIT Mevcut paleti düzenle
COLOR_PALETTE_PICKER_HINT_DUPLICATE Mevcut paleti kopyala
COLOR_PALETTE_PICKER_HINT_DELETE Mevcut paleti kalıcı olarak sil
# -----------------------------------------------------------------------------
# Statusbar strings
# -----------------------------------------------------------------------------
STATUSBAR_POSITION Pozisyon
STATUSBAR_ZOOM Yaklaştır
STATUSBAR_PRESSURE Basınç
STATUSBAR_FPS FPS
STATUSBAR_STROKES Vuruşlar
STATUSBAR_POINTS Noktalar
# -----------------------------------------------------------------------------
# Settings strings
# -----------------------------------------------------------------------------
SETTINGS_TITLE Ayarlar
SETTINGS_GENERAL Genel
SETTINGS_APPEARANCE Görünüm
SETTINGS_RENDERING Rendering
SETTINGS_KEYBINDINGS Tuşlar
SETTINGS_PRESSURE_SENSITIVITY Basınç Hassaslığı
SETTINGS_BRUSH_SIZE Varsayılan Fırça Boyutu
SETTINGS_CANVAS_COLOR Tuval Rengi
SETTINGS_PROJECT_FOLDER Varsayılan Proje Klasörü
SETTINGS_GRID_SIZE Izgara Boyutu
SETTINGS_LANGUAGE Dil
SETTINGS_TABLET_DRIVER Tablet Driver
SETTINGS_THEME Tema
SETTINGS_UI_SCALE UI Boyutu
SETTINGS_UI_SCALE_AUTO Otomatik
SETTINGS_UI_SCALE_CUSTOM Özel
SETTINGS_FPS_FOREGROUND Ön plan Fps
SETTINGS_FPS_BACKGROUND Arka plan Fps
SETTINGS_BRUSH_CAPS Fırça Yuvarlama Modu
SETTINGS_BRUSH_CAPS_FLAT Düz
SETTINGS_BRUSH_CAPS_ROUND Yuvarlak
SETTINGS_RESTART_NOTICE Yeni ayarların uygulanması için yeniden başlatma gereklidir
# -----------------------------------------------------------------------------
# About dialog strings
# -----------------------------------------------------------------------------
ABOUT_DIALOG_TITLE Hakkında
ABOUT_DIALOG_COPYRIGHT © 2021-2024 Marcus Brummer & katkıda bulunanlar
ABOUT_DIALOG_LICSENSE Lorien, altında lisanslanmıştır:
ABOUT_DIALOG_BASED_ON Lorien, tabanlıdır:
ABOUT_DIALOG_EASTEREGG Easteregg karakteri:
# -----------------------------------------------------------------------------
# Unsaved changes dialog
# -----------------------------------------------------------------------------
UNSAVED_CHANGES_DIALOG_TITLE Warning # TODO
UNSAVED_CHANGES_DIALOG_TEXT Dosyayı kapatmadan önce değişikliklerinizi kaydetmek istiyor musunuz?
# -----------------------------------------------------------------------------
# New palette dialog
# -----------------------------------------------------------------------------
NEW_PALETTE_DIALOG_CREATE_TITLE Yeni Palet
NEW_PALETTE_DIALOG_DUPLICATE_TITLE Paleti kopyala
NEW_PALETTE_DIALOG_PLACEHOLDER Palet adı
# -----------------------------------------------------------------------------
# Delete palette dialog
# -----------------------------------------------------------------------------
DELETE_PALETTE_DIALOG_TITLE Paleti sil
DELETE_PALETTE_DIALOG_TEXT Gerçekten bunu silmek istiyor musunuz:
# -----------------------------------------------------------------------------
# Edit palette dialog
# -----------------------------------------------------------------------------
EDIT_PALETTE_DIALOG_TITLE Paleti Düzenle
# -----------------------------------------------------------------------------
# Error/Alert messages
# -----------------------------------------------------------------------------
ALERT_EDITING_BUILTIN_PALETTE Yerleşik paletleri düzenlemek mümkün değildir. Bu paleti özelleştirmek istiyorsanız, bunun yerine bir kopya oluşturabilir ve düzenleyebilirsiniz.. # TODO
ALERT_DELETING_BUILTIN_PALETTE Yerleşik paletleri silmek mümkün değildir.
# -----------------------------------------------------------------------------
# Generic strings
# -----------------------------------------------------------------------------
SAVE Kaydet
DISCARD Kaydetme
CANCEL İptal
DELETE Sil
# -----------------------------------------------------------------------------
# Action names
# -----------------------------------------------------------------------------
ACTION_shortcut_save_project Projeyi Kaydet
ACTION_shortcut_new_project Yeni Proje
ACTION_shortcut_open_project Projeyi Aç
ACTION_shortcut_quit Quit # TODO
ACTION_shortcut_undo Geri
ACTION_shortcut_redo İleri
ACTION_shortcut_brush_tool Fırça aracı
ACTION_shortcut_line_tool Çizgi aracı
ACTION_shortcut_eraser_tool Silgi aracı
ACTION_shortcut_select_tool Seçim aracı
ACTION_shortcut_rectangle_tool Dikdörtgen aracı
ACTION_shortcut_circle_tool Çember aracı
ACTION_shortcut_export_project Projeyi dışa aktar
ACTION_deselect_all_strokes Tüm vuruşların seçimini kaldır
ACTION_delete_selected_strokes Seçili vuruşları sil
ACTION_copy_strokes Kopyala
ACTION_paste_strokes Yapıştır
ACTION_duplicate_strokes Vuruşlarıkopyala
ACTION_toggle_zen_mode Toggle Zen Mode
ACTION_toggle_player Toggle Easteregg
ACTION_toggle_fullscreen Tam Ekran
# -----------------------------------------------------------------------------
# Kebindings dialog messages
# -----------------------------------------------------------------------------
# Bind key dialog
KEYBINDING_DIALOG_BIND_WINDOW_NAME Tuş ata
KEYBINDING_DIALOG_BIND_ACTION Aksiyon: {action}
# Rebind already bound key dialog
KEYBINDING_DIALOG_REBIND_WINDOW_NAME Tuşu yeniden ata?
KEYBINDING_DIALOG_REBIND_MESSAGE '{event}' zaten {action}'a bağlı.\n\n Yeniden atamak istiyor musunuz?
================================================
FILE: lorien/Assets/I18n/uk.txt
================================================
LANGUAGE_NAME Українська
# -----------------------------------------------------------------------------
# Menu strings
# -----------------------------------------------------------------------------
MENU_OPEN Відкрити...
MENU_SAVE Зберегти
MENU_SAVE_AS Зберегти як...
MENU_SETTINGS Налаштування
MENU_MANUAL Документація
MENU_BUG_TRACKER Баг трекер
MENU_ABOUT Про Lorien
MENU_EXPORT Eкспорт...
MENU_QUIT Вийти
# -----------------------------------------------------------------------------
# Toolbar
# -----------------------------------------------------------------------------
TOOLBAR_TOOLTIP_NEW_FILE Створити Новий Файл
TOOLBAR_TOOLTIP_OPEN_FILE Відкрити Файл
TOOLBAR_TOOLTIP_SAVE_FILE Зберегти файл
TOOLBAR_TOOLTIP_UNDO Назад
TOOLBAR_TOOLTIP_REDO Вперед
TOOLBAR_TOOLTIP_BRUSH_TOOL Пензлик
TOOLBAR_TOOLTIP_RECTANGLE_TOOL Прямокутник
TOOLBAR_TOOLTIP_CIRCLE_TOOL Коло
TOOLBAR_TOOLTIP_LINE_TOOL Лінія
TOOLBAR_TOOLTIP_ERASER_TOOL Гумка
TOOLBAR_TOOLTIP_SELECT_TOOL Виділення
TOOLBAR_TOOLTIP_BRUSH_COLOR Колір Пензлика
TOOLBAR_TOOLTIP_BRUSH_SIZE Розмір Пензлика
TOOLBAR_TOOLTIP_CANVAS_COLOR Колір Полотна
TOOLBAR_FULLSCREEN_TOGGLE Перемкнути Повноєкранний Режим
# -----------------------------------------------------------------------------
# Color Palette Picker
# -----------------------------------------------------------------------------
COLOR_PALETTE_PICKER_HINT_NEW Створити нову палітру кольорів
COLOR_PALETTE_PICKER_HINT_EDIT Змінити поточну палітру
COLOR_PALETTE_PICKER_HINT_DUPLICATE Дублікат поточної палітри
COLOR_PALETTE_PICKER_HINT_DELETE Назавжди видалити палітру
# -----------------------------------------------------------------------------
# Statusbar strings
# -----------------------------------------------------------------------------
STATUSBAR_POSITION Позиція
STATUSBAR_ZOOM Масштаб
STATUSBAR_PRESSURE Натиск
STATUSBAR_FPS FPS # use "Кадрів в секунду"?
STATUSBAR_STROKES Штрихи
STATUSBAR_POINTS Точки
# -----------------------------------------------------------------------------
# Settings strings
# -----------------------------------------------------------------------------
SETTINGS_TITLE Налаштування
SETTINGS_GENERAL Загальне
SETTINGS_APPEARANCE Вигляд
SETTINGS_RENDERING Рендер
SETTINGS_KEYBINDINGS Гарячі Клавіши
SETTINGS_PRESSURE_SENSITIVITY Чутливість до Натиску
SETTINGS_BRUSH_SIZE Розмір Пензлика за замовчуванням
SETTINGS_PROJECT_FOLDER Папка Проекту за замовчуванням
SETTINGS_GRID_SIZE Розмір сітки
SETTINGS_LANGUAGE Мова
SETTINGS_TABLET_DRIVER Tablet Driver
SETTINGS_THEME Тема
SETTINGS_UI_SCALE Розмір UI
SETTINGS_UI_SCALE_AUTO Авто
SETTINGS_UI_SCALE_CUSTOM Власний
SETTINGS_GRID_SIZE Розмір Сітки
SETTINGS_GRID_PATTERN Тип Сітки
SETTINGS_CANVAS_COLOR Колір Полотна
SETTINGS_FPS_FOREGROUND Fps Переднього Плану
SETTINGS_FPS_BACKGROUND Fps Фону
SETTINGS_BRUSH_CAPS Заокруглення Пензлика
SETTINGS_BRUSH_CAPS_FLAT Плоский
SETTINGS_BRUSH_CAPS_ROUND Округлий
SETTINGS_RESTART_NOTICE Для застосування нових налаштувань, потрібно перезапустити програму
# -----------------------------------------------------------------------------
# About dialog strings
# -----------------------------------------------------------------------------
ABOUT_DIALOG_TITLE Про Lorien
ABOUT_DIALOG_COPYRIGHT © 2021-2024 Marcus Brummer & співавтори
ABOUT_DIALOG_LICSENSE Lorien знаходиться під ліцензією:
ABOUT_DIALOG_BASED_ON Lorien створений на основі:
ABOUT_DIALOG_EASTEREGG Easteregg character:
# -----------------------------------------------------------------------------
# Unsaved changes dialog
# -----------------------------------------------------------------------------
UNSAVED_CHANGES_DIALOG_TITLE Warning # TODO
UNSAVED_CHANGES_DIALOG_TEXT Чи хочете ви зберегти свої зміни перед тим, як закрити цей файл?
# -----------------------------------------------------------------------------
# New palette dialog
# -----------------------------------------------------------------------------
NEW_PALETTE_DIALOG_CREATE_TITLE Нова палітра
NEW_PALETTE_DIALOG_DUPLICATE_TITLE Дублювати палітру
NEW_PALETTE_DIALOG_PLACEHOLDER Назва палітри
# -----------------------------------------------------------------------------
# Delete palette dialog
# -----------------------------------------------------------------------------
DELETE_PALETTE_DIALOG_TITLE Видалити палітру
DELETE_PALETTE_DIALOG_TEXT Ви впевнені, що ви хочете назавжди видалити:
# -----------------------------------------------------------------------------
# Edit palette dialog
# -----------------------------------------------------------------------------
EDIT_PALETTE_DIALOG_TITLE Змінити палітру
# -----------------------------------------------------------------------------
# Error/Alert messages
# -----------------------------------------------------------------------------
ALERT_EDITING_BUILTIN_PALETTE Неможливо змінити вбудовану палітру. Якщо ви хочете кастомізувати цю палітру, ви можете зробити її копію та змінити її.
ALERT_DELETING_BUILTIN_PALETTE Неможливо видаляти вбудовану палітру.
# -----------------------------------------------------------------------------
# Generic strings
# -----------------------------------------------------------------------------
SAVE Зберегти
DISCARD Відкинути # not sure about this
CANCEL Скасувати
DELETE Видалити
# -----------------------------------------------------------------------------
# Action names
# -----------------------------------------------------------------------------
ACTION_shortcut_save_project Зберегти проєкт
ACTION_shortcut_new_project Новий проєкт
ACTION_shortcut_open_project Відкрити проєкт
ACTION_shortcut_quit Quit # TODO
ACTION_shortcut_undo Назад
ACTION_shortcut_redo Вперед
ACTION_shortcut_brush_tool Пензлик
ACTION_shortcut_line_tool Лінія
ACTION_shortcut_eraser_tool Гумка
ACTION_shortcut_select_tool Виділення
ACTION_shortcut_rectangle_tool Прямокутник
ACTION_shortcut_circle_tool Коло
ACTION_shortcut_export_project Експорт проєкту
ACTION_deselect_all_strokes Відмінити виділення
ACTION_delete_selected_strokes Видалити вибрані штрихи
ACTION_copy_strokes Скопіювати
ACTION_paste_strokes Вставити
ACTION_duplicate_strokes Дублювати штрихи
ACTION_toggle_zen_mode Toggle Zen Mode
ACTION_toggle_player Toggle Easteregg
ACTION_toggle_fullscreen Перемкнути повноекранний режим
# -----------------------------------------------------------------------------
# Kebindings dialog messages
# -----------------------------------------------------------------------------
# Bind key dialog
KEYBINDING_DIALOG_BIND_WINDOW_NAME Прив'язати клавішу
KEYBINDING_DIALOG_BIND_ACTION Дія: {action}
# Rebind already bound key dialog
KEYBINDING_DIALOG_REBIND_WINDOW_NAME Змінити клавішу?
KEYBINDING_DIALOG_REBIND_MESSAGE '{event}' вже прив'язана до {action}.\n\nДійсно хочете змінити клавішу?
================================================
FILE: lorien/Assets/I18n/zh-CN.txt
================================================
LANGUAGE_NAME 汉语 # Simplified Chinese
# -----------------------------------------------------------------------------
# Menu strings
# -----------------------------------------------------------------------------
MENU_OPEN 打开...
MENU_SAVE 保存
MENU_SAVE_AS 另存为...
MENU_SETTINGS 设置
MENU_MANUAL 手册
MENU_BUG_TRACKER Bug 追踪器
MENU_ABOUT 关于
MENU_EXPORT 导出...
MENU_QUIT 退出
# -----------------------------------------------------------------------------
# Toolbar
# -----------------------------------------------------------------------------
TOOLBAR_TOOLTIP_NEW_FILE 创建新文件
TOOLBAR_TOOLTIP_OPEN_FILE 打开文件
TOOLBAR_TOOLTIP_SAVE_FILE 保存文件
TOOLBAR_TOOLTIP_UNDO 撤销操作
TOOLBAR_TOOLTIP_REDO 重做操作
TOOLBAR_TOOLTIP_BRUSH_TOOL 画笔工具
TOOLBAR_TOOLTIP_RECTANGLE_TOOL 矩形工具
TOOLBAR_TOOLTIP_CIRCLE_TOOL 圆形工具
TOOLBAR_TOOLTIP_LINE_TOOL 直线工具
TOOLBAR_TOOLTIP_ERASER_TOOL 橡皮擦
TOOLBAR_TOOLTIP_SELECT_TOOL 选择工具
TOOLBAR_TOOLTIP_BRUSH_COLOR 画笔颜色
TOOLBAR_TOOLTIP_BRUSH_SIZE 画笔大小
TOOLBAR_FULLSCREEN_TOGGLE 切换全屏
# -----------------------------------------------------------------------------
# Color Palette Picker
# -----------------------------------------------------------------------------
COLOR_PALETTE_PICKER_HINT_NEW 新建调色板
COLOR_PALETTE_PICKER_HINT_EDIT 编辑当前调色板
COLOR_PALETTE_PICKER_HINT_DUPLICATE 创建当前调色板的副本
COLOR_PALETTE_PICKER_HINT_DELETE 永久删除当前调色板
# -----------------------------------------------------------------------------
# Statusbar strings
# -----------------------------------------------------------------------------
STATUSBAR_POSITION 位置
STATUSBAR_ZOOM 缩放
STATUSBAR_PRESSURE 压力
STATUSBAR_FPS FPS
STATUSBAR_STROKES 笔划数
STATUSBAR_POINTS 点数
# -----------------------------------------------------------------------------
# Settings strings
# -----------------------------------------------------------------------------
SETTINGS_TITLE 设置
SETTINGS_GENERAL 通用
SETTINGS_APPEARANCE 外观
SETTINGS_RENDERING 渲染
SETTINGS_PRESSURE_SENSITIVITY 压力敏感度
SETTINGS_BRUSH_SIZE 默认画笔大小
SETTINGS_CANVAS_COLOR 画布颜色
SETTINGS_PROJECT_FOLDER 默认项目路径
SETTINGS_LANGUAGE 语言
SETTINGS_TABLET_DRIVER Tablet Driver
SETTINGS_THEME 主题
SETTINGS_UI_SCALE UI 缩放
SETTINGS_UI_SCALE_AUTO 自动
SETTINGS_UI_SCALE_CUSTOM 自定义
SETTINGS_FPS_FOREGROUND 前台 Fps
SETTINGS_FPS_BACKGROUND 后台 Fps
SETTINGS_BRUSH_CAPS 画笔圆角模式
SETTINGS_BRUSH_CAPS_FLAT 方形
SETTINGS_BRUSH_CAPS_ROUND 圆形
SETTINGS_RESTART_NOTICE 需要重新启动程序以应用新的设置
# -----------------------------------------------------------------------------
# About dialog strings
# -----------------------------------------------------------------------------
ABOUT_DIALOG_TITLE 关于
ABOUT_DIALOG_COPYRIGHT © 2021-2024 Marcus Brummer & contributors
ABOUT_DIALOG_LICSENSE Lorien 采用以下协议授权:
ABOUT_DIALOG_BASED_ON Lorien 基于:
ABOUT_DIALOG_EASTEREGG 复活节彩蛋角色:
# -----------------------------------------------------------------------------
# Unsaved changes dialog
# -----------------------------------------------------------------------------
UNSAVED_CHANGES_DIALOG_TITLE Warning # TODO
UNSAVED_CHANGES_DIALOG_TEXT 你想在关闭文件之前保存你的修改吗?
# -----------------------------------------------------------------------------
# New palette dialog
# -----------------------------------------------------------------------------
NEW_PALETTE_DIALOG_CREATE_TITLE 新建调色板
NEW_PALETTE_DIALOG_DUPLICATE_TITLE 创建调色板副本
NEW_PALETTE_DIALOG_PLACEHOLDER 调色板名称
# -----------------------------------------------------------------------------
# Delete palette dialog
# -----------------------------------------------------------------------------
DELETE_PALETTE_DIALOG_TITLE 删除调色板
DELETE_PALETTE_DIALOG_TEXT 你确定要永久删除:
# -----------------------------------------------------------------------------
# Edit palette dialog
# -----------------------------------------------------------------------------
EDIT_PALETTE_DIALOG_TITLE 编辑调色板
# -----------------------------------------------------------------------------
# Error/Alert messages
# -----------------------------------------------------------------------------
ALERT_EDITING_BUILTIN_PALETTE 无法编辑内置调色板。如果你想自定义这个调色板,你可以创建一个副本并编辑它。
ALERT_DELETING_BUILTIN_PALETTE 无法删除内置调色板。
# -----------------------------------------------------------------------------
# Generic strings
# -----------------------------------------------------------------------------
SAVE 保存
DISCARD 丢弃
CANCEL 取消
DELETE 删除
================================================
FILE: lorien/Assets/I18n/zh-TW.txt
================================================
LANGUAGE_NAME 漢語 # Traditional Chinese
# -----------------------------------------------------------------------------
# Menu strings
# -----------------------------------------------------------------------------
MENU_OPEN 開啟...
MENU_SAVE 存檔
MENU_SAVE_AS 另存為...
MENU_SETTINGS 設定
MENU_MANUAL 線上說明
MENU_BUG_TRACKER 問題追蹤
MENU_ABOUT 關於
MENU_EXPORT 匯出...
MENU_QUIT 退出
# -----------------------------------------------------------------------------
# Toolbar
# -----------------------------------------------------------------------------
TOOLBAR_TOOLTIP_NEW_FILE 建立新檔
TOOLBAR_TOOLTIP_OPEN_FILE 開啟舊檔
TOOLBAR_TOOLTIP_SAVE_FILE 儲存檔案
TOOLBAR_TOOLTIP_UNDO 回上一步
TOOLBAR_TOOLTIP_REDO 取消上一步
TOOLBAR_TOOLTIP_BRUSH_TOOL 畫筆工具
TOOLBAR_TOOLTIP_RECTANGLE_TOOL 矩形工具
TOOLBAR_TOOLTIP_CIRCLE_TOOL 圓形工具
TOOLBAR_TOOLTIP_LINE_TOOL 線條工具
TOOLBAR_TOOLTIP_ERASER_TOOL 橡皮擦
TOOLBAR_TOOLTIP_SELECT_TOOL 選擇工具
TOOLBAR_TOOLTIP_BRUSH_COLOR 畫筆顏色
TOOLBAR_TOOLTIP_BRUSH_SIZE 畫筆大小
TOOLBAR_FULLSCREEN_TOGGLE 全螢幕切換
# -----------------------------------------------------------------------------
# Color Palette Picker
# -----------------------------------------------------------------------------
COLOR_PALETTE_PICKER_HINT_NEW 建立新的調色板
COLOR_PALETTE_PICKER_HINT_EDIT 編輯目前調色板
COLOR_PALETTE_PICKER_HINT_DUPLICATE 從目前調色板建立副本
COLOR_PALETTE_PICKER_HINT_DELETE 刪除目前調色板
# -----------------------------------------------------------------------------
# Statusbar strings
# -----------------------------------------------------------------------------
STATUSBAR_POSITION 位置
STATUSBAR_ZOOM 縮放
STATUSBAR_PRESSURE 筆壓
STATUSBAR_FPS FPS
STATUSBAR_STROKES 筆劃數
STATUSBAR_POINTS 點數
# -----------------------------------------------------------------------------
# Settings strings
# -----------------------------------------------------------------------------
SETTINGS_TITLE 設定
SETTINGS_GENERAL 一般
SETTINGS_APPEARANCE 外觀
SETTINGS_RENDERING 渲染
SETTINGS_PRESSURE_SENSITIVITY 筆壓敏感度
SETTINGS_BRUSH_SIZE 預設畫筆大小
SETTINGS_CANVAS_COLOR 畫布底色
SETTINGS_PROJECT_FOLDER 預設專案目錄
SETTINGS_LANGUAGE 語言
SETTINGS_TABLET_DRIVER Tablet Driver
SETTINGS_THEME 佈景主題
SETTINGS_UI_SCALE UI 縮放
SETTINGS_UI_SCALE_AUTO 自動
SETTINGS_UI_SCALE_CUSTOM 自定義
SETTINGS_FPS_FOREGROUND 前景 FPS
SETTINGS_FPS_BACKGROUND 背景 FPS
SETTINGS_BRUSH_CAPS 畫筆圓角模式
SETTINGS_BRUSH_CAPS_FLAT 方形
SETTINGS_BRUSH_CAPS_ROUND 圓形
SETTINGS_RESTART_NOTICE 重新啟動應用程式以套用新的設定
# -----------------------------------------------------------------------------
# About dialog strings
# -----------------------------------------------------------------------------
ABOUT_DIALOG_TITLE 關於
ABOUT_DIALOG_COPYRIGHT © 2021-2024 Marcus Brummer & contributors
ABOUT_DIALOG_LICSENSE Lorien 所採用的授權條:
ABOUT_DIALOG_BASED_ON Lorien 是基於:
ABOUT_DIALOG_EASTEREGG 復活節彩蛋角色:
# -----------------------------------------------------------------------------
# Unsaved changes dialog
# -----------------------------------------------------------------------------
UNSAVED_CHANGES_DIALOG_TITLE Warning # TODO
UNSAVED_CHANGES_DIALOG_TEXT 關閉檔案前是否要儲存此次的變更?
# -----------------------------------------------------------------------------
# New palette dialog
# -----------------------------------------------------------------------------
NEW_PALETTE_DIALOG_CREATE_TITLE 建立新的調色板
NEW_PALETTE_DIALOG_DUPLICATE_TITLE 以目前調色板建立副本
NEW_PALETTE_DIALOG_PLACEHOLDER 新的調色板名稱
# -----------------------------------------------------------------------------
# Delete palette dialog
# -----------------------------------------------------------------------------
DELETE_PALETTE_DIALOG_TITLE 刪除調色板
DELETE_PALETTE_DIALOG_TEXT 確定要刪除調色板:
# -----------------------------------------------------------------------------
# Edit palette dialog
# -----------------------------------------------------------------------------
EDIT_PALETTE_DIALOG_TITLE 編輯調色板
# -----------------------------------------------------------------------------
# Error/Alert messages
# -----------------------------------------------------------------------------
ALERT_EDITING_BUILTIN_PALETTE 不能編輯預設的調色板。如果你想自訂目前的調色板,可以先新建副本再進行編輯。
ALERT_DELETING_BUILTIN_PALETTE 不能刪除預設的調色板。
# -----------------------------------------------------------------------------
# Generic strings
# -----------------------------------------------------------------------------
SAVE 儲存
DISCARD 放棄
CANCEL 取消
DELETE 删除
================================================
FILE: lorien/Assets/Icons/add.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bbdkcvds2nxg7"
path="res://.godot/imported/add.png-3520d3bd6bbe6551666d487ef1026a75.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/add.png"
dest_files=["res://.godot/imported/add.png-3520d3bd6bbe6551666d487ef1026a75.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/brush_tool.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cs5qdaf401w45"
path="res://.godot/imported/brush_tool.png-35459a2a76c7d070175c90bd375b03f3.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/brush_tool.png"
dest_files=["res://.godot/imported/brush_tool.png-35459a2a76c7d070175c90bd375b03f3.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/canvas_color_tool.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://i3rocgvfk221"
path="res://.godot/imported/canvas_color_tool.png-f7543959b94b6430741ede0ff6a667ed.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/canvas_color_tool.png"
dest_files=["res://.godot/imported/canvas_color_tool.png-f7543959b94b6430741ede0ff6a667ed.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/circle_tool.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://0qicbkag5jd3"
path="res://.godot/imported/circle_tool.png-01eaf4eb2971e0fa5b01c7cff0734ad5.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/circle_tool.png"
dest_files=["res://.godot/imported/circle_tool.png-01eaf4eb2971e0fa5b01c7cff0734ad5.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/clear_canvas.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://di3rucqyq5bk7"
path="res://.godot/imported/clear_canvas.png-008945759847e1530ab7844b2e476645.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/clear_canvas.png"
dest_files=["res://.godot/imported/clear_canvas.png-008945759847e1530ab7844b2e476645.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/close.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bp1yka17gbjtu"
path="res://.godot/imported/close.png-70dea5968a1cec9ee14e5d97f8f6de68.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/close.png"
dest_files=["res://.godot/imported/close.png-70dea5968a1cec9ee14e5d97f8f6de68.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/color_picker.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://tcovt1vw06tr"
path="res://.godot/imported/color_picker.png-a70b82c0caa965b9d941049c337ec552.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/color_picker.png"
dest_files=["res://.godot/imported/color_picker.png-a70b82c0caa965b9d941049c337ec552.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/copy.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ci340bpx1hg78"
path="res://.godot/imported/copy.png-0e9e4610337c18e7d6f1c2a6ba468c12.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/copy.png"
dest_files=["res://.godot/imported/copy.png-0e9e4610337c18e7d6f1c2a6ba468c12.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/cursor_icon.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cv4jae3ml8jlh"
path="res://.godot/imported/cursor_icon.png-a8679cce6d1a6159233d7f1c06150c08.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/cursor_icon.png"
dest_files=["res://.godot/imported/cursor_icon.png-a8679cce6d1a6159233d7f1c06150c08.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/delete.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c3maqrdnsjgiq"
path="res://.godot/imported/delete.png-4df4b82a76375b3514503a0b1ebc142f.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/delete.png"
dest_files=["res://.godot/imported/delete.png-4df4b82a76375b3514503a0b1ebc142f.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/edit.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bu10tixbxmwus"
path="res://.godot/imported/edit.png-0fa3be9dd51a3426e6079c23f2ce4e0a.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/edit.png"
dest_files=["res://.godot/imported/edit.png-0fa3be9dd51a3426e6079c23f2ce4e0a.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/eraser_tool.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bynefqnt8pdby"
path="res://.godot/imported/eraser_tool.png-948df7d00cff64fa0f88c54b8ca606f6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/eraser_tool.png"
dest_files=["res://.godot/imported/eraser_tool.png-948df7d00cff64fa0f88c54b8ca606f6.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/fullscreen.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b4mgx1os6mdeg"
path="res://.godot/imported/fullscreen.png-ca23a29924a680b1c411d77abca7d86c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/fullscreen.png"
dest_files=["res://.godot/imported/fullscreen.png-ca23a29924a680b1c411d77abca7d86c.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/grid.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bup7ms7nmbw0m"
path="res://.godot/imported/grid.png-8bfff87b3cd26042e7eaa81bab15f4d5.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/grid.png"
dest_files=["res://.godot/imported/grid.png-8bfff87b3cd26042e7eaa81bab15f4d5.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/line_tool.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bn1qdw0v30np0"
path="res://.godot/imported/line_tool.png-978e848631c8b06d1f4ac691060d1cfa.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/line_tool.png"
dest_files=["res://.godot/imported/line_tool.png-978e848631c8b06d1f4ac691060d1cfa.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/menu.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://r233fnxk5qkf"
path="res://.godot/imported/menu.png-db6d009b9768ab59af57af2bf2ca45ed.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/menu.png"
dest_files=["res://.godot/imported/menu.png-db6d009b9768ab59af57af2bf2ca45ed.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/move_tool.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bnh02pwlrohcf"
path="res://.godot/imported/move_tool.png-6e9cc52d7f4431c276fbf2caf71da662.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/move_tool.png"
dest_files=["res://.godot/imported/move_tool.png-6e9cc52d7f4431c276fbf2caf71da662.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/new_file.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b14r0skgpftxj"
path="res://.godot/imported/new_file.png-0d6707e486bc6975c117bb30bfd5c390.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/new_file.png"
dest_files=["res://.godot/imported/new_file.png-0d6707e486bc6975c117bb30bfd5c390.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/open_file.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dxi6gc6npiskq"
path="res://.godot/imported/open_file.png-c88db8352e7590761a7dba8acd66f21e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/open_file.png"
dest_files=["res://.godot/imported/open_file.png-c88db8352e7590761a7dba8acd66f21e.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/plus.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bmutnbt040e0b"
path="res://.godot/imported/plus.png-4323aaa71e210eccf34db655d7faed75.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/plus.png"
dest_files=["res://.godot/imported/plus.png-4323aaa71e210eccf34db655d7faed75.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/rectangle_tool.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://7a3xk8n0q24k"
path="res://.godot/imported/rectangle_tool.png-7c5bfe4509f7bc9fee57927aff38ed97.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/rectangle_tool.png"
dest_files=["res://.godot/imported/rectangle_tool.png-7c5bfe4509f7bc9fee57927aff38ed97.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/redo.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://see51v4hg68f"
path="res://.godot/imported/redo.png-9fc31f44732cd3d5afb37980266dc473.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/redo.png"
dest_files=["res://.godot/imported/redo.png-9fc31f44732cd3d5afb37980266dc473.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/save_file.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c4kv3i7fmom58"
path="res://.godot/imported/save_file.png-9cd5cd8db86ab83f81b7066aab1c2cbb.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/save_file.png"
dest_files=["res://.godot/imported/save_file.png-9cd5cd8db86ab83f81b7066aab1c2cbb.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/selection_tool.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ddxis8f7tvg66"
path="res://.godot/imported/selection_tool.png-821d418c0802c9f715d085b14601297e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/selection_tool.png"
dest_files=["res://.godot/imported/selection_tool.png-821d418c0802c9f715d085b14601297e.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/tools.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://byk2mc1luvjki"
path="res://.godot/imported/tools.png-91965a13da00c51e3e1274b2607929b4.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/tools.png"
dest_files=["res://.godot/imported/tools.png-91965a13da00c51e3e1274b2607929b4.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Icons/undo.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://h54g8ofkc3p8"
path="res://.godot/imported/undo.png-b391b6f2827b70101f94b911ec554a50.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Icons/undo.png"
dest_files=["res://.godot/imported/undo.png-b391b6f2827b70101f94b911ec554a50.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_duck.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b122l270v6tvm"
path="res://.godot/imported/p1_duck.png-673d1b2e46cd96165aa6df6f70a50cdc.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_duck.png"
dest_files=["res://.godot/imported/p1_duck.png-673d1b2e46cd96165aa6df6f70a50cdc.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_front.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ha8dl8gprvvr"
path="res://.godot/imported/p1_front.png-4778b4f024a65b74547bfe007fbe2b6d.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_front.png"
dest_files=["res://.godot/imported/p1_front.png-4778b4f024a65b74547bfe007fbe2b6d.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_hurt.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://rnedtmq7m02m"
path="res://.godot/imported/p1_hurt.png-fc969a10c1eb8e351ab66c9a9e314703.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_hurt.png"
dest_files=["res://.godot/imported/p1_hurt.png-fc969a10c1eb8e351ab66c9a9e314703.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_jump.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cqyukg3uuycf4"
path="res://.godot/imported/p1_jump.png-ee55cd964296a5e5be6a3ceb0bc52fe7.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_jump.png"
dest_files=["res://.godot/imported/p1_jump.png-ee55cd964296a5e5be6a3ceb0bc52fe7.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_stand.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ffgv0s7vrro5"
path="res://.godot/imported/p1_stand.png-81ae6f47c8239fa1b5dae57da65475b4.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_stand.png"
dest_files=["res://.godot/imported/p1_stand.png-81ae6f47c8239fa1b5dae57da65475b4.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_walk/p1_walk01.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://byicebm3xqqvf"
path="res://.godot/imported/p1_walk01.png-9d637418594112831067c04af91b869d.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_walk/p1_walk01.png"
dest_files=["res://.godot/imported/p1_walk01.png-9d637418594112831067c04af91b869d.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_walk/p1_walk02.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c0b2kwqc11hmp"
path="res://.godot/imported/p1_walk02.png-ecb66a024f5088b726573c2f531eb50d.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_walk/p1_walk02.png"
dest_files=["res://.godot/imported/p1_walk02.png-ecb66a024f5088b726573c2f531eb50d.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_walk/p1_walk03.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c0a6dcqg7ifki"
path="res://.godot/imported/p1_walk03.png-9363f71812014a8617ecacd615964bb0.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_walk/p1_walk03.png"
dest_files=["res://.godot/imported/p1_walk03.png-9363f71812014a8617ecacd615964bb0.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_walk/p1_walk04.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cfltcpca42j7y"
path="res://.godot/imported/p1_walk04.png-2a587477805c897fa2dbb99d54429f90.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_walk/p1_walk04.png"
dest_files=["res://.godot/imported/p1_walk04.png-2a587477805c897fa2dbb99d54429f90.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_walk/p1_walk05.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dnc8qra7ik1og"
path="res://.godot/imported/p1_walk05.png-3d30d9d934d726b8e884c14a8e19905e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_walk/p1_walk05.png"
dest_files=["res://.godot/imported/p1_walk05.png-3d30d9d934d726b8e884c14a8e19905e.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_walk/p1_walk06.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://col76yk5anc3w"
path="res://.godot/imported/p1_walk06.png-9168aef074459d1e1823494be76eb553.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_walk/p1_walk06.png"
dest_files=["res://.godot/imported/p1_walk06.png-9168aef074459d1e1823494be76eb553.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_walk/p1_walk07.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://di3s8n8y1er54"
path="res://.godot/imported/p1_walk07.png-ba80ffef40f84442121c516e8ab1ea1b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_walk/p1_walk07.png"
dest_files=["res://.godot/imported/p1_walk07.png-ba80ffef40f84442121c516e8ab1ea1b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_walk/p1_walk08.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dwuysgyc8j82w"
path="res://.godot/imported/p1_walk08.png-a3dab989144b0b58fa0d2d5c24174b5b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_walk/p1_walk08.png"
dest_files=["res://.godot/imported/p1_walk08.png-a3dab989144b0b58fa0d2d5c24174b5b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_walk/p1_walk09.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://danut7sqbg40s"
path="res://.godot/imported/p1_walk09.png-29971744c5cd89e82f3749b21a0a05a2.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_walk/p1_walk09.png"
dest_files=["res://.godot/imported/p1_walk09.png-29971744c5cd89e82f3749b21a0a05a2.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_walk/p1_walk10.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b8cmwiibg70sy"
path="res://.godot/imported/p1_walk10.png-7843a5167854808b6449923c6f0d42f2.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_walk/p1_walk10.png"
dest_files=["res://.godot/imported/p1_walk10.png-7843a5167854808b6449923c6f0d42f2.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Player/p1_walk/p1_walk11.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dy4wi0nvwge3k"
path="res://.godot/imported/p1_walk11.png-6aa52d789eeb1f1d49d7e66cedd01eca.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Player/p1_walk/p1_walk11.png"
dest_files=["res://.godot/imported/p1_walk11.png-6aa52d789eeb1f1d49d7e66cedd01eca.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Textures/arrow_right.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://f75au3rhdj7d"
path="res://.godot/imported/arrow_right.png-10caef975eb4713cb62e858128e8aa09.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Textures/arrow_right.png"
dest_files=["res://.godot/imported/arrow_right.png-10caef975eb4713cb62e858128e8aa09.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Textures/dot.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cllsvja6j2npu"
path="res://.godot/imported/dot.png-b21ef9585338c4335a449b7945e77989.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Textures/dot.png"
dest_files=["res://.godot/imported/dot.png-b21ef9585338c4335a449b7945e77989.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Textures/palette_button.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bb2kaiahpvl5m"
path="res://.godot/imported/palette_button.png-fd335e0dbb703bd94af22f96bfff0f31.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Textures/palette_button.png"
dest_files=["res://.godot/imported/palette_button.png-fd335e0dbb703bd94af22f96bfff0f31.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Textures/palette_button_outline.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://d2x4s44tq3fd3"
path="res://.godot/imported/palette_button_outline.png-1dde46a159e7ac04bf8f4d8211981e2d.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Textures/palette_button_outline.png"
dest_files=["res://.godot/imported/palette_button_outline.png-1dde46a159e7ac04bf8f4d8211981e2d.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Textures/scrollbar.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dijv04a2yoqh2"
path="res://.godot/imported/scrollbar.png-eadd7aad7ff0b21abf904a8ffd9a0d17.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Textures/scrollbar.png"
dest_files=["res://.godot/imported/scrollbar.png-eadd7aad7ff0b21abf904a8ffd9a0d17.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Textures/scrollbar_bg.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://rn8146pf73a8"
path="res://.godot/imported/scrollbar_bg.png-3cbfdbe3f3545d9e0b439db7f8ef5b9f.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Textures/scrollbar_bg.png"
dest_files=["res://.godot/imported/scrollbar_bg.png-3cbfdbe3f3545d9e0b439db7f8ef5b9f.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Textures/scrollbar_hl.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dpy8q7l3et7er"
path="res://.godot/imported/scrollbar_hl.png-8a162faa1f983be213b07295471fc0ec.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Textures/scrollbar_hl.png"
dest_files=["res://.godot/imported/scrollbar_hl.png-8a162faa1f983be213b07295471fc0ec.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Textures/selection_cursor.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dobdco0am2obq"
path="res://.godot/imported/selection_cursor.png-c4d243d49e4bdda5af5ac45f72f7778f.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Textures/selection_cursor.png"
dest_files=["res://.godot/imported/selection_cursor.png-c4d243d49e4bdda5af5ac45f72f7778f.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Textures/slider_knob_white.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bq4dsmdix16kd"
path="res://.godot/imported/slider_knob_white.png-3e114d323795e813365f68173837837b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Textures/slider_knob_white.png"
dest_files=["res://.godot/imported/slider_knob_white.png-3e114d323795e813365f68173837837b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Textures/switch_off.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://baw4u2ij0ftpe"
path="res://.godot/imported/switch_off.png-3338dccdaecfa98b3d52f0fdbc42a09f.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Textures/switch_off.png"
dest_files=["res://.godot/imported/switch_off.png-3338dccdaecfa98b3d52f0fdbc42a09f.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/Textures/switch_on.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://vbj8ub3j37ih"
path="res://.godot/imported/switch_on.png-fff765fdb0aaf21336651f1a319abb80.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Textures/switch_on.png"
dest_files=["res://.godot/imported/switch_on.png-fff765fdb0aaf21336651f1a319abb80.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/Assets/icon.png.import
================================================
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b6io62g8b730e"
path="res://.godot/imported/icon.png-ec880de02d5dab0aa15458af9d6c53ed.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/icon.png"
dest_files=["res://.godot/imported/icon.png-ec880de02d5dab0aa15458af9d6c53ed.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
================================================
FILE: lorien/BrushStroke/BrushStroke.gd
================================================
extends Node2D
class_name BrushStroke
# ------------------------------------------------------------------------------------------------
const MAX_POINTS := 1000
const MAX_PRESSURE_DIFF := 0.05
const MIN_PRESSURE_VALUE := 0.1
const MAX_PRESSURE_VALUE := 1.0
const COLLIDER_NODE_NAME := "StrokeCollider"
const GROUP_ONSCREEN := "onscreen_stroke"
const MAX_VECTOR2 := Vector2(2147483647, 2147483647)
const MIN_VECTOR2 := -MAX_VECTOR2
# ------------------------------------------------------------------------------------------------
@onready var _line2d: Line2D = $Line2D
@onready var _visibility_notifier: VisibleOnScreenNotifier2D = $VisibleOnScreenNotifier2D
var color: Color: get = get_color, set = set_color
var size: int
var points: Array[Vector2]
var pressures: Array[float]
var top_left_pos: Vector2
var bottom_right_pos: Vector2
# ------------------------------------------------------------------------------------------------
func _ready() -> void:
_line2d.width_curve = Curve.new()
_line2d.texture = BrushStrokeTexture.texture
_visibility_notifier.screen_entered.connect(func() -> void: add_to_group(GROUP_ONSCREEN))
_visibility_notifier.screen_exited.connect(func() -> void: remove_from_group(GROUP_ONSCREEN))
var rounding_mode: int = Settings.get_value(
Settings.RENDERING_BRUSH_ROUNDING, Config.DEFAULT_BRUSH_ROUNDING
)
match rounding_mode:
Types.BrushRoundingType.FLAT:
_line2d.end_cap_mode = Line2D.LINE_CAP_NONE
_line2d.begin_cap_mode = Line2D.LINE_CAP_NONE
Types.BrushRoundingType.ROUNDED:
_line2d.end_cap_mode = Line2D.LINE_CAP_ROUND
_line2d.begin_cap_mode = Line2D.LINE_CAP_ROUND
refresh()
# -------------------------------------------------------------------------------------------------
func _to_string() -> String:
return "Color: %s, Size: %d, Points: %s" % [color, size, points]
# -------------------------------------------------------------------------------------------------
func add_point(point: Vector2, pressure: float) -> void:
# Smooth out pressure values (on Linux i sometimes get really high pressure spikes)
if !pressures.is_empty():
var last_pressure: float = pressures.back()
var pressure_diff := pressure - last_pressure
if abs(pressure_diff) > MAX_PRESSURE_DIFF:
pressure = last_pressure + sign(pressure_diff) * MAX_PRESSURE_DIFF
pressure = clamp(pressure, MIN_PRESSURE_VALUE, MAX_PRESSURE_VALUE)
points.append(point)
pressures.append(pressure)
# ------------------------------------------------------------------------------------------------
func remove_last_point() -> void:
if !points.is_empty():
points.pop_back()
pressures.pop_back()
_line2d.points.remove_at(_line2d.points.size() - 1)
_line2d.width_curve.remove_point(_line2d.width_curve.get_point_count() - 1)
# ------------------------------------------------------------------------------------------------
func remove_all_points() -> void:
if !points.is_empty():
points.clear()
pressures.clear()
_line2d.points = PackedVector2Array()
_line2d.width_curve.clear_points()
# -------------------------------------------------------------------------------------------------
func enable_collider(enable: bool) -> void:
# Remove current collider
var body: StaticBody2D = get_node_or_null(COLLIDER_NODE_NAME)
if body != null:
remove_child(body)
body.queue_free()
# Create new collider
if enable:
body = StaticBody2D.new()
body.name = COLLIDER_NODE_NAME
var idx := 0
while idx < points.size()-1:
var col := CollisionShape2D.new()
var shape := SegmentShape2D.new()
shape.a = points[idx]
shape.b = points[idx + 1]
col.shape = shape
body.add_child(col)
idx += 1
add_child(body)
# ------------------------------------------------------------------------------------------------
func refresh() -> void:
_line2d.clear_points()
_line2d.width_curve.clear_points()
if points.is_empty():
return
_line2d.default_color = color
_line2d.width = size
var p_idx := 0
var top_left := MAX_VECTOR2
var bottom_right := MIN_VECTOR2
var curve_step: float = 1.0 / pressures.size()
for point: Vector2 in points:
# Add the point
_line2d.add_point(point)
var pressure: float = pressures[p_idx]
_line2d.width_curve.add_point(Vector2(curve_step * p_idx, pressure / MAX_PRESSURE_VALUE))
p_idx += 1
# Update the extreme values
top_left.x = min(top_left.x, point.x)
top_left.y = min(top_left.y, point.y)
bottom_right.x = max(bottom_right.x, point.x)
bottom_right.y = max(bottom_right.y, point.y)
top_left_pos = top_left
bottom_right_pos = bottom_right
_visibility_notifier.rect = Utils.calculate_rect(top_left, bottom_right)
# -------------------------------------------------------------------------------------------------
func set_color(c: Color) -> void:
color = c
if _line2d != null:
_line2d.default_color = color
# -------------------------------------------------------------------------------------------------
func get_color() -> Color:
return color
# -------------------------------------------------------------------------------------------------
func clear() -> void:
points.clear()
pressures.clear()
_line2d.clear_points()
_line2d.width_curve.clear_points()
================================================
FILE: lorien/BrushStroke/BrushStroke.tscn
================================================
[gd_scene load_steps=2 format=3 uid="uid://c4qnqdrb1kmv7"]
[ext_resource type="Script" path="res://BrushStroke/BrushStroke.gd" id="1"]
[node name="BrushStroke" type="Node2D"]
script = ExtResource("1")
[node name="VisibleOnScreenNotifier2D" type="VisibleOnScreenNotifier2D" parent="."]
[node name="Line2D" type="Line2D" parent="."]
texture_filter = 6
texture_mode = 2
joint_mode = 2
================================================
FILE: lorien/BrushStroke/BrushStrokeOptimizer.gd
================================================
class_name BrushStrokeOptimizer
# -------------------------------------------------------------------------------------------------
const ANGLE_THRESHOLD := 0.5
const MIN_DISTANCE := 4.0
# -------------------------------------------------------------------------------------------------
var points_removed := 0
# -------------------------------------------------------------------------------------------------
func reset() -> void:
points_removed = 0
# -------------------------------------------------------------------------------------------------
func optimize(s: BrushStroke) -> void:
if s.points.size() < 8:
return
var filtered_points: Array[Vector2]
var filtered_pressures: Array[float]
filtered_points.append(s.points.front())
filtered_pressures.append(s.pressures.front())
var previous_angle := 0.0
for i: int in range(1, s.points.size()):
var prev_point := s.points[i-1]
var point := s.points[i]
var pressure := s.pressures[i]
# Distance between 2 points must be greater than x
var distance := prev_point.distance_to(point)
# Angle between points must be beigger than x deg
var angle := rad_to_deg(prev_point.angle_to_point(point))
var angle_diff: float = abs(abs(angle) - abs(previous_angle))
previous_angle = angle
if distance > MIN_DISTANCE || angle_diff >= ANGLE_THRESHOLD:
filtered_points.append(point)
filtered_pressures.append(pressure)
else:
points_removed += 1
# add back last point
if !filtered_points.back().is_equal_approx(s.points.back()):
filtered_points.append(s.points.back())
filtered_pressures.append(s.pressures.back())
s.points = filtered_points
s.pressures = filtered_pressures
================================================
FILE: lorien/BrushStroke/BrushStrokeTexture.gd
================================================
extends Node
# -------------------------------------------------------------------------------------------------
# Note:
#
# This code is taken from: https://github.com/godot-extended-libraries/godot-antialiased-line2d
# which has been released under the MIT license
# -------------------------------------------------------------------------------------------------
# Generates the antialiased Line2D texture that will be used by the various nodes.
# We do this in a singleton to perform this generation once at load, rather than once
# for every AntialiasedLine2D node. This generation can take several dozen milliseconds,
# so it would cause stuttering if performed during gameplay.
var texture: ImageTexture
func _ready() -> void:
# Generate a texture with custom mipmaps (1-pixel feather on the top and bottom sides).
# The texture must be square for mipmaps to work correctly. The texture's in-memory size is still
# pretty low (less than 200 KB), so this should not cause any performance problems.
var data := PackedByteArray()
for mipmap: int in [256, 128, 64, 32, 16, 8, 4, 2, 1]:
for y: int in mipmap:
for x: int in mipmap:
# White. If you need a different color for the Line2D, change the `default_color` property.
data.push_back(255)
# The last two mips are very thin. They require special handling to prevent lines
# from disappearing entirely.
if mipmap >= 4:
if y == 0 or y == mipmap - 1:
# Fully transparent.
data.push_back(0)
else:
# Fully opaque.
data.push_back(255)
elif mipmap == 2:
# Line will be a bit misaligned, but it'll look smoother than using lower alpha
# for both pixels.
if y == 1:
# Fully transparent.
data.push_back(0)
else:
# Fully opaque.
data.push_back(255)
else: # mipmap == 1
# Average of 0 and 255 (there is only one pixel).
data.push_back(128)
var image := Image.create_from_data(256, 256, true, Image.FORMAT_LA8, data)
texture = ImageTexture.create_from_image(image)
================================================
FILE: lorien/Config.gd
================================================
class_name Config
const VERSION_MAJOR := 0
const VERSION_MINOR := 7
const VERSION_PATCH := 0
const VERSION_STATUS := "-beta1"
static var VERSION_STRING := "%d.%d.%d%s" % [VERSION_MAJOR, VERSION_MINOR, VERSION_PATCH, VERSION_STATUS]
const CONFIG_PATH := "user://settings_v4.cfg"
const PALETTES_PATH := "user://palettes.cfg"
const STATE_PATH := "user://state.cfg"
const MAX_PALETTE_SIZE := 40
const MIN_PALETTE_SIZE := 1
const BACKGROUND_IDLE_TIME_THRESHOLD := 250 # in ms
const MIN_WINDOW_SIZE := Vector2(320, 256)
const DEFAULT_CANVAS_COLOR := Color("202124")
const DEFAULT_BRUSH_COLOR := Color.WHITE
const DEFAULT_BRUSH_SIZE := 10
const DEFAULT_PRESSURE_SENSITIVITY := 1.0
const DEFAULT_CONSTANT_PRESSURE := false
const DEFAULT_TOOL_PRESSURE := 0.5
const DEFAULT_STABILIZER_STRENGTH := 0.5
const DEFAULT_SELECTION_COLOR := Color("#2a967c")
const DEFAULT_FOREGROUND_FPS := 144
const DEFAULT_BACKGROUND_FPS := 10
const DEFAULT_BRUSH_ROUNDING := Types.BrushRoundingType.ROUNDED
const DEFAULT_UI_SCALE_MODE := Types.UIScale.AUTO
const DEFAULT_UI_SCALE := 1.0
const DEFAULT_GRID_PATTERN := Types.GridPattern.DOTS
const DEFAULT_GRID_SIZE := 25.0
const DEFAULT_APPEARANCE_THEME := 0
================================================
FILE: lorien/InfiniteCanvas/Cursor/BaseCursor.gd
================================================
@icon("res://Assets/Icons/cursor_icon.png")
class_name BaseCursor
extends Sprite2D
# -------------------------------------------------------------------------------------------------
var _brush_size: int
var _pressure := 1.0
@onready var _camera: Camera2D = get_viewport().get_node("Camera2D")
# -------------------------------------------------------------------------------------------------
func _input(event: InputEvent) -> void:
if event is InputEventMouseMotion:
update_position()
# -------------------------------------------------------------------------------------------------
func update_position() -> void:
global_position = _camera.get_global_mouse_position()
# -------------------------------------------------------------------------------------------------
func set_pressure(pressure: float) -> void:
_pressure = pressure
# -------------------------------------------------------------------------------------------------
func change_size(value: int) -> void:
_brush_size = value
# -------------------------------------------------------------------------------------------------
func _on_canvas_position_changed(pos: Vector2) -> void:
update_position()
# -------------------------------------------------------------------------------------------------
func _on_zoom_changed(value: float) -> void:
pass
================================================
FILE: lorien/InfiniteCanvas/Cursor/BrushCursor/BrushCursor.gd
================================================
class_name BrushCursor
extends BaseCursor
# -------------------------------------------------------------------------------------------------
func _draw() -> void:
var radius := _brush_size/2.0
draw_arc(Vector2.ZERO, radius*_pressure, 0, PI*2, 32, Color.BLACK, 0.5, true)
#draw_circle(Vector2.ZERO, radius*0.08, Color.BLACK)
# -------------------------------------------------------------------------------------------------
func set_pressure(pressure: float) -> void:
if pressure <= 1.0:
_pressure = pressure
queue_redraw()
# -------------------------------------------------------------------------------------------------
func change_size(brush_size: int) -> void:
super(brush_size)
queue_redraw()
================================================
FILE: lorien/InfiniteCanvas/Cursor/BrushCursor/BrushCursor.tscn
================================================
[gd_scene load_steps=4 format=3 uid="uid://cf3j2vavqos04"]
[ext_resource type="Shader" path="res://InfiniteCanvas/Cursor/cursor.gdshader" id="1"]
[ext_resource type="Script" path="res://InfiniteCanvas/Cursor/BrushCursor/BrushCursor.gd" id="2"]
[sub_resource type="ShaderMaterial" id="1"]
shader = ExtResource("1")
[node name="BrushCursor" type="Sprite2D"]
material = SubResource("1")
script = ExtResource("2")
================================================
FILE: lorien/InfiniteCanvas/Cursor/SelectionCursor/SelectionCursor.gd
================================================
class_name SelectionCursor
extends BaseCursor
# -------------------------------------------------------------------------------------------------
const MOVE_TEXTURE = preload("res://Assets/Cursors/move_cursor.png")
const SELECT_TEXTURE = preload("res://Assets/Textures/selection_cursor.png")
enum Mode {
MOVE,
SELECT
}
# -------------------------------------------------------------------------------------------------
var mode := Mode.SELECT: get = get_mode, set = set_mode
# -------------------------------------------------------------------------------------------------
func _on_zoom_changed(zoom_value: float) -> void:
scale = Vector2.ONE / zoom_value
# -------------------------------------------------------------------------------------------------
func set_mode(m: Mode) -> void:
mode = m
match mode:
Mode.MOVE: texture = MOVE_TEXTURE
_: texture = SELECT_TEXTURE
# -------------------------------------------------------------------------------------------------
func get_mode() -> int:
return mode
================================================
FILE: lorien/InfiniteCanvas/Cursor/SelectionCursor/SelectionCursor.tscn
================================================
[gd_scene load_steps=4 format=2]
[ext_resource path="res://InfiniteCanvas/Cursor/SelectionCursor/SelectionCursor.gd" type="Script" id=1]
[ext_resource path="res://InfiniteCanvas/Cursor/cursor.gdshader" type="Shader" id=2]
[sub_resource type="ShaderMaterial" id=1]
shader = ExtResource( 2 )
[node name="SelectionCursor" type="Sprite2D"]
material = SubResource( 1 )
script = ExtResource( 1 )
================================================
FILE: lorien/InfiniteCanvas/Cursor/cursor.gdshader
================================================
shader_type canvas_item;
uniform sampler2D SCREEN_TEXTURE: hint_screen_texture, filter_linear_mipmap;
void fragment() {
vec4 background_color = texture(SCREEN_TEXTURE, SCREEN_UV);
vec4 texture_color = texture(TEXTURE, UV);
vec3 inverted = vec3(texture_color.rgb - background_color.rgb);
float grayscale = (inverted.r + inverted.g + inverted.b) / 3.0;
grayscale = min(1.0, grayscale*1.25);
COLOR = vec4(grayscale, grayscale, grayscale, texture_color.a);
}
================================================
FILE: lorien/InfiniteCanvas/DebugDraw.gd
================================================
extends Node2D
#
# This is used to draw debug stuff like bounding boxes etc.
#
# -------------------------------------------------------------------------------------------------
var _bounding_boxes: Array[Rect2]
# -------------------------------------------------------------------------------------------------
func set_bounding_boxes(boxes: Array[Rect2]) -> void:
_bounding_boxes = boxes
queue_redraw()
# -------------------------------------------------------------------------------------------------
func _draw() -> void:
for box in _bounding_boxes:
draw_rect(box, Color.RED, false)
=============
gitextract_k0igh7rb/
├── .github/
│ ├── FUNDING.yml
│ ├── ISSUE_TEMPLATE/
│ │ ├── bug_report.md
│ │ └── feature_request.md
│ └── workflows/
│ └── build.yml
├── .gitignore
├── LICENSE
├── README.md
├── art/
│ ├── custom_icons.afdesign
│ └── logo.afdesign
├── docs/
│ ├── changelog.md
│ ├── contributing.md
│ ├── file_format.md
│ ├── i18n.md
│ ├── manuals/
│ │ ├── manual_v0.1.0.md
│ │ ├── manual_v0.2.0.md
│ │ ├── manual_v0.3.0.md
│ │ ├── manual_v0.4.0.md
│ │ ├── manual_v0.5.0.md
│ │ ├── manual_v0.6.0.md
│ │ └── manual_v0.7.0.md
│ └── roadmap.md
├── lorien/
│ ├── Assets/
│ │ ├── Cursors/
│ │ │ └── move_cursor.png.import
│ │ ├── I18n/
│ │ │ ├── ar.txt
│ │ │ ├── de.txt
│ │ │ ├── en.txt
│ │ │ ├── es.txt
│ │ │ ├── fr.txt
│ │ │ ├── it.txt
│ │ │ ├── ko.txt
│ │ │ ├── pt-BR.txt
│ │ │ ├── ru.txt
│ │ │ ├── tr.txt
│ │ │ ├── uk.txt
│ │ │ ├── zh-CN.txt
│ │ │ └── zh-TW.txt
│ │ ├── Icons/
│ │ │ ├── add.png.import
│ │ │ ├── brush_tool.png.import
│ │ │ ├── canvas_color_tool.png.import
│ │ │ ├── circle_tool.png.import
│ │ │ ├── clear_canvas.png.import
│ │ │ ├── close.png.import
│ │ │ ├── color_picker.png.import
│ │ │ ├── copy.png.import
│ │ │ ├── cursor_icon.png.import
│ │ │ ├── delete.png.import
│ │ │ ├── edit.png.import
│ │ │ ├── eraser_tool.png.import
│ │ │ ├── fullscreen.png.import
│ │ │ ├── grid.png.import
│ │ │ ├── line_tool.png.import
│ │ │ ├── menu.png.import
│ │ │ ├── move_tool.png.import
│ │ │ ├── new_file.png.import
│ │ │ ├── open_file.png.import
│ │ │ ├── plus.png.import
│ │ │ ├── rectangle_tool.png.import
│ │ │ ├── redo.png.import
│ │ │ ├── save_file.png.import
│ │ │ ├── selection_tool.png.import
│ │ │ ├── tools.png.import
│ │ │ └── undo.png.import
│ │ ├── Player/
│ │ │ ├── p1_duck.png.import
│ │ │ ├── p1_front.png.import
│ │ │ ├── p1_hurt.png.import
│ │ │ ├── p1_jump.png.import
│ │ │ ├── p1_stand.png.import
│ │ │ └── p1_walk/
│ │ │ ├── p1_walk01.png.import
│ │ │ ├── p1_walk02.png.import
│ │ │ ├── p1_walk03.png.import
│ │ │ ├── p1_walk04.png.import
│ │ │ ├── p1_walk05.png.import
│ │ │ ├── p1_walk06.png.import
│ │ │ ├── p1_walk07.png.import
│ │ │ ├── p1_walk08.png.import
│ │ │ ├── p1_walk09.png.import
│ │ │ ├── p1_walk10.png.import
│ │ │ └── p1_walk11.png.import
│ │ ├── Textures/
│ │ │ ├── arrow_right.png.import
│ │ │ ├── dot.png.import
│ │ │ ├── palette_button.png.import
│ │ │ ├── palette_button_outline.png.import
│ │ │ ├── scrollbar.png.import
│ │ │ ├── scrollbar_bg.png.import
│ │ │ ├── scrollbar_hl.png.import
│ │ │ ├── selection_cursor.png.import
│ │ │ ├── slider_knob_white.png.import
│ │ │ ├── switch_off.png.import
│ │ │ └── switch_on.png.import
│ │ └── icon.png.import
│ ├── BrushStroke/
│ │ ├── BrushStroke.gd
│ │ ├── BrushStroke.tscn
│ │ ├── BrushStrokeOptimizer.gd
│ │ └── BrushStrokeTexture.gd
│ ├── Config.gd
│ ├── InfiniteCanvas/
│ │ ├── Cursor/
│ │ │ ├── BaseCursor.gd
│ │ │ ├── BrushCursor/
│ │ │ │ ├── BrushCursor.gd
│ │ │ │ └── BrushCursor.tscn
│ │ │ ├── SelectionCursor/
│ │ │ │ ├── SelectionCursor.gd
│ │ │ │ └── SelectionCursor.tscn
│ │ │ └── cursor.gdshader
│ │ ├── DebugDraw.gd
│ │ ├── InfiniteCanvas.gd
│ │ ├── InfiniteCanvas.tscn
│ │ ├── InfiniteCanvasGrid.gd
│ │ ├── PanZoomCamera.gd
│ │ ├── Tools/
│ │ │ ├── BrushTool.gd
│ │ │ ├── CanvasTool.gd
│ │ │ ├── CircleTool.gd
│ │ │ ├── EraserTool.gd
│ │ │ ├── LineTool.gd
│ │ │ ├── RectangleTool.gd
│ │ │ ├── SelectionRectangle.gd
│ │ │ ├── SelectionTool.gd
│ │ │ └── selection_rectangle.gdshader
│ │ ├── constant_pressure_curve.tres
│ │ └── default_pressure_curve.tres
│ ├── Main.gd
│ ├── Main.tscn
│ ├── Misc/
│ │ ├── GlobalSignals.gd
│ │ ├── I18nParser.gd
│ │ ├── KeybindingsManager.gd
│ │ ├── Player/
│ │ │ ├── Player.gd
│ │ │ └── Player.tscn
│ │ ├── Settings.gd
│ │ ├── StatePersistence.gd
│ │ ├── SvgExporter.gd
│ │ ├── Types.gd
│ │ └── Utils.gd
│ ├── Palette/
│ │ ├── Palette.gd
│ │ ├── PaletteManager.gd
│ │ └── default_palette.tres
│ ├── ProjectManager/
│ │ ├── Project.gd
│ │ ├── ProjectManager.gd
│ │ ├── ProjectMetadata.gd
│ │ └── Serializer.gd
│ ├── UI/
│ │ ├── ColorPalettePicker.gd
│ │ ├── ColorPalettePicker.tscn
│ │ ├── Components/
│ │ │ ├── FlatTextureButton.gd
│ │ │ ├── KeybindItem.gd
│ │ │ ├── KeybindItem.tscn
│ │ │ ├── PaletteButton.gd
│ │ │ └── PaletteButton.tscn
│ │ ├── Dialogs/
│ │ │ ├── AboutDialog.gd
│ │ │ ├── AboutDialog.tscn
│ │ │ ├── AddKeyDialog.tscn
│ │ │ ├── AlertDialog.gd
│ │ │ ├── AlertDialog.tscn
│ │ │ ├── DeletePaletteDialog.gd
│ │ │ ├── DeletePaletteDialog.tscn
│ │ │ ├── EditPaletteDialog.gd
│ │ │ ├── EditPaletteDialog.tscn
│ │ │ ├── ExitDialog.tscn
│ │ │ ├── NewPaletteDialog.gd
│ │ │ ├── NewPaletteDialog.tscn
│ │ │ ├── SettingsDialog.gd
│ │ │ ├── SettingsDialog.tscn
│ │ │ ├── UnsavedChangesDialog.gd
│ │ │ └── UnsavedChangesDialog.tscn
│ │ ├── MainMenu.gd
│ │ ├── MainMenu.tscn
│ │ ├── Menubar.gd
│ │ ├── Menubar.tscn
│ │ ├── Statusbar.gd
│ │ ├── Statusbar.tscn
│ │ ├── Themes/
│ │ │ ├── dark/
│ │ │ │ ├── tab_active.tres
│ │ │ │ ├── tab_inactive.tres
│ │ │ │ ├── theme.tres
│ │ │ │ └── toolbar.tres
│ │ │ └── light/
│ │ │ ├── tab_active.tres
│ │ │ ├── tab_inactive.tres
│ │ │ ├── theme.tres
│ │ │ └── toolbar.tres
│ │ ├── Toolbar.gd
│ │ └── Toolbar.tscn
│ ├── export_presets.cfg
│ └── project.godot
└── public/
└── linux/
├── com.github.mbrlabs.Lorien.desktop
├── com.github.mbrlabs.Lorien.metainfo.xml
└── x-lorien-canvas.mimetype.xml
Condensed preview — 179 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (2,298K chars).
[
{
"path": ".github/FUNDING.yml",
"chars": 53,
"preview": "ko_fi: mbrlabs\ncustom: https://www.paypal.me/mbrlabs\n"
},
{
"path": ".github/ISSUE_TEMPLATE/bug_report.md",
"chars": 503,
"preview": "---\nname: Bug report\nabout: Report a bug in Lorien\ntitle: ''\nlabels: bug\nassignees: ''\n---\n<!-- Please search existing i"
},
{
"path": ".github/ISSUE_TEMPLATE/feature_request.md",
"chars": 392,
"preview": "---\nname: Feature/enhancement request\nabout: Request a new feature or enhancement in Lorien\ntitle: ''\nlabels: enhancemen"
},
{
"path": ".github/workflows/build.yml",
"chars": 2930,
"preview": "name: \"build\"\n\non:\n push:\n branches: [ main ]\n pull_request:\n branches: [ main ]\n\nenv:\n GODOT_VERSION: 4.3\n EX"
},
{
"path": ".gitignore",
"chars": 130,
"preview": "# Godot-specific ignores\n.import/\n.godot/\n\n# Mono-specific ignores\n.mono/\ndata_*/\n\n# Visual Studio Code-specific ignores"
},
{
"path": "LICENSE",
"chars": 1076,
"preview": "MIT License\n\nCopyright (c) 2021-2025 Marcus Brummer\n\nPermission is hereby granted, free of charge, to any person obtaini"
},
{
"path": "README.md",
"chars": 3100,
"preview": "<img src=\"https://raw.githubusercontent.com/mbrlabs/Lorien/main/images/lorien.png\" align=\"left\"/>\n\n# Lorien\n<p>\n <a h"
},
{
"path": "docs/changelog.md",
"chars": 9478,
"preview": "# Changelog\n\nAll notable changes to this project will be documented in this file.\n\nThe format is based on [Keep a Change"
},
{
"path": "docs/contributing.md",
"chars": 639,
"preview": "# How to contribute\n\n## General\nThis guide is loosly based on [Godot's contributing guidelines](https://github.com/godot"
},
{
"path": "docs/file_format.md",
"chars": 134,
"preview": "# File Format\n\nTODO because not final. \nSee: https://github.com/mbrlabs/Lorien/blob/main/lorien/ProjectManager"
},
{
"path": "docs/i18n.md",
"chars": 1334,
"preview": "# Localization\n\n### How Lorien handles localization\n\nGodot has two ways to handle multiple languages right now:\n- Puttin"
},
{
"path": "docs/manuals/manual_v0.1.0.md",
"chars": 776,
"preview": "# Lorien Manual v0.1.0\n\nDrawing tablets are supported and recommended, but you can also just use Keyboard+Mouse. \n\n## Ba"
},
{
"path": "docs/manuals/manual_v0.2.0.md",
"chars": 1738,
"preview": "# Lorien Manual v0.2.0\n\nDrawing tablets are supported and recommended, but you can also just use Keyboard+Mouse. \n\n## Ba"
},
{
"path": "docs/manuals/manual_v0.3.0.md",
"chars": 2271,
"preview": "# Lorien Manual v0.3.0\n\nDrawing tablets are supported and recommended, but you can also just use Keyboard+Mouse. \n\n## Ba"
},
{
"path": "docs/manuals/manual_v0.4.0.md",
"chars": 3728,
"preview": "# Lorien Manual v0.4.0\n\nDrawing tablets are supported and recommended, but you can also just use Keyboard+Mouse. \n\n## Ba"
},
{
"path": "docs/manuals/manual_v0.5.0.md",
"chars": 4404,
"preview": "# Lorien Manual v0.5.0\n\nDrawing tablets are supported and recommended, but you can also just use Keyboard+Mouse. \n\n## Ba"
},
{
"path": "docs/manuals/manual_v0.6.0.md",
"chars": 4526,
"preview": "# Lorien Manual v0.6.0\n\nDrawing tablets are supported and recommended, but you can also just use Keyboard+Mouse. \n\n## Ba"
},
{
"path": "docs/manuals/manual_v0.7.0.md",
"chars": 4449,
"preview": "# Lorien Manual v0.7.0\n\nDrawing tablets are supported and recommended, but you can also just use Keyboard+Mouse. \n\n## Ba"
},
{
"path": "docs/roadmap.md",
"chars": 118,
"preview": "# Roadmap\n\nThe old roadmap is for the most part implemented or obsolete. \nSo this needs to be updated at some point :)"
},
{
"path": "lorien/Assets/Cursors/move_cursor.png.import",
"chars": 782,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://cynvq1tyvqx67\"\npath=\"res://.godot/imported/move_cursor"
},
{
"path": "lorien/Assets/I18n/ar.txt",
"chars": 5935,
"preview": "LANGUAGE_NAME العربية\n\n# -----------------------------------------------------------------------------\n# Menu strings\n# "
},
{
"path": "lorien/Assets/I18n/de.txt",
"chars": 6866,
"preview": "LANGUAGE_NAME Deutsch\n\n# --------------------------------------------------------------------------------\n# Menu\n# -----"
},
{
"path": "lorien/Assets/I18n/en.txt",
"chars": 8009,
"preview": "LANGUAGE_NAME English\n\n# -----------------------------------------------------------------------------\n# Menu strings\n# "
},
{
"path": "lorien/Assets/I18n/es.txt",
"chars": 8542,
"preview": "LANGUAGE_NAME Español\n\n# -----------------------------------------------------------------------------\n# Menu strings\n# "
},
{
"path": "lorien/Assets/I18n/fr.txt",
"chars": 5693,
"preview": "LANGUAGE_NAME Français\n\n# -----------------------------------------------------------------------------\n# Menu strings\n#"
},
{
"path": "lorien/Assets/I18n/it.txt",
"chars": 7540,
"preview": "LANGUAGE_NAME Italiano\n\n# -----------------------------------------------------------------------------\n# Menu\n# -------"
},
{
"path": "lorien/Assets/I18n/ko.txt",
"chars": 4989,
"preview": "LANGUAGE_NAME 한국어\n\n# -----------------------------------------------------------------------------\n# Menu strings\n# ----"
},
{
"path": "lorien/Assets/I18n/pt-BR.txt",
"chars": 7600,
"preview": "LANGUAGE_NAME Português Brasileiro\n\n# -----------------------------------------------------------------------------\n# Me"
},
{
"path": "lorien/Assets/I18n/ru.txt",
"chars": 5703,
"preview": "LANGUAGE_NAME Русский\n\n# -----------------------------------------------------------------------------\n# Menu strings\n# "
},
{
"path": "lorien/Assets/I18n/tr.txt",
"chars": 7441,
"preview": "LANGUAGE_NAME Türkçe\n\n# -----------------------------------------------------------------------------\n# Menu strings\n# -"
},
{
"path": "lorien/Assets/I18n/uk.txt",
"chars": 7670,
"preview": "LANGUAGE_NAME Українська\n\n# -----------------------------------------------------------------------------\n# Menu strings"
},
{
"path": "lorien/Assets/I18n/zh-CN.txt",
"chars": 4877,
"preview": "LANGUAGE_NAME 汉语 # Simplified Chinese\n\n# -----------------------------------------------------------------------------\n#"
},
{
"path": "lorien/Assets/I18n/zh-TW.txt",
"chars": 4887,
"preview": "LANGUAGE_NAME 漢語 # Traditional Chinese\n\n# -----------------------------------------------------------------------------\n"
},
{
"path": "lorien/Assets/Icons/add.png.import",
"chars": 756,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://bbdkcvds2nxg7\"\npath=\"res://.godot/imported/add.png-352"
},
{
"path": "lorien/Assets/Icons/brush_tool.png.import",
"chars": 777,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://cs5qdaf401w45\"\npath=\"res://.godot/imported/brush_tool."
},
{
"path": "lorien/Assets/Icons/canvas_color_tool.png.import",
"chars": 797,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://i3rocgvfk221\"\npath=\"res://.godot/imported/canvas_color"
},
{
"path": "lorien/Assets/Icons/circle_tool.png.import",
"chars": 779,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://0qicbkag5jd3\"\npath=\"res://.godot/imported/circle_tool."
},
{
"path": "lorien/Assets/Icons/clear_canvas.png.import",
"chars": 783,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://di3rucqyq5bk7\"\npath=\"res://.godot/imported/clear_canva"
},
{
"path": "lorien/Assets/Icons/close.png.import",
"chars": 762,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://bp1yka17gbjtu\"\npath=\"res://.godot/imported/close.png-7"
},
{
"path": "lorien/Assets/Icons/color_picker.png.import",
"chars": 782,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://tcovt1vw06tr\"\npath=\"res://.godot/imported/color_picker"
},
{
"path": "lorien/Assets/Icons/copy.png.import",
"chars": 759,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://ci340bpx1hg78\"\npath=\"res://.godot/imported/copy.png-0e"
},
{
"path": "lorien/Assets/Icons/cursor_icon.png.import",
"chars": 780,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://cv4jae3ml8jlh\"\npath=\"res://.godot/imported/cursor_icon"
},
{
"path": "lorien/Assets/Icons/delete.png.import",
"chars": 765,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://c3maqrdnsjgiq\"\npath=\"res://.godot/imported/delete.png-"
},
{
"path": "lorien/Assets/Icons/edit.png.import",
"chars": 759,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://bu10tixbxmwus\"\npath=\"res://.godot/imported/edit.png-0f"
},
{
"path": "lorien/Assets/Icons/eraser_tool.png.import",
"chars": 780,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://bynefqnt8pdby\"\npath=\"res://.godot/imported/eraser_tool"
},
{
"path": "lorien/Assets/Icons/fullscreen.png.import",
"chars": 777,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://b4mgx1os6mdeg\"\npath=\"res://.godot/imported/fullscreen."
},
{
"path": "lorien/Assets/Icons/grid.png.import",
"chars": 759,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://bup7ms7nmbw0m\"\npath=\"res://.godot/imported/grid.png-8b"
},
{
"path": "lorien/Assets/Icons/line_tool.png.import",
"chars": 774,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://bn1qdw0v30np0\"\npath=\"res://.godot/imported/line_tool.p"
},
{
"path": "lorien/Assets/Icons/menu.png.import",
"chars": 758,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://r233fnxk5qkf\"\npath=\"res://.godot/imported/menu.png-db6"
},
{
"path": "lorien/Assets/Icons/move_tool.png.import",
"chars": 774,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://bnh02pwlrohcf\"\npath=\"res://.godot/imported/move_tool.p"
},
{
"path": "lorien/Assets/Icons/new_file.png.import",
"chars": 771,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://b14r0skgpftxj\"\npath=\"res://.godot/imported/new_file.pn"
},
{
"path": "lorien/Assets/Icons/open_file.png.import",
"chars": 774,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://dxi6gc6npiskq\"\npath=\"res://.godot/imported/open_file.p"
},
{
"path": "lorien/Assets/Icons/plus.png.import",
"chars": 759,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://bmutnbt040e0b\"\npath=\"res://.godot/imported/plus.png-43"
},
{
"path": "lorien/Assets/Icons/rectangle_tool.png.import",
"chars": 788,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://7a3xk8n0q24k\"\npath=\"res://.godot/imported/rectangle_to"
},
{
"path": "lorien/Assets/Icons/redo.png.import",
"chars": 758,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://see51v4hg68f\"\npath=\"res://.godot/imported/redo.png-9fc"
},
{
"path": "lorien/Assets/Icons/save_file.png.import",
"chars": 774,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://c4kv3i7fmom58\"\npath=\"res://.godot/imported/save_file.p"
},
{
"path": "lorien/Assets/Icons/selection_tool.png.import",
"chars": 789,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://ddxis8f7tvg66\"\npath=\"res://.godot/imported/selection_t"
},
{
"path": "lorien/Assets/Icons/tools.png.import",
"chars": 762,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://byk2mc1luvjki\"\npath=\"res://.godot/imported/tools.png-9"
},
{
"path": "lorien/Assets/Icons/undo.png.import",
"chars": 758,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://h54g8ofkc3p8\"\npath=\"res://.godot/imported/undo.png-b39"
},
{
"path": "lorien/Assets/Player/p1_duck.png.import",
"chars": 769,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://b122l270v6tvm\"\npath=\"res://.godot/imported/p1_duck.png"
},
{
"path": "lorien/Assets/Player/p1_front.png.import",
"chars": 771,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://ha8dl8gprvvr\"\npath=\"res://.godot/imported/p1_front.png"
},
{
"path": "lorien/Assets/Player/p1_hurt.png.import",
"chars": 768,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://rnedtmq7m02m\"\npath=\"res://.godot/imported/p1_hurt.png-"
},
{
"path": "lorien/Assets/Player/p1_jump.png.import",
"chars": 769,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://cqyukg3uuycf4\"\npath=\"res://.godot/imported/p1_jump.png"
},
{
"path": "lorien/Assets/Player/p1_stand.png.import",
"chars": 771,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://ffgv0s7vrro5\"\npath=\"res://.godot/imported/p1_stand.png"
},
{
"path": "lorien/Assets/Player/p1_walk/p1_walk01.png.import",
"chars": 783,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://byicebm3xqqvf\"\npath=\"res://.godot/imported/p1_walk01.p"
},
{
"path": "lorien/Assets/Player/p1_walk/p1_walk02.png.import",
"chars": 783,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://c0b2kwqc11hmp\"\npath=\"res://.godot/imported/p1_walk02.p"
},
{
"path": "lorien/Assets/Player/p1_walk/p1_walk03.png.import",
"chars": 783,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://c0a6dcqg7ifki\"\npath=\"res://.godot/imported/p1_walk03.p"
},
{
"path": "lorien/Assets/Player/p1_walk/p1_walk04.png.import",
"chars": 783,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://cfltcpca42j7y\"\npath=\"res://.godot/imported/p1_walk04.p"
},
{
"path": "lorien/Assets/Player/p1_walk/p1_walk05.png.import",
"chars": 783,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://dnc8qra7ik1og\"\npath=\"res://.godot/imported/p1_walk05.p"
},
{
"path": "lorien/Assets/Player/p1_walk/p1_walk06.png.import",
"chars": 783,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://col76yk5anc3w\"\npath=\"res://.godot/imported/p1_walk06.p"
},
{
"path": "lorien/Assets/Player/p1_walk/p1_walk07.png.import",
"chars": 783,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://di3s8n8y1er54\"\npath=\"res://.godot/imported/p1_walk07.p"
},
{
"path": "lorien/Assets/Player/p1_walk/p1_walk08.png.import",
"chars": 783,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://dwuysgyc8j82w\"\npath=\"res://.godot/imported/p1_walk08.p"
},
{
"path": "lorien/Assets/Player/p1_walk/p1_walk09.png.import",
"chars": 783,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://danut7sqbg40s\"\npath=\"res://.godot/imported/p1_walk09.p"
},
{
"path": "lorien/Assets/Player/p1_walk/p1_walk10.png.import",
"chars": 783,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://b8cmwiibg70sy\"\npath=\"res://.godot/imported/p1_walk10.p"
},
{
"path": "lorien/Assets/Player/p1_walk/p1_walk11.png.import",
"chars": 783,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://dy4wi0nvwge3k\"\npath=\"res://.godot/imported/p1_walk11.p"
},
{
"path": "lorien/Assets/Textures/arrow_right.png.import",
"chars": 782,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://f75au3rhdj7d\"\npath=\"res://.godot/imported/arrow_right."
},
{
"path": "lorien/Assets/Textures/dot.png.import",
"chars": 759,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://cllsvja6j2npu\"\npath=\"res://.godot/imported/dot.png-b21"
},
{
"path": "lorien/Assets/Textures/palette_button.png.import",
"chars": 792,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://bb2kaiahpvl5m\"\npath=\"res://.godot/imported/palette_but"
},
{
"path": "lorien/Assets/Textures/palette_button_outline.png.import",
"chars": 816,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://d2x4s44tq3fd3\"\npath=\"res://.godot/imported/palette_but"
},
{
"path": "lorien/Assets/Textures/scrollbar.png.import",
"chars": 777,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://dijv04a2yoqh2\"\npath=\"res://.godot/imported/scrollbar.p"
},
{
"path": "lorien/Assets/Textures/scrollbar_bg.png.import",
"chars": 785,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://rn8146pf73a8\"\npath=\"res://.godot/imported/scrollbar_bg"
},
{
"path": "lorien/Assets/Textures/scrollbar_hl.png.import",
"chars": 786,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://dpy8q7l3et7er\"\npath=\"res://.godot/imported/scrollbar_h"
},
{
"path": "lorien/Assets/Textures/selection_cursor.png.import",
"chars": 798,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://dobdco0am2obq\"\npath=\"res://.godot/imported/selection_c"
},
{
"path": "lorien/Assets/Textures/slider_knob_white.png.import",
"chars": 801,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://bq4dsmdix16kd\"\npath=\"res://.godot/imported/slider_knob"
},
{
"path": "lorien/Assets/Textures/switch_off.png.import",
"chars": 780,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://baw4u2ij0ftpe\"\npath=\"res://.godot/imported/switch_off."
},
{
"path": "lorien/Assets/Textures/switch_on.png.import",
"chars": 776,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://vbj8ub3j37ih\"\npath=\"res://.godot/imported/switch_on.pn"
},
{
"path": "lorien/Assets/icon.png.import",
"chars": 753,
"preview": "[remap]\n\nimporter=\"texture\"\ntype=\"CompressedTexture2D\"\nuid=\"uid://b6io62g8b730e\"\npath=\"res://.godot/imported/icon.png-ec"
},
{
"path": "lorien/BrushStroke/BrushStroke.gd",
"chars": 5224,
"preview": "extends Node2D\nclass_name BrushStroke\n\n# -------------------------------------------------------------------------------"
},
{
"path": "lorien/BrushStroke/BrushStroke.tscn",
"chars": 386,
"preview": "[gd_scene load_steps=2 format=3 uid=\"uid://c4qnqdrb1kmv7\"]\n\n[ext_resource type=\"Script\" path=\"res://BrushStroke/BrushStr"
},
{
"path": "lorien/BrushStroke/BrushStrokeOptimizer.gd",
"chars": 1683,
"preview": "class_name BrushStrokeOptimizer\n\n# -------------------------------------------------------------------------------------"
},
{
"path": "lorien/BrushStroke/BrushStrokeTexture.gd",
"chars": 2042,
"preview": "extends Node\n\n# -------------------------------------------------------------------------------------------------\n# Note"
},
{
"path": "lorien/Config.gd",
"chars": 1251,
"preview": "class_name Config\n\nconst VERSION_MAJOR\t\t\t\t\t:= 0\nconst VERSION_MINOR\t\t\t\t\t:= 7\nconst VERSION_PATCH\t\t\t\t\t:= 0\nconst VERSION_"
},
{
"path": "lorien/InfiniteCanvas/Cursor/BaseCursor.gd",
"chars": 1336,
"preview": "@icon(\"res://Assets/Icons/cursor_icon.png\")\nclass_name BaseCursor\nextends Sprite2D\n\n# ----------------------------------"
},
{
"path": "lorien/InfiniteCanvas/Cursor/BrushCursor/BrushCursor.gd",
"chars": 714,
"preview": "class_name BrushCursor\nextends BaseCursor\n\n# ---------------------------------------------------------------------------"
},
{
"path": "lorien/InfiniteCanvas/Cursor/BrushCursor/BrushCursor.tscn",
"chars": 413,
"preview": "[gd_scene load_steps=4 format=3 uid=\"uid://cf3j2vavqos04\"]\n\n[ext_resource type=\"Shader\" path=\"res://InfiniteCanvas/Curso"
},
{
"path": "lorien/InfiniteCanvas/Cursor/SelectionCursor/SelectionCursor.gd",
"chars": 1025,
"preview": "class_name SelectionCursor\nextends BaseCursor\n\n# -----------------------------------------------------------------------"
},
{
"path": "lorien/InfiniteCanvas/Cursor/SelectionCursor/SelectionCursor.tscn",
"chars": 393,
"preview": "[gd_scene load_steps=4 format=2]\n\n[ext_resource path=\"res://InfiniteCanvas/Cursor/SelectionCursor/SelectionCursor.gd\" ty"
},
{
"path": "lorien/InfiniteCanvas/Cursor/cursor.gdshader",
"chars": 464,
"preview": "shader_type canvas_item;\n\nuniform sampler2D SCREEN_TEXTURE: hint_screen_texture, filter_linear_mipmap;\n\nvoid fragment() "
},
{
"path": "lorien/InfiniteCanvas/DebugDraw.gd",
"chars": 598,
"preview": "extends Node2D\n\n#\n# This is used to draw debug stuff like bounding boxes etc.\n#\n\n# -------------------------------------"
},
{
"path": "lorien/InfiniteCanvas/InfiniteCanvas.gd",
"chars": 15907,
"preview": "extends SubViewportContainer\nclass_name InfiniteCanvas\n\n# --------------------------------------------------------------"
},
{
"path": "lorien/InfiniteCanvas/InfiniteCanvas.tscn",
"chars": 3482,
"preview": "[gd_scene load_steps=17 format=3 uid=\"uid://c4u5gk5n2aiom\"]\n\n[ext_resource type=\"Script\" path=\"res://InfiniteCanvas/Infi"
},
{
"path": "lorien/InfiniteCanvas/InfiniteCanvasGrid.gd",
"chars": 3221,
"preview": "class_name InfiniteCanvasGrid\nextends Node2D\n\n# ------------------------------------------------------------------------"
},
{
"path": "lorien/InfiniteCanvas/PanZoomCamera.gd",
"chars": 6835,
"preview": "extends Camera2D\n\n# -------------------------------------------------------------------------------------------------\nsi"
},
{
"path": "lorien/InfiniteCanvas/Tools/BrushTool.gd",
"chars": 4152,
"preview": "class_name BrushTool\nextends CanvasTool\n\n# -----------------------------------------------------------------------------"
},
{
"path": "lorien/InfiniteCanvas/Tools/CanvasTool.gd",
"chars": 4549,
"preview": "@icon(\"res://Assets/Icons/tools.png\")\nclass_name CanvasTool\nextends Node\n\n# --------------------------------------------"
},
{
"path": "lorien/InfiniteCanvas/Tools/CircleTool.gd",
"chars": 2974,
"preview": "class_name CircleTool\nextends CanvasTool\n\n# ----------------------------------------------------------------------------"
},
{
"path": "lorien/InfiniteCanvas/Tools/EraserTool.gd",
"chars": 3840,
"preview": "class_name EraserTool\nextends CanvasTool\n\n# ----------------------------------------------------------------------------"
},
{
"path": "lorien/InfiniteCanvas/Tools/LineTool.gd",
"chars": 2359,
"preview": "class_name LineTool\nextends CanvasTool\n\n# ------------------------------------------------------------------------------"
},
{
"path": "lorien/InfiniteCanvas/Tools/RectangleTool.gd",
"chars": 2320,
"preview": "class_name RectangleTool\nextends CanvasTool\n\n# -------------------------------------------------------------------------"
},
{
"path": "lorien/InfiniteCanvas/Tools/SelectionRectangle.gd",
"chars": 939,
"preview": "extends Node2D\nclass_name SelectionRectangle\n\nconst OUTLINE_COLOR = Color.WHITE\nconst FILL_COLOR = Color(1.0, 1.0, 1.0, "
},
{
"path": "lorien/InfiniteCanvas/Tools/SelectionTool.gd",
"chars": 11567,
"preview": "class_name SelectionTool\nextends CanvasTool\n\n# -------------------------------------------------------------------------"
},
{
"path": "lorien/InfiniteCanvas/Tools/selection_rectangle.gdshader",
"chars": 290,
"preview": "shader_type canvas_item;\n\nuniform vec4 background_color;\n\nvoid fragment() {\n\tvec3 inverted = vec3(1.0) - background_colo"
},
{
"path": "lorien/InfiniteCanvas/constant_pressure_curve.tres",
"chars": 97,
"preview": "[gd_resource type=\"Curve\" format=2]\n\n[resource]\n_data = [ Vector2( 0, 1 ), 0.0, 0.210526, 0, 0 ]\n"
},
{
"path": "lorien/InfiniteCanvas/default_pressure_curve.tres",
"chars": 178,
"preview": "[gd_resource type=\"Curve\" format=3 uid=\"uid://bgd7v60kyywsk\"]\n\n[resource]\n_data = [Vector2(0, 0.252555), 0.0, 0.747445, "
},
{
"path": "lorien/Main.gd",
"chars": 28116,
"preview": "extends Control\n\n# -------------------------------------------------------------------------------------------------\n@on"
},
{
"path": "lorien/Main.tscn",
"chars": 6298,
"preview": "[gd_scene load_steps=16 format=3 uid=\"uid://2uaupgd20h03\"]\n\n[ext_resource type=\"Script\" path=\"res://Main.gd\" id=\"1\"]\n[ex"
},
{
"path": "lorien/Misc/GlobalSignals.gd",
"chars": 199,
"preview": "extends Node\n\n# -------------------------------------------------------------------------------------------------\nsignal"
},
{
"path": "lorien/Misc/I18nParser.gd",
"chars": 3433,
"preview": "class_name I18nParser\n\n# -----------------------------------------------------------------------------------------------"
},
{
"path": "lorien/Misc/KeybindingsManager.gd",
"chars": 2067,
"preview": "extends Node\n\n# -------------------------------------------------------------------------------------------------\nclass "
},
{
"path": "lorien/Misc/Player/Player.gd",
"chars": 1470,
"preview": "class_name Player\nextends CharacterBody2D\n\n# ---------------------------------------------------------------------------"
},
{
"path": "lorien/Misc/Player/Player.tscn",
"chars": 3597,
"preview": "[gd_scene load_steps=20 format=3 uid=\"uid://dsfivcktd8k5d\"]\n\n[ext_resource type=\"Script\" path=\"res://Misc/Player/Player."
},
{
"path": "lorien/Misc/Settings.gd",
"chars": 4126,
"preview": "extends Node\n\n# -------------------------------------------------------------------------------------------------\nconst "
},
{
"path": "lorien/Misc/StatePersistence.gd",
"chars": 1685,
"preview": "extends Node\n\n# -------------------------------------------------------------------------------------------------\nconst "
},
{
"path": "lorien/Misc/SvgExporter.gd",
"chars": 3037,
"preview": "class_name SvgExporter\nextends RefCounted\n\n# TODOs\n# - Stroke width / pressue data\n\n# ----------------------------------"
},
{
"path": "lorien/Misc/Types.gd",
"chars": 1164,
"preview": "extends Node\nclass_name Types\n\n# ---------------------------------------------------------------------------------------"
},
{
"path": "lorien/Misc/Utils.gd",
"chars": 5013,
"preview": "extends Node\n\n# -------------------------------------------------------------------------------------------------\nconst "
},
{
"path": "lorien/Palette/Palette.gd",
"chars": 150,
"preview": "class_name Palette\nextends Resource\n\n@export var name: String\n@export var uuid: String\n@export var builtin: bool\n@export"
},
{
"path": "lorien/Palette/PaletteManager.gd",
"chars": 4876,
"preview": "extends Node\n\n# -------------------------------------------------------------------------------------------------\nconst "
},
{
"path": "lorien/Palette/default_palette.tres",
"chars": 574,
"preview": "[gd_resource type=\"Resource\" load_steps=2 format=2]\n\n[ext_resource path=\"res://Palette/Palette.gd\" type=\"Script\" id=1]\n\n"
},
{
"path": "lorien/ProjectManager/Project.gd",
"chars": 1830,
"preview": "class_name Project\n\n# Emitted whenever something marks the project as dirty, even if it's already dirty.\nsignal dirtied\n"
},
{
"path": "lorien/ProjectManager/ProjectManager.gd",
"chars": 4309,
"preview": "extends Node\n\n# -------------------------------------------------------------------------------------------------\nsignal"
},
{
"path": "lorien/ProjectManager/ProjectMetadata.gd",
"chars": 1122,
"preview": "extends Node\n\n# -------------------------------------------------------------------------------------------------\nconst "
},
{
"path": "lorien/ProjectManager/Serializer.gd",
"chars": 4563,
"preview": "class_name Serializer\n\n# TODO: !IMPORTANT! all of this needs validation\n# TODO: !IMPORTANT! all of this needs validation"
},
{
"path": "lorien/UI/ColorPalettePicker.gd",
"chars": 8269,
"preview": "class_name ColorPalettePicker\nextends PanelContainer\n\n# ----------------------------------------------------------------"
},
{
"path": "lorien/UI/ColorPalettePicker.tscn",
"chars": 4047,
"preview": "[gd_scene load_steps=11 format=3 uid=\"uid://dsxmmndtd4r2c\"]\n\n[ext_resource type=\"Theme\" uid=\"uid://u5qnpgxqykiv\" path=\"r"
},
{
"path": "lorien/UI/Components/FlatTextureButton.gd",
"chars": 2196,
"preview": "class_name FlatTextureButton\nextends TextureButton\n\n# ------------------------------------------------------------------"
},
{
"path": "lorien/UI/Components/KeybindItem.gd",
"chars": 2373,
"preview": "class_name KeybindItem\nextends HBoxContainer\n\n# ------------------------------------------------------------------------"
},
{
"path": "lorien/UI/Components/KeybindItem.tscn",
"chars": 635,
"preview": "[gd_scene load_steps=3 format=3 uid=\"uid://ct7pvupldkei5\"]\n\n[ext_resource type=\"Script\" path=\"res://UI/Components/Keybin"
},
{
"path": "lorien/UI/Components/PaletteButton.gd",
"chars": 2436,
"preview": "class_name PaletteButton\nextends Control\n\n# ----------------------------------------------------------------------------"
},
{
"path": "lorien/UI/Components/PaletteButton.tscn",
"chars": 1027,
"preview": "[gd_scene load_steps=4 format=2]\n\n[ext_resource path=\"res://Assets/Textures/palette_button_outline.png\" type=\"Texture2D\""
},
{
"path": "lorien/UI/Dialogs/AboutDialog.gd",
"chars": 803,
"preview": "class_name AboutDialog\nextends PanelContainer\n\n# -----------------------------------------------------------------------"
},
{
"path": "lorien/UI/Dialogs/AboutDialog.tscn",
"chars": 3649,
"preview": "[gd_scene load_steps=5 format=3 uid=\"uid://dug4jmvhrb3t1\"]\n\n[ext_resource type=\"Theme\" uid=\"uid://u5qnpgxqykiv\" path=\"re"
},
{
"path": "lorien/UI/Dialogs/AddKeyDialog.tscn",
"chars": 3981,
"preview": "[gd_scene load_steps=3 format=3 uid=\"uid://d37dx0p100hbv\"]\n\n[sub_resource type=\"GDScript\" id=\"GDScript_ljttw\"]\nscript/so"
},
{
"path": "lorien/UI/Dialogs/AlertDialog.gd",
"chars": 175,
"preview": "extends AcceptDialog\n\n# ------------------------------------------------------------------------------------------------"
},
{
"path": "lorien/UI/Dialogs/AlertDialog.tscn",
"chars": 445,
"preview": "[gd_scene load_steps=3 format=3 uid=\"uid://bi7pkm1cg1s4w\"]\n\n[ext_resource type=\"Theme\" uid=\"uid://u5qnpgxqykiv\" path=\"re"
},
{
"path": "lorien/UI/Dialogs/DeletePaletteDialog.gd",
"chars": 1519,
"preview": "class_name DeletePaletteDialog\nextends MarginContainer\n\n# --------------------------------------------------------------"
},
{
"path": "lorien/UI/Dialogs/DeletePaletteDialog.tscn",
"chars": 1118,
"preview": "[gd_scene load_steps=2 format=3 uid=\"uid://bl2x4yif2wrml\"]\n\n[ext_resource type=\"Script\" path=\"res://UI/Dialogs/DeletePal"
},
{
"path": "lorien/UI/Dialogs/EditPaletteDialog.gd",
"chars": 5389,
"preview": "class_name EditPaletteDialog\nextends MarginContainer\n\n# ----------------------------------------------------------------"
},
{
"path": "lorien/UI/Dialogs/EditPaletteDialog.tscn",
"chars": 4756,
"preview": "[gd_scene load_steps=5 format=3 uid=\"uid://6jilea2pwjuk\"]\n\n[ext_resource type=\"Script\" path=\"res://UI/Dialogs/EditPalett"
},
{
"path": "lorien/UI/Dialogs/ExitDialog.tscn",
"chars": 1147,
"preview": "[gd_scene load_steps=3 format=3 uid=\"uid://by1hug8oa5vft\"]\n\n[ext_resource type=\"Script\" path=\"res://UI/Dialogs/UnsavedCh"
},
{
"path": "lorien/UI/Dialogs/NewPaletteDialog.gd",
"chars": 2174,
"preview": "class_name NewPaletteDialog\nextends MarginContainer\n\n# -----------------------------------------------------------------"
},
{
"path": "lorien/UI/Dialogs/NewPaletteDialog.tscn",
"chars": 1167,
"preview": "[gd_scene load_steps=2 format=3 uid=\"uid://jow4q8tm6qro\"]\n\n[ext_resource type=\"Script\" path=\"res://UI/Dialogs/NewPalette"
},
{
"path": "lorien/UI/Dialogs/SettingsDialog.gd",
"chars": 16552,
"preview": "class_name SettingsDialog\nextends PanelContainer\n\n# --------------------------------------------------------------------"
},
{
"path": "lorien/UI/Dialogs/SettingsDialog.tscn",
"chars": 16733,
"preview": "[gd_scene load_steps=6 format=3 uid=\"uid://cgs8d5y8yrwl0\"]\n\n[ext_resource type=\"Theme\" uid=\"uid://u5qnpgxqykiv\" path=\"re"
},
{
"path": "lorien/UI/Dialogs/UnsavedChangesDialog.gd",
"chars": 838,
"preview": "class_name UnsavedChangesDialog\nextends PanelContainer\n\n# --------------------------------------------------------------"
},
{
"path": "lorien/UI/Dialogs/UnsavedChangesDialog.tscn",
"chars": 1384,
"preview": "[gd_scene load_steps=4 format=3 uid=\"uid://ct2b6hxxjlc6h\"]\n\n[ext_resource type=\"Script\" path=\"res://UI/Dialogs/UnsavedCh"
},
{
"path": "lorien/UI/MainMenu.gd",
"chars": 3694,
"preview": "class_name MainMenu\nextends PopupMenu\n\n# -------------------------------------------------------------------------------"
},
{
"path": "lorien/UI/MainMenu.tscn",
"chars": 376,
"preview": "[gd_scene load_steps=3 format=3 uid=\"uid://c41oe1lt7u6r8\"]\n\n[ext_resource type=\"Theme\" uid=\"uid://u5qnpgxqykiv\" path=\"re"
},
{
"path": "lorien/UI/Menubar.gd",
"chars": 3830,
"preview": "class_name Menubar\nextends Panel\n\n# ------------------------------------------------------------------------------------"
},
{
"path": "lorien/UI/Menubar.tscn",
"chars": 2095,
"preview": "[gd_scene load_steps=8 format=3 uid=\"uid://e4oiel4oqq0b\"]\n\n[ext_resource type=\"Theme\" uid=\"uid://u5qnpgxqykiv\" path=\"res"
},
{
"path": "lorien/UI/Statusbar.gd",
"chars": 2719,
"preview": "extends Panel\nclass_name Statusbar\n\n# ----------------------------------------------------------------------------------"
},
{
"path": "lorien/UI/Statusbar.tscn",
"chars": 2224,
"preview": "[gd_scene load_steps=3 format=3 uid=\"uid://bwer12t6vfkg1\"]\n\n[ext_resource type=\"Theme\" uid=\"uid://u5qnpgxqykiv\" path=\"re"
},
{
"path": "lorien/UI/Themes/dark/tab_active.tres",
"chars": 328,
"preview": "[gd_resource type=\"StyleBoxFlat\" format=3 uid=\"uid://dtn7ehcyfik4a\"]\n\n[resource]\ncontent_margin_left = 8.0\ncontent_margi"
},
{
"path": "lorien/UI/Themes/dark/tab_inactive.tres",
"chars": 220,
"preview": "[gd_resource type=\"StyleBoxFlat\" format=3 uid=\"uid://kdduww61cjw\"]\n\n[resource]\ncontent_margin_left = 8.0\ncontent_margin_"
},
{
"path": "lorien/UI/Themes/dark/theme.tres",
"chars": 889734,
"preview": "[gd_resource type=\"Theme\" load_steps=28 format=4 uid=\"uid://u5qnpgxqykiv\"]\n\n[ext_resource type=\"Texture2D\" uid=\"uid://bp"
},
{
"path": "lorien/UI/Themes/dark/toolbar.tres",
"chars": 131,
"preview": "[gd_resource type=\"StyleBoxFlat\" format=3 uid=\"uid://bv2204gysvy56\"]\n\n[resource]\nbg_color = Color(0.207843, 0.211765, 0."
},
{
"path": "lorien/UI/Themes/light/tab_active.tres",
"chars": 328,
"preview": "[gd_resource type=\"StyleBoxFlat\" format=3 uid=\"uid://df8d16wfmjt31\"]\n\n[resource]\ncontent_margin_left = 8.0\ncontent_margi"
},
{
"path": "lorien/UI/Themes/light/tab_inactive.tres",
"chars": 222,
"preview": "[gd_resource type=\"StyleBoxFlat\" format=3 uid=\"uid://c1igpcht4hbro\"]\n\n[resource]\ncontent_margin_left = 8.0\ncontent_margi"
},
{
"path": "lorien/UI/Themes/light/theme.tres",
"chars": 889065,
"preview": "[gd_resource type=\"Theme\" load_steps=27 format=4 uid=\"uid://cf4gyeqbly7p8\"]\n\n[ext_resource type=\"Texture2D\" uid=\"uid://b"
},
{
"path": "lorien/UI/Themes/light/toolbar.tres",
"chars": 130,
"preview": "[gd_resource type=\"StyleBoxFlat\" format=3 uid=\"uid://or8j03g5vd58\"]\n\n[resource]\nbg_color = Color(0.870588, 0.894118, 0.9"
},
{
"path": "lorien/UI/Toolbar.gd",
"chars": 10251,
"preview": "extends ScrollContainer\nclass_name Toolbar\n\nsignal new_project\nsignal open_project(filepath: String)\nsignal save_project"
},
{
"path": "lorien/UI/Toolbar.tscn",
"chars": 8311,
"preview": "[gd_scene load_steps=19 format=3 uid=\"uid://c0ral10lvpo7f\"]\n\n[ext_resource type=\"Texture2D\" uid=\"uid://c4kv3i7fmom58\" pa"
},
{
"path": "lorien/export_presets.cfg",
"chars": 15606,
"preview": "[preset.0]\n\nname=\"Linux\"\nplatform=\"Linux\"\nrunnable=true\nadvanced_options=false\ndedicated_server=false\ncustom_features=\"\""
},
{
"path": "lorien/project.godot",
"chars": 15243,
"preview": "; Engine configuration file.\n; It's best edited using the editor UI and not directly,\n; since the parameters that go her"
},
{
"path": "public/linux/com.github.mbrlabs.Lorien.desktop",
"chars": 336,
"preview": "[Desktop Entry]\nType=Application\nName=Lorien\nGenericName=Note Taking\nComment=Infinite canvas drawing/whiteboarding app\nC"
},
{
"path": "public/linux/com.github.mbrlabs.Lorien.metainfo.xml",
"chars": 1764,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<component type=\"desktop-application\">\n <id>com.github.mbrlabs.Lorien</id>\n\n <n"
},
{
"path": "public/linux/x-lorien-canvas.mimetype.xml",
"chars": 322,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<mime-info xmlns=\"http://www.freedesktop.org/standards/shared-mime-info\">\n <mim"
}
]
// ... and 2 more files (download for full content)
About this extraction
This page contains the full source code of the mbrlabs/Lorien GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 179 files (2.2 MB), approximately 573.0k tokens. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.