{"id":18850022,"url":"https://github.com/thepat02/splashscreenwizard","last_synced_at":"2025-04-14T09:21:15.877Z","repository":{"id":224208680,"uuid":"762672307","full_name":"ThePat02/SplashScreenWizard","owner":"ThePat02","description":"A simple plugin for the Godot Game Engine that allows you to create a custom splash screen for your game.","archived":false,"fork":false,"pushed_at":"2024-08-27T23:15:37.000Z","size":2969,"stargazers_count":44,"open_issues_count":2,"forks_count":2,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-27T22:42:44.962Z","etag":null,"topics":["godot","splash-screen"],"latest_commit_sha":null,"homepage":"","language":"GDScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ThePat02.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-24T11:17:36.000Z","updated_at":"2025-03-26T11:26:31.000Z","dependencies_parsed_at":"2024-08-05T19:55:54.769Z","dependency_job_id":null,"html_url":"https://github.com/ThePat02/SplashScreenWizard","commit_stats":null,"previous_names":["thepat02/splashscreenwizard"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThePat02%2FSplashScreenWizard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThePat02%2FSplashScreenWizard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThePat02%2FSplashScreenWizard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThePat02%2FSplashScreenWizard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ThePat02","download_url":"https://codeload.github.com/ThePat02/SplashScreenWizard/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248852186,"owners_count":21171843,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["godot","splash-screen"],"created_at":"2024-11-08T03:27:19.789Z","updated_at":"2025-04-14T09:21:15.848Z","avatar_url":"https://github.com/ThePat02.png","language":"GDScript","funding_links":["https://ko-fi.com/pat02"],"categories":[],"sub_categories":[],"readme":"# SplashScreenWizard\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"addons\\splash_screen_wizard\\icons\\ProjectIcon.png\" alt=\"Logo\"/\u003e\n\u003c/p\u003e\n\n\u003ccenter\u003e\nA simple plugin for the Godot Game Engine that allows you to create a custom splash screen for your game.\n\u003c/center\u003e\n\n\u003cbr\u003e\n\n\u003e [!NOTE]\n\u003e This plugin doesn't change the Boot Splash Screen of the Godot Engine that can be customized in the Project Settings. It provieds a new set of `Control` nodes that can be used to create a custom splash screen inside the `SceneTree`.\n\n\nYou can also [buy me a coffee](https://ko-fi.com/pat02) if you like the plugin and feel like supporting me :D\n\n\n## Features\n- Plug \u0026 Play: Just add the ![IconSplashScreen](addons/splash_screen_wizard/icons/SplashScreen.svg) `SplashScreen` node to your scene and you are ready to go.\n- Create custom splash screens in the editor by using ![IconSplashScreenSlide](addons/splash_screen_wizard/icons/SplashScreenSlide.svg) `SplashScreenSlide` nodes.\n- Set transitions for each slide using the `SlideTransition` system.\n- Let the player skip slides using the a defined input action.\n\n## Installation\nYou can install the plugin in one of the following ways:\n\n- Use the Godot Asset Library to install the plugin directly from the Godot Editor.\n- Get the latest release from the [Releases](https://github.com/ThePat02/SplashScreenWizard/releases) page and add the contents of the `addons` directory to your project.\n- Clone the repository using `git clone`.\n- Install it as git submodule using the `submodule` branch!\n\n\n## Usage\n\u003e [!TIP]\n\u003e Each node and resource is documented using the Godot Engine's built-in documentation system. You can access the documentation by pressing `F1` or hovering over properties in the editor.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"images\\screenshot_tree.png\" alt=\"Screenshot of the SceneTree\"/\u003e\n  \u003cimg src=\"images\\screenshot_inspector.png\" alt= \"Screenshot of the Inspector\"/\u003e\n\u003c/p\u003e\n\nThe plugin provides the ![IconSplashScreen](addons/splash_screen_wizard/icons/SplashScreen.svg) `SplashScreen`  and ![IconSplashScreenSlide](addons/splash_screen_wizard/icons/SplashScreenSlide.svg) `SplashScreenSlide` nodes. The `SplashScreen` node is the root node of the splash screen and the `SplashScreenSlide` nodes are the slides that are shown on the splash screen in order. You can add as many slides as you want to the `SplashScreen` node and customize them to your liking.\n\n\n### Quick Start\n1. Enable the plugin in the Project Settings.\n2. Create a new `SplashScreen` node in your scene.\n3. Add `SplashScreenSlide` nodes as children of the `SplashScreen` node.\n   - I highly recommend creating a new scene for each slide with the `SplashScreenSlide` as the root node, as it will make it easier to edit the slides.\n4. Customize the Slide nodes to your liking.\n    - Set transitions (FadeIn, FadeOut, etc.) using the `transition_in` and `transition_out` properties. This plugin comes built-in with `SlideTransitionFade`, but you can create your own by inheriting from `SlideTransition`.\n    - If there is no custom logic required, setting `continue_after_duration` to `true` will automatically continue to the next slide after the `duration` has passed.\n    - If you want to add custom logic (e.g. animations, confirmation prompts, etc.), set `continue_after_duration` to `false` and extend the `SplashScreenSlide` script.\n5. Run the scene and enjoy your custom splash screen.\n    - If `autorun` is disabled, you can call `start()` on the `SplashScreen` node to start the splash screen manually.\n\n\n\u003e [!IMPORTANT]\n\u003e Make sure to set the correct `Anchor Presets` for the `SplashScreen` and `SplashScreenSlide` nodes, as they still function as regular `Control` nodes. You can do this by selecting the node and clicking the green circle with the white cross in your toolbar. Most of the time you will want to set the `Anchor Presets` to `Full Rect`.\n\n\n### Advanced Usage\nAs mentioned above, all nodes, functions and resources you will ever need are documented. There also is a demo scene included that showcases some of the features of the plugin. You can find it in the `demo_splash_screen_wizard` directory.\n\n#### Creating custom logic for slides\nRight click on the `SplashScreenSlide` node and select `Extend Script`. This will create a new script that extends the `SplashScreenSlide` class. You can now override the `_slide()\n` method and implement your own logic, like playing animations from the `AnimationPlayer` or showing a confirmation prompt. After your logic is done, emit the `slide_finished` signal to continue to the next slide.\n\n##### Example from the demo scene\n```gdscript\nfunc _slide() -\u003e void:\n\tvar animation_player = %AnimationPlayer\n\tanimation_player.play(\"wiggle\")\n\tawait animation_player.animation_finished\n\tslide_finished.emit()\n```\n\n#### Creating custom transitions\nCreate a new script that extends the `SlideTransition` class. You can now override the `_start()` method and implement your own transition logic. It is recommended to use `Tween`s for this, as they are built-in and easy to use.\n\n##### Example from built-in Fade Transition\n```gdscript\nclass_name SlideTransitionFade extends SlideTransition\n\n# ...\n\nfunc _start(target: Node) -\u003e void:\n    var fade: Tween = target.get_tree().create_tween()\n\n    var value_start: float\n    var value_end: float\n\n    match fade_type:\n        FadeType.FADE_IN:\n            value_start = 0\n            value_end = 1\n        FadeType.FADE_OUT:\n            value_start = 1\n            value_end = 0\n\n    \n    target.modulate.a = value_start\n    target.show()\n    fade.tween_property(target, \"modulate:a\", value_end, duration).set_trans(transition_type)\n\n    await fade.finished\n```\n\n\n## Contributing\nFeel free to open a pull request or an issue if you have any suggestions or found a bug.\n\n\n## License\nThis project is licensed under the [MIT License](LICENSE.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthepat02%2Fsplashscreenwizard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthepat02%2Fsplashscreenwizard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthepat02%2Fsplashscreenwizard/lists"}