diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml deleted file mode 100644 index 0b99eae..0000000 --- a/.github/FUNDING.yml +++ /dev/null @@ -1,3 +0,0 @@ -patreon: OramaInteractive -custom: https://www.paypal.me/OverloadedOrama -ko_fi: overloadedorama diff --git a/.github/workflows/dev-desktop-builds.yml b/.github/workflows/dev-desktop-builds.yml index 6bce08d..652bd58 100644 --- a/.github/workflows/dev-desktop-builds.yml +++ b/.github/workflows/dev-desktop-builds.yml @@ -2,9 +2,9 @@ name: "dev-desktop-builds" on: push: - branches: [ master ] + branches: [ master, main ] pull_request: - branches: [ master ] + branches: [ master, main ] paths-ignore: - "Translations/*" - "installer/*.pot" @@ -13,7 +13,7 @@ on: env: GODOT_VERSION: 3.2.3 GODOT_VERSION_MAC: 3.2.2 - EXPORT_NAME: Pixelorama + EXPORT_NAME: CozyPixelStudio jobs: export-windows: @@ -98,7 +98,7 @@ jobs: - name: Setup environment ๐Ÿ”ง run: | export GODOT_VERSION=3.2.2 - export EXPORT_NAME=Pixelorama + export EXPORT_NAME=CozyPixelStudio - name: Download and extract export templates ๐Ÿ’พ run: | mkdir -v -p ~/.local/share/godot/templates/${GODOT_VERSION_MAC}.stable @@ -115,23 +115,23 @@ jobs: run: | chown runner ./Godot chmod +x ./Godot - ./Godot -v --export "Mac OSX" ./build/mac/Pixelorama.zip + ./Godot -v --export "Mac OSX" ./build/mac/CozyPixelStudio.zip - name: Make application executable ๐Ÿ”ง run: | - unzip -a ./build/mac/Pixelorama.zip -d ./build/mac - chmod +x ./build/mac/Pixelorama.app/Contents/MacOS/Pixelorama - rm ./build/mac/Pixelorama.zip + unzip -a ./build/mac/CozyPixelStudio.zip -d ./build/mac + chmod +x ./build/mac/CozyPixelStudio.app/Contents/MacOS/CozyPixelStudio + rm ./build/mac/CozyPixelStudio.zip - name: Fix application icon ๐Ÿ–ผ - run: sips -s format icns ./build/mac/Pixelorama.app/Contents/Resources/icon.icns --out ./build/mac/Pixelorama.app/Contents/Resources/icon.icns + run: sips -s format icns ./build/mac/CozyPixelStudio.app/Contents/Resources/icon.icns --out ./build/mac/CozyPixelStudio.app/Contents/Resources/icon.icns - name: Copy pixelorama_data folder ๐Ÿ“ run: | - cp -R ./pixelorama_data ./build/mac/Pixelorama.app/Contents/MacOS - rm ./build/mac/Pixelorama.app/Contents/MacOS/pixelorama_data/.gdignore + cp -R ./pixelorama_data ./build/mac/CozyPixelStudio.app/Contents/MacOS + rm ./build/mac/CozyPixelStudio.app/Contents/MacOS/pixelorama_data/.gdignore - name: Create DMG archive ๐Ÿ”ง - run: hdiutil create -size 70m -srcfolder ./build/mac -volname Pixelorama ./build/mac/Pixelorama.dmg + run: hdiutil create -size 70m -srcfolder ./build/mac -volname CozyPixelStudio ./build/mac/CozyPixelStudio.dmg - name: Upload Artifact ๐Ÿš€ uses: actions/upload-artifact@v2 with: name: Mac - path: ./build/mac/Pixelorama.dmg + path: ./build/mac/CozyPixelStudio.dmg retention-days: 14 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml deleted file mode 100644 index db936b5..0000000 --- a/.github/workflows/release.yml +++ /dev/null @@ -1,213 +0,0 @@ -name: "release" - -on: - push: - branches: [ release ] - -env: - GODOT_VERSION: 3.2.3 - GODOT_VERSION_MAC: 3.2.2 - EXPORT_NAME: Pixelorama - TAG: v0.8.2 - BUTLER_API_KEY: ${{ secrets.BUTLER_API_KEY }} - -jobs: - export-windows: - name: Windows Export ๐Ÿ—” - runs-on: ubuntu-latest - container: - image: docker://barichello/godot-ci:3.2.3 - steps: - - name: Setup WINE and rcedit ๐Ÿท - run: | - dpkg --add-architecture i386 && apt-get update && apt-get install -y wine-stable && apt-get install -y wine32 - chown root:root -R ~ - wget https://github.com/electron/rcedit/releases/download/v1.1.1/rcedit-x64.exe - mkdir -v -p ~/.local/share/rcedit - mv rcedit-x64.exe ~/.local/share/rcedit - godot -q - echo 'export/windows/wine = "/usr/bin/wine"' >> ~/.config/godot/editor_settings-3.tres - echo 'export/windows/rcedit = "/github/home/.local/share/rcedit/rcedit-x64.exe"' >> ~/.config/godot/editor_settings-3.tres - - name: Checkout ๐Ÿ›Ž๏ธ - uses: actions/checkout@v1 - with: - submodules: true - - name: Setup ๐Ÿ’ป - run: | - mkdir -v -p build/windows-64bit build/windows-32bit ~/.local/share/godot/templates - mv /root/.local/share/godot/templates/${GODOT_VERSION}.stable ~/.local/share/godot/templates/${GODOT_VERSION}.stable - - name: Windows Build ๐Ÿ”ง - run: | - godot -v --export "Windows Desktop 64-bit" ./build/windows-64bit/$EXPORT_NAME.exe - godot -v --export "Windows Desktop 32-bit" ./build/windows-32bit/$EXPORT_NAME.exe - - name: Copy pixelorama_data folder ๐Ÿ“ - run: | - cp -R ./pixelorama_data ./build/windows-64bit - rm ./build/windows-64bit/pixelorama_data/.gdignore - cp -R ./pixelorama_data ./build/windows-32bit - rm ./build/windows-32bit/pixelorama_data/.gdignore - - name: Zip ๐Ÿ—œ๏ธ - run: | - cd build - zip -r windows-64bit.zip windows-64bit - zip -r windows-32bit.zip windows-32bit - - name: Upload 64-bit Release Asset ๐Ÿš€ - uses: svenstaro/upload-release-action@v2 - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ./build/windows-64bit.zip - asset_name: ${{env.EXPORT_NAME}}[Windows-64bit].zip - tag: ${{env.TAG}} - overwrite: true - - name: Upload 32-bit Release Asset ๐Ÿš€ - uses: svenstaro/upload-release-action@v2 - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ./build/windows-32bit.zip - asset_name: ${{env.EXPORT_NAME}}[Windows-32bit].zip - tag: ${{env.TAG}} - overwrite: true - - name: Upload Release Assets to itch.io ๐ŸŽฎ - run: | - butler push ./build/windows-64bit ${{ secrets.ITCHIO_USERNAME }}/${{ secrets.ITCHIO_GAME }}:windows-64 --userversion ${{env.TAG}} - butler push ./build/windows-32bit ${{ secrets.ITCHIO_USERNAME }}/${{ secrets.ITCHIO_GAME }}:windows-32 --userversion ${{env.TAG}} - - export-linux: - name: Linux Export ๐Ÿง - runs-on: ubuntu-latest - container: - image: docker://barichello/godot-ci:3.2.3 - steps: - - name: Checkout ๐Ÿ›Ž๏ธ - uses: actions/checkout@v1 - with: - submodules: true - - name: Setup ๐Ÿ’ป - run: | - mkdir -v -p build/linux-64bit build/linux-32bit ~/.local/share/godot/templates - mv /root/.local/share/godot/templates/${GODOT_VERSION}.stable ~/.local/share/godot/templates/${GODOT_VERSION}.stable - - name: Linux Build ๐Ÿ”ง - run: | - godot -v --export "Linux/X11 64-bit" ./build/linux-64bit/$EXPORT_NAME.x86_64 - godot -v --export "Linux/X11 32-bit" ./build/linux-32bit/$EXPORT_NAME.x86 - - name: Give execute permission โ˜‘๏ธ - run: | - chmod +x ./build/linux-64bit/$EXPORT_NAME.x86_64 - chmod +x ./build/linux-32bit/$EXPORT_NAME.x86 - - name: Copy pixelorama_data folder ๐Ÿ“ - run: | - cp -R ./pixelorama_data ./build/linux-64bit - rm ./build/linux-64bit/pixelorama_data/.gdignore - cp -R ./pixelorama_data ./build/linux-32bit - rm ./build/linux-32bit/pixelorama_data/.gdignore - - name: Create tar.gz archive ๐Ÿ—œ๏ธ - run: | - cd build - tar zcvf linux-64bit.tar.gz linux-64bit - tar zcvf linux-32bit.tar.gz linux-32bit - - name: Upload 64-bit Release Asset ๐Ÿš€ - uses: svenstaro/upload-release-action@v2 - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ./build/linux-64bit.tar.gz - asset_name: ${{env.EXPORT_NAME}}[Linux-64bit].tar.gz - tag: ${{env.TAG}} - overwrite: true - - name: Upload 32-bit Release Asset ๐Ÿš€ - uses: svenstaro/upload-release-action@v2 - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ./build/linux-32bit.tar.gz - asset_name: ${{env.EXPORT_NAME}}[Linux-32bit].tar.gz - tag: ${{env.TAG}} - overwrite: true - - name: Upload Release Assets to itch.io ๐ŸŽฎ - run: | - butler push ./build/linux-64bit.tar.gz ${{ secrets.ITCHIO_USERNAME }}/${{ secrets.ITCHIO_GAME }}:linux-64 --userversion ${{env.TAG}} - butler push ./build/linux-32bit.tar.gz ${{ secrets.ITCHIO_USERNAME }}/${{ secrets.ITCHIO_GAME }}:linux-32 --userversion ${{env.TAG}} - - export-mac: - name: Mac Export ๐ŸŽ - runs-on: macos-latest - steps: - - name: Checkout ๐Ÿ›Ž๏ธ - uses: actions/checkout@v1 - with: - submodules: true - - name: Setup environment ๐Ÿ”ง - run: | - export GODOT_VERSION=3.2.2 - export EXPORT_NAME=Pixelorama - - name: Download and extract export templates ๐Ÿ’พ - run: | - mkdir -v -p ~/.local/share/godot/templates/${GODOT_VERSION_MAC}.stable - curl -O https://downloads.tuxfamily.org/godotengine/${GODOT_VERSION_MAC}/Godot_v${GODOT_VERSION_MAC}-stable_export_templates.tpz - unzip -a Godot_v${GODOT_VERSION_MAC}-stable_export_templates.tpz - mv ./templates/* ~/.local/share/godot/templates/${GODOT_VERSION_MAC}.stable - - name: Download Godot headless binary ๐Ÿค– - run: | - curl -O https://huskee.cf/files/Godot_v${GODOT_VERSION_MAC}-stable_mac_headless.64.zip - unzip -a Godot_v${GODOT_VERSION_MAC}-stable_mac_headless.64.zip - - name: Setup ๐Ÿ’ป - run: mkdir -v -p ./build/mac - - name: Mac Build ๐Ÿ”ง - run: | - chown runner ./Godot - chmod +x ./Godot - ./Godot -v --export "Mac OSX" ./build/mac/Pixelorama.zip - - name: Make application executable ๐Ÿ”ง - run: | - unzip -a ./build/mac/Pixelorama.zip -d ./build/mac - chmod +x ./build/mac/Pixelorama.app/Contents/MacOS/Pixelorama - rm ./build/mac/Pixelorama.zip - - name: Fix application icon ๐Ÿ–ผ - run: sips -s format icns ./build/mac/Pixelorama.app/Contents/Resources/icon.icns --out ./build/mac/Pixelorama.app/Contents/Resources/icon.icns - - name: Copy pixelorama_data folder ๐Ÿ“ - run: | - cp -R ./pixelorama_data ./build/mac/Pixelorama.app/Contents/MacOS - rm ./build/mac/Pixelorama.app/Contents/MacOS/pixelorama_data/.gdignore - - name: Create DMG archive ๐Ÿ”ง - run: hdiutil create -size 70m -srcfolder ./build/mac -volname Pixelorama ./build/mac/Pixelorama.dmg - - name: Upload Release Asset ๐Ÿš€ - uses: svenstaro/upload-release-action@v2 - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ./build/mac/Pixelorama.dmg - asset_name: ${{env.EXPORT_NAME}}[Mac].dmg - tag: ${{env.TAG}} - overwrite: true - - name: Upload Release Assets to itch.io ๐ŸŽฎ - run: | - curl -L -o butler.zip https://broth.itch.ovh/butler/darwin-amd64/LATEST/archive/default - unzip butler.zip - chmod +x butler - ./butler push ./build/mac/Pixelorama.dmg ${{ secrets.ITCHIO_USERNAME }}/${{ secrets.ITCHIO_GAME }}:mac --userversion ${{env.TAG}} - - export-web: - name: Web Export ๐ŸŒ - runs-on: ubuntu-latest - container: - image: docker://barichello/godot-ci:3.2.3 - steps: - - name: Checkout ๐Ÿ›Ž๏ธ - uses: actions/checkout@v1 - with: - submodules: true - - name: Setup ๐Ÿ’ป - run: | - mkdir -v -p build/web ~/.local/share/godot/templates - mv /root/.local/share/godot/templates/${GODOT_VERSION}.stable ~/.local/share/godot/templates/${GODOT_VERSION}.stable - - name: Web Build ๐Ÿ”ง - run: godot -v --export "HTML5" ./build/web/index.html - - name: Install rsync ๐Ÿ“š - run: | - apt-get update && apt-get install -y rsync - - name: Deploy ๐Ÿš€ - uses: JamesIves/github-pages-deploy-action@releases/v3 - with: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - BRANCH: gh-pages # The branch the action should deploy to. - FOLDER: build/web # The folder the action should deploy. - - name: Upload Release Assets to itch.io ๐ŸŽฎ - run: | - butler push ./build/web ${{ secrets.ITCHIO_USERNAME }}/${{ secrets.ITCHIO_GAME }}:web --userversion ${{env.TAG}} diff --git a/.gitignore b/.gitignore index 70afc5c..1c0b85c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,66 @@ +# File created using '.gitignore Generator' for Visual Studio Code: https://bit.ly/vscode-gig + +# Created by https://www.toptal.com/developers/gitignore/api/windows,vscode,macos,linux,godot,executable,archives,backup +# Edit at https://www.toptal.com/developers/gitignore?templates=windows,vscode,macos,linux,godot,executable,archives,backup + +### Archives ### +# It's better to unpack these files and commit the raw source because +# git has its own built in compression methods. +*.7z +*.jar +*.rar +*.zip +*.gz +*.gzip +*.tgz +*.bzip +*.bzip2 +*.bz2 +*.xz +*.lzma +*.cab +*.xar + +# Packing-only formats +*.iso +*.tar + +# Package management formats +*.dmg +*.xpi +*.gem +*.egg +*.deb +*.rpm +*.msi +*.msm +*.msp +*.txz + +### Backup ### +*.bak +*.gho +*.ori +*.orig +*.tmp + +### Executable ### +*.app +*.bat +*.cgi +*.com +*.exe +*.gadget +*.pif +*.vb +*.wsf + +### Godot ### # Godot-specific ignores .import/ +export.cfg +export_presets.cfg # Imported translations (automatically generated from CSV files) *.translation @@ -8,11 +68,82 @@ # Mono-specific ignores .mono/ data_*/ -mono_crash.*.json -# System/tool-specific ignores -.directory +### Linux ### *~ -#Visual Studio Code ignores -.vscode/ \ No newline at end of file +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* + +### macOS ### +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +### vscode ### +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +*.code-workspace + +### Windows ### +# Windows thumbnail cache files +Thumbs.db +Thumbs.db:encryptable +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.msix + +# Windows shortcuts +*.lnk + +# End of https://www.toptal.com/developers/gitignore/api/windows,vscode,macos,linux,godot,executable,archives,backup + +# Custom rules (everything added below won't be overriden by 'Generate .gitignore File' if you use 'Update' option) + diff --git a/README.md b/README.md index 6ef97f8..a8706cb 100644 --- a/README.md +++ b/README.md @@ -1,103 +1,24 @@ -

-

Pixelorama - your free and open-source sprite editor!

-

-

- Made by Orama Interactive with the Godot Engine, written in GDScript! -

-

- - Build Passing - - - Build Passing - - - Code Size - - - Repository size - - - License - -

-

- - Downloads - - - Discord Chat - - - Crowdin Localized % - - - Mentioned in Awesome Godot - -

- +

Cozy Pixel Studio

+ [![Pixelorama's UI](https://static.wixstatic.com/media/673cdd_061f5f9602ea4c35b6d4f3c50713d36a~mv2.png)](https://www.youtube.com/watch?v=NLb0TNxZ27E&list=PLVEP1Zz6BUpBiQC0CB6eNBhhLF4tEwBB-&index=10) -Art by Wishdream - winner of the first Pixelorama splash screen art contest! -Make sure to visit our website for more information! https://www.orama-interactive.com +

+

+

-Join our Discord community serverโ€‹ where we can discuss about Pixelorama and all our other projects! https://discord.gg/GTMtr8s - -If you like, consider helping us by sponsoring this project! It would enable us to focus more on Pixelorama, and make more projects in the future! - -Toss A Coin For A New Feature: [![Become a Patron!](https://c5.patreon.com/external/logo/become_a_patron_button.png)](https://patreon.com/OramaInteractive) - -## Download -Stable versions: -- [Itch.io (Windows, Linux, Mac & Web)](https://orama-interactive.itch.io/pixelorama) -- [GitHub Releases (Windows, Linux & Mac)](https://github.com/Orama-Interactive/Pixelorama/releases) -- [GitHub Pages (Web)](https://orama-interactive.github.io/Pixelorama/) -- [Flathub (Linux)](https://flathub.org/apps/details/com.orama_interactive.Pixelorama) -- [Snap Store (Linux)](https://snapcraft.io/pixelorama) - -You can also find early access builds in the [GitHub Actions page](https://github.com/Orama-Interactive/Pixelorama/actions). There's also a [Web version available](https://orama-interactive.github.io/Pixelorama/early_access/). -Keep in mind that these versions will have bugs and are unstable. Unless you're interested in testing the main branch of Pixelorama, it's recommended that you stick to a stable version. +Cozy Pixel Studio is a derivative of Pixelorama meant to study programming and designing interfaces in Godot. **These builds are not meant for production use**. ## Documentation + You can find Online Documentation for Pixelorama here: https://orama-interactive.github.io/Pixelorama-Docs -It's still work in progress so there are some pages missing. If you want to contribute, you can do so in [Pixelorama-Docs' GitHub Repository](https://github.com/Orama-Interactive/Pixelorama-Docs). - -## Cloning Instructions -Pixelorama uses Godot 3.2, so you will need to have it in order to run the project. -As of right now, most of the code is written using GDScript, so the mono version of Godot is not required, but Pixelorama should also work with it. - -## Current features as of version v0.8: - -- Choosing between 7 tools โ€“ pencil, eraser, fill bucket, lighten/darken, color picker, rectangle select and zoomโ€“ and mapping them to both of your left and right mouse buttons. -- Are you an animator? Pixelorama has its own animation timeline just for you! You can work at an individual cel level, where each cel refers to a unique layer and frame. Supports onion skinning, cel linking, motion drawing and frame grouping with tags. -- Different tool options for each of the mouse buttons. -- Custom brushes! Load your brushes from files or select them in your project with the selection tool, and they will get stored in `.pxo` files! -- Random custom brushes! Every time you draw, expect to see a different random result! -- Create or import custom palettes! -- Multiple project support, using tabs! -- Pattern filling! Use the bucket tool to fill out an area with a pattern of your choosing. -- Import images and edit them inside Pixelorama. If you import multiple files, they will be added as individual animation frames. Importing spritesheets is also supported. -- Export your gorgeous art as `PNG` or `GIF` files. Exporting your projects as spritesheets is also possible. -- Pixel perfect mode for perfect lines, for the pencil, eraser & lighten/darken tools. -- Save and open your projects as Pixelorama's custom file format, `.pxo` -- Undo/Redo support! -- Autosave support, with data recovery in case of a software crash. -- Multiple theme support! Choose a theme from Dark, Gray, Blue, Caramel and Light! -- Horizontal & vertical mirrored drawing! -- Tile Mode for pattern creation! -- Split screen mode to see your masterpiece twice! And a mini canvas preview area to see it thrice! -- Create straight lines for pencil, eraser and the lighten/darken tool by pressing `Shift`. If you also press `Control`, you can constrain angles with a step of 15. -- Generate outlines for your images! -- ฮฅou can zoom in and out with the mouse scroll wheel or the `+` and `-` keys respectively, and pan by clicking the middle mouse button, by holding `Space` or with the arrow keys! -- Keyboard shortcuts, and the ability to change their bindings. -- Rulers and guides! -- Rectangular & isometric grid types. -- Scale, crop, rotate, flip, color invert, HSV-adjust, desaturate and generate gradients in your images! -- Multi-language localization support! See our [Crowdin page](https://crowdin.com/project/pixelorama) for more details. - - ## Special thanks to + +- The [Pixelorama](https://github.com/Orama-Interactive/Pixelorama) team for creating a pixel art editor in Godot! - All [Godot](https://github.com/godotengine/godot) contributors! Without Godot, Pixelorama would not exist. - https://github.com/jegor377/godot-gdgifexporter - the gif exporter Pixelorama uses. - https://github.com/Pukkah/HTML5-File-Exchange-for-Godot - responsible for file exchange in Pixelorama's HTML5 (Web) version. diff --git a/crowdin.yml b/crowdin.yml deleted file mode 100644 index 092f1d6..0000000 --- a/crowdin.yml +++ /dev/null @@ -1,5 +0,0 @@ -files: - - source: /Translations/Translations.pot - translation: /Translations/%locale_with_underscore%.po - - source: /installer/*.pot - translation: /installer/po/%locale%.po diff --git a/project.godot b/project.godot index 1979908..115a4c1 100644 --- a/project.godot +++ b/project.godot @@ -110,7 +110,7 @@ _global_script_class_icons={ [application] -config/name="Pixelorama" +config/name="Cozy Pixel Studio" config/description="A free & open-source 2D sprite editor" run/main_scene="res://src/Main.tscn" run/low_processor_mode=true @@ -119,7 +119,7 @@ boot_splash/bg_color=Color( 0.145098, 0.145098, 0.164706, 1 ) config/icon="res://assets/graphics/icons/icon.png" config/macos_native_icon="res://assets/graphics/icons/icon.icns" config/windows_native_icon="res://assets/graphics/icons/icon.ico" -config/Version="v0.8.3-dev" +config/Version="v0.1.0-dev" [audio] diff --git a/src/Autoload/OpenSave.gd b/src/Autoload/OpenSave.gd index 1616d9e..837bc4b 100644 --- a/src/Autoload/OpenSave.gd +++ b/src/Autoload/OpenSave.gd @@ -21,7 +21,7 @@ func handle_loading_files(files : PoolStringArray) -> void: for file in files: file = file.replace("\\", "/") var file_ext : String = file.get_extension().to_lower() - if file_ext == "pxo": # Pixelorama project file + if file_ext == "pxo": # Cozy Pixel Studio project file open_pxo_file(file) elif file_ext == "json" or file_ext == "gpl" or file_ext == "pal": # Palettes Global.palette_container.on_palette_import_file_selected(file) @@ -109,7 +109,7 @@ func open_pxo_file(path : String, untitled_backup : bool = false, replace_empty if not untitled_backup: # Untitled backup should not change window title and save path current_save_paths[Global.current_project_index] = path - Global.window_title = path.get_file() + " - Pixelorama " + Global.current_version + Global.window_title = path.get_file() + " - Cozy Pixel Studio " + Global.current_version Global.save_sprites_dialog.current_path = path # Set last opened project path and save Global.config_cache.set_value("preferences", "last_project_path", path) @@ -146,7 +146,7 @@ func open_old_pxo_file(file : File, new_project : Project, first_line : String) _file_status_version = file_ver_splitted[1] if file_major_version == 0 and file_minor_version < 5: - Global.notification_label("File is from an older version of Pixelorama, as such it might not work properly") + Global.notification_label("File is from an older version of Cozy Pixel Studio, as such it might not work properly") var new_guides := true if file_major_version == 0: @@ -330,7 +330,7 @@ func save_pxo_file(path : String, autosave : bool, use_zstd_compression := true, project.has_changed = false remove_backup(Global.current_project_index) Global.notification_label("File saved") - Global.window_title = path.get_file() + " - Pixelorama " + Global.current_version + Global.window_title = path.get_file() + " - Cozy Pixel Studio " + Global.current_version # Set last opened project path and save Global.config_cache.set_value("preferences", "last_project_path", path) @@ -528,7 +528,7 @@ func set_new_tab(project : Project, path : String) -> void: Global.tabs.current_tab = Global.tabs.get_tab_count() - 1 Global.canvas.camera_zoom() - Global.window_title = path.get_file() + " (" + tr("imported") + ") - Pixelorama " + Global.current_version + Global.window_title = path.get_file() + " (" + tr("imported") + ") - Cozy Pixel Studio " + Global.current_version if project.has_changed: Global.window_title = Global.window_title + "(*)" var file_name := path.get_basename().get_file() @@ -617,7 +617,7 @@ func reload_backup_file(project_paths : Array, backup_paths : Array) -> void: # If project path is the same as backup save path -> the backup was untitled if project_paths[i] != backup_paths[i]: # If the user has saved current_save_paths[i] = project_paths[i] - Global.window_title = project_paths[i].get_file() + " - Pixelorama(*) " + Global.current_version + Global.window_title = project_paths[i].get_file() + " - Cozy Pixel Studio(*) " + Global.current_version Global.current_project.has_changed = true Global.notification_label("Backup reloaded") diff --git a/src/Main.gd b/src/Main.gd index 646c59b..3e1bbe9 100644 --- a/src/Main.gd +++ b/src/Main.gd @@ -20,7 +20,7 @@ func _ready() -> void: get_tree().set_auto_accept_quit(false) setup_application_window_size() - Global.window_title = tr("untitled") + " - Pixelorama " + Global.current_version + Global.window_title = tr("untitled") + " - Cozy Pixel Studio " + Global.current_version Global.current_project.layers[0].name = tr("Layer") + " 0" Global.layers_container.get_child(0).label.text = Global.current_project.layers[0].name diff --git a/src/UI/Dialogs/AboutDialog.gd b/src/UI/Dialogs/AboutDialog.gd index 5799fe6..d2c2987 100644 --- a/src/UI/Dialogs/AboutDialog.gd +++ b/src/UI/Dialogs/AboutDialog.gd @@ -27,7 +27,7 @@ func _ready() -> void: func _on_AboutDialog_about_to_show() -> void: - window_title = tr("About Pixelorama") + " " + Global.current_version + window_title = tr("About Cozy Pixel Studio") + " " + Global.current_version if Global.is_cjk(TranslationServer.get_locale()): slogan_label.add_font_override("font", cjk_font) @@ -83,7 +83,7 @@ func _on_Website_pressed() -> void: func _on_GitHub_pressed() -> void: - OS.shell_open("https://github.com/Orama-Interactive/Pixelorama") + OS.shell_open("https://github.com/tonytins/CozyPixelStudio") func _on_Donate_pressed() -> void: @@ -92,8 +92,9 @@ func _on_Donate_pressed() -> void: func create_developers() -> void: var dev_root := developers.create_item() - developers.create_item(dev_root).set_text(0, " Manolis Papadeas (Overloaded) - " + tr("Lead Programmer")) - developers.create_item(dev_root).set_text(0, " John Nikitakis (Erevos) - " + tr("UI Designer")) + developers.create_item(dev_root).set_text(0, " Tony Bark (tonytins) - " + tr("Programmer")) + developers.create_item(dev_root).set_text(0, " Manolis Papadeas (Overloaded) - " + tr("Pixelorama Programmer")) + developers.create_item(dev_root).set_text(0, " John Nikitakis (Erevos) - " + tr("Pixelorama UI Designer")) func create_donors() -> void: diff --git a/src/UI/Dialogs/AboutDialog.tscn b/src/UI/Dialogs/AboutDialog.tscn index 367e15f..9b118c7 100644 --- a/src/UI/Dialogs/AboutDialog.tscn +++ b/src/UI/Dialogs/AboutDialog.tscn @@ -7,10 +7,11 @@ [ext_resource path="res://assets/fonts/Roboto-Small.tres" type="DynamicFont" id=5] [node name="AboutDialog" type="WindowDialog"] +visible = true margin_right = 600.0 margin_bottom = 400.0 rect_min_size = Vector2( 600, 400 ) -window_title = "About Pixelorama" +window_title = "About Cozy Pixel Studio" resizable = true script = ExtResource( 1 ) @@ -22,6 +23,9 @@ margin_top = 4.0 margin_right = -12.0 margin_bottom = -8.0 alignment = 1 +__meta__ = { +"_edit_use_anchors_": false +} [node name="IconsButtons" type="HBoxContainer" parent="AboutUI"] margin_right = 576.0 @@ -50,7 +54,7 @@ margin_bottom = 51.0 margin_right = 224.0 margin_bottom = 15.0 custom_fonts/font = ExtResource( 3 ) -text = "Pixelorama - Pixelate your dreams!" +text = "Cozy Pixel Studio - Pixelate your dreams!" align = 1 [node name="LinkButtons" type="HBoxContainer" parent="AboutUI/IconsButtons/SloganAndLinks/VBoxContainer"] @@ -92,12 +96,12 @@ margin_bottom = 72.0 [node name="Credits" type="HSplitContainer" parent="AboutUI"] margin_top = 76.0 margin_right = 576.0 -margin_bottom = 345.0 +margin_bottom = 329.0 size_flags_vertical = 3 [node name="Groups" type="Tree" parent="AboutUI/Credits"] margin_right = 120.0 -margin_bottom = 269.0 +margin_bottom = 253.0 rect_min_size = Vector2( 120, 120 ) custom_constants/item_margin = -2 hide_root = true @@ -105,7 +109,7 @@ hide_root = true [node name="Developers" type="VBoxContainer" parent="AboutUI/Credits"] margin_left = 132.0 margin_right = 576.0 -margin_bottom = 269.0 +margin_bottom = 253.0 size_flags_horizontal = 3 [node name="Label" type="Label" parent="AboutUI/Credits/Developers"] @@ -116,7 +120,7 @@ text = "Development Team" [node name="DeveloperTree" type="Tree" parent="AboutUI/Credits/Developers"] margin_top = 18.0 margin_right = 444.0 -margin_bottom = 269.0 +margin_bottom = 253.0 size_flags_vertical = 3 custom_constants/item_margin = -2 custom_constants/button_margin = 2 @@ -183,23 +187,24 @@ custom_constants/item_margin = -2 hide_root = true [node name="HSeparator2" type="HSeparator" parent="AboutUI"] -margin_top = 349.0 +margin_top = 333.0 margin_right = 576.0 -margin_bottom = 353.0 +margin_bottom = 337.0 [node name="MadeBy" type="Label" parent="AboutUI"] -margin_top = 357.0 +margin_top = 341.0 margin_right = 576.0 -margin_bottom = 371.0 -text = "Developed by Orama Interactive" +margin_bottom = 355.0 +text = "Developed by Tony Bark" align = 1 [node name="Copyright" type="Label" parent="AboutUI"] -margin_top = 375.0 +margin_top = 359.0 margin_right = 576.0 margin_bottom = 388.0 custom_fonts/font = ExtResource( 5 ) -text = "ยฉ2019-present by Orama Interactive and contributors" +text = "ยฉ2021-present by Tony Bark +ยฉ2019-present by Orama Interactive and contributors" align = 1 [connection signal="about_to_show" from="." to="." method="_on_AboutDialog_about_to_show"] [connection signal="popup_hide" from="." to="." method="_on_AboutDialog_popup_hide"] diff --git a/src/UI/Dialogs/SplashDialog.gd b/src/UI/Dialogs/SplashDialog.gd index 591ca10..1e08193 100644 --- a/src/UI/Dialogs/SplashDialog.gd +++ b/src/UI/Dialogs/SplashDialog.gd @@ -21,7 +21,7 @@ func _on_SplashDialog_about_to_show() -> void: if Global.config_cache.has_section_key("preferences", "startup"): show_on_startup_button.pressed = !Global.config_cache.get_value("preferences", "startup") - window_title = "Pixelorama" + " " + Global.current_version + window_title = "Cozy Pixel Studio" + " " + Global.current_version chosen_artwork = artworks.keys()[randi() % artworks.size()] splash_art_texturerect.texture = artworks[chosen_artwork][0] @@ -59,7 +59,7 @@ func _on_PatreonButton_pressed() -> void: func _on_GithubButton_pressed() -> void: - OS.shell_open("https://github.com/Orama-Interactive/Pixelorama") + OS.shell_open("https://github.com/tonytins/CozyPixelStudio") func _on_DiscordButton_pressed() -> void: diff --git a/src/UI/Dialogs/SplashDialog.tscn b/src/UI/Dialogs/SplashDialog.tscn index 4781c0e..70d22dc 100644 --- a/src/UI/Dialogs/SplashDialog.tscn +++ b/src/UI/Dialogs/SplashDialog.tscn @@ -14,6 +14,7 @@ border_color = Color( 0.403922, 0.403922, 0.403922, 1 ) expand_margin_top = 20.0 [node name="SplashDialog" type="WindowDialog"] +visible = true margin_right = 640.0 margin_bottom = 583.0 rect_min_size = Vector2( 640, 583 ) @@ -190,10 +191,11 @@ rect_min_size = Vector2( 4, 0 ) [node name="CopyrightLabel" type="Label" parent="Contents"] margin_top = 554.0 margin_right = 640.0 -margin_bottom = 567.0 +margin_bottom = 583.0 size_flags_horizontal = 3 custom_fonts/font = ExtResource( 7 ) -text = "ยฉ2019-present by Orama Interactive and contributors" +text = "ยฉ2021-present by Tony Bark +ยฉ2019-present by Orama Interactive and contributors" align = 1 [node name="HBoxContainer" type="HBoxContainer" parent="Contents/CopyrightLabel"]