Compare commits

..

595 Commits

Author SHA1 Message Date
Tom Rothamel d10d81647b Fix changelog typo. 2019-10-07 20:52:27 -04:00
Tom Rothamel e7708c23fb Merge pull request #2030 from Andykl/fix-dynamic-image
Fix dynamic image
2019-10-07 20:13:05 -04:00
Andy_kl cc45453f4a More correct clear target on prefix change 2019-10-08 03:11:48 +03:00
Andy_kl 4dba39c57a More correct comment 2019-10-08 00:16:09 +03:00
Andy_kl c570d96458 Remove debug print 2019-10-08 00:07:04 +03:00
Andy_kl 0888c1ae1c Set target back if changing the prefix refers to the same image. 2019-10-08 00:04:27 +03:00
Andy_kl 9222ca20c6 Do not lose target after lock 2019-10-07 23:34:11 +03:00
Andy_kl 4ad03d0f98 Set _duplicatable flag before first targeting 2019-10-07 23:31:40 +03:00
Tom Rothamel de33e805d4 Revert glGet of FBO.
This prevents having to query the GPU, which would force a thread
synchronization in a multithreaded GPU driver.
2019-10-06 13:35:04 -04:00
Tom Rothamel dab57aeec3 Update changelog ad documentation. 2019-10-05 21:45:16 -04:00
Tom Rothamel 82caa0a66a Allow "[prefix_]" to be used in non-style DynamicImages..
Fixes #2016.
2019-10-05 21:26:14 -04:00
Tom Rothamel fe3c6908ea Merge pull request #1932 from Andykl/sl2-fixes
CDSL displayables should allow 'if' statements inside self.
2019-10-04 23:26:10 -04:00
Tom Rothamel 0c39b34c79 Merge pull request #2021 from Andykl/fix-translate
Fix line in Russian translate
2019-10-04 23:24:42 -04:00
Tom Rothamel 05b35745a1 lint: Do not pass formatted text into report.
Fixes #2027.
2019-10-04 22:48:31 -04:00
Tom Rothamel 77c04ac67d Fix docstrings for DragGroup. 2019-10-04 21:47:12 -04:00
Tom Rothamel bb4154c25f Perform FLATTEN during the render-to-texture pass.
This prevents it from leaving single-frame artifacts.
2019-10-03 21:59:38 -04:00
Andy_kl d8ad65e912 Fix line 2019-10-03 13:35:00 +03:00
Tom Rothamel be678bd4ba Update changelog. 2019-10-03 01:42:01 -04:00
Tom Rothamel e12c00ee6d Merge pull request #2015 from Andykl/fix-drag-issues
Set the style prefix for dragged set even after update screen
2019-10-03 01:32:25 -04:00
Tom Rothamel b22c4c1379 Drop textures when changing fullscreen mode on windows.
Fixes a bug where obsolete textures are used, causing the wrong
texture to be displayed.
2019-10-03 00:57:39 -04:00
Tom Rothamel 3a58834de0 Fix issues caused by a double-RTT with shared resources. 2019-10-02 23:44:46 -04:00
Tom Rothamel d2b96c0eab Bump version. 2019-10-02 20:26:12 -04:00
Andy_kl b3b4036955 Update Drag's prefix of the current dragging even after restart_interaction
Per #2014
2019-10-02 23:18:49 +03:00
Andy_kl 544dde6d5c Set the style prefix for dragged set even after update screen
Per #2014
2019-10-02 16:16:00 +03:00
Tom Rothamel 3002a1b019 Merge pull request #2011 from lunalucid/typo-fixes
Some typo fixes on config.rst and displayables.rst
2019-10-01 01:00:02 -04:00
lunalucid 08a621fdcf Some typo fixes on config.rst and displayables.rst 2019-09-30 22:53:06 -06:00
Tom Rothamel 3ba9569ace Allow character to call a function to supply its name.
Fixes #2007.
2019-09-30 22:46:25 -04:00
Tom Rothamel 166807fc76 Update credits. 2019-09-30 19:56:55 -04:00
Tom Rothamel 628a09d187 Merge pull request #2010 from lunalucid/correct-linespacing
Correct preference 'font vertical spacing' to 'font line spacing'
2019-09-30 01:58:16 -04:00
lunalucid e4348c52d6 correct preference 'font vertical spacing' to 'font line spacing' 2019-09-29 22:38:41 -06:00
Tom Rothamel 8f62aac732 Update credits. 2019-09-29 19:39:55 -04:00
Tom Rothamel 9f0a05fc6b Remove manual notarization.
It's now integrated into the app/dmg signing scripts, making it
a walk-away process.
2019-09-29 10:36:38 -04:00
Tom Rothamel d492249835 Merge pull request #2005 from Herpior/viewport-edgescroll-fix
Clear edgescroll timer when mouse moved out of bounds
2019-09-28 21:40:05 -04:00
Tom Rothamel dcfc23d2f3 Fix matrix.is_unit_aligned.
The implementation was wrong, and so it would never return true.
2019-09-28 18:43:37 -04:00
Beuc ad5e11c710 Typos 2019-09-28 10:06:54 +02:00
Tom Rothamel 5354bb0762 Fix a problem that prevents installing the android sdk. 2019-09-28 00:45:36 -04:00
Tom Rothamel f721662ef9 Merge pull request #2006 from renpy/Beuc-patch-1
config.cache_surfaces is False by default
2019-09-27 16:23:24 -04:00
Beuc c6641e53fe config.cache_surfaces is False by default 2019-09-27 22:20:04 +02:00
Roope Herpiö b97b29d894 Clear edgescroll timer when mouse moved out of bounds 2019-09-27 15:08:02 +03:00
Tom Rothamel 32eb7be5a1 Fix name. 2019-09-27 01:24:50 -04:00
Tom Rothamel 0b8bf87eaf doc: Fix changelog and update credits. 2019-09-26 20:12:56 -04:00
Tom Rothamel 857d776538 Remove information about mac signing.
It's best done with renpy/mac-notarization, rather than the
current system.
2019-09-26 18:33:29 -04:00
Tom Rothamel df51f5233f Finish notarization of Ren'Py.
This includes the notarization of the DMG that Ren'Py is
distributed with.
2019-09-24 20:50:50 -04:00
Tom Rothamel aed2625486 Merge pull request #2004 from uyjulian/avoid_spam_threading
Join previous autosave thread before spawning a new one
2019-09-24 01:58:56 -04:00
uyjulian 47271b7af9 Join previous autosave thread before spawning a new one 2019-09-24 00:53:54 -05:00
Tom Rothamel d8050e9f5d Use a tarball for notarization.
Turns out that a .zip can't really represent the extended
attributes used for signing some files properly, but the
tar format can. So we use that to ship things over, and
get a working .dmg.
2019-09-24 01:17:34 -04:00
Tom Rothamel b639171118 Scripts for notarizing Ren'Py. 2019-09-23 22:14:46 -04:00
Tom Rothamel 25e66d3150 More mac codesigning improvements.
* Do not sign the dmg.
* Fix giving the path to the entitlements.
2019-09-21 15:34:41 -04:00
Tom Rothamel dcaa97a70e Improve support for codesigning with entitlements. 2019-09-21 01:08:46 -04:00
Tom Rothamel e0fd8dc4d5 Update changelog and credits. 2019-09-20 00:08:04 -04:00
Tom Rothamel 2cc4bdd407 doc: Mention the Android version change in the changelog. 2019-09-19 23:41:09 -04:00
Tom Rothamel 8ccfb9abc7 Check in updated keywords. 2019-09-19 23:21:41 -04:00
Tom Rothamel 4734fb62f4 Merge pull request #2002 from Herpior/viewport-edgescroll-fix
Fixed bug with edgescroll in viewport
2019-09-19 22:08:25 -04:00
Tom Rothamel 8353120f55 doc: Changelog and sponsors. 2019-09-19 21:17:23 -04:00
Tom Rothamel 5a081b6dc7 doc: Web changelog, from Beuc. 2019-09-19 19:57:16 -04:00
Tom Rothamel 52cdcb699a doc: Changelog. 2019-09-19 02:25:05 -04:00
Tom Rothamel e190596f3d Add backwards compatibility for force_step. 2019-09-19 02:18:14 -04:00
Tom Rothamel 9352339f5b doc: Audio directory. 2019-09-18 01:41:58 -04:00
Tom Rothamel 5c315d02d1 doc: Fix. 2019-09-17 19:43:49 -04:00
Tom Rothamel 86a95abb60 Document AudioData. 2019-09-17 19:42:13 -04:00
Tom Rothamel cc03f54738 Allow audio data to be encapsulated in AudioData. 2019-09-16 23:56:26 -04:00
Tom Rothamel f40ff85436 Include the wave and sunau files with Ren'Py. 2019-09-16 22:25:53 -04:00
Tom Rothamel 3c6918c36f Fix crash caused by non-existent screen in save. 2019-09-15 10:40:35 -04:00
Tom Rothamel 754aec0507 Ensure that InputValue is called when an Input is shown for the first time. 2019-09-14 21:02:31 -04:00
Tom Rothamel 9f800275ad Remove spurious return. 2019-09-14 19:00:28 -04:00
Tom Rothamel cf05311158 Make the name of the screen used by renpy.input configurable. 2019-09-14 18:59:59 -04:00
Tom Rothamel 644d24dcc4 Avoid error if a a substitution doesn't exist during screen prep.
I believe that improvements to screen analysis make text more
predictable, which caused this problem.
2019-09-14 18:59:59 -04:00
Roope Herpiö 87f076e78c Mouse motion events on viewport no longer reset self.edge_last_st unless necessary 2019-09-13 21:11:35 +03:00
Tom Rothamel b0cc98cea2 Merge pull request #1998 from Andykl/missed-ignore
Minor fixes
2019-09-13 14:00:56 -04:00
Tom Rothamel 498ea82ec9 Document how arguments are passed to screens in modern Ren'Py. 2019-09-12 21:41:58 -04:00
Tom Rothamel e587790021 Move the start callbacks after the defaults.
Per #2001.
2019-09-12 01:05:57 -04:00
Tom Rothamel bbaf654ef9 Mark Ren'Py collection types as pure.
More specifically, __renpy__list__, __renpy__set__, and
__renpy__dict__.

Per #1935.
2019-09-11 22:57:29 -04:00
Tom Rothamel 44b5af95ff Merge pull request #2000 from Andykl/fix-drag-issue
Set correct style_prefix for drop object after restart interaction.
2019-09-10 19:44:40 -04:00
Andy_kl 5470f86c39 Set correct style prefix for drop object after restart interaction. 2019-09-11 02:38:44 +03:00
Tom Rothamel 8e04c766de Hide the notify screen on rollback.
Fixes #1951.
2019-09-10 01:17:32 -04:00
Tom Rothamel 82b396d424 The non-screens menu indicates that it shows the window.
Fixes #1981.
2019-09-09 23:27:27 -04:00
Tom Rothamel a0dad58dbf Ignore printable keycodes without unicode.
This should fix a race condition where that could cause unprefixed
key commands (like 'v' or 'a') to trigger if KEYDOWN is present
but the TEXTINPUT hasn't been delivered yet.
2019-09-09 22:57:33 -04:00
Tom Rothamel d28ecb39ff In a multipart statment like menu, call from should use the first part.
Fixes #1996.
2019-09-08 20:28:56 -04:00
Andy_kl 6597edcada Add vibrate to drag alternate 2019-09-09 02:03:19 +03:00
Andy_kl 5c44e738e6 Fix wrong event ignore 2019-09-09 01:49:44 +03:00
Tom Rothamel 7e295d67b5 Call renpy.shown_window from nvl_menu.
Fixes #1934.
2019-09-08 01:26:49 -04:00
Tom Rothamel 61eb81c79d Lock a button's style after _in_current_store.
Fixes #1973.
2019-09-08 01:15:05 -04:00
Tom Rothamel df32d31113 Throw a hard exception when gui.init is called outside of the init phase. 2019-09-08 00:59:07 -04:00
Tom Rothamel 59587015ba doc: Fix incomplete sentence.
Fixes #1962.
2019-09-08 00:55:27 -04:00
Tom Rothamel 312c49f194 Fix #1982. 2019-09-08 00:20:49 -04:00
Tom Rothamel 7c75a79c13 Deal with a problem when a FontGroup is replaced.
Fixes #1994.
2019-09-07 23:56:17 -04:00
Tom Rothamel e6546189eb ffmedia: Fix the mixing of mono files into stereo.
Fixes #1943.
2019-09-07 23:28:11 -04:00
Tom Rothamel 9500f658a3 Merge pull request #1889 from Andykl/change-get-layer
Receive a layer from default_layer in all exports funcs
2019-09-07 11:06:40 -04:00
Tom Rothamel 6d9bcff1f6 Merge pull request #1937 from Moshibit/master
patch - minor fixes
2019-09-07 11:05:57 -04:00
Tom Rothamel 3a352af1e5 Merge pull request #1965 from Beuc/gleshighp
gles: handle GPUs that do not support highp
2019-09-07 11:04:34 -04:00
Tom Rothamel 87b323a3d4 Tweak documentation. 2019-09-07 10:56:37 -04:00
Tom Rothamel 1bf97965b8 Merge pull request #1967 from Andykl/is_init_phase
Added is_init_phase in exports.
2019-09-07 10:55:29 -04:00
Tom Rothamel eafcbf572f Merge pull request #1997 from pionere/sound-fix
fixed sound-queue call_back
2019-09-07 10:54:45 -04:00
pionere 427a1542d8 fixed sound-queue call_back
call queue_empty_callback only if the queue is really empty
2019-09-07 16:37:50 +02:00
pionere ee53f232aa Revert: prevent crash when get_selected is called on a non-existent field 2019-09-07 16:32:17 +02:00
Tom Rothamel 7c03642cb5 Fix tyop that broke itch on mac. 2019-09-06 20:11:40 -04:00
Tom Rothamel 4347c89c15 gl2: Implement is_pixel_opaque. 2019-09-06 01:50:55 -04:00
Tom Rothamel 9783a0a733 gl2: Move the fbo into GLDraw.
This lets the same fbo be shared between the texture system and
things like screenshots and is_pixel_opaque.
2019-09-05 02:29:25 -04:00
Tom Rothamel e5252af42b Automatically voice character menu captions.
Fixes #1991.
2019-09-04 03:37:55 -04:00
Tom Rothamel 094009fa3a gl2: Replace the renderbuffer with a texture.
RGBA renderbuffers don't seem to be supported well on WebGL or
OpenGL ES, at least for the low-end platforms.
2019-09-03 00:17:10 -04:00
Tom Rothamel 6471986ea9 oldgl: Bind a texture to the framebuffer, not a renderbuffer.
Creating RGBA or RGBA8 renderbuffers doesn't seem to be supported
very well (at leeast in webgl), while texture attachments seem to work.
2019-09-02 22:28:29 -04:00
Tom Rothamel ab97732865 oldgl: Use renderbuffer copying to render textures.
This is a backport of a performance improvement from the gl2
branch, where profiling reported that rebinding the framebuffer
was very slow, and simply copying the pixels out is much
faster.
2019-09-01 22:04:49 -04:00
Tom Rothamel 4f90718eaa oldgl: Expose renderbuffer functions. 2019-09-01 22:00:57 -04:00
Tom Rothamel 2aa796d418 glold: Remove support for OpenGL ES 1
This wasn't used for anything, and it's obsolete, so out it goes.
2019-09-01 21:51:46 -04:00
Moshibit e62ee21922 translation correction 2019-08-31 22:47:17 -05:00
Moshibit 218cb677cd Delete indepth_minigame.rpyc 2019-08-31 22:46:44 -05:00
Moshibit fe0e129ad3 translation correction 2019-08-31 22:45:40 -05:00
Moshibit 630ed80eb5 translation correction 2019-08-31 22:33:55 -05:00
Moshibit 2b5d40053d translation correction 2019-08-31 21:48:12 -05:00
Moshibit 8728fd137a translation correction 2019-08-31 21:44:18 -05:00
Moshibit 7b34ec1ba3 translation correction 2019-08-31 21:04:06 -05:00
Moshibit 3f785ee366 Delete indepth_transitions.rpyc 2019-08-31 21:03:36 -05:00
Moshibit 1f9401a602 translation correction 2019-08-31 21:02:32 -05:00
Moshibit 91a0677f67 translation correction 2019-08-31 19:45:36 -05:00
Tom Rothamel 1392fb9239 gl2: Fix order of matrix operations. 2019-08-31 20:42:19 -04:00
Moshibit ac902ee733 translation correction 2019-08-31 19:06:40 -05:00
Tom Rothamel 6031917511 Fix matrix order. 2019-08-31 17:39:41 -04:00
Tom Rothamel 0e6ad371fe Merge pull request #1938 from Andykl/doc-afm_enabled
Doc afm enabled
2019-08-30 21:28:27 -04:00
Tom Rothamel ead5c63eac Merge pull request #1939 from psunbury/patch-1
Added that the default setting are in options.rpy
2019-08-30 21:27:55 -04:00
Tom Rothamel 18827a8ab3 Merge pull request #1952 from Andykl/atl-fix
Fix missed continue
2019-08-30 21:27:31 -04:00
Tom Rothamel 8c81811177 Merge pull request #1955 from jsfehler/pref_typo
Fix typo in common/00preferences.rpy
2019-08-30 21:27:16 -04:00
Tom Rothamel ce634662bd Merge pull request #1969 from renpy/Beuc-doc-python
doc: python: clarify other stores usage
2019-08-30 21:26:59 -04:00
Tom Rothamel 13c32894cf Document renpy.random.shuffle.
Per #1989.
2019-08-29 21:51:13 -04:00
Tom Rothamel 26e0f1617e gl2: Use the reverse matrix to multiple rendered textures. 2019-08-29 21:49:33 -04:00
Tom Rothamel 6754d50c12 Merge pull request #1984 from tdh8316/Korean-translation
Improve Korean translation
2019-08-26 21:39:46 -04:00
Donghyeok Tak ebe8264b1d Cleanup translations 2019-08-25 22:01:52 +09:00
Donghyeok Tak 5c9a1066e3 Improve Korean translation 2019-08-25 21:47:33 +09:00
Tom Rothamel 07a6f3dcbd Compate for audio directory stuff. 2019-08-25 08:27:18 -04:00
Tom Rothamel 3441e0e7f0 Remove pluralization.
Fixes #1983.
2019-08-25 08:14:34 -04:00
Moshibit 3bd9055c5f Add files via upload 2019-08-24 11:41:22 -05:00
Moshibit 2941031b2a Merge pull request #5 from renpy/master
update from renpy/master
2019-08-24 10:26:43 -05:00
Tom Rothamel 627b18a8e8 Merge pull request #1970 from renpy/Beuc-doc-emscripten
doc: reference renpy.emscripten + renpyweb enabling renpy.mobile
2019-08-23 06:45:10 -04:00
Tom Rothamel 681d3a5772 Merge pull request #1972 from Andykl/adjustment-force_step
Adjustment force_step
2019-08-22 05:18:13 -05:00
Tom Rothamel 39be517a0a gl2: Move shaders into the common section.
And introduce a function to register the shaders.
2019-08-20 23:16:28 -04:00
Tom Rothamel 8916575921 Automatically define audio files in the audio namespace. 2019-08-19 00:37:04 -05:00
Tom Rothamel 5288ff876d Use _audio_eval on voice filenames. 2019-08-18 18:36:50 -05:00
Tom Rothamel 067d98cdf0 Improve changes to SelectedIf and SensitiveIf.
This builds on the changes in #1977, so that all Action methods
can be proxied.
2019-08-17 08:58:17 -05:00
Tom Rothamel 65957b3236 Merge pull request #1977 from Andykl/improve-if-actions
Improve SelectedIf and SensitiveIf
2019-08-17 08:37:39 -05:00
Moshibit 726e535f1b corrections 2019-08-16 16:43:37 -05:00
Andy_kl 095a253bf8 Fix doc 2019-08-16 22:48:45 +03:00
Andy_kl d3c36b843e Improve SelectedIf and SensitiveIf 2019-08-16 22:42:17 +03:00
Tom Rothamel b5707d7091 Merge pull request #1953 from Beuc/variants-web
web: set variants according to what the browser runs on
2019-08-16 12:45:22 -05:00
Tom Rothamel 024b0aef81 Merge pull request #1961 from Beuc/fullscreen-web
web: detect when fullscreen status changed externally
2019-08-16 12:44:39 -05:00
Tom Rothamel 365913c267 gl2: Use a depth renderbuffer when rendering-to-texture with depth. 2019-08-15 08:10:13 -04:00
Tom Rothamel a2b8842206 gl2: Optimized path for triangle meshes. 2019-08-14 22:57:56 -04:00
Tom Rothamel dc51db06b1 gl2: If a mesh consists of only one kind of polygon, indicate that. 2019-08-14 22:56:38 -04:00
Tom Rothamel c590c4f956 gl2: Do not give OpenGL precision qualifiers. 2019-08-14 22:53:44 -04:00
Tom Rothamel 3871803088 gl2: Properly name config.depth_size. 2019-08-14 02:44:46 -04:00
Tom Rothamel 40ec6f87ef gl2: Depth buffer and depth testing. 2019-08-14 01:45:29 -04:00
Tom Rothamel 6339c0dfef gl2: Fix reload. 2019-08-10 16:38:24 -04:00
Tom Rothamel 510b7cb909 gl2: Support gles directly, rather than in the preprocessor. 2019-08-10 16:35:53 -04:00
Tom Rothamel 3a011ca2c6 gl2: Allow games to use config.gl2 to opt in. 2019-08-09 21:06:47 -04:00
Andy_kl d12fe12c2b Restore type after rounding 2019-08-09 22:04:23 +03:00
Tom Rothamel 37a128a470 gl2: Remove gl2ftl.pyx, now that a better version is in gl2texture. 2019-08-08 22:12:17 -04:00
Tom Rothamel 9e8b074a16 gl2: Disable gl2debug for now.
I haven't been using it, and it's causing build errors.
2019-08-07 18:31:55 -04:00
Tom Rothamel 3147e71c45 Fix windows build. 2019-08-07 11:22:24 -04:00
Tom Rothamel 60d413f96f gl2: Implement ImageDissolve. 2019-08-05 22:47:59 -04:00
Tom Rothamel 5029e6d078 gl2: Dissolve shader. 2019-08-05 21:59:14 -04:00
Tom Rothamel ef167433f4 gl2: Properly set up textures. 2019-08-05 21:54:00 -04:00
Andy_kl aac1f4c421 Compat this 2019-08-06 04:23:16 +03:00
Andy_kl 0ab0856e37 Doc for this 2019-08-06 04:17:31 +03:00
Andy_kl 760503b124 Added force_step keyword to all Action which uses step. 2019-08-06 04:08:26 +03:00
Andy_kl d16e3eea75 Added round_value process to Viewport 2019-08-06 03:48:44 +03:00
Andy_kl 09fda5505e Added round_value process to Bar 2019-08-06 03:47:03 +03:00
Andy_kl 5d4bb738ef Added force_step keyword and round value to Adjustment 2019-08-06 03:37:33 +03:00
Sylvain Beucler 204a48f577 web: more variants tuning 2019-08-05 14:03:51 +02:00
Beuc 8889ab487d doc: reference renpy.emscripten + renpyweb enabling renpy.mobile 2019-08-05 13:16:24 +02:00
Beuc 06684d692a doc: python: clarify other stores usage
Additional stores are available as local variables in the default 'store' under their name already, consequently 'import store.mystore as mystore' is a no-op
2019-08-05 13:08:57 +02:00
Sylvain Beucler 5f4e6d4ba1 web: set variants according to what the browser runs on 2019-08-05 12:51:52 +02:00
Tom Rothamel 200af0d584 gl2: Add rendering to a Texture. 2019-08-05 03:04:21 -04:00
Tom Rothamel e78828fa3b gl2: Add matrix function generation to Ren'Py. 2019-08-05 03:01:02 -04:00
Tom Rothamel 7e602c256e gl2: Add renpy.display.render.models.
A variable to determine if we are supporting a renderer that
support models (gl2) or quads (sw/gl).
2019-08-04 13:15:48 -04:00
Tom Rothamel 1a8154c78a gl2: Add fields for gl2 to renpy.render. 2019-08-04 12:32:11 -04:00
Tom Rothamel 2d7460bafd gl2: Fix a gc leak through Texture. 2019-08-04 12:21:40 -04:00
Tom Rothamel ae998912f5 gl2: Make renpy.geometry the 'default shader', so it doesn't have to be passed.
While we could have just added it to the tuple of shaders created in
GL2DrawingContext, that would lead to creating a tuple on every
render. So instead, it's added in the shader compiler.
2019-08-04 02:27:49 -04:00
Tom Rothamel e8cd034b7a gl2: Separate Texture and non-texture Models.
Which should make things simpler when determining if a RTT is
required, going forwards.
2019-08-03 16:46:21 -04:00
Andy_kl 900e291cdc Added is_init_phase in exports. 2019-08-03 15:19:18 +03:00
Tom Rothamel cb98d18aa9 gl2: Rename TexturedMesh -> Model. 2019-08-03 02:42:24 -04:00
Tom Rothamel ef4c5aff9e gl2: Do not copy a Polygon, Mesh, or TexturedMesh that didn't change. 2019-08-02 23:00:55 -04:00
Tom Rothamel 6cdcb5dfbc Create a flatten operation type.
This makes RTT entirely the renderer's concern.
2019-08-02 19:39:26 -04:00
Tom Rothamel 797ef0fc25 fix: Duplicate the children of DynamicDisplayable.
Fixes #1966, which causesd a Transform that was added to the
tree of surfaces twice, then rendered in a way that wasn't
cached, to cause a crash.
2019-08-01 22:01:35 -04:00
Tom Rothamel c132df21ca gl2: Dynamically select shader and implement alpha blending. 2019-08-01 02:16:07 -04:00
Tom Rothamel 6ab2df60f4 gl2: Implement texture preloading. 2019-07-31 22:47:05 -04:00
Tom Rothamel 101cb8c348 gl2: Support zero copy texture loading.
At least for the common cases, like loading text into the GPU.
2019-07-31 21:17:54 -04:00
Sylvain Beucler 2f53ddc03e gles: handle GPUs that do not support highp 2019-07-31 15:47:42 +02:00
Tom Rothamel 8a042fe187 gl2: Texture improvements.
* Ask GL for the maximum size.
* Remove the idea of generations - we swap out the loader when a
  generation is obsolete.
* Cache the fbo so changing it is needed less often.
2019-07-31 01:27:02 -04:00
Tom Rothamel f9a61f7567 gl2: Read the maximum texture size from the video card. 2019-07-30 01:11:14 -04:00
Tom Rothamel 79c965ba5d gl2: Deal with precision issues in the barycentric interpolator.
It's the same issue as before - arriving at the same point by
different paths might lead to being outside by a very small
amount, which we don't want.
2019-07-30 00:41:41 -04:00
Tom Rothamel 340db775c5 gl2: Fix method name typo. 2019-07-30 00:34:58 -04:00
Tom Rothamel d1224c0707 gl2: Load large surfaces as tiles. 2019-07-29 08:17:18 -04:00
Tom Rothamel afeb06c1d9 gl2: Change how rectangles work. 2019-07-28 23:32:44 -04:00
Tom Rothamel afad82b082 gl2: The Great Geometry Rewrite (tm)
This improves gl2 Polygons and Meshes by making it clear if a
new object is created or they're updated in place, by supporting
multiplication by matrices directly, and by including the repr
function everywhere.

Really, a quality of life improvement.
2019-07-28 18:33:27 -04:00
Tom Rothamel 2f683b2d69 gl2: Increase the numerical stability of gl2 by dealing with parallel lines. 2019-07-28 00:02:28 -04:00
Beuc d8ec4503a6 doc: fix formatting in sprites.html 2019-07-27 22:51:51 +02:00
Moshibit bb207a7fce Spanish translation correction
short and long must be in English
2019-07-27 11:44:52 -05:00
Sylvain Beucler 629ea6f13f web: detect when fullscreen status changed externally 2019-07-27 15:16:12 +02:00
Tom Rothamel 2a78e0141f gl2: Avoid leaking textures by changing generation too early. 2019-07-27 03:48:03 -04:00
Tom Rothamel 8da9eafd28 gl2: Remove debug print. 2019-07-27 03:28:50 -04:00
Tom Rothamel 1f8e1cacf6 gl2: Use a renderbuffer to load textures.
After extensive profiling my GTX 1060, it appears that using
glFrameBufferTexture2D is unacceptably slow. (300+us for just that
one call). glCopyTexImage seem to be much faster, with realistic
small texture loads (like button images) taking 60us or so.
2019-07-27 03:22:55 -04:00
Tom Rothamel 048f8fea8f gl2: Remove debugging from uguu.
Using KHR_debug gives us the same thing, faster.
2019-07-26 23:47:16 -04:00
Tom Rothamel 229bd5a82d gl2: Enable all debugging. 2019-07-26 23:23:19 -04:00
Tom Rothamel 12405a22d9 gl2: Support using KHR_debug to get error output. 2019-07-26 23:11:25 -04:00
Tom Rothamel 3529d40ba0 Add GetCharacterVolume. 2019-07-25 18:42:54 -04:00
Tom Rothamel 02be00bb78 Add compatibility for tile_ratio to Frame. 2019-07-25 12:36:57 -04:00
Tom Rothamel 189e7d8e4f Merge pull request #1956 from RenpyRemix/master
Add support for tile="integer" to frame. 

This is a version of tiling that always does an integer number of repeats, scaling as necessary to accomplish this.
2019-07-25 12:22:39 -04:00
Tom Rothamel 0956519365 gl2: Fix issues preventing a restart.
* Matrix can now be unpickled.
* deinit -> quit.
2019-07-24 01:32:07 -04:00
Tom Rothamel efbd897832 gl2: Avoid mipmapping, for now.
It changes the look of certainy parts of drawing, and so it needs
to be disabled for now.
2019-07-23 23:56:11 -04:00
Tom Rothamel c6d9b6e0c1 gl2: Fix uninitialized variable. 2019-07-23 23:42:42 -04:00
Tom Rothamel d0bbc81ebf gl2: Return the subsurface when taking a texture subsurface. 2019-07-23 22:52:24 -04:00
Tom Rothamel 662e8227ab gl2: The color used for solid textures should be alpha-premultiplied. 2019-07-23 22:39:47 -04:00
Tom Rothamel 33e3174692 Default to not code-signing for macOS.
Per #1958.
2019-07-23 18:05:40 -04:00
Moshibit dde68dd735 Merge pull request #4 from renpy/master
update from renpy/master
2019-07-23 15:34:15 -05:00
Tom Rothamel 5accb1c3e4 Add repr to texture. 2019-07-23 02:41:34 -04:00
Tom Rothamel 77d8b9b318 gl2: Properly reset the clipping rectangle. 2019-07-23 02:40:32 -04:00
Tom Rothamel 202fc47419 gl2: glEnableVertexAttribArray -> glDisableVertexAttribArray 2019-07-22 21:29:43 -04:00
RenpyRemix 49c0ec0504 Update imagelike.py
Support for tile="integer" in Frame
2019-07-22 23:51:26 +01:00
Tom Rothamel bc437b5e9b gl2: Implement clipping using polygons in the screen space. 2019-07-22 01:15:01 -04:00
Tom Rothamel b4dfcc44cf gl2: Determine if polygons are wound clockwise or counterclockwise.
This might actually change over the lifecycle of a polygon, as the
winding of the polygon changes when it goes from the pygame/Ren'Py
coordinate space to the OpenGL viewport space.

This change means it doesn't matter - polygon intersection can
always occur.
2019-07-22 01:00:00 -04:00
Tom Rothamel 1a98502bdc gl2: Set the number of actual points when restriding a polygon. 2019-07-22 00:52:54 -04:00
Joshua Fehler 977726c3ab Update 00preferences.rpy
Fix typo in common/00preferences.rpy
2019-07-21 23:48:51 -04:00
Tom Rothamel ed9cbfd21c gl2: Support cropping to a viewport-space polygon. 2019-07-21 15:07:46 -04:00
Tom Rothamel 261a0b807d gl2: Redo shaders to minimize allocation. 2019-07-21 01:14:09 -04:00
Tom Rothamel 261718967a gl2: Share the mesh used for ftl. 2019-07-20 23:13:49 -04:00
Moshibit 3e5e77b400 fix code
keyword "menu" cause an exception. Maybe you wanted to put "label" as it usually is after menu
2019-07-20 20:24:36 -05:00
Beuc 7fa4265f15 Remove mistaken file from Moshibit 2019-07-20 23:19:07 +02:00
Andy_kl 995823fbcf Fix missed continue 2019-07-20 23:00:47 +03:00
Tom Rothamel 663961581f Merge pull request #1949 from Andykl/nondevelop-dynamic
Do not raise error if dynamic variable already deleted in pop time.
2019-07-20 01:45:01 -04:00
Tom Rothamel d32946ce53 gl2: Texture loading (and eventually RTT) to its own pass. 2019-07-19 21:15:26 -04:00
Andy_kl 6bd9523780 Do not raise error if dynamic variable already deleted in pop time. 2019-07-20 02:36:48 +03:00
Tom Rothamel b0b49b353e gl2: Fix draw glitches.
These were caused by state that was left behind by the texture
loader.
2019-07-18 23:07:08 -04:00
Tom Rothamel b1b943b456 gl2: Render the Ren'Py surface tree.
This means that we're displaying a partially-correct screen,
rather than just test images.
2019-07-18 02:37:54 -04:00
Tom Rothamel dd5326c205 gl2: Load and display textures. 2019-07-17 22:40:21 -04:00
Tom Rothamel e62cc921c7 gl2: Able to load a surface as a TexturedMesh. 2019-07-16 23:14:41 -04:00
Tom Rothamel d343617616 gl2: Process texure loading through a TextureLoader object. 2019-07-16 02:11:15 -04:00
Tom Rothamel 0cf72637b2 Rename draw.free_memory to draw.kill_textures, unify with deinit.
The differentiation between .deinit() and .quit() was hard to understand.
This change makes it clear - .kill_textures frees all of the OpenGL textures,
while .quit() releases all GL resources.
2019-07-15 22:47:57 -04:00
Tom Rothamel e9312a3604 gl2: Display a solid. 2019-07-14 14:33:52 -04:00
psunbury 39420b940a Added that the default setting are in options.rpy
I spent a lot of time finding where this was set. It would be useful putting what file it is located.
2019-07-13 19:46:56 -07:00
Andy_kl d8655be2c5 Correct renpy.get_skipping returns 2019-07-14 05:18:09 +03:00
Andy_kl c276ac8ec8 Fix spurious skipping value 2019-07-14 05:16:17 +03:00
Andy_kl 37e7060baa Documented preferences.afm_enable 2019-07-14 05:15:44 +03:00
Tom Rothamel b155fa9411 gl2: Minor fixes, now can display a blank screen. 2019-07-13 12:02:58 -04:00
Tom Rothamel 4ef1e05dc8 gl2: Work on texture meshes. 2019-07-13 02:35:17 -04:00
Tom Rothamel da6e5e2c73 gl2: Add shader cache. 2019-07-12 23:29:48 -04:00
Moshibit 95c1cd5ad8 correct radio button 2019-07-12 21:50:40 -05:00
Moshibit f8747f6e38 Delete screens.rpy 2019-07-12 21:47:43 -05:00
Moshibit 450aeb55dc correct radio button 2019-07-12 21:41:14 -05:00
Moshibit 878e2284f8 fix typo 2019-07-12 21:35:09 -05:00
Moshibit a4291ccddb Merge pull request #3 from renpy/master
update from renpy/renpy master
2019-07-12 21:27:04 -05:00
Tom Rothamel 2091161241 Merge pull request #1933 from Queex/patch-1
Missing config prefix for gc_print_unreachable
2019-07-12 09:38:14 -04:00
Ben Wright c8ac8b511f Missing config prefix for gc_print_unreachable 2019-07-12 13:06:09 +01:00
Tom Rothamel ed3182c74c gl2: TexturedMesh fields. 2019-07-12 03:18:04 -04:00
Tom Rothamel 82b0d59f19 gl2: Cut out the old texture code. 2019-07-11 22:42:27 -04:00
Andy_kl 836238de5c CDSL displayables should allow 'if' statements inside self. 2019-07-12 00:06:40 +03:00
Tom Rothamel 60b42fd79b Merge pull request #1929 from Andykl/sl2-fixes
Sl2 fixes
2019-07-11 00:56:24 -04:00
Tom Rothamel ba2c72eaac Allow config.load_failed_label to take a function.
Fixes #1928.
2019-07-10 21:31:46 -04:00
Andy_kl 7751d5603e Fix indention in doc 2019-07-11 02:35:49 +03:00
Andy_kl 6e8d622282 Moved minimum property to position properties 2019-07-11 02:19:51 +03:00
Andy_kl 30b3366168 Documented default_properties 2019-07-11 02:18:37 +03:00
Tom Rothamel 736d9487c5 gl2: Combine the geometry stuff into one file. 2019-07-09 23:15:58 -04:00
Tom Rothamel 7bf7af52b1 gl2: float -> double, so it works with emscripten. 2019-07-08 22:33:46 -04:00
Tom Rothamel be7daf39d5 gl2: Clean as much of we can of gl1 out of gl2draw.pyx. 2019-07-08 02:28:27 -04:00
Tom Rothamel 0faf7810f6 Include gl2 and matrix in the built distributions. 2019-07-07 20:16:53 -04:00
Tom Rothamel bd333803b2 gl2: Log shader cache errors. 2019-07-06 15:04:25 -04:00
Tom Rothamel f24e3f199e gl2: Add modules from glexperiment into Ren'Py. 2019-07-06 03:07:38 -04:00
Tom Rothamel 13a755ae93 IF a pure-python module can't be parsed as utf-8, try it as latin-1. 2019-07-05 22:05:46 -04:00
Tom Rothamel a907cfaa2e Remove gl2 blacklist.
It was not used.
2019-07-05 20:33:34 -04:00
Tom Rothamel b236453972 Convert from using a 2x2 matrix to a 4x4 matrix.
This will eventually let us represent z-rotations
and translations using matrices.
2019-07-05 13:10:47 -04:00
Tom Rothamel 95fe225a8c Merge pull request #1921 from Beuc/sigttin
rapt: prevent gradle from stopping Ren'Py when run in the background
2019-07-04 10:19:39 -04:00
Sylvain Beucler 621fbe9449 rapt: prevent gradle from stopping Ren'Py when run in the background 2019-07-04 15:57:02 +02:00
Tom Rothamel f6029db185 Avoid a with None before a say attribute transition with a layer.
As this would make the transition moot.
2019-07-03 22:23:09 -04:00
Tom Rothamel 38f8e1f16f Document config.keyword_after_python as an incompatible change. 2019-07-02 23:06:01 -04:00
Tom Rothamel ca95350b70 Bump version. 2019-07-02 19:42:21 -04:00
Sylvain Beucler 985b54d284 web: avoid encoding issues in non-UTF-8 environments
e.g. windows korean, cf. renpyweb issue 1
2019-07-02 22:39:30 +02:00
Tom Rothamel 5664e29c7d Sponsor doc. 2019-07-01 22:17:03 -04:00
Tom Rothamel ae61f801f8 Update changelog. 2019-07-01 22:15:40 -04:00
Tom Rothamel cac70f9544 Merge pull request #1915 from Moshibit/master
correction in spanish translation
2019-07-01 22:00:53 -04:00
Tom Rothamel 45b792b4bd Only emulate the platform if asked.
Fixes #1917.
2019-07-01 21:58:33 -04:00
Tom Rothamel 97f578baac Bump version. 2019-07-01 21:14:02 -04:00
Tom Rothamel 2d9c8565be Automatically tag renpyweb. 2019-06-30 23:34:49 -04:00
Tom Rothamel a4596ecfbc Update changelog. 2019-06-30 23:21:09 -04:00
Tom Rothamel 740400db2c Make the preload thread actually do something.
Fixes #1890.
2019-06-30 23:09:05 -04:00
Tom Rothamel b1c6a3a16d Update keywords. 2019-06-30 22:45:44 -04:00
Moshibit 0f90a189f3 Merge pull request #2 from renpy/master
a
2019-06-30 17:49:04 -05:00
Tom Rothamel d427968170 Fix and update translations. 2019-06-30 01:50:00 -04:00
Tom Rothamel 673b1fcb4a Update changelog and sponsor docs. 2019-06-29 22:58:56 -04:00
Tom Rothamel 9a6f7f3975 sl2: Do not update scopes in used screens.
This is a much simpler fix for the problem in a1dd218560,
which is that the wrong scope will be given in a used screen that happens to be
constant.

The realization is that if a used screen is constant, it can't change - and hence
it doesn't need to be given a new scope at all.
2019-06-29 03:04:30 -04:00
Tom Rothamel af5e885e17 Revert "sl2: Store the scopes to provide them to _scope."
This reverts commit a1dd218560.
2019-06-29 02:46:54 -04:00
Tom Rothamel af0314885b Revert "Fix issues with screens and scopes."
This reverts commit df8f27f0d0.
2019-06-29 02:45:50 -04:00
Tom Rothamel e76411a6c9 Merge pull request #1900 from lee-yunseok/lee-yunseok
Update Korean strings.
2019-06-28 16:53:56 -04:00
Tom Rothamel bf9b60aa59 Merge pull request #1910 from Andykl/fixes
Update Russian
2019-06-28 16:53:38 -04:00
Moshibit d9aa172882 Merge pull request #1 from renpy/master
Fix issues with screens and scopes.
2019-06-27 22:08:14 -05:00
Moshibit 79a67705f1 correction 2019-06-27 22:04:06 -05:00
Tom Rothamel df8f27f0d0 Fix issues with screens and scopes.
Fixes #1905, where several bugs got collected into one place. The
main problem is that we need to store the actual values of
non-constant variables that, for example, change durting iteration,
while at the same time allowing things that use the scope to
update when the screen scope changes (from new parameters, or
something like SetScreenVairable).

This uses a method (scope_changed, similar to copy_on_change) to
take things that use the scope out of the cache when a scope change
happens.
2019-06-27 21:44:44 -04:00
Andy_kl d85241bfa7 Update Russian 2019-06-27 11:32:31 +03:00
Tom Rothamel c5cf467274 Fix spurious spaces in Spanish translation.
Fixes #1906.
2019-06-26 21:31:14 -04:00
Tom Rothamel 641a1b4f99 Fix None error in 8c36a9a4a5. 2019-06-25 22:29:14 -04:00
Tom Rothamel 01a0b6ed42 Always initialize the sound system.
To ensure silent movies can play, even if sounds aren't involved.

Fixes #1901.
2019-06-25 20:56:11 -04:00
Tom Rothamel 8c36a9a4a5 Fix double duplication in Transform.
Fixes #1903.
2019-06-25 20:49:22 -04:00
Tom Rothamel bfeb11a7be Merge pull request #1902 from Andykl/has-subblock
Added Lexer.has_subblock method.
2019-06-25 20:33:27 -04:00
Tom Rothamel f937f4bf42 Improve descriptive text.
- Move it to 00acessibility.rpy, where I can find it.
- sv -> alt (The old name still works.)
- Allow the creator to supply a character that's used to display
  descriptive text.
2019-06-25 01:52:14 -04:00
Tom Rothamel ba9accfd5e Process text tags when self_closing_custom_text_tags is set.
The check hadn't included that, which means that text tags would
not be processed when self_closing_custom_text_tags was set, and
custom_text_tags was not.
2019-06-24 19:28:53 -04:00
Andy_kl 0ca1f3ef66 Added Lexer.has_subblock method. 2019-06-24 23:31:40 +03:00
Lee Yunseok d19148f282 Fix typo. 2019-06-24 18:51:07 +09:00
Lee Yunseok 72d7b9ba59 Fix 2019-06-24 18:33:24 +09:00
Lee Yunseok 6231ffe2f3 Update Korean translation for renpyweb. 2019-06-24 18:09:41 +09:00
Lee Yunseok 097c24b140 Korean translation for accessibility in Tutorial, The Question. 2019-06-24 18:09:06 +09:00
Tom Rothamel c49f697b4d Avoid runing the gl test on a restart.
This prevents a with_none call that broke config.end_game_transition.
2019-06-23 10:42:16 -04:00
Tom Rothamel 8fc5225985 focus: Prioritize the highest default_focus value. 2019-06-22 14:59:49 -04:00
Tom Rothamel ac60c3ec9e To fix a conflict, replace default with default_focus. 2019-06-22 13:23:45 -04:00
pionere 7d655595e0 prevent crash when get_selected is called on a non-existent field
A field (especially a global Variable) might not exists at the beginning of the interaction. This causes the application to crash e.g. if the variable is set on the 'action' of a button.
The solution is that the get_selected returns False if the given field does not exists at the moment.
2019-06-22 14:35:41 +02:00
Tom Rothamel 6165d4aa11 Remove 'set' from the list of Ren'Py keywords.
It's used often in Python and expressions, and rarely in
Ren'Py.
2019-06-21 19:10:37 -04:00
Tom Rothamel 5e717b9bbe Improvements to rt run.
* The command is run with os.exec, so that ctrl-C can trigger
  a traceback.
* Command line arguments are passed to rt run in the right order.
2019-06-21 19:10:14 -04:00
Tom Rothamel 90b2f69876 Merge pull request #1897 from Andykl/fix-flatten
Flatten passing the position from child.
2019-06-20 17:18:40 -04:00
Andy_kl adbb05c99d Flatten passing the position from child. 2019-06-20 22:26:57 +03:00
Tom Rothamel ce2b11e7cf Add a random number generator that supports Rollback.
This is now returned by renpy.random.Random, and ensures the
numbers returned by it are deterministic.

Fixes #1893.
2019-06-20 09:58:06 -04:00
Tom Rothamel ae4369d223 Fix bad path to render_for_size. 2019-06-19 15:49:55 -04:00
Tom Rothamel 9a2cf214dc Properly generate the nvl clear UserStatement.
Fixes #1888.
2019-06-19 15:40:38 -04:00
Tom Rothamel 2ac606980a Add a function to render in sizing mode.
This doesn't catch the rendering that's done in sizing mode, but
reuses renders that are already cached at the same size.
2019-06-18 20:17:48 -04:00
Andy_kl 669a25d530 Receive a layer from default_layer in all exports funcs 2019-06-18 22:51:54 +03:00
Tom Rothamel f89de7e332 Set the platform as part of the emulator. 2019-06-17 19:32:21 -04:00
Tom Rothamel 2f12cdf843 Distinguish real and emulated platform.
This is to prep for a change where the emulator can set the platform,
so renpy.android is true under the android emulator.
2019-06-17 19:29:48 -04:00
Tom Rothamel c0ed44651c Pass the text input rectangle through subsurface. 2019-06-17 18:36:16 -04:00
Tom Rothamel ecbe0952c8 Fix the {clear} tag.
There was a regression caused by the UserStatement changes.
2019-06-17 00:03:01 -04:00
Tom Rothamel e48f24d8d1 Bump version. 2019-06-16 19:38:50 -04:00
Tom Rothamel e8b50d55f3 Add an example of a gallery button that's always unlocked.
Per discussion in 1887.
2019-06-16 16:06:52 -04:00
Tom Rothamel fbcdfe8561 Document that Showif creates a displayable.
Addresses #1886.
2019-06-16 13:38:46 -04:00
Tom Rothamel 99524a1033 sl2: Allow a has statement after an if statement with no children.
Addresses #1886.
2019-06-16 13:26:47 -04:00
Tom Rothamel 9781c0d07e Fix spurious spaces in the_question. 2019-06-16 11:58:58 -04:00
Tom Rothamel c09d0142df Package web-presplash.{jpg,png}, ignore oyua_icon.png. 2019-06-16 11:26:25 -04:00
Tom Rothamel 5bb8ae6772 Clean up translations. 2019-06-15 20:57:12 -04:00
Tom Rothamel 7c48ffc3f3 Updateyay igpay atinlay. 2019-06-15 20:56:13 -04:00
Tom Rothamel efec9192b7 Fix spacing. 2019-06-15 20:54:25 -04:00
Tom Rothamel 12b0decd15 Merge pull request #1885 from Moshibit/master
Update common.rpy
2019-06-15 19:54:37 -04:00
Moshibit c0185751d6 Update common.rpy 2019-06-15 18:47:30 -05:00
Moshibit fc06af1d93 Update common.rpy 2019-06-15 18:46:51 -05:00
Moshibit e44d6d14c3 Update common.rpy 2019-06-15 18:41:47 -05:00
Moshibit 7aae8c506f Update common.rpy 2019-06-15 18:31:47 -05:00
Tom Rothamel 2d47ae004e Merge pull request #1884 from Moshibit/master
accessibility message changed to translatable string
2019-06-15 19:11:13 -04:00
Moshibit 148c74a312 change to translatable string 2019-06-15 18:05:30 -05:00
Tom Rothamel 1c34d0643e Merge pull request #1883 from Moshibit/master
corrections in the Spanish translation
2019-06-15 18:53:27 -04:00
Moshibit 196517ac34 Update launcher.rpy 2019-06-15 17:49:24 -05:00
Moshibit 041832a573 Add files via upload 2019-06-15 17:34:28 -05:00
Moshibit 8533a6e089 Add files via upload 2019-06-15 17:32:36 -05:00
Moshibit 610a13bf20 Add files via upload 2019-06-15 17:31:22 -05:00
Tom Rothamel 3e2fbe4554 Screen sensitivity passes timer events.
Fixes #1882.
2019-06-15 11:58:21 -04:00
Tom Rothamel 038ea8fee2 Merge pull request #1880 from mal/screen-sensitivity-scope
Use scope when evalling screen sensitivity
2019-06-15 10:58:39 -04:00
Tom Rothamel f97dc0c0f0 Merge pull request #1881 from Andykl/fix-sluse-report
More sensitive report about inexistent screen in sl use expression
2019-06-15 10:58:11 -04:00
Andy_kl b064ea9a82 More sensitive report about inexistent screen in sl use expression 2019-06-15 17:56:55 +03:00
Mal Graty 3fc13fad93 Use scope when evalling screen sensitivity 2019-06-15 15:49:23 +01:00
Tom Rothamel d86d188dc8 Fix documentation and update sponsors doc. 2019-06-15 00:21:44 -04:00
Tom Rothamel 71beb64a4a Document that tooltip requires equality. 2019-06-14 17:12:53 -04:00
Tom Rothamel 6b27321496 Tweak the error message for a Side with the wrong number of children. 2019-06-13 23:26:06 -04:00
Tom Rothamel 1446c2b31d Merge pull request #1874 from Andykl/fix-side-mistake
Raise exception if Side not completely full at the render
2019-06-13 21:24:29 -04:00
Tom Rothamel 97b844cd9b Merge pull request #1876 from Andykl/fix-adjustment-bug
Fix adjustment bug
2019-06-13 21:23:36 -04:00
Andy_kl a17f63368b Do not redraw if we are sizing 2019-06-13 10:31:48 +03:00
Andy_kl 1bc3945f1d Kill the render is the right way. 2019-06-13 10:28:41 +03:00
Andy_kl 884b7901bf Raise exception if Side not completely full at the render 2019-06-12 08:49:30 +03:00
Tom Rothamel acc48b08ae Avoid redrawing when fixing a per-frame render.
Fixes #1869.
2019-06-11 02:47:34 -04:00
Tom Rothamel b24a2b06db Fix code-typo.
Fixes #1871.
2019-06-10 22:36:50 -04:00
Tom Rothamel ae402797cf Update changelog. 2019-06-09 22:41:45 -04:00
Tom Rothamel 51c726f736 Update changelog. 2019-06-09 22:40:38 -04:00
Tom Rothamel c8cc2b0353 Use a Window's minimums to determine the width and height of its children.
See https://lemmasoft.renai.us/forums/viewtopic.php?f=32&t=55574
2019-06-09 22:33:17 -04:00
Tom Rothamel dd7cdea0c2 Check in updated keywords. 2019-06-09 22:32:58 -04:00
Tom Rothamel ff59a3060d Apply AdjustTimes to images displayed in the gallery.
This makes sure that any ATL or other transforms start running from
the frame where the image is first shown.

Fixes #1867.
2019-06-09 21:39:51 -04:00
Tom Rothamel ae123b383a Fix local variable masking global variable. 2019-06-09 21:08:49 -04:00
Tom Rothamel 1175e65552 Proxy get_tooltip from Confirm to its yes action. 2019-06-09 20:50:10 -04:00
Tom Rothamel a1c1c15a3c Disallow style properties on tooltips. 2019-06-09 20:35:03 -04:00
Tom Rothamel 8d7236b32e cds: Pass the label of the next statement to predict_next.
This is necessary to properly emulate a conditional statement,
where we might go directly to the next statement.
2019-06-09 20:20:38 -04:00
Tom Rothamel 718628e48a Add a get_tooltip method to Action and BarValue.
This allows actions to supply tooltips to buttons and bars,
keeping that logic in one place. Per #1868.
2019-06-09 20:14:32 -04:00
Tom Rothamel 75f666479c Fix prediction problems in character.
Fixes #1853.
2019-06-09 00:00:09 -04:00
Tom Rothamel 63f2f9db47 Make sure we can't save between a menu and it's dialogue.
Fixes #1861.
2019-06-08 23:41:31 -04:00
Tom Rothamel 3c3c8963a3 Document narration and display_menu.
Fixes #1863.
2019-06-08 23:17:37 -04:00
Tom Rothamel 0399767528 cds: Fix prediction.
Fixes #1864.
2019-06-08 23:00:21 -04:00
Tom Rothamel c4ee0e8e5d cds: Allow lexer.renpy_block to deal with empty blocks.
Either by reporting the error, or by creating a block with a pass
statement.
2019-06-08 22:44:14 -04:00
Tom Rothamel 36ed61735d Merge pull request #1862 from Andykl/return-statement-argument
Added return value argument to renpy.return_statement
2019-06-08 19:13:33 -04:00
Tom Rothamel 4af01f3192 Avoid the repeated setting of adjustments when siding for a side.
Fixes #1858.
2019-06-08 01:42:44 -04:00
Tom Rothamel a72e17baea Document android input change. 2019-06-07 23:28:48 -04:00
Tom Rothamel 88728c932c Merge pull request #1855 from nyaatrap/master
Update Japanese
2019-06-06 22:50:46 -04:00
Andy_kl 298bf1d1c3 Added return value argument to renpy.return_statement 2019-06-06 22:01:37 +03:00
Beuc 59cc091828 Typo 2019-06-06 11:19:47 +02:00
Beuc 6aa9d6b920 Typo 2019-06-06 11:18:22 +02:00
Tom Rothamel 3241176e8f Ensure that the render_cache is updated after invalidation.
Before this change, if an invaidation was to occur mid-render,
it was possible the new render would not be added to the cache.

Fixes #1856.

This also defers invalidation when a redraw is going to happen.
2019-06-05 00:56:24 -04:00
Tom Rothamel 0d4d5f6621 accessibility: Cache the opendyslexic font group.
This makes displaying opendyslexic much faster.

Fixes #1857.
2019-06-04 19:16:04 -04:00
nyaatraps badb0e7803 Update Japanese 2019-06-04 17:34:52 +09:00
Tom Rothamel be3af7e868 Merge pull request #1851 from mal/more-say-transition-changes
More say transition changes
2019-06-02 14:20:52 -04:00
Mal Graty eb41a41b3a Clarify sets not lists 2019-06-02 19:20:02 +01:00
Mal Graty d806d99cb7 Both, not hybrid 2019-06-02 19:16:55 +01:00
Tom Rothamel 78e4241bd9 Merge pull request #1849 from Moshibit/master
NVL-mode script for new The Question
2019-06-02 14:13:56 -04:00
Sylvain Beucler e004acf4d0 web: shortcut to build directory 2019-06-02 17:38:00 +02:00
Mal Graty 8d63b60db8 Rework of say transitions 2019-06-02 11:29:45 +01:00
Mal Graty 11a6f292a4 Typo 2019-06-02 09:06:21 +01:00
Moshibit 741d6137d1 Update script.rpy 2019-06-01 22:21:54 -05:00
Tom Rothamel 70fd79df26 Fix server name. 2019-06-01 21:37:35 -04:00
Tom Rothamel 38deac811e Fix typo in function reference. 2019-06-01 20:55:50 -04:00
Moshibit 5827166418 Update thequestion_nvl.rst 2019-06-01 17:16:54 -05:00
Moshibit 9913c4f912 Update thequestion_nvl.rst 2019-06-01 17:12:53 -05:00
Tom Rothamel 35f3824a8f Update credits. 2019-06-01 17:02:28 -04:00
Tom Rothamel 7d1eaf560e Update the name of the version. 2019-06-01 17:00:47 -04:00
Tom Rothamel b762b5267c Merge pull request #1695 from pionere/master
shortcut for change_language
2019-06-01 15:10:24 -04:00
Tom Rothamel 5a7c9f845f Update the world's least useful translation. 2019-06-01 00:07:50 -04:00
Tom Rothamel a1dd218560 sl2: Store the scopes to provide them to _scope.
This fixes:

  screen on_use(a):
      text "[a]"

  screen test:
      fixed:
          fit_first True
          align (0.5, 0.5)
          use on_use(1)

  label start:
      show screen test
      pause
      return
2019-05-31 23:08:57 -04:00
Tom Rothamel 958536e9de Merge pull request #1847 from Moshibit/master
Correction in the tutorial about the use of focus_mask in Android and iOS
2019-05-31 21:52:18 -04:00
Moshibit c1b634d46b correction 2019-05-31 19:51:19 -05:00
Moshibit a0ed43a64f correction 2019-05-31 19:50:18 -05:00
Moshibit 7552aa3518 correction 2019-05-31 19:49:33 -05:00
Moshibit cf0b78f0fb correction 2019-05-31 19:48:31 -05:00
Moshibit f25affd975 correction 2019-05-31 19:47:06 -05:00
Moshibit 471f073051 correction 2019-05-31 19:45:10 -05:00
Tom Rothamel 194b5e1f9b Merge pull request #1846 from DragoonHP/patch-1
Typos fix
2019-05-31 19:13:43 -04:00
DragoonHP 3f70e93f90 Typos fix 2019-05-31 10:35:28 +05:30
Tom Rothamel bdf6db0efa Document incompatible changes. 2019-05-31 00:11:38 -04:00
Tom Rothamel 5429949e82 Changelog. 2019-05-31 00:11:38 -04:00
Tom Rothamel 659bb63a06 Changelog WIP. 2019-05-31 00:11:38 -04:00
Tom Rothamel 6d7b1f9704 cds: Add a predict_next method. 2019-05-31 00:11:38 -04:00
Tom Rothamel 833a80d343 cds: Undo the advance at the end of renpy_statment. 2019-05-31 00:11:38 -04:00
Tom Rothamel 43b43f3688 Merge pull request #1843 from Andykl/fix-custom-tags
Added self closing custom_tags to check_text_tags
2019-05-29 14:24:31 -04:00
Andy_kl 4fcc58a992 Added self closing custom_tags to check_text_tags 2019-05-29 11:04:19 +03:00
Tom Rothamel 57f5872409 Merge pull request #1826 from WKFO/translation-tr
Turkish translation
2019-05-28 22:23:35 -04:00
Tom Rothamel be855c7c37 Merge pull request #1838 from Moshibit/master
Spanish translation update
2019-05-28 22:23:22 -04:00
Tom Rothamel 9a30c95011 Implement Self-closing text tags.
Fixes #1841, closes #1842.
2019-05-28 22:23:06 -04:00
Tom Rothamel de061aea9b Merge pull request #1828 from Andykl/side-render-order
Side render order
2019-05-28 20:24:33 -04:00
Tom Rothamel 50939ee7bd A from clause should not define the global label.
Fixes #1824.
2019-05-28 20:23:02 -04:00
Tom Rothamel 3622a2ee21 Generate translations for screens with a continuation line.
Fixes #1827.
2019-05-28 20:12:18 -04:00
Tom Rothamel 37c4fb3f4b sl2: Allow the as clause to apply to the children of a displayable. 2019-05-28 01:45:35 -04:00
Tom Rothamel f360a53eda sl2: The as clause binds a variable to a displayable. 2019-05-28 01:02:42 -04:00
Tom Rothamel c1add010be cds: Rewrite renpy_block to match documentation. 2019-05-27 11:15:16 -04:00
Tom Rothamel fe816be0d8 Fix eception in Curry.__hash__.
Fixes #1839.
2019-05-27 00:42:47 -04:00
Tom Rothamel 71b6888f10 cds: Document new lexer functions. 2019-05-26 23:10:50 -04:00
Tom Rothamel d3fa22566a cds: Do not advance when catching an error.
Not needed, given sample code in the documentatation.
2019-05-26 02:15:53 -04:00
Tom Rothamel b69c80a40c cds: Switch to using line index rather than number. 2019-05-26 01:36:54 -04:00
Tom Rothamel e8fc4d28b5 cds: Add the ability to catch lexer errors. 2019-05-26 01:33:00 -04:00
Moshibit 96f91895c0 Add files via upload 2019-05-26 00:22:05 -05:00
Tom Rothamel 98241f413c Add repr for SubParse. 2019-05-25 23:46:10 -04:00
Tom Rothamel b62326e52d Allow jumping to SubParses. 2019-05-25 22:53:47 -04:00
WKFO 8116ea4ab7 Complete screens.rpy Turkish translation 2019-05-25 22:31:00 +03:00
Tom Rothamel f7be277b4a Fix parsing of Ren'Py inside creator-defined-statements. 2019-05-25 02:07:14 -04:00
Tom Rothamel 181997f13b Merge pull request #1835 from lee-yunseok/master
Update Korean translation for launcher.
2019-05-24 23:50:14 -04:00
Tom Rothamel c4a854fee3 Merge pull request #1837 from Beuc/patch-french
Update common french translations
2019-05-24 23:49:19 -04:00
Sylvain Beucler db45ab36f6 Update common french translations 2019-05-25 00:33:56 +02:00
WKFO 940be19894 Fix and update Turkish translation 2019-05-24 21:24:09 +03:00
Tom Rothamel 6b5932d45b Untested version of l.renpy_statement() and l.renpy_block()
This also adds predict_all to custom statements, to predict all
children.
2019-05-24 01:29:22 -04:00
Tom Rothamel 59a8b2961b Redo parsing of user statements.
This now uses the main lexer to parse user statements, which means
that we can have multiple-line-long user-defined statements.
2019-05-23 22:57:07 -04:00
Tom Rothamel 45e149bd45 Do not clear the parsed version of a UserStatement.
This will move the parse from runtime to compile time.
2019-05-22 22:54:09 -04:00
Lee Yunseok 58c6089985 Fix 2019-05-22 18:18:53 +09:00
Tom Rothamel 31f5e76674 Add the current user statement to the lexer. 2019-05-22 01:42:12 -04:00
Lee Yunseok fd0337eb0e Update Korean translation 2019-05-22 13:57:49 +09:00
Lee Yunseok 96a2d7c1d4 Merge pull request #22 from renpy/master
Latest
2019-05-22 13:12:29 +09:00
Tom Rothamel 3cc58e2f8f Merge pull request #1832 from Andykl/russian-translation
Mark error_handling interpolates as translatable and updated russian translation
2019-05-21 22:08:12 -04:00
Tom Rothamel 1345469e70 Merge pull request #1834 from Beuc/patch-unify_tl_source_comment
translation: unify base path in string source comments
2019-05-21 16:46:55 -04:00
Sylvain Beucler 7836c91a27 translation: unify base path in string source comments 2019-05-21 18:45:26 +02:00
Tom Rothamel e79aaba585 Merge pull request #1833 from Andykl/webbrowser-default
Prevent open IE in Windows if help-file not exists
2019-05-21 01:10:26 -04:00
Lee Yunseok b17ccdb53c Merge pull request #21 from renpy/master
Latest
2019-05-21 07:03:19 +09:00
Andy_kl e3453fd798 Updated [what] strings in other translates 2019-05-20 22:53:06 +03:00
WKFO 14dc8ff79a Add tranlsator info, commit progress 2019-05-20 22:06:54 +03:00
Andy_kl 074760e752 Doc this 2019-05-20 09:55:14 +03:00
Andy_kl 6e5d1ea3ef Do not open browser if help file not exist
This is fix Windows bug when IE opens anyway
2019-05-20 09:41:54 +03:00
Andy_kl 66da3f20d8 Update russian for last commit 2019-05-20 08:48:31 +03:00
Andy_kl ca6211cf0b Mark error_handling interpolates as translatable 2019-05-20 08:41:04 +03:00
Andy_kl 68f2b4ece9 Fix Beta string 2019-05-20 08:06:00 +03:00
Andy_kl 1f68d3222f Update 2019-05-20 07:50:44 +03:00
Tom Rothamel a6259de3e1 Merge pull request #1820 from Andykl/mode-keywords
Mode keywords for call screen, menu and say statements
2019-05-20 00:17:18 -04:00
Tom Rothamel 8610b89d75 Merge pull request #1831 from Moshibit/master
Corrections in translation
2019-05-20 00:08:55 -04:00
Moshibit 7e6d48f09e Add files via upload 2019-05-19 21:37:17 -05:00
Moshibit f94347bc78 Add files via upload 2019-05-19 21:29:33 -05:00
Moshibit 8aec8cbac5 Add files via upload 2019-05-19 20:59:23 -05:00
Beuc c744404550 launcher: choose_directory: returns default=True on Cancel (tkinter route) 2019-05-19 23:23:41 +02:00
WKFO 03205d6619 Turkish tranlation update 2019-05-19 20:52:03 +03:00
Tom Rothamel ebd904ce5f Add the ability to run something after a UserStatement.
This is a second quasi-statement that runs after a UserStatement
and everything inside its blocks have run.
2019-05-19 09:31:19 -04:00
Andy_kl 5956adccbf Added doc 2019-05-19 07:25:09 +03:00
Moshibit 5fdbdfa12a Add files via upload 2019-05-18 23:10:53 -05:00
Andy_kl 3dd71cc5c4 Added _zorder keyword for show_screen 2019-05-19 06:46:24 +03:00
Andy_kl ea3b05c6e4 Doc this 2019-05-19 06:25:13 +03:00
Moshibit 4aaddc39cb Add files via upload 2019-05-18 22:08:22 -05:00
Andy_kl e8739ffbbb Added keep_side_render_order to compat last commit 2019-05-19 05:21:24 +03:00
Andy_kl 4d664092ce Added sorting of children according to their order in positions. 2019-05-19 05:19:38 +03:00
Andy_kl 848aa6dfaa Except eol in python statement 2019-05-19 02:11:16 +03:00
Moshibit 170ddd9a87 Add files via upload 2019-05-18 17:51:26 -05:00
Andy_kl 7f88a1ce49 Added handlers for _mode and _with_none in menu arguments 2019-05-19 01:36:48 +03:00
Tom Rothamel d273689cc0 ftfont: Set up the face in bounds().
This fixes an error where the bounds were using the wrong size,
and hence caching a glyph of the wrong size, leading to drawing
problems.
2019-05-18 18:25:51 -04:00
Andy_kl 5e1449abd1 Apply a6b21ec78f to parse menu. 2019-05-18 23:44:50 +03:00
Beuc 184d72c595 the_question: typo in french translation 2019-05-18 22:08:24 +02:00
WKFO db88ae7e0d Initial Turkish translation 2019-05-18 17:56:21 +03:00
Tom Rothamel f22bd471e0 Add config.disable_input. 2019-05-17 02:05:29 -04:00
Tom Rothamel b85beccc9e lint: Update to match FontGroup changes.
Fixes #1823.
2019-05-16 21:36:40 -04:00
Tom Rothamel f4e6765b42 Allow a list of events to be given as part of the on statement. 2019-05-16 02:33:09 -04:00
Tom Rothamel dae24f264f console: Allow jump to jump to qualified local labels.
Fixes #1822.
2019-05-15 22:35:53 -04:00
Tom Rothamel def807b3d2 Invalidate displayables when an ajdustment is updated.
This makes the changes take affect during the current frame, rather
than the next one.

Fixes #1818.
2019-05-15 01:49:29 -04:00
Tom Rothamel 92536e4597 Merge pull request #1821 from lee-yunseok/master
Apply #ea50512 for Korean
2019-05-14 18:14:43 -04:00
Lee Yunseok d68b3bd2e8 Apply #ea50512 for Korean 2019-05-15 07:10:26 +09:00
Lee Yunseok 5c79afe2b4 Merge pull request #20 from renpy/master
Keep going to latest
2019-05-15 06:47:38 +09:00
Tom Rothamel ea50512e2c Update Android strings. 2019-05-14 12:52:04 -04:00
Andy_kl ca8508626d Added underscore handlers for _mode and _with_none
This has a higher priority.
2019-05-14 05:54:58 +03:00
Andy_kl a55c758fb0 Added _mode as a keyword to call screen 2019-05-14 04:15:12 +03:00
Tom Rothamel b1b3f8ce4e Merge pull request #1810 from mal/screen-sensitivity
Suppress hover/click-capture if screen insensitive
2019-05-12 19:41:31 -04:00
Tom Rothamel 63c4f5fe56 gl2: Resynchronize with gl1. 2019-05-11 09:57:31 -04:00
Tom Rothamel 2bb6e6c0db Use Framebuffer Objects wherever one is available. 2019-05-10 17:54:09 -04:00
Tom Rothamel c0761dc8f3 Clean the nv_list when the language changes. 2019-05-10 01:31:37 -04:00
Tom Rothamel 99e31f1456 Set the language when a new context is created.
This prevents a spurious change in language, and hnce fixes #1794.
2019-05-10 01:23:35 -04:00
Mal Graty 5ac3a985a9 Document screen's new sensitive property 2019-05-09 19:36:10 +01:00
Tom Rothamel 3249a34569 Add the web variant.
Which provides another way to detect emscripten.
2019-05-09 01:24:18 -04:00
Tom Rothamel 3b74892f65 sl2: Properties on the first line do not prevent a block.
Fixes a regression introduced by b0ee6fe392.
2019-05-08 23:01:30 -04:00
Tom Rothamel 723bf1bd75 Merge pull request #1809 from mal/tweak-capitialise-flag
Capitialise first character only with !c
2019-05-07 22:10:27 -04:00
Tom Rothamel 66acb87adc Merge pull request #1722 from lee-yunseok/master
Add Korean translation for Ren'Py Tutorial
2019-05-07 22:10:12 -04:00
Mal Graty 1cda55d17e Standardise docs on lowercase/uppercase 2019-05-07 21:57:11 +01:00
Mal Graty 76305e05f3 Update docs to highlight !cl usage 2019-05-07 21:55:33 +01:00
Tom Rothamel ff94f1e23b Merge pull request #1814 from Andykl/sl-indention-fix
Raise indention error for misspelled indent after keyword
2019-05-06 21:57:27 -04:00
Andy_kl b0ee6fe392 Raise indention error for misspelled indent after keyword 2019-05-07 04:56:19 +03:00
Tom Rothamel cbb1f084f9 Merge pull request #1812 from Andykl/fix-sl2
Check longer operators earlier.
2019-05-06 20:59:13 -04:00
Andy_kl 35d4deb772 Check longer operators earlier. 2019-05-07 00:13:03 +03:00
Tom Rothamel eb69715e57 Make sure renpy.py is distributed.
This is necessary for the Android and iOS distributions, at least.
It's not needed for web, but won't hurt much.
2019-05-05 01:31:40 -04:00
Tom Rothamel ded3e4da37 Remove always_opaque.
Now that Android and iOS should support focus_mask, always_opaque
isn't necessary.
2019-05-04 23:54:25 -04:00
Tom Rothamel 585778022e Use the render-to-texture path to do is_pixel_opaque.
This should enable Ren'Py to support focus_mask on Android.
2019-05-04 23:44:04 -04:00
Tom Rothamel c178092b58 Remove the GL blacklist.
The newest entry on it is from ~2010, so it's not necessary
anymore.
2019-05-04 22:21:58 -04:00
Lee Yunseok 2361a4939a Final 2019-05-04 09:51:39 +09:00
Lee Yunseok 869d45e27e Pretty 2019-05-04 09:36:14 +09:00
Tom Rothamel 679f4abf47 web: Add to the Ren'Py distribtion. 2019-05-03 20:29:55 -04:00
Tom Rothamel 402c2116a7 Bump version. 2019-05-03 20:28:43 -04:00
Mal Graty 461bddf7f3 Capitialise first character, leave rest of string 2019-05-03 22:48:49 +01:00
Mal Graty bf95f63448 Suppress hover/click-capture if screen insensitive 2019-05-03 16:11:53 +01:00
Lee Yunseok 9b043f465b Fix typo. 2019-05-03 16:08:12 +09:00
Lee Yunseok 3fef0c7dfa Add translate font for system_font 2019-05-03 15:32:23 +09:00
Lee Yunseok 8885ff568c Add translate font for system_font 2019-05-03 15:31:59 +09:00
Lee Yunseok 7a1b8f57c6 Complete tutorial_director.rpy 2019-05-03 15:31:33 +09:00
Lee Yunseok fe0af1652a Complete 2019-05-03 14:25:50 +09:00
Lee Yunseok c22f5108f2 Fix 2019-05-03 13:38:38 +09:00
Lee Yunseok 5e4ec6a6de Complete indepth_style.rpy and follow e6ccf5d 2019-05-03 13:36:11 +09:00
Lee Yunseok dade0aa1c7 Apply e6ccf5d 2019-05-03 12:43:57 +09:00
Lee Yunseok e6ccf5d616 Clearly 2019-05-03 12:20:37 +09:00
Lee Yunseok f6191eb56c Resolve 2019-05-03 12:17:04 +09:00
Lee Yunseok ea40d51cee Merge branch 'renpy-master' 2019-05-03 12:14:37 +09:00
Lee Yunseok ab2a0ec79f Merge branch 'master' of https://github.com/renpy/renpy into renpy-master 2019-05-03 12:14:09 +09:00
Lee Yunseok 290bd11f62 Apply Spanish 2019-05-03 12:06:09 +09:00
Lee Yunseok 3997812327 Quicksave 2019-05-03 12:01:27 +09:00
Lee Yunseok 3af6ebed21 More like Korean 2019-05-03 12:01:18 +09:00
Lee Yunseok 71a970a891 Complete Transition Gallery 2019-05-03 10:31:56 +09:00
Lee Yunseok 222d3de08e Quicksave. 2019-05-02 11:53:57 +09:00
Lee Yunseok 5a09cec3d2 Complete GUI Customization 2019-05-02 11:53:29 +09:00
Lee Yunseok 9e7c8315f0 Complete tutorial_screen_displayables.rpy 2019-05-02 11:13:09 +09:00
Lee Yunseok 87b909af10 Fix typo. 2019-05-02 11:12:52 +09:00
Lee Yunseok 21806de3b4 Quicksave. 2019-05-02 10:48:56 +09:00
Lee Yunseok 9e33789ad7 Quicksave 2019-04-30 11:59:08 +09:00
Lee Yunseok 0aa7c869b1 Fix typo. 2019-04-29 14:08:09 +09:00
Lee Yunseok 20cccd239c Quicksave 2019-04-29 14:05:59 +09:00
Lee Yunseok e964ed219a Quicksave 2019-04-27 09:01:27 +09:00
Lee Yunseok 22f0c1969a More like korean. 2019-04-27 09:00:55 +09:00
Lee Yunseok dfc7ae23ae Patently 2019-04-26 10:20:46 +09:00
Lee Yunseok 6811cc5592 Complete Minigames and CDDs 2019-04-26 10:20:05 +09:00
Lee Yunseok 71760b5f16 Complete Simple Displayables 2019-04-25 09:27:24 +09:00
Lee Yunseok f664258d10 Complete Character Objects 2019-04-24 12:43:30 +09:00
Lee Yunseok a0100cee00 Complete indepth_translations.rpy 2019-04-12 10:08:09 +09:00
Lee Yunseok 626b249179 Complete Input and Interpolation 2019-04-12 09:47:09 +09:00
Lee Yunseok 2620c313b2 Complete Choices and Python 2019-04-12 09:32:49 +09:00
Lee Yunseok 022eb2cdb6 Complete Music and Sound Effects 2019-04-12 09:05:36 +09:00
Lee Yunseok 0efa611034 Complete Transitions 2019-04-12 08:37:57 +09:00
Lee Yunseok 1d87d8ae8a Complete Positioning Images 2019-04-12 08:03:56 +09:00
Lee Yunseok 5414417288 Complete Adding Images 2019-04-04 11:10:58 +09:00
Lee Yunseok 242cad6882 Complete Writing Dialogues 2019-03-31 15:20:32 +09:00
Lee Yunseok 81701dd905 Complete Screen Basics 2019-03-29 16:00:10 +09:00
Lee Yunseok 34df516053 More naturally. 2019-03-28 17:11:39 +09:00
Lee Yunseok a69fcedecb Half of the tutorial_screens.rpy 2019-03-28 17:07:43 +09:00
Lee Yunseok 80b4113801 Complete Transform Properties 2019-03-27 13:00:19 +09:00
Lee Yunseok 04dc9efc9a 535 2019-03-14 16:21:40 +09:00
Lee Yunseok c6061da3f4 Complete Transforms and Animation 2019-03-14 16:06:20 +09:00
Lee Yunseok dc7a8c9e23 #1763 2019-03-14 14:59:24 +09:00
Lee Yunseok 0ed01f34fe Fixed 2019-03-13 12:26:56 +09:00
Lee Yunseok ffa93d746f 163 2019-03-13 12:04:35 +09:00
Lee Yunseok c9dc8a9e72 More better 2019-03-13 11:54:34 +09:00
Lee Yunseok 9c9816d203 More better 2019-03-13 11:53:50 +09:00
Lee Yunseok 82e493a7f3 More friendly 2019-03-12 09:35:09 +09:00
Lee Yunseok 04428ab0de Complete Player Experience 2019-03-12 09:30:44 +09:00
Lee Yunseok 1c7989e063 Added: Korean button 2019-03-12 09:29:56 +09:00
Lee Yunseok 52a584846b Merge pull request #18 from renpy/master
Keep going to latest.
2019-03-11 10:47:21 +09:00
Lee Yunseok 3c0f563cc1 Complete Building Distributions 2019-03-11 10:38:38 +09:00
Lee Yunseok 139e731a01 Complete Video Playback 2019-03-11 10:13:42 +09:00
Lee Yunseok bfc8e67c22 Pause for confirm 2019-03-11 09:57:35 +09:00
Lee Yunseok e9afa2be3c Fixed: Typos 2019-03-10 14:56:40 +09:00
Lee Yunseok c68749dbe6 Complete Position Properties 2019-03-10 14:56:04 +09:00
Lee Yunseok 8e2a93acec More Ko friendly 2019-03-10 14:55:23 +09:00
Lee Yunseok 8849de1017 Merge pull request #17 from renpy/master
Keep going to latest.
2019-03-07 09:08:39 +09:00
Lee Yunseok 30483c2afa More ko friendly 2019-03-07 09:04:53 +09:00
Lee Yunseok 0a05d88963 Save temporary 2019-03-07 09:02:11 +09:00
Lee Yunseok 4fc5076178 Some work. 2019-03-07 08:35:41 +09:00
Lee Yunseok ee47b1e8f8 Fix typo. 2019-03-07 08:22:13 +09:00
Lee Yunseok 5b3b5ba974 Complete NVL-Mode 2019-03-07 07:59:36 +09:00
Lee Yunseok b8e374628a More better. 2019-03-07 07:58:07 +09:00
Lee Yunseok fccac2a76f Merge pull request #16 from renpy/master
Keep going to latest
2019-02-17 18:22:09 +09:00
Lee Yunseok e04a38d417 Apply #30225b7 2019-02-17 18:20:21 +09:00
Lee Yunseok a9e9344310 Merge pull request #15 from renpy/master
Keep going to latest
2019-01-31 06:04:59 +00:00
pionere 9c12fc9c06 shortcut for change_language 2019-01-22 09:39:01 +01:00
lee-yunseok cc4d33e213 Ko translation for the tutorial #1 2019-01-15 16:56:27 +09:00
lee-yunseok ed3d151916 optimized 2019-01-15 16:54:30 +09:00
Lee Yunseok 9087ab53bd Merge pull request #14 from renpy/master
Keep going to latest
2019-01-15 15:27:10 +09:00
Lee Yunseok 306d3b16a6 Merge pull request #13 from renpy/master
Keep going to latest
2019-01-08 13:53:39 +09:00
Lee Yunseok e04d2046de Merge pull request #12 from renpy/master
Keep going to latest
2019-01-01 17:33:40 +09:00
Lee Yunseok 6accdd39aa Merge pull request #11 from renpy/master
Latest
2018-11-20 21:34:17 +09:00
286 changed files with 31284 additions and 18436 deletions
+2
View File
@@ -82,3 +82,5 @@ sphinx/source/inc
sphinx/source/thequestion.rst
tutorial/game/tutorial_director.rpy
launcher/theme
module/emscripten-static/
web/
+1 -1
View File
@@ -124,7 +124,7 @@ not edit the files in sphinx/source/inc directly, as they will be overwritten.
Docstrings may include tags on the first few lines:
\:doc: `section` `kind`
Indicates that this functions should be documented. `section` gives
Indicates that this function should be documented. `section` gives
the name of the include file the function will be documented in, while
`kind` indicates the kind of object to be documented (one of ``function``,
``method`` or ``class``. If omitted, `kind` will be auto-detected.
+10
View File
@@ -33,3 +33,13 @@ language, this means native words take precedence over loanwords if and only if
both native and loanwords exist and both are suitable in the context of use.
* Muhammad Nur Hidayat (MNH48) <translation@mnh48.moe>
Turkish
---------
Translation to the Turkish language. Some terms and abbreviations (especially
those related to coding) are deliberately left untranslated (or the original words
are provided in brackets) to avoid confusion, relying on their common use in
Turkish language and among Turkish developers.
* Arda Güler (WKFO) <ardaguler09@gmail.com>
+1
View File
@@ -14,6 +14,7 @@ SOURCE = [
"/home/tom/ab/ripe/renios",
"/home/tom/ab/renpy-deps",
"/home/tom/ab/pygame_sdl2",
"/home/tom/ab/renpyweb",
]
version = ".".join(str(i) for i in version_tuple)
+11 -2
View File
@@ -9,6 +9,7 @@ import compileall
import shutil
import subprocess
import argparse
import time
if not sys.flags.optimize:
raise Exception("Optimization disabled.")
@@ -43,6 +44,8 @@ def copy_tutorial_file(src, dest):
def main():
start = time.time()
if not sys.flags.optimize:
raise Exception("Not running with python optimization.")
@@ -54,6 +57,7 @@ def main():
ap.add_argument("--variant", action="store")
ap.add_argument("--sign", action="store_true", default=True)
ap.add_argument("--nosign", action="store_false", dest="sign")
ap.add_argument("--notarized", action="store_true", dest="notarized")
ap.add_argument("--vc-version-only", action="store_true")
args = ap.parse_args()
@@ -175,6 +179,12 @@ def main():
destination,
]
if args.notarized:
cmd.extend([
"--macapp",
"notarized/out",
])
print()
subprocess.check_call(cmd)
@@ -250,8 +260,7 @@ def main():
print()
if not (args.fast or args.sign):
print("For a final-ish release, remember to use --sign so we're signed on the mac.")
print("Distribute took {:.0f} seconds.".format(time.time() - start))
if __name__ == "__main__":
-6
View File
@@ -199,12 +199,6 @@ init python:
build.documentation('*.html')
build.documentation('*.txt')
## Set this to a string containing your Apple Developer ID Application
## to enable codesigning on the Mac. Be sure to change it to your own
## Apple-issued ID.
# define build.mac_identity = "Developer ID Application: Guy Shy (XHTE5H7Z42)"
## A Google Play license key is required to download expansion files and
## perform in-app purchases. It can be found on the "Services & APIs" page
+5 -3
View File
@@ -323,12 +323,14 @@ screen navigation():
textbutton _("About") action ShowMenu("about")
if renpy.variant("pc"):
if renpy.variant("pc") or (renpy.variant("web") and not renpy.variant("mobile")):
## Help isn't necessary or relevant to mobile devices.
textbutton _("Help") action ShowMenu("help")
## The quit button is banned on iOS and unnecessary on Android.
if renpy.variant("pc"):
## The quit button is banned on iOS and unnecessary on Android and Web.
textbutton _("Quit") action Quit(confirm=not main_menu)
@@ -725,7 +727,7 @@ screen preferences():
hbox:
box_wrap True
if renpy.variant("pc"):
if renpy.variant("pc") or renpy.variant("web"):
vbox:
style_prefix "radio"
+3 -3
View File
@@ -1,4 +1,4 @@
# This file contains strings used by RAPT, so the Ren'Py translation framework
# can find them. It's automatically generated by rapt/update_translations.py, and
# hence should not be changed by hand.
@@ -17,7 +17,7 @@ init python hide:
__("The build seems to have failed.")
__("Launching app.")
__("The build seems to have succeeded.")
__("The armeabi-v7a version works on most phones or tablets, while the x86_64 version works on the simulator and chromebooks.")
__("The arm64-v8a version works on newer Android devices, the armeabi-v7a version works on older devices, and the x86_64 version works on the simulator and chromebooks.")
__("What is the full name of your application? This name will appear in the list of installed applications.")
__("What is the short name of your application? This name will be used in the launcher, and for application shortcuts.")
__("What is the name of the package?\n\nThis is usually of the form com.domain.program or com.domain.email.program. It may only contain ASCII letters and dots. It must contain at least one dot.")
@@ -50,7 +50,7 @@ init python hide:
__("Unknown configuration variable: {}")
__("I'm compiling a short test program, to see if you have a working JDK on your system.")
__("I was unable to use javac to compile a test file. If you haven't installed the Java Development Kit yet, please download it from:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nThe JDK is different from the JRE, so it's possible you have Java without having the JDK. Without a working JDK, I can't continue.")
__("The version of Java on your computer does not appear to be JDK 8, which is the only version supported by the Android SDK. If you need to install JDK 8, you can download it from:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nYou can also set the JAVA_HOME environment variabe to use a different version of Java.")
__("The version of Java on your computer does not appear to be JDK 8, which is the only version supported by the Android SDK. If you need to install JDK 8, you can download it from:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nYou can also set the JAVA_HOME environment variable to use a different version of Java.")
__("The JDK is present and working. Good!")
__("The Android SDK has already been unpacked.")
__("Do you accept the Android SDK Terms and Conditions?")
+1
View File
@@ -51,6 +51,7 @@ init python:
if path:
default_path = path
path = None
else:
try:
default_path = os.path.dirname(os.path.abspath(config.renpy_base))
+1 -1
View File
@@ -504,7 +504,7 @@ label choose_theme_callable:
call screen choose_theme
python hide:
with interface.error_handling("changing the theme"):
with interface.error_handling(_("changing the theme")):
switch_theme()
return
+26 -12
View File
@@ -373,7 +373,7 @@ init python in distribute:
This manages the process of building distributions.
"""
def __init__(self, project, destination=None, reporter=None, packages=None, build_update=True, open_directory=False, noarchive=False, packagedest=None, report_success=True, scan=True):
def __init__(self, project, destination=None, reporter=None, packages=None, build_update=True, open_directory=False, noarchive=False, packagedest=None, report_success=True, scan=True, macapp=None):
"""
Distributes `project`.
@@ -404,6 +404,10 @@ init python in distribute:
`report_success`
If true, we report that the build succeeded.
`macapp`
If given, the path to a macapp that's used instead of
the macapp
"""
# A map from a package to a unique update version hash.
@@ -437,6 +441,9 @@ init python in distribute:
# Logfile.
self.log = open(self.temp_filename("distribute.txt"), "w")
# The path to the mac app.
self.macapp = macapp
# Start by scanning the project, to get the data and build
# dictionaries.
data = project.data
@@ -1059,6 +1066,9 @@ init python in distribute:
Signs the mac app contained in appzip.
"""
if self.macapp:
return self.rescan(fl, self.macapp)
identity = self.build.get('mac_identity', None)
if identity is None:
@@ -1094,6 +1104,7 @@ init python in distribute:
self.build["mac_codesign_command"],
identity=identity,
app=os.path.join(dn, self.app),
entitlements=os.path.join(config.gamedir, "entitlements.plist"),
)
# Rescan the signed app.
@@ -1109,7 +1120,7 @@ init python in distribute:
identity = self.build.get('mac_identity', None)
if identity is None:
raise Exception("Creating an unsigned DMG is not supported. Please set build.mac_identity.")
identity = ''
self.run(
_("Creating the Macintosh DMG..."),
@@ -1120,14 +1131,16 @@ init python in distribute:
dmg=dmg,
)
self.run(
_("Signing the Macintosh DMG..."),
self.build["mac_codesign_dmg_command"],
identity=identity,
volname=volname,
sourcedir=sourcedir,
dmg=dmg,
)
if self.build.get("mac_codesign_dmg_command", None):
self.run(
_("Signing the Macintosh DMG..."),
self.build["mac_codesign_dmg_command"],
identity=identity,
volname=volname,
sourcedir=sourcedir,
dmg=dmg,
)
def prepare_file_list(self, format, file_lists):
"""
@@ -1265,7 +1278,7 @@ init python in distribute:
file_hash, old_fl_hash = self.build_cache.get(full_filename, ("", ""))
if (not directory) and old_fl_hash == fl_hash:
if (not directory) and (old_fl_hash == fl_hash) and not(self.build['renpy'] and (variant == "sdk")):
if file_hash:
self.build_cache[full_filename] = (file_hash, fl_hash)
@@ -1476,6 +1489,7 @@ init python in distribute:
ap.add_argument("--no-update", default=True, action="store_false", dest="build_update", help="Prevents updates from being built.")
ap.add_argument("--package", action="append", help="If given, a package to build. Defaults to building all packages.")
ap.add_argument("--no-archive", action="store_true", help="If given, files will not be added to archives.")
ap.add_argument("--macapp", default=None, action="store", help="If given, the path to a signed and notarized mac app.")
ap.add_argument("project", help="The path to the project directory.")
args = ap.parse_args()
@@ -1487,7 +1501,7 @@ init python in distribute:
else:
packages = None
Distributor(p, destination=args.destination, reporter=TextReporter(), packages=packages, build_update=args.build_update, noarchive=args.no_archive, packagedest=args.packagedest)
Distributor(p, destination=args.destination, reporter=TextReporter(), packages=packages, build_update=args.build_update, noarchive=args.no_archive, packagedest=args.packagedest, macapp=args.macapp)
return False
+2 -2
View File
@@ -426,11 +426,11 @@ label gui_project_common:
else:
interface.processing(_("Updating the project..."))
with interface.error_handling("creating a new project"):
with interface.error_handling(_("creating a new project")):
gui7.generate_gui(p)
# Activate the project.
with interface.error_handling("activating the new project"):
with interface.error_handling(_("activating the new project")):
project.manager.scan()
project.Select(project.manager.get(project_name))()
+2 -2
View File
@@ -382,7 +382,7 @@ init python in interface:
As an example of usage::
with interface.error_handling("opening the log file"):
with interface.error_handling(_("opening the log file")):
f = open("log.txt", "w")
"""
@@ -391,7 +391,7 @@ init python in interface:
except Exception as e:
renpy.renpy.error.report_exception(e, editor=False)
error(_("While [what!q], an error occured:"),
error(_("While [what!qt], an error occured:"),
_("[exception!q]"),
what=what,
label=label,
+2 -2
View File
@@ -27,7 +27,7 @@ init python:
platform = "windows-amd64"
exe = "butler.exe"
elif renpy.macintosh:
plaform = "darwin-amd64"
platform = "darwin-amd64"
exe = "butler"
else:
platform = "linux-amd64"
@@ -50,7 +50,7 @@ init python:
import urllib2
import ssl
with interface.error_handling("Downloading the itch.io butler."):
with interface.error_handling(_("Downloading the itch.io butler.")):
context = ssl._create_unverified_context()
response = urllib2.urlopen("https://broth.itch.ovh/butler/{}/LATEST/archive/default".format(platform), context=context)
+5 -3
View File
@@ -190,11 +190,12 @@ init -1 python:
interface.processing(self.info_msg, show_screen=True, cancel=cancel_action)
kwargs = { }
if yes:
kwargs["stdin"] = subprocess.PIPE
try:
self.process = subprocess.Popen(cmd, cwd=renpy.fsencode(RAPT_PATH), stdout=f, stderr=f, startupinfo=startupinfo, **kwargs)
self.process = subprocess.Popen(cmd, cwd=renpy.fsencode(RAPT_PATH), stdout=f, stderr=f, stdin=subprocess.PIPE, startupinfo=startupinfo, **kwargs)
# avoid SIGTTIN caused by e.g. gradle doing empty read on terminal stdin
if not yes:
self.process.stdin.close()
except:
import traceback
traceback.print_exc(file=f)
@@ -215,6 +216,7 @@ init -1 python:
if yes and self.yes_thread:
self.run_yes = False
self.yes_thread.join()
self.process.stdin.close()
self.process = None
self.yes_thread = None
+2 -2
View File
@@ -156,7 +156,7 @@ label new_theme_project:
template_path = template.path
with interface.error_handling("creating a new project"):
with interface.error_handling(_("creating a new project")):
shutil.copytree(template_path, project_dir, symlinks=False)
# Delete the tmp directory, if it exists.
@@ -184,7 +184,7 @@ label new_theme_project:
shutil.copy(src, dst)
# Activate the project.
with interface.error_handling("activating the new project"):
with interface.error_handling(_("activating the new project")):
project.manager.scan()
project.Select(project.manager.get(project_name))()
+4
View File
@@ -297,6 +297,9 @@ init python:
build.classify_renpy("renios/version.txt", "renios")
build.classify_renpy("renios/", "renios")
build.classify_renpy("web/game.zip", None)
build.classify_renpy("web/**", "web")
build.classify_renpy("**.old", None)
build.classify_renpy("**.new", None)
build.classify_renpy("**.bak", None)
@@ -412,6 +415,7 @@ init python:
build.package("rapt", "zip", "rapt", dlc=True)
build.package("renios", "zip", "renios", dlc=True)
build.package("web", "zip", "web", dlc=True)
# Enable the special launcher translation mode.
+2 -2
View File
@@ -606,8 +606,8 @@ translate arabic strings:
new "خطأ"
# interface.rpy:356
old "While [what!q], an error occured:"
new "حصل خطأ أثناء [what!q]"
old "While [what!qt], an error occured:"
new "حصل خطأ أثناء [what!qt]"
# interface.rpy:356
old "[exception!q]"
+2 -2
View File
@@ -606,8 +606,8 @@ translate finnish strings:
new "VIRHE"
# interface.rpy:356
old "While [what!q], an error occured:"
new "Kun [what!q], tapahtui virhe:"
old "While [what!qt], an error occured:"
new "Kun [what!qt], tapahtui virhe:"
# interface.rpy:356
old "[exception!q]"
+56 -6
View File
@@ -207,15 +207,15 @@ translate french strings:
# 00library.rpy:142
old "Self-voicing disabled."
new "Vocalisation automatique désactivée."
new "Lecture vocale désactivée."
# 00library.rpy:143
old "Clipboard voicing enabled. "
new "Vocalisation du contenu du presse-papier activée. "
new "Lecture vocale vers presse-papier activée. "
# 00library.rpy:144
old "Self-voicing enabled. "
new "Vocalisation automatique activée. "
new "Lecture vocale activée. "
# 00library.rpy:179
old "Skip Mode"
@@ -227,15 +227,15 @@ translate french strings:
# 00preferences.rpy:422
old "Clipboard voicing enabled. Press 'shift+C' to disable."
new "Vocalisation du contenu du presse-papier activée. Pressez « Maj+C » pour la désactiver."
new "Lecture vocale vers presse-papier activée. Pressez « Maj+C » pour la désactiver."
# 00preferences.rpy:424
old "Self-voicing would say \"[renpy.display.tts.last]\". Press 'alt+shift+V' to disable."
new "La vocalisation automatique veut dire « [renpy.display.tts.last] ». Pressez « Alt+Maj+V » pour la désactiver."
new "La lecture vocale veut dire « [renpy.display.tts.last] ». Pressez « Alt+Maj+V » pour la désactiver."
# 00preferences.rpy:426
old "Self-voicing enabled. Press 'v' to disable."
new "Vocalisation automatique activée. Pressez « v » pour la désactiver."
new "Lecture vocale activée. Pressez « v » pour la désactiver."
# 00iap.rpy:217
old "Contacting App Store\nPlease Wait..."
@@ -332,3 +332,53 @@ translate french strings:
# 00gallery.rpy:586
old "return"
new "retour"
translate french strings:
# renpy/common/00accessibility.rpy:76
old "Font Override"
new "Forcer la police"
# renpy/common/00accessibility.rpy:80
old "Default"
new "Par défaut"
# renpy/common/00accessibility.rpy:84
old "DejaVu Sans"
new "DejaVu Sans"
# renpy/common/00accessibility.rpy:88
old "Opendyslexic"
new "Opendyslexic"
# renpy/common/00accessibility.rpy:94
old "Text Size Scaling"
new "Redimensionnement du Texte"
# renpy/common/00accessibility.rpy:100
old "Reset"
new "Réinitaliser"
# renpy/common/00accessibility.rpy:105
old "Line Spacing Scaling"
new "Espacement Vertical"
# renpy/common/00accessibility.rpy:117
old "Self-Voicing"
new "Lecture vocale"
# renpy/common/00accessibility.rpy:121
old "Off"
new "Désactivée"
# renpy/common/00accessibility.rpy:125
old "Text-to-speech"
new "Synthèse vocale"
# renpy/common/00accessibility.rpy:129
old "Clipboard"
new "Presse-papier"
# renpy/common/00accessibility.rpy:133
old "Debug"
new "Débogage"
+39
View File
@@ -176,3 +176,42 @@ translate french strings:
# _errorhandling.rpym:612
old "Copies the errors.txt file to the clipboard."
new "Copie le contenu du fichier « errors.txt » dans le presse-papier."
translate french strings:
# renpy/common/_errorhandling.rpym:542
old "Copy BBCode"
new "Copier en BBCode"
# renpy/common/_errorhandling.rpym:544
old "Copies the traceback.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "Copie le fichier traceback.txt dans le presse-papier au format BBcode pour les forums tels que https://lemmasoft.renai.us/."
# renpy/common/_errorhandling.rpym:546
old "Copy Markdown"
new "Copier en Markdown"
# renpy/common/_errorhandling.rpym:548
old "Copies the traceback.txt file to the clipboard as Markdown for Discord."
new "Copie le fichier traceback.txt dans le presse-papier au format Markdown pour Discord."
# renpy/common/_errorhandling.rpym:606
old "Ignores the exception, allowing you to continue."
new "Ignore lexception, cela vous autorise à poursuivre"
# renpy/common/_errorhandling.rpym:617
old "Console"
new "Console"
# renpy/common/_errorhandling.rpym:619
old "Opens a console to allow debugging the problem."
new "Ouvre une console pour débuguer le problème."
# renpy/common/_errorhandling.rpym:683
old "Copies the errors.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "Copie le fichier errors.txt dans le presse-papier au format BBcode pour les forums tels que https://lemmasoft.renai.us/."
# renpy/common/_errorhandling.rpym:687
old "Copies the errors.txt file to the clipboard as Markdown for Discord."
new "Copie le fichier errors.txt dans le presse-papier au format Markdown pour Discord."
+2 -2
View File
@@ -606,8 +606,8 @@ translate french strings:
new "ERREUR"
# interface.rpy:356
old "While [what!q], an error occured:"
new "Pendant que [what!q], une erreur est survenue :"
old "While [what!qt], an error occured:"
new "Pendant que [what!qt], une erreur est survenue :"
# interface.rpy:356
old "[exception!q]"
+2 -2
View File
@@ -614,8 +614,8 @@ translate german strings:
new "FEHLER"
# interface.rpy:356
old "While [what!q], an error occured:"
new "Während [what!q] ist ein Fehler aufgetreten:"
old "While [what!qt], an error occured:"
new "Während [what!qt] ist ein Fehler aufgetreten:"
# interface.rpy:356
old "[exception!q]"
+2 -2
View File
@@ -606,8 +606,8 @@ translate greek strings:
new "ΣΦΑΛΜΑ"
# interface.rpy:356
old "While [what!q], an error occured:"
new "Ενόσω [what!q], συνέβη ένα σφάλμα:"
old "While [what!qt], an error occured:"
new "Ενόσω [what!qt], συνέβη ένα σφάλμα:"
# interface.rpy:356
old "[exception!q]"
+2 -2
View File
@@ -606,8 +606,8 @@ translate indonesian strings:
new "ERROR"
# interface.rpy:356
old "While [what!q], an error occured:"
new "Kesalahan terjadi ketika : [what!q] adalah :"
old "While [what!qt], an error occured:"
new "Kesalahan terjadi ketika : [what!qt] adalah :"
# interface.rpy:356
old "[exception!q]"
+2 -2
View File
@@ -606,8 +606,8 @@ translate italian strings:
new "ERRORE"
# interface.rpy:356
old "While [what!q], an error occured:"
new "Durante [what!q], si é verificato un errore:"
old "While [what!qt], an error occured:"
new "Durante [what!qt], si é verificato un errore:"
# interface.rpy:356
old "[exception!q]"
+80
View File
@@ -694,3 +694,83 @@ translate japanese strings:
old "Image cache: [cache_pct:.1f]% ([cache_size_mb:.1f] MB)"
new "イメージキャッシュ: [cache_pct:.1f]% ([cache_size_mb:.1f] MB)"
# renpy/common/00accessibility.rpy:76
old "Font Override"
new "フォントオーバーライド"
# renpy/common/00accessibility.rpy:80
old "Default"
new "デフォルト"
# renpy/common/00accessibility.rpy:84
old "DejaVu Sans"
new "DejaVu Sans"
# renpy/common/00accessibility.rpy:88
old "Opendyslexic"
new "Opendyslexic"
# renpy/common/00accessibility.rpy:94
old "Text Size Scaling"
new "テキストサイズのスケーリング"
# renpy/common/00accessibility.rpy:100
old "Reset"
new "リセット"
# renpy/common/00accessibility.rpy:105
old "Line Spacing Scaling"
new "行間のスケーリング"
# renpy/common/00accessibility.rpy:117
old "Self-Voicing"
new "セルフボイシング"
# renpy/common/00accessibility.rpy:121
old "Off"
new "オフ"
# renpy/common/00accessibility.rpy:125
old "Text-to-speech"
new "テキストを読む"
# renpy/common/00accessibility.rpy:129
old "Clipboard"
new "クリップボード"
# renpy/common/00accessibility.rpy:133
old "Debug"
new "デバッグ"
# renpy/common/00preferences.rpy:430
old "font transform"
new "フォント変換"
# renpy/common/00preferences.rpy:433
old "font size"
new "フォントサイズ"
# renpy/common/00preferences.rpy:441
old "font line spacing"
new "フォントの行間"
# renpy/common/_developer/developer.rpym:63
old "Image Attributes"
new "画像属性"
# renpy/common/_developer/developer.rpym:90
old "[name] [attributes] (hidden)"
new "[name] [attributes] (hidden)"
# renpy/common/_developer/developer.rpym:94
old "[name] [attributes]"
new "[name] [attributes]"
# renpy/common/_developer/developer.rpym:154
old "Hide deleted"
new "消去済みを隠す"
# renpy/common/_developer/developer.rpym:154
old "Show deleted"
new "消去済みを表示する"
+8
View File
@@ -177,3 +177,11 @@ translate japanese strings:
old "jump <label>: jumps to label"
new "jump <ラベル>: ラベルにジャンプ"
# renpy/common/00console.rpy:685
old "short: Shorten the representation of objects on the console (default)."
new "short: コンソール上のオブジェクトを短く表現する(デフォルト)"
# renpy/common/00console.rpy:690
old "long: Print the full representation of objects on the console."
new "long: コンソール上のオブジェクトを全て表現する"
+24
View File
@@ -235,3 +235,27 @@ translate japanese strings:
old "Tearing"
new "ティアリング"
# renpy/common/_errorhandling.rpym:542
old "Copy BBCode"
new "BBCode でコピー"
# renpy/common/_errorhandling.rpym:544
old "Copies the traceback.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "クリップボードに traceback.txt を https://lemmasoft.renai.us/ 等のフォーラムに適した BBcode 形式でコピーする。"
# renpy/common/_errorhandling.rpym:546
old "Copy Markdown"
new "Markdown でコピー"
# renpy/common/_errorhandling.rpym:548
old "Copies the traceback.txt file to the clipboard as Markdown for Discord."
new "クリップボードに traceback.txt を Discord に適した Markdown 形式でコピーする。"
# renpy/common/_errorhandling.rpym:683
old "Copies the errors.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "クリップボードに errors.txt を https://lemmasoft.renai.us/ 等のフォーラムに適した BBcode 形式でコピーする。"
# renpy/common/_errorhandling.rpym:687
old "Copies the errors.txt file to the clipboard as Markdown for Discord."
new "クリップボードに errors.txt を Discord に適した Markdown 形式でコピーする。"
+382 -6
View File
@@ -51,7 +51,7 @@ translate japanese strings:
# android.rpy:35
old "Choose \"Build\" to build the current project, or attach an Android device and choose \"Build & Install\" to build and install it on the device."
new "「ビルド」を選択して現在のプロジェクトをビルドするか、Android デバイスを接続して「ビルド & インストール」を選択し、ビルド後そのデバイスにインストールしてください。"
new "「ビルド」を選択して現在のプロジェクトをビルドするか、Android デバイスを接続して「ビルドインストール」を選択し、そのデバイスにインストールしてください。"
# android.rpy:37
old "Attempts to emulate an Android phone.\n\nTouch input is emulated through the mouse, but only when the button is held down. Escape is mapped to the menu button, and PageUp is mapped to the back button."
@@ -135,7 +135,7 @@ translate japanese strings:
# android.rpy:365
old "Configure"
new "設定"
new "構成の設定"
# android.rpy:369
old "Build Package"
@@ -143,7 +143,7 @@ translate japanese strings:
# android.rpy:373
old "Build & Install"
new "ビルド & インストール"
new "ビルドインストール"
# android.rpy:377
old "Build, Install & Launch"
@@ -606,8 +606,8 @@ translate japanese strings:
new "エラー"
# interface.rpy:356
old "While [what!q], an error occured:"
new "[what!q] 中にエラーが発生しました:"
old "While [what!qt], an error occured:"
new "[what!qt] 中にエラーが発生しました:"
# interface.rpy:356
old "[exception!q]"
@@ -623,7 +623,7 @@ translate japanese strings:
# interface.rpy:386
old "File and directory names must consist of ASCII characters."
new "ファイル、ディレクトリー名はアスキーコードの文字列で構成される必要があります。"
new "ファイル、ディレクトリー名はアスキーコードの文字列でなければなりません。"
# interface.rpy:454
old "PROCESSING"
@@ -1321,3 +1321,379 @@ translate japanese strings:
# front_page.rpy:221
old "Actions"
new "アクション"
translate japanese strings:
# game/add_file.rpy:37
old "The file name may not be empty."
new "ファイル名が与えられていません。"
# game/android.rpy:31
old "A 64-bit/x64 Java 8 Development Kit is required to build Android packages on Windows. The JDK is different from the JRE, so it's possible you have Java without having the JDK.\n\nPlease {a=http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html}download and install the JDK{/a}, then restart the Ren'Py launcher."
new "ウィンドウズでアンドロイドパッケージをビルドするには、 64-bit/x64 Java 8 Development Kit が必要になります。 JDK は JRE とは違うもので、Java には含まれていません。\n\n{a=http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html}から JDK をダンロードしてインストールし{/a}、それから Ren'Py ランチャーを再起動してください。"
# game/android.rpy:50
old "Selects the Debug build, which can be accessed through Android Studio. Changing between debug and release builds requires an uninstall from your device."
new "Android Studio からアクセスできるデバッグビルドを選択する。 デバッグビルドとリリースビルドを切り替えるには、デバイスからアンインストールする必要があります。"
# game/android.rpy:51
old "Selects the Release build, which can be uploaded to stores. Changing between debug and release builds requires an uninstall from your device."
new "ストアへアップロード可能なリリースビルドを選択する。 デバッグビルドとリリースビルドを切り替えるには、デバイスからアンインストールする必要があります。"
# game/androidstrings.rpy:7
old "{} is not a directory."
new "{} はディレクトリーではありません。"
# game/androidstrings.rpy:8
old "{} does not contain a Ren'Py game."
new "{} に Ren'Py のゲームは含まれていません。"
# game/androidstrings.rpy:9
old "Run configure before attempting to build the app."
new "アプリをビルドする前に構成を変更する。"
# game/androidstrings.rpy:10
old "Google Play support is enabled, but build.google_play_key is not defined."
new "Google Play サポートは有効になりましたが、 build.google_play_key が定義されていません。"
# game/androidstrings.rpy:11
old "Updating project."
new "プロジェクトを更新しています。"
# game/androidstrings.rpy:12
old "Creating assets directory."
new "アセットディレクトリーを作成しています"
# game/androidstrings.rpy:13
old "Creating expansion file."
new "拡張ファイルを作成しています。"
# game/androidstrings.rpy:14
old "Packaging internal data."
new "内部データをパッケージングしています。"
# game/androidstrings.rpy:15
old "I'm using Gradle to build the package."
new "パッケージのビルドに Gradle を使用しています。"
# game/androidstrings.rpy:16
old "Uploading expansion file."
new "拡張ファイルをアップロードしています。"
# game/androidstrings.rpy:17
old "The build seems to have failed."
new "ビルドに失敗したようです"
# game/androidstrings.rpy:18
old "Launching app."
new "アプリを起動しています。"
# game/androidstrings.rpy:19
old "The build seems to have succeeded."
new "ビルドに成功したようです。"
# game/androidstrings.rpy:20
old "The arm64-v8a version works on newer Android devices, the armeabi-v7a version works on older devices, and the x86_64 version works on the simulator and chromebooks."
new "arm64-v8a version は新しいアンドロイドデバイスで動きます。 armeabi-v7a version は古いデバイスで動きます。 the x86_64 version はシミュレーターやクロームブックで動きます。"
# game/androidstrings.rpy:21
old "What is the full name of your application? This name will appear in the list of installed applications."
new "アプリのフルネームはなんですか? フルネームはインストール済みアプリの一覧に表示されます。"
# game/androidstrings.rpy:22
old "What is the short name of your application? This name will be used in the launcher, and for application shortcuts."
new "アプリのショートネームは何ですか? ショートネームはランチャーやショートカットで使われます。"
# game/androidstrings.rpy:23
old "What is the name of the package?\n\nThis is usually of the form com.domain.program or com.domain.email.program. It may only contain ASCII letters and dots. It must contain at least one dot."
new "パッケージ名はなんですか?\n\nこれは通常 com.domain.program や com.domain.email.program の形を取ります。 ASCII 文字とドットのみで構成され、最低一つのドットを含まなければなりません。"
# game/androidstrings.rpy:24
old "The package name may not be empty."
new "パッケージ名が与えられていません。"
# game/androidstrings.rpy:25
old "The package name may not contain spaces."
new "パッケージ名はスペースを含んではいけません。"
# game/androidstrings.rpy:26
old "The package name must contain at least one dot."
new "パッケージ名は最低一つのドットを含まなければなりません。"
# game/androidstrings.rpy:27
old "The package name may not contain two dots in a row, or begin or end with a dot."
new "パッケージ名は2つのドットが連続したり、最初や最後がドットになってはいけません。"
# game/androidstrings.rpy:28
old "Each part of the package name must start with a letter, and contain only letters, numbers, and underscores."
new "パッケージ名の各部分は文字から始めまり、文字・数字・アンダースコアのみを使用しなければなりません"
# game/androidstrings.rpy:29
old "{} is a Java keyword, and can't be used as part of a package name."
new "{} は Java のキーワードのため、パッケージ名に使用することはできません。."
# game/androidstrings.rpy:30
old "What is the application's version?\n\nThis should be the human-readable version that you would present to a person. It must contain only numbers and dots."
new "アプリケーションのバージョンはなんですか?\n\nバージョンは他の人に分かりやすい名前にします。数字とドットのみが使用できます。"
# game/androidstrings.rpy:31
old "The version number must contain only numbers and dots."
new "バージョンナンバーは数字とドットのみが使用できます。"
# game/androidstrings.rpy:32
old "What is the version code?\n\nThis must be a positive integer number, and the value should increase between versions."
new "バージョンコードは何ですか?\n\nこれは正の整数で、バージョンが上がるごとに増えていきます。"
# game/androidstrings.rpy:33
old "The numeric version must contain only numbers."
new "バージョンコードは数字のみが使用できます。"
# game/androidstrings.rpy:34
old "How would you like your application to be displayed?"
new "どのようにアプリケーションを表示したいですか?"
# game/androidstrings.rpy:35
old "In landscape orientation."
new "ランドスケープ(横向き)"
# game/androidstrings.rpy:36
old "In portrait orientation."
new "ポートレイト(縦向き)"
# game/androidstrings.rpy:37
old "In the user's preferred orientation."
new "ユーザーが選択した向き"
# game/androidstrings.rpy:38
old "Which app store would you like to support in-app purchasing through?"
new "アプリ内課金をどのアプリストアに対応させますか?"
# game/androidstrings.rpy:39
old "Google Play."
new "Google Play"
# game/androidstrings.rpy:40
old "Amazon App Store."
new "Amazon App Store"
# game/androidstrings.rpy:41
old "Both, in one app."
new "一つのアプリで両方とも"
# game/androidstrings.rpy:42
old "Neither."
new "どちらも対応させない"
# game/androidstrings.rpy:43
old "Would you like to create an expansion APK?"
new "APK 拡張ファイルを作成しますか?"
# game/androidstrings.rpy:44
old "No. Size limit of 100 MB on Google Play, but can be distributed through other stores and sideloaded."
new "いいえ。Google Play では100MBのサイズ制限がありますが、他のストアを通したり、直接配布することが可能です。"
# game/androidstrings.rpy:45
old "Yes. 2 GB size limit, but won't work outside of Google Play. (Read the documentation to get this to work.)"
new "はい。2GBのサイズまで作成できますが、 Google Play 以外では動きません。(ドキュメンテーションを参照してください。)"
# game/androidstrings.rpy:46
old "Do you want to allow the app to access the Internet?"
new "アプリのインターネット接続を許可しますか?"
# game/androidstrings.rpy:47
old "Do you want to automatically update the generated project?"
new "作成したプロジェクトを自動的に更新させますか?"
# game/androidstrings.rpy:48
old "Yes. This is the best choice for most projects."
new "はい。多くのプロジェクトで最良の選択です。"
# game/androidstrings.rpy:49
old "No. This may require manual updates when Ren'Py or the project configuration changes."
new "いいえ。Ren'Py やプロジェクトの構成が変更されるごとに、手動でアップデートする必要があります。"
# game/androidstrings.rpy:50
old "Unknown configuration variable: {}"
new "未知の構成変数: {}"
# game/androidstrings.rpy:51
old "I'm compiling a short test program, to see if you have a working JDK on your system."
new "小さなテストプログラムをコンパイルして、あなたのシステムで JDK が動作するか確認しています。"
# game/androidstrings.rpy:52
old "I was unable to use javac to compile a test file. If you haven't installed the Java Development Kit yet, please download it from:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nThe JDK is different from the JRE, so it's possible you have Java without having the JDK. Without a working JDK, I can't continue."
new "テストファイルのコンパイルに javac が利用できません。Java Development Kit をダウンロードしていないなら、\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nからダウンロードしてください。 JDK は JRE とは違うもので、Java には含まれていません。JDK がなければ継続できません。"
# game/androidstrings.rpy:53
old "The version of Java on your computer does not appear to be JDK 8, which is the only version supported by the Android SDK. If you need to install JDK 8, you can download it from:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nYou can also set the JAVA_HOME environment variable to use a different version of Java."
new "あなたのコンピューターにある Java のバージョンは JDK 8 ではないようです。JDK 8 は Android SDK がサポートする唯一のバージョンです。JDK 8 は:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nからダウンロードできます。 異なるバージョンの JAVA を使う場合は、JAVA_HOME の環境変数を設定します。"
# game/androidstrings.rpy:54
old "The JDK is present and working. Good!"
new "JDK が動作することを確認しました。"
# game/androidstrings.rpy:55
old "The Android SDK has already been unpacked."
new "Android SDK の解凍は完了しています。"
# game/androidstrings.rpy:56
old "Do you accept the Android SDK Terms and Conditions?"
new "Android SDK の契約内容・条件を承諾しますか?"
# game/androidstrings.rpy:57
old "I'm downloading the Android SDK. This might take a while."
new "Android SDK をダウンロードしています。この処理にはしばらくかかります。"
# game/androidstrings.rpy:58
old "I'm extracting the Android SDK."
new "Android SDK を解凍しています。"
# game/androidstrings.rpy:59
old "I've finished unpacking the Android SDK."
new "Android SDK の解凍を完了しました。"
# game/androidstrings.rpy:60
old "I'm about to download and install the required Android packages. This might take a while."
new "必要な Android パッケージをダウンロードしてインストールしようとしています。この処理にはしばらくかかります。"
# game/androidstrings.rpy:61
old "I was unable to accept the Android licenses."
new "Android ライセンスを承諾出来ませんでした。"
# game/androidstrings.rpy:62
old "I was unable to install the required Android packages."
new "必要な Android パッケージをインストールできませんでした。"
# game/androidstrings.rpy:63
old "I've finished installing the required Android packages."
new "必要な Android パッケージのインストールが終了しました。"
# game/androidstrings.rpy:64
old "You set the keystore yourself, so I'll assume it's how you want it."
new "keystore が設定されているため、あなた自身で設定したいのだと判断しました。"
# game/androidstrings.rpy:65
old "You've already created an Android keystore, so I won't create a new one for you."
new "Android keystore が既に作成済みのため、新しい keystore の作成は行いません。"
# game/androidstrings.rpy:66
old "I can create an application signing key for you. Signing an application with this key allows it to be placed in the Android Market and other app stores.\n\nDo you want to create a key?"
new "アプリケーションに署名するキーを発行できます。このキーでアプリケーションに署名すると、アンドロイドマーケットや他のストアで配布できるようになります。\n\nキーを作成しますか?"
# game/androidstrings.rpy:67
old "I will create the key in the android.keystore file.\n\nYou need to back this file up. If you lose it, you will not be able to upgrade your application.\n\n\\You also need to keep the key safe. If evil people get this file, they could make fake versions of your application, and potentially steal your users' data.\n\nWill you make a backup of android.keystore, and keep it in a safe place?"
new "android.keystore ファイルを作成します。\n\nこのファイルはバックアップしてください。もし失くした場合はアプリをアップグレードすることが出来なくなります。\n\nまた、このファイルは安全な場所に保管してください。このファイルが悪意のある人間の手に渡ると、アプリのフェイクバージョンを作られたり、ユーザーデータを盗まれる恐れがあります。\n\nandroid.keystore のバックアップを作成し、安全な場所に保存しますか?"
# game/androidstrings.rpy:68
old "Please enter your name or the name of your organization."
new "あなたの名前か組織名を入力してください。"
# game/androidstrings.rpy:69
old "Could not create android.keystore. Is keytool in your path?"
new "android.keystore を作成できませんでした。keytool があなたのパスに存在しますか?"
# game/androidstrings.rpy:70
old "I've finished creating android.keystore. Please back it up, and keep it in a safe place."
new "android.keystore の作成を終了しました。 このファイルをバックアップして、安全な場所に保管してください。"
# game/androidstrings.rpy:71
old "It looks like you're ready to start packaging games."
new "ゲームのパッケージングの準備が整ったようです。"
# game/choose_theme.rpy:507
old "changing the theme"
new "テーマを変更しています。"
# game/front_page.rpy:252
old "Web"
new "Web"
# game/front_page.rpy:252
old "(Beta)"
new "(Beta)"
# game/gui7.rpy:429
old "creating a new project"
new "新しいプロジェクトを作成しています。"
# game/gui7.rpy:433
old "activating the new project"
new "新しいプロジェクトを認証しています。"
# game/interface.rpy:372
old "opening the log file"
new "ログファイルを開いています。"
# game/itch.rpy:43
old "Downloading the itch.io butler."
new "itch.io butler をダウンロードしています。"
# game/updater.rpy:101
old "The update channel controls the version of Ren'Py the updater will download."
new "アップロードチャンネルはアップデーターのバージョンをコントロールします。"
# game/updater.rpy:110
old "• This version is installed and up-to-date."
new "• このバージョンは最新の状態でインストールされています。"
# game/updater.rpy:118
old "%B %d, %Y"
new "%B %d, %Y"
# game/updater.rpy:188
old "Fetching the list of update channels"
new "アップデートチャンネルのリストを取得しています。"
# game/updater.rpy:194
old "downloading the list of update channels"
new "アップデートチャンネルのリストをダウンロードしています。"
# game/updater.rpy:198
old "parsing the list of update channels"
new "アップデートチャンネルのリストを解析しています。"
# game/web.rpy:118
old "Web: [project.current.display_name!q]"
new "Web: [project.current.display_name!q]"
# game/web.rpy:148
old "Build Web Application"
new "ウェブアプリケーションをビルドする"
# game/web.rpy:149
old "Build and Open in Browser"
new "ビルドしてブラウザで開く"
# game/web.rpy:150
old "Open in Browser"
new "ブラウザで開く"
# game/web.rpy:151
old "Open build directory"
new "ビルドしたディレクトリーを開く"
# game/web.rpy:155
old "Support:"
new "サポート:"
# game/web.rpy:163
old "RenPyWeb Home"
new "RenPyWeb ホーム"
# game/web.rpy:164
old "Beuc's Patreon"
new "Beuc's Patreon"
# game/web.rpy:182
old "Ren'Py web applications require the entire game to be downloaded to the player's computer before it can start."
new "Ren'Py ウェブアプリケーションは、ゲームをスタートする前に、プレイヤーのコンピューターにデータを全てダウンロードする必要があります。"
# game/web.rpy:186
old "Current limitations in the web platform mean that loading large images, audio files, or movies may cause audio or framerate glitches, and lower performance in general."
new "現在のウェブプラットホームの限界により、一般的なパフォーマンスの低下や、大きな画像・音声・動画ファイルのロードによる音声やフレームレートの異常が発生します。"
# game/web.rpy:195
old "Before packaging web apps, you'll need to download RenPyWeb, Ren'Py's web support. Would you like to download RenPyWeb now?"
new "ウェブアプリをパッケージングするために、RenPyWeb (Ren'Py's web support) をダウンロードする必要があります。 RenPyWeb をダウンロードしますか?"
+1 -1
View File
@@ -166,7 +166,7 @@ translate japanese strings:
# screens.rpy:352
old "## Used to display the main menu when Ren'Py starts."
new "## Ren'py が起動した時に表示されるメインメニューを表示するスクリーンです。"
new "## Ren'Py が起動した時に表示されるメインメニューを表示するスクリーンです。"
# screens.rpy:354
old "## http://www.renpy.org/doc/html/screen_special.html#main-menu"
+4 -8
View File
@@ -20,7 +20,7 @@ label start:
# 背景を表示します。デフォルトではプレースホルダー(仮画像)を使用しますが、
# images ディレクトリーにファイル(ファイル名は "bg room.png" や "bg room.jpg"
# を追加することにより表示できます。
# を追加すること表示できます。
scene bg room
@@ -39,14 +39,10 @@ label start:
with dissolve
# 音楽を再生します。ここではタグを利用して無音を再生していますが、
# game ディレクトリーに "music.ogg" などと命名したファイルを追加すると
# play music "music.ogg" の形で再生することができます。
# 音楽を再生します。
# game ディレクトリーに "music.ogg" などファイルを追加すると再生できます。
# 効果音を再生する時は play audio "filename" を使用します。
# play music とは違って複数の効果音を同時に再生することができます。
play music "<silence .5>"
# play music "music.ogg"
# 以下は台詞を表示します。
+68
View File
@@ -707,3 +707,71 @@
# 00gallery.rpy:586
old "return"
new "돌아가기"
# _developer\developer.rpym:154
old "Hide deleted"
new "삭제항목 숨기기"
# _developer\developer.rpym:154
old "Show deleted"
new "삭제항목 보이기"
# 00accessibility.rpy:76
old "Font Override"
new "글꼴 덮어쓰기"
# 00accessibility.rpy:80
old "Default"
new "기본"
# 00accessibility.rpy:84
old "DejaVu Sans"
new "DejaVu Sans"
# 00accessibility.rpy:88
old "Opendyslexic"
new "Opendyslexic"
# 00accessibility.rpy:94
old "Text Size Scaling"
new "글자 크기 조절"
# 00accessibility.rpy:100
old "Reset"
new "초기화"
# 00accessibility.rpy:105
old "Line Spacing Scaling"
new "줄 간격 조절"
# 00accessibility.rpy:117
old "Self-Voicing"
new "대사 읽기"
# 00accessibility.rpy:121
old "Off"
new "끄기"
# 00accessibility.rpy:125
old "Text-to-speech"
new "텍스트 음성 변환"
# 00accessibility.rpy:129
old "Clipboard"
new "클립보드"
# 00accessibility.rpy:146
old "The options on this menu are intended to improve accessibility. They may not work with all games, and some combinations of options may render the game unplayable. This is not an issue with the game or engine. For the best results when changing fonts, try to keep the text size the same as it originally was."
new "이 메뉴의 옵션은 접근성을 향상시키기 위한 것입니다. 모든 게임에서 작동하지 않을 수 있고 일부 옵션 조합은 게임을 플레이할 수 없게 만들 수 있으며 이러한 경우 게임이나 엔진의 문제가 아닙니다. 글꼴을 변경할 때 최상의 결과를 얻으려면 글자 크기를 원래대로 유지하십시오."
# 00preferences.rpy:430
old "font transform"
new "글꼴 변형"
# 00preferences.rpy:433
old "font size"
new "글꼴 크기"
# 00preferences.rpy:441
old "font line spacing"
new "글꼴 줄 간격"
+11 -3
View File
@@ -102,7 +102,7 @@
# _developer/inspector.rpym:145
old " (no properties affect the displayable)"
new "(디스플레이어블에 적용되는 속성이 없습니다)"
new " (디스플레이어블에 적용되는 속성이 없습니다)"
# _developer/inspector.rpym:147
old " (default properties omitted)"
@@ -134,11 +134,11 @@
# 00console.rpy:413
old " <renpy script statement>: run the statement\n"
new "<렌파이 스크립트 명령문>: 명령문을 실행한다\n"
new " <렌파이 스크립트 명령문>: 명령문을 실행한다\n"
# 00console.rpy:415
old " <python expression or statement>: run the expression or statement"
new "<파이썬 표현식 또는 명령문>: 표현식이나 명령문을 실행한다"
new " <파이썬 표현식 또는 명령문>: 표현식이나 명령문을 실행한다"
# 00console.rpy:423
old "clear: clear the console history"
@@ -175,3 +175,11 @@
# 00console.rpy:536
old "jump <label>: jumps to label"
new "jump <label>: label로 점프한다"
# 00console.rpy:685
old "short: Shorten the representation of objects on the console (default)."
new "short: 콘솔에서 오브젝트 표시를 줄인다 (기본값)."
# 00console.rpy:690
old "long: Print the full representation of objects on the console."
new "long: 콘솔에서 오브젝트를 모두 표시한다."
+24
View File
@@ -207,3 +207,27 @@
# _errorhandling.rpym:668
old "Copies the errors.txt file to the clipboard."
new "errors.txt 파일을 클립보드로 복사합니다."
# _errorhandling.rpym:542
old "Copy BBCode"
new "BB코드 복사"
# _errorhandling.rpym:544
old "Copies the traceback.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "traceback.txt 파일을 https://lemmasoft.renai.us/ 같은 포럼에서 사용하는 BB코드로 클립보드에 복사합니다."
# _errorhandling.rpym:546
old "Copy Markdown"
new "마크다운 복사"
# _errorhandling.rpym:548
old "Copies the traceback.txt file to the clipboard as Markdown for Discord."
new "traceback.txt 파일을 디스코드(Discord) 마크다운으로 클립보드에 복사합니다."
# _errorhandling.rpym:683
old "Copies the errors.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "errors.txt 파일을 https://lemmasoft.renai.us/ 같은 포럼에서 사용하는 BB코드로 클립보드에 복사합니다."
# _errorhandling.rpym:687
old "Copies the errors.txt file to the clipboard as Markdown for Discord."
new "errors.txt 파일을 디스코드(Discord) 마크다운으로 클립보드에 복사합니다."
+95 -7
View File
@@ -18,11 +18,11 @@
# add_file.rpy:31
old "The filename must have the .rpy extension."
new "파일 이름에는 반드시 .rpy 확장자가 적혀있어야 합니다."
new "파일의 확장자는 반드시 .rpy 어야 합니다."
# add_file.rpy:39
old "The file already exists."
new "파일 이름이 이미 존재합니다."
new "파일이 이미 존재합니다."
# add_file.rpy:42
old "# Ren'Py automatically loads all script files ending with .rpy. To use this\n# file, define a label and jump to it from another file.\n"
@@ -214,7 +214,7 @@
# androidstrings.rpy:17
old "The build seems to have failed."
new "빌드 실패했습니다."
new "빌드 실패했습니다."
# androidstrings.rpy:18
old "Launching app."
@@ -225,8 +225,8 @@
new "빌드를 성공했습니다."
# androidstrings.rpy:20
old "The armeabi-v7a version works on most phones or tablets, while the x86_64 version works on the simulator and chromebooks."
new "armeabi-v7a 버전은 대부분의 휴대폰과 태블릿에서 작동하며, x86_64 버전은 시뮬레이터와 크롬북에서 작동합니다."
old "The arm64-v8a version works on newer Android devices, the armeabi-v7a version works on older devices, and the x86_64 version works on the simulator and chromebooks."
new "arm64-v8a 버전은 최신, armeabi-v7a 버전은 구형 안드로이드 휴대폰과 태블릿에서 작동하며, x86_64 버전은 시뮬레이터와 크롬북에서 작동합니다."
# androidstrings.rpy:21
old "What is the full name of your application? This name will appear in the list of installed applications."
@@ -357,7 +357,7 @@
new "javac를 사용하여 테스트 파일을 컴파일할 수 없습니다. 자바 개발 키트를 아직 설치하지 않은 경우 아래에서 설치하세요:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nJDK는 JRE와 다르므로 JDK가 없어도 Java를 사용할 수 있습니다. 작동하는 JDK가 없으면 계속할 수 없습니다."
# androidstrings.rpy:53
old "The version of Java on your computer does not appear to be JDK 8, which is the only version supported by the Android SDK. If you need to install JDK 8, you can download it from:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nYou can also set the JAVA_HOME environment variabe to use a different version of Java."
old "The version of Java on your computer does not appear to be JDK 8, which is the only version supported by the Android SDK. If you need to install JDK 8, you can download it from:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nYou can also set the JAVA_HOME environment variable to use a different version of Java."
new "컴퓨터에 설치된 자바 버전은 안드로이드 SDK에서 지원하는 유일한 버전인 JDK 8이 아닙니다. JDK 8은 아래에서 설치할 수 있습니다:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\n다른 버전의 자바를 사용하도록 JAVA_HOME 환경 변수를 설정할 수도 있습니다."
# androidstrings.rpy:54
@@ -594,7 +594,7 @@
# dmgcheck.rpy:50
old "Ren'Py is running from a read only folder. Some functionality will not work."
new "렌파이가 읽기 전용 폴더로부터 실행되고 있습니다. 일부 기능이 작동하지 않을 수 있습니다."
new "렌파이가 읽기 전용 폴더에서 실행되고 있습니다. 일부 기능이 작동하지 않을 수 있습니다."
# dmgcheck.rpy:50
old "This is probably because Ren'Py is running directly from a Macintosh drive image. To fix this, quit this launcher, copy the entire %s folder somewhere else on your computer, and run Ren'Py again."
@@ -1492,6 +1492,94 @@
old "Proceed"
new "다음으로"
# front_page.rpy:252
old "Web"
new "웹"
# front_page.rpy:252
old "Web (Beta)"
new "웹 (베타)"
# interface.rpy:394
old "While [what!qt], an error occured:"
new "[what!qt]에 오류가 발생했습니다:"
# interface.rpy:394
old "[exception!q]"
new "[exception!q]"
# itch.rpy:43
old "Downloading the itch.io butler."
new "itch.io 집사를 내려받는 중"
# web.rpy:118
old "Web: [project.current.display_name!q]"
new "웹: [project.current.display_name!q]"
# web.rpy:148
old "Build Web Application"
new "웹 애플리케이션 빌드"
# web.rpy:149
old "Build and Open in Browser"
new "빌드 및 브라우저에서 열기"
# web.rpy:150
old "Open in Browser"
new "브라우저에서 열기"
# web.rpy:151
old "Open build directory"
new "빌드 디렉토리 열기"
# web.rpy:154
old "Support:"
new "지원:"
# web.rpy:162
old "RenPyWeb Home"
new "렌파이웹 누리집"
# web.rpy:163
old "Beuc's Patreon"
new "Beuc의 페이트리온"
# web.rpy:181
old "Ren'Py web applications require the entire game to be downloaded to the player's computer before it can start."
new "렌파이 웹 애플리케이션은 게임을 시작하기 전에 전체 게임을 플레이어의 컴퓨터에 다운로드해야 합니다."
# web.rpy:185
old "Current limitations in the web platform mean that loading large images, audio files, or movies may cause audio or framerate glitches, and lower performance in general."
new "웹 플랫폼의 현재 제한 사항은 큰 이미지나 오디오 파일, 또는 동영상을 불러오면 오디오 또는 프레임 결함이 발생하고 일반적으로 성능이 저하될 수 있음을 의미합니다."
# web.rpy:194
old "Before packaging web apps, you'll need to download RenPyWeb, Ren'Py's web support. Would you like to download RenPyWeb now?"
new "웹 앱을 패키징하려면 렌파이의 웹 지원인 렌파이웹(RenpyWeb)이 필요합니다. 지금 내려받으시겠습니까?"
# updater.rpy:188
old "Fetching the list of update channels"
new "업데이트 채널 목록 가져오기"
# choose_theme.rpy:507
old "changing the theme"
new "테마를 바꾸는 중"
# gui7.rpy:429
old "creating a new project"
new "새 프로젝트를 만드는 중"
# gui7.rpy:433
old "activating the new project"
new "새 프로젝트를 활성화하는 중"
# interface.rpy:372
old "opening the log file"
new "로그 파일을 여는 중"
# updater.rpy:194
old "downloading the list of update channels"
new "업데이트 채널의 목록을 내려받는 중"
# updater.rpy:198
old "parsing the list of update channels"
new "업데이트 채널의 목록을 분석하는 중"
File diff suppressed because it is too large Load Diff
+54 -54
View File
@@ -1,219 +1,219 @@
translate piglatin strings:
# _developer/developer.rpym:38
# renpy/common/_developer/developer.rpym:38
old "Developer Menu"
new "Eveloperday Enumay"
# _developer/developer.rpym:43
# renpy/common/_developer/developer.rpym:43
old "Interactive Director (D)"
new "Nteractiveiay Irectorday (Day)"
# _developer/developer.rpym:45
# renpy/common/_developer/developer.rpym:45
old "Reload Game (Shift+R)"
new "Eloadray Amegay (Hiftsay+Ray)"
# _developer/developer.rpym:47
# renpy/common/_developer/developer.rpym:47
old "Console (Shift+O)"
new "Onsolecay (Hiftsay+Oay)"
# _developer/developer.rpym:49
# renpy/common/_developer/developer.rpym:49
old "Variable Viewer"
new "Ariablevay Iewervay"
# _developer/developer.rpym:51
# renpy/common/_developer/developer.rpym:51
old "Image Location Picker"
new "Mageiay Ocationlay Ickerpay"
# _developer/developer.rpym:53
# renpy/common/_developer/developer.rpym:53
old "Filename List"
new "Ilenamefay Istlay"
# _developer/developer.rpym:57
# renpy/common/_developer/developer.rpym:57
old "Show Image Load Log (F4)"
new "Howsay Mageiay Oadlay Oglay (4fay)"
# _developer/developer.rpym:60
# renpy/common/_developer/developer.rpym:60
old "Hide Image Load Log (F4)"
new "Idehay Mageiay Oadlay Oglay (4fay)"
# _developer/developer.rpym:63
# renpy/common/_developer/developer.rpym:63
old "Image Attributes"
new "Mageiay Ttributesaay"
# _developer/developer.rpym:90
# renpy/common/_developer/developer.rpym:90
old "[name] [attributes] (hidden)"
new "[name] [attributes] (iddenhay)"
# _developer/developer.rpym:94
# renpy/common/_developer/developer.rpym:94
old "[name] [attributes]"
new "[name] [attributes]"
# _developer/developer.rpym:143
# renpy/common/_developer/developer.rpym:143
old "Nothing to inspect."
new "Othingnay otay inspectay."
# _developer/developer.rpym:154
# renpy/common/_developer/developer.rpym:154
old "Hide deleted"
new "Idehay eletedday"
# _developer/developer.rpym:154
# renpy/common/_developer/developer.rpym:154
old "Show deleted"
new "Howsay eletedday"
# _developer/developer.rpym:278
# renpy/common/_developer/developer.rpym:278
old "Return to the developer menu"
new "Eturnray otay hetay eveloperday enumay"
# _developer/developer.rpym:438
# renpy/common/_developer/developer.rpym:443
old "Rectangle: %r"
new "Ectangleray: %ray"
# _developer/developer.rpym:443
# renpy/common/_developer/developer.rpym:448
old "Mouse position: %r"
new "Ousemay ositionpay: %ray"
# _developer/developer.rpym:448
# renpy/common/_developer/developer.rpym:453
old "Right-click or escape to quit."
new "Ightray-ickclay oray escapeay otay uitqay."
# _developer/developer.rpym:480
# renpy/common/_developer/developer.rpym:485
old "Rectangle copied to clipboard."
new "Ectangleray opiedcay otay ipboardclay."
# _developer/developer.rpym:483
# renpy/common/_developer/developer.rpym:488
old "Position copied to clipboard."
new "Ositionpay opiedcay otay ipboardclay."
# _developer/developer.rpym:502
# renpy/common/_developer/developer.rpym:507
old "Type to filter: "
new "Ypetay otay ilterfay: "
# _developer/developer.rpym:630
# renpy/common/_developer/developer.rpym:635
old "Textures: [tex_count] ([tex_size_mb:.1f] MB)"
new "Exturestay: [tex_count] ([tex_size_mb:.1f] Bmay)"
# _developer/developer.rpym:634
# renpy/common/_developer/developer.rpym:639
old "Image cache: [cache_pct:.1f]% ([cache_size_mb:.1f] MB)"
new "Mageiay achecay: [cache_pct:.1f]% ([cache_size_mb:.1f] Bmay)"
# _developer/developer.rpym:644
# renpy/common/_developer/developer.rpym:649
old "✔ "
new "✔ "
# _developer/developer.rpym:647
# renpy/common/_developer/developer.rpym:652
old "✘ "
new "✘ "
# _developer/developer.rpym:652
# renpy/common/_developer/developer.rpym:657
old "\n{color=#cfc}✔ predicted image (good){/color}\n{color=#fcc}✘ unpredicted image (bad){/color}\n{color=#fff}Drag to move.{/color}"
new "\n{color=#cfc}✔ redictedpay imageay (oodgay){/color}\n{color=#fcc}✘ unpredicteday imageay (adbay){/color}\n{color=#fff}Ragday otay ovemay.{/color}"
# _developer/inspector.rpym:38
# renpy/common/_developer/inspector.rpym:38
old "Displayable Inspector"
new "Isplayableday Nspectoriay"
# _developer/inspector.rpym:61
# renpy/common/_developer/inspector.rpym:61
old "Size"
new "Izesay"
# _developer/inspector.rpym:65
# renpy/common/_developer/inspector.rpym:65
old "Style"
new "Tylesay"
# _developer/inspector.rpym:71
# renpy/common/_developer/inspector.rpym:71
old "Location"
new "Ocationlay"
# _developer/inspector.rpym:122
# renpy/common/_developer/inspector.rpym:122
old "Inspecting Styles of [displayable_name!q]"
new "Nspectingiay Tylessay ofay [displayable_name!q]"
# _developer/inspector.rpym:139
# renpy/common/_developer/inspector.rpym:139
old "displayable:"
new "isplayableday:"
# _developer/inspector.rpym:145
# renpy/common/_developer/inspector.rpym:145
old " (no properties affect the displayable)"
new " (onay ropertiespay affectay hetay isplayableday)"
# _developer/inspector.rpym:147
# renpy/common/_developer/inspector.rpym:147
old " (default properties omitted)"
new " (efaultday ropertiespay omitteday)"
# _developer/inspector.rpym:185
# renpy/common/_developer/inspector.rpym:185
old "<repr() failed>"
new "<eprray() ailedfay>"
# 00console.rpy:271
# renpy/common/00console.rpy:273
old "Press <esc> to exit console. Type help for help.\n"
new "Resspay <escay> otay exitay onsolecay. Ypetay elphay orfay elphay.\n"
# 00console.rpy:275
# renpy/common/00console.rpy:277
old "Ren'Py script enabled."
new "Enray'Ypay criptsay enableday."
# 00console.rpy:277
# renpy/common/00console.rpy:279
old "Ren'Py script disabled."
new "Enray'Ypay criptsay isabledday."
# 00console.rpy:524
# renpy/common/00console.rpy:526
old "help: show this help"
new "elphay: owshay histay elphay"
# 00console.rpy:529
# renpy/common/00console.rpy:531
old "commands:\n"
new "ommandscay:\n"
# 00console.rpy:539
# renpy/common/00console.rpy:541
old " <renpy script statement>: run the statement\n"
new " <enpyray criptsay atementstay>: unray hetay atementstay\n"
# 00console.rpy:541
# renpy/common/00console.rpy:543
old " <python expression or statement>: run the expression or statement"
new " <ythonpay expressionay oray atementstay>: unray hetay expressionay oray atementstay"
# 00console.rpy:549
# renpy/common/00console.rpy:551
old "clear: clear the console history"
new "earclay: earclay hetay onsolecay istoryhay"
# 00console.rpy:553
# renpy/common/00console.rpy:555
old "exit: exit the console"
new "exitay: exitay hetay onsolecay"
# 00console.rpy:561
# renpy/common/00console.rpy:563
old "load <slot>: loads the game from slot"
new "oadlay <otslay>: oadslay hetay amegay omfray otslay"
# 00console.rpy:574
# renpy/common/00console.rpy:576
old "save <slot>: saves the game in slot"
new "avesay <otslay>: avessay hetay amegay inay otslay"
# 00console.rpy:585
# renpy/common/00console.rpy:587
old "reload: reloads the game, refreshing the scripts"
new "eloadray: eloadsray hetay amegay, efreshingray hetay criptssay"
# 00console.rpy:593
# renpy/common/00console.rpy:595
old "watch <expression>: watch a python expression"
new "atchway <expressionay>: atchway aay ythonpay expressionay"
# 00console.rpy:619
# renpy/common/00console.rpy:621
old "unwatch <expression>: stop watching an expression"
new "unwatchay <expressionay>: opstay atchingway anay expressionay"
# 00console.rpy:650
# renpy/common/00console.rpy:652
old "unwatchall: stop watching all expressions"
new "unwatchallay: opstay atchingway allay expressionsay"
# 00console.rpy:667
# renpy/common/00console.rpy:669
old "jump <label>: jumps to label"
new "umpjay <abellay>: umpsjay otay abellay"
# 00console.rpy:680
# renpy/common/00console.rpy:685
old "short: Shorten the representation of objects on the console (default)."
new "ortshay: Hortensay hetay epresentationray ofay objectsay onay hetay onsolecay (efaultday)."
# 00console.rpy:685
# renpy/common/00console.rpy:690
old "long: Print the full representation of objects on the console."
new "onglay: Rintpay hetay ullfay epresentationray ofay objectsay onay hetay onsolecay."
+56 -56
View File
@@ -1,227 +1,227 @@
translate piglatin strings:
# 00gltest.rpy:70
# renpy/common/00gltest.rpy:70
old "Renderer"
new "Endererray"
# 00gltest.rpy:74
# renpy/common/00gltest.rpy:74
old "Automatically Choose"
new "Utomaticallyaay Hoosecay"
# 00gltest.rpy:79
# renpy/common/00gltest.rpy:79
old "Force Angle/DirectX Renderer"
new "Orcefay Ngleaay/Irectxday Endererray"
# 00gltest.rpy:83
# renpy/common/00gltest.rpy:83
old "Force OpenGL Renderer"
new "Orcefay Pengloay Endererray"
# 00gltest.rpy:87
# renpy/common/00gltest.rpy:87
old "Force Software Renderer"
new "Orcefay Oftwaresay Endererray"
# 00gltest.rpy:93
# renpy/common/00gltest.rpy:93
old "NPOT"
new "Potnay"
# 00gltest.rpy:97
# renpy/common/00gltest.rpy:97
old "Enable"
new "Nableeay"
# 00gltest.rpy:131
# renpy/common/00gltest.rpy:131
old "Powersave"
new "Owersavepay"
# 00gltest.rpy:145
# renpy/common/00gltest.rpy:145
old "Framerate"
new "Rameratefay"
# 00gltest.rpy:149
# renpy/common/00gltest.rpy:149
old "Screen"
new "Creensay"
# 00gltest.rpy:153
# renpy/common/00gltest.rpy:153
old "60"
new "06ay"
# 00gltest.rpy:157
# renpy/common/00gltest.rpy:157
old "30"
new "03ay"
# 00gltest.rpy:163
# renpy/common/00gltest.rpy:163
old "Tearing"
new "Earingtay"
# 00gltest.rpy:179
# renpy/common/00gltest.rpy:179
old "Changes will take effect the next time this program is run."
new "Hangescay illway aketay effectay hetay extnay imetay histay rogrampay isay unray."
# 00gltest.rpy:213
# renpy/common/00gltest.rpy:213
old "Performance Warning"
new "Erformancepay Arningway"
# 00gltest.rpy:218
# renpy/common/00gltest.rpy:218
old "This computer is using software rendering."
new "Histay omputercay isay usingay oftwaresay enderingray."
# 00gltest.rpy:220
# renpy/common/00gltest.rpy:220
old "This computer is not using shaders."
new "Histay omputercay isay otnay usingay adersshay."
# 00gltest.rpy:222
# renpy/common/00gltest.rpy:222
old "This computer is displaying graphics slowly."
new "Histay omputercay isay isplayingday aphicsgray owlyslay."
# 00gltest.rpy:224
# renpy/common/00gltest.rpy:224
old "This computer has a problem displaying graphics: [problem]."
new "Histay omputercay ashay aay roblempay isplayingday aphicsgray: [problem]."
# 00gltest.rpy:229
# renpy/common/00gltest.rpy:229
old "Its graphics drivers may be out of date or not operating correctly. This can lead to slow or incorrect graphics display. Updating DirectX could fix this problem."
new "Tsiay aphicsgray riversday aymay ebay outay ofay ateday oray otnay operatingay orrectlycay. Histay ancay eadlay otay owslay oray incorrectay aphicsgray isplayday. Pdatinguay Irectxday ouldcay ixfay histay roblempay."
# 00gltest.rpy:231
# renpy/common/00gltest.rpy:231
old "Its graphics drivers may be out of date or not operating correctly. This can lead to slow or incorrect graphics display."
new "Tsiay aphicsgray riversday aymay ebay outay ofay ateday oray otnay operatingay orrectlycay. Histay ancay eadlay otay owslay oray incorrectay aphicsgray isplayday."
# 00gltest.rpy:236
# renpy/common/00gltest.rpy:236
old "Update DirectX"
new "Pdateuay Irectxday"
# 00gltest.rpy:242
# renpy/common/00gltest.rpy:242
old "Continue, Show this warning again"
new "Ontinuecay, Howsay histay arningway againay"
# 00gltest.rpy:246
# renpy/common/00gltest.rpy:246
old "Continue, Don't show warning again"
new "Ontinuecay, Onday'tay owshay arningway againay"
# 00gltest.rpy:264
# renpy/common/00gltest.rpy:264
old "Updating DirectX."
new "Pdatinguay Irectxday."
# 00gltest.rpy:268
# renpy/common/00gltest.rpy:268
old "DirectX web setup has been started. It may start minimized in the taskbar. Please follow the prompts to install DirectX."
new "Irectxday ebway etupsay ashay eenbay artedstay. Tiay aymay artstay inimizedmay inay hetay askbartay. Leasepay ollowfay hetay romptspay otay installay Irectxday."
# 00gltest.rpy:272
# renpy/common/00gltest.rpy:272
old "{b}Note:{/b} Microsoft's DirectX web setup program will, by default, install the Bing toolbar. If you do not want this toolbar, uncheck the appropriate box."
new "{b}Otenay:{/b} Icrosoftmay'say Irectxday ebway etupsay rogrampay illway, ybay efaultday, installay hetay Ingbay oolbartay. Fiay ouyay oday otnay antway histay oolbartay, uncheckay hetay appropriateay oxbay."
# 00gltest.rpy:276
# renpy/common/00gltest.rpy:276
old "When setup finishes, please click below to restart this program."
new "Henway etupsay inishesfay, easeplay ickclay elowbay otay estartray histay rogrampay."
# 00gltest.rpy:278
# renpy/common/00gltest.rpy:278
old "Restart"
new "Estartray"
# 00gamepad.rpy:32
# renpy/common/00gamepad.rpy:32
old "Select Gamepad to Calibrate"
new "Electsay Amepadgay otay Alibratecay"
# 00gamepad.rpy:35
# renpy/common/00gamepad.rpy:35
old "No Gamepads Available"
new "Onay Amepadsgay Vailableaay"
# 00gamepad.rpy:54
# renpy/common/00gamepad.rpy:54
old "Calibrating [name] ([i]/[total])"
new "Alibratingcay [name] ([i]/[total])"
# 00gamepad.rpy:58
# renpy/common/00gamepad.rpy:58
old "Press or move the [control!r] [kind]."
new "Resspay oray ovemay hetay [control!r] [kind]."
# 00gamepad.rpy:66
# renpy/common/00gamepad.rpy:66
old "Skip (A)"
new "Kipsay (Aay)"
# 00gamepad.rpy:69
# renpy/common/00gamepad.rpy:69
old "Back (B)"
new "Ackbay (Bay)"
# _errorhandling.rpym:535
# renpy/common/_errorhandling.rpym:538
old "Open"
new "Penoay"
# _errorhandling.rpym:537
# renpy/common/_errorhandling.rpym:540
old "Opens the traceback.txt file in a text editor."
new "Pensoay hetay acebacktray.xttay ilefay inay aay exttay editoray."
# _errorhandling.rpym:539
# renpy/common/_errorhandling.rpym:542
old "Copy BBCode"
new "Opycay Bcodebay"
# _errorhandling.rpym:541
# renpy/common/_errorhandling.rpym:544
old "Copies the traceback.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "Opiescay hetay acebacktray.xttay ilefay otay hetay ipboardclay asay Bcodebay orfay orumsfay ikelay ttpshay://emmasoftlay.enairay.usay/."
# _errorhandling.rpym:543
# renpy/common/_errorhandling.rpym:546
old "Copy Markdown"
new "Opycay Arkdownmay"
# _errorhandling.rpym:545
# renpy/common/_errorhandling.rpym:548
old "Copies the traceback.txt file to the clipboard as Markdown for Discord."
new "Opiescay hetay acebacktray.xttay ilefay otay hetay ipboardclay asay Arkdownmay orfay Iscordday."
# _errorhandling.rpym:574
# renpy/common/_errorhandling.rpym:577
old "An exception has occurred."
new "Naay exceptionay ashay occurreday."
# _errorhandling.rpym:594
# renpy/common/_errorhandling.rpym:597
old "Rollback"
new "Ollbackray"
# _errorhandling.rpym:596
# renpy/common/_errorhandling.rpym:599
old "Attempts a roll back to a prior time, allowing you to save or choose a different choice."
new "Ttemptsaay aay ollray ackbay otay aay riorpay imetay, allowingay ouyay otay avesay oray oosechay aay ifferentday oicechay."
# _errorhandling.rpym:599
# renpy/common/_errorhandling.rpym:602
old "Ignore"
new "Gnoreiay"
# _errorhandling.rpym:603
# renpy/common/_errorhandling.rpym:606
old "Ignores the exception, allowing you to continue."
new "Gnoresiay hetay exceptionay, allowingay ouyay otay ontinuecay."
# _errorhandling.rpym:605
# renpy/common/_errorhandling.rpym:608
old "Ignores the exception, allowing you to continue. This often leads to additional errors."
new "Gnoresiay hetay exceptionay, allowingay ouyay otay ontinuecay. Histay oftenay eadslay otay additionalay errorsay."
# _errorhandling.rpym:609
# renpy/common/_errorhandling.rpym:612
old "Reload"
new "Eloadray"
# _errorhandling.rpym:611
# renpy/common/_errorhandling.rpym:614
old "Reloads the game from disk, saving and restoring game state if possible."
new "Eloadsray hetay amegay omfray iskday, avingsay anday estoringray amegay atestay ifay ossiblepay."
# _errorhandling.rpym:614
# renpy/common/_errorhandling.rpym:617
old "Console"
new "Onsolecay"
# _errorhandling.rpym:616
# renpy/common/_errorhandling.rpym:619
old "Opens a console to allow debugging the problem."
new "Pensoay aay onsolecay otay alloway ebuggingday hetay roblempay."
# _errorhandling.rpym:626
# renpy/common/_errorhandling.rpym:629
old "Quits the game."
new "Uitsqay hetay amegay."
# _errorhandling.rpym:650
# renpy/common/_errorhandling.rpym:653
old "Parsing the script failed."
new "Arsingpay hetay criptsay ailedfay."
# _errorhandling.rpym:676
# renpy/common/_errorhandling.rpym:679
old "Opens the errors.txt file in a text editor."
new "Pensoay hetay errorsay.xttay ilefay inay aay exttay editoray."
# _errorhandling.rpym:680
# renpy/common/_errorhandling.rpym:683
old "Copies the errors.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "Opiescay hetay errorsay.xttay ilefay otay hetay ipboardclay asay Bcodebay orfay orumsfay ikelay ttpshay://emmasoftlay.enairay.usay/."
# _errorhandling.rpym:684
# renpy/common/_errorhandling.rpym:687
old "Copies the errors.txt file to the clipboard as Markdown for Discord."
new "Opiescay hetay errorsay.xttay ilefay otay hetay ipboardclay asay Arkdownmay orfay Iscordday."
+108 -108
View File
@@ -1,435 +1,435 @@
translate piglatin strings:
# gui.rpy:2
# gui/game/gui.rpy:2
old "## Initialization"
new "## Nitializationiay"
# gui.rpy:5
# gui/game/gui.rpy:5
old "## The init offset statement causes the initialization statements in this file to run before init statements in any other file."
new "## Hetay initay offsetay atementstay ausescay hetay initializationay atementsstay inay histay ilefay otay unray eforebay initay atementsstay inay anyay otheray ilefay."
# gui.rpy:9
# gui/game/gui.rpy:9
old "## Calling gui.init resets the styles to sensible default values, and sets the width and height of the game."
new "## Allingcay uigay.initay esetsray hetay ylesstay otay ensiblesay efaultday aluesvay, anday etssay hetay idthway anday eighthay ofay hetay amegay."
# gui.rpy:17
# gui/game/gui.rpy:17
old "## GUI Configuration Variables"
new "## Uigay Onfigurationcay Ariablesvay"
# gui.rpy:21
# gui/game/gui.rpy:21
old "## Colors"
new "## Olorscay"
# gui.rpy:23
# gui/game/gui.rpy:23
old "## The colors of text in the interface."
new "## Hetay olorscay ofay exttay inay hetay interfaceay."
# gui.rpy:25
# gui/game/gui.rpy:25
old "## An accent color used throughout the interface to label and highlight text."
new "## Naay accentay olorcay useday hroughouttay hetay interfaceay otay abellay anday ighlighthay exttay."
# gui.rpy:29
# gui/game/gui.rpy:29
old "## The color used for a text button when it is neither selected nor hovered."
new "## Hetay olorcay useday orfay aay exttay uttonbay henway itay isay eithernay electedsay ornay overedhay."
# gui.rpy:32
# gui/game/gui.rpy:32
old "## The small color is used for small text, which needs to be brighter/darker to achieve the same effect."
new "## Hetay mallsay olorcay isay useday orfay mallsay exttay, hichway eedsnay otay ebay ighterbray/arkerday otay achieveay hetay amesay effectay."
# gui.rpy:36
# gui/game/gui.rpy:36
old "## The color that is used for buttons and bars that are hovered."
new "## Hetay olorcay hattay isay useday orfay uttonsbay anday arsbay hattay areay overedhay."
# gui.rpy:39
# gui/game/gui.rpy:39
old "## The color used for a text button when it is selected but not focused. A button is selected if it is the current screen or preference value."
new "## Hetay olorcay useday orfay aay exttay uttonbay henway itay isay electedsay utbay otnay ocusedfay. Aay uttonbay isay electedsay ifay itay isay hetay urrentcay creensay oray referencepay aluevay."
# gui.rpy:43
# gui/game/gui.rpy:43
old "## The color used for a text button when it cannot be selected."
new "## Hetay olorcay useday orfay aay exttay uttonbay henway itay annotcay ebay electedsay."
# gui.rpy:46
# gui/game/gui.rpy:46
old "## Colors used for the portions of bars that are not filled in. These are not used directly, but are used when re-generating bar image files."
new "## Olorscay useday orfay hetay ortionspay ofay arsbay hattay areay otnay illedfay inay. Hesetay areay otnay useday irectlyday, utbay areay useday henway eray-eneratinggay arbay imageay ilesfay."
# gui.rpy:51
# gui/game/gui.rpy:51
old "## The colors used for dialogue and menu choice text."
new "## Hetay olorscay useday orfay ialogueday anday enumay oicechay exttay."
# gui.rpy:56
# gui/game/gui.rpy:56
old "## Fonts and Font Sizes"
new "## Ontsfay anday Ontfay Izessay"
# gui.rpy:58
# gui/game/gui.rpy:58
old "## The font used for in-game text."
new "## Hetay ontfay useday orfay inay-amegay exttay."
# gui.rpy:61
# gui/game/gui.rpy:61
old "## The font used for character names."
new "## Hetay ontfay useday orfay aracterchay amesnay."
# gui.rpy:64
# gui/game/gui.rpy:64
old "## The font used for out-of-game text."
new "## Hetay ontfay useday orfay outay-ofay-amegay exttay."
# gui.rpy:67
# gui/game/gui.rpy:67
old "## The size of normal dialogue text."
new "## Hetay izesay ofay ormalnay ialogueday exttay."
# gui.rpy:70
# gui/game/gui.rpy:70
old "## The size of character names."
new "## Hetay izesay ofay aracterchay amesnay."
# gui.rpy:73
# gui/game/gui.rpy:73
old "## The size of text in the game's user interface."
new "## Hetay izesay ofay exttay inay hetay amegay'say useray interfaceay."
# gui.rpy:76
# gui/game/gui.rpy:76
old "## The size of labels in the game's user interface."
new "## Hetay izesay ofay abelslay inay hetay amegay'say useray interfaceay."
# gui.rpy:79
# gui/game/gui.rpy:79
old "## The size of text on the notify screen."
new "## Hetay izesay ofay exttay onay hetay otifynay creensay."
# gui.rpy:82
# gui/game/gui.rpy:82
old "## The size of the game's title."
new "## Hetay izesay ofay hetay amegay'say itletay."
# gui.rpy:86
# gui/game/gui.rpy:86
old "## Main and Game Menus"
new "## Ainmay anday Amegay Enusmay"
# gui.rpy:88
# gui/game/gui.rpy:88
old "## The images used for the main and game menus."
new "## Hetay imagesay useday orfay hetay ainmay anday amegay enusmay."
# gui.rpy:93
# gui/game/gui.rpy:93
old "## Dialogue"
new "## Ialogueday"
# gui.rpy:95
# gui/game/gui.rpy:95
old "## These variables control how dialogue is displayed on the screen one line at a time."
new "## Hesetay ariablesvay ontrolcay owhay ialogueday isay isplayedday onay hetay creensay oneay inelay atay aay imetay."
# gui.rpy:98
# gui/game/gui.rpy:98
old "## The height of the textbox containing dialogue."
new "## Hetay eighthay ofay hetay extboxtay ontainingcay ialogueday."
# gui.rpy:101
# gui/game/gui.rpy:101
old "## The placement of the textbox vertically on the screen. 0.0 is the top, 0.5 is center, and 1.0 is the bottom."
new "## Hetay acementplay ofay hetay extboxtay erticallyvay onay hetay creensay. 0ay.0ay isay hetay optay, 0ay.5ay isay entercay, anday 1ay.0ay isay hetay ottombay."
# gui.rpy:106
# gui/game/gui.rpy:106
old "## The placement of the speaking character's name, relative to the textbox. These can be a whole number of pixels from the left or top, or 0.5 to center."
new "## Hetay acementplay ofay hetay peakingsay aracterchay'say amenay, elativeray otay hetay extboxtay. Hesetay ancay ebay aay holeway umbernay ofay ixelspay omfray hetay eftlay oray optay, oray 0ay.5ay otay entercay."
# gui.rpy:111
# gui/game/gui.rpy:111
old "## The horizontal alignment of the character's name. This can be 0.0 for left-aligned, 0.5 for centered, and 1.0 for right-aligned."
new "## Hetay orizontalhay alignmentay ofay hetay aracterchay'say amenay. Histay ancay ebay 0ay.0ay orfay eftlay-aligneday, 0ay.5ay orfay enteredcay, anday 1ay.0ay orfay ightray-aligneday."
# gui.rpy:115
# gui/game/gui.rpy:115
old "## The width, height, and borders of the box containing the character's name, or None to automatically size it."
new "## Hetay idthway, eighthay, anday ordersbay ofay hetay oxbay ontainingcay hetay aracterchay'say amenay, oray Onenay otay automaticallyay izesay itay."
# gui.rpy:120
# gui/game/gui.rpy:120
old "## The borders of the box containing the character's name, in left, top, right, bottom order."
new "## Hetay ordersbay ofay hetay oxbay ontainingcay hetay aracterchay'say amenay, inay eftlay, optay, ightray, ottombay orderay."
# gui.rpy:124
# gui/game/gui.rpy:124
old "## If True, the background of the namebox will be tiled, if False, the background of the namebox will be scaled."
new "## Fiay Ruetay, hetay ackgroundbay ofay hetay ameboxnay illway ebay iledtay, ifay Alsefay, hetay ackgroundbay ofay hetay ameboxnay illway ebay caledsay."
# gui.rpy:129
# gui/game/gui.rpy:129
old "## The placement of dialogue relative to the textbox. These can be a whole number of pixels relative to the left or top side of the textbox, or 0.5 to center."
new "## Hetay acementplay ofay ialogueday elativeray otay hetay extboxtay. Hesetay ancay ebay aay holeway umbernay ofay ixelspay elativeray otay hetay eftlay oray optay idesay ofay hetay extboxtay, oray 0ay.5ay otay entercay."
# gui.rpy:135
# gui/game/gui.rpy:135
old "## The maximum width of dialogue text, in pixels."
new "## Hetay aximummay idthway ofay ialogueday exttay, inay ixelspay."
# gui.rpy:138
# gui/game/gui.rpy:138
old "## The horizontal alignment of the dialogue text. This can be 0.0 for left-aligned, 0.5 for centered, and 1.0 for right-aligned."
new "## Hetay orizontalhay alignmentay ofay hetay ialogueday exttay. Histay ancay ebay 0ay.0ay orfay eftlay-aligneday, 0ay.5ay orfay enteredcay, anday 1ay.0ay orfay ightray-aligneday."
# gui.rpy:143
# gui/game/gui.rpy:143
old "## Buttons"
new "## Uttonsbay"
# gui.rpy:145
# gui/game/gui.rpy:145
old "## These variables, along with the image files in gui/button, control aspects of how buttons are displayed."
new "## Hesetay ariablesvay, alongay ithway hetay imageay ilesfay inay uigay/uttonbay, ontrolcay aspectsay ofay owhay uttonsbay areay isplayedday."
# gui.rpy:148
# gui/game/gui.rpy:148
old "## The width and height of a button, in pixels. If None, Ren'Py computes a size."
new "## Hetay idthway anday eighthay ofay aay uttonbay, inay ixelspay. Fiay Onenay, Enray'Ypay omputescay aay izesay."
# gui.rpy:152
# gui/game/gui.rpy:152
old "## The borders on each side of the button, in left, top, right, bottom order."
new "## Hetay ordersbay onay eachay idesay ofay hetay uttonbay, inay eftlay, optay, ightray, ottombay orderay."
# gui.rpy:155
# gui/game/gui.rpy:155
old "## If True, the background image will be tiled. If False, the background image will be linearly scaled."
new "## Fiay Ruetay, hetay ackgroundbay imageay illway ebay iledtay. Fiay Alsefay, hetay ackgroundbay imageay illway ebay inearlylay caledsay."
# gui.rpy:159
# gui/game/gui.rpy:159
old "## The font used by the button."
new "## Hetay ontfay useday ybay hetay uttonbay."
# gui.rpy:162
# gui/game/gui.rpy:162
old "## The size of the text used by the button."
new "## Hetay izesay ofay hetay exttay useday ybay hetay uttonbay."
# gui.rpy:165
# gui/game/gui.rpy:165
old "## The color of button text in various states."
new "## Hetay olorcay ofay uttonbay exttay inay ariousvay atesstay."
# gui.rpy:171
# gui/game/gui.rpy:171
old "## The horizontal alignment of the button text. (0.0 is left, 0.5 is center, 1.0 is right)."
new "## Hetay orizontalhay alignmentay ofay hetay uttonbay exttay. (0ay.0ay isay eftlay, 0ay.5ay isay entercay, 1ay.0ay isay ightray)."
# gui.rpy:176
# gui/game/gui.rpy:176
old "## These variables override settings for different kinds of buttons. Please see the gui documentation for the kinds of buttons available, and what each is used for."
new "## Hesetay ariablesvay overrideay ettingssay orfay ifferentday indskay ofay uttonsbay. Leasepay eesay hetay uigay ocumentationday orfay hetay indskay ofay uttonsbay availableay, anday hatway eachay isay useday orfay."
# gui.rpy:180
# gui/game/gui.rpy:180
old "## These customizations are used by the default interface:"
new "## Hesetay ustomizationscay areay useday ybay hetay efaultday interfaceay:"
# gui.rpy:195
# gui/game/gui.rpy:195
old "## You can also add your own customizations, by adding properly-named variables. For example, you can uncomment the following line to set the width of a navigation button."
new "## Ouyay ancay alsoay adday ouryay ownay ustomizationscay, ybay addingay roperlypay-amednay ariablesvay. Orfay exampleay, ouyay ancay uncommentay hetay ollowingfay inelay otay etsay hetay idthway ofay aay avigationnay uttonbay."
# gui.rpy:202
# gui/game/gui.rpy:202
old "## Choice Buttons"
new "## Hoicecay Uttonsbay"
# gui.rpy:204
# gui/game/gui.rpy:204
old "## Choice buttons are used in the in-game menus."
new "## Hoicecay uttonsbay areay useday inay hetay inay-amegay enusmay."
# gui.rpy:218
# gui/game/gui.rpy:218
old "## File Slot Buttons"
new "## Ilefay Lotsay Uttonsbay"
# gui.rpy:220
# gui/game/gui.rpy:220
old "## A file slot button is a special kind of button. It contains a thumbnail image, and text describing the contents of the save slot. A save slot uses image files in gui/button, like the other kinds of buttons."
new "## Aay ilefay otslay uttonbay isay aay pecialsay indkay ofay uttonbay. Tiay ontainscay aay humbnailtay imageay, anday exttay escribingday hetay ontentscay ofay hetay avesay otslay. Aay avesay otslay usesay imageay ilesfay inay uigay/uttonbay, ikelay hetay otheray indskay ofay uttonsbay."
# gui.rpy:224
# gui/game/gui.rpy:224
old "## The save slot button."
new "## Hetay avesay otslay uttonbay."
# gui.rpy:234
# gui/game/gui.rpy:234
old "## The width and height of thumbnails used by the save slots."
new "## Hetay idthway anday eighthay ofay humbnailstay useday ybay hetay avesay otsslay."
# gui.rpy:238
# gui/game/gui.rpy:238
old "## The number of columns and rows in the grid of save slots."
new "## Hetay umbernay ofay olumnscay anday owsray inay hetay idgray ofay avesay otsslay."
# gui.rpy:243
# gui/game/gui.rpy:243
old "## Positioning and Spacing"
new "## Ositioningpay anday Pacingsay"
# gui.rpy:245
# gui/game/gui.rpy:245
old "## These variables control the positioning and spacing of various user interface elements."
new "## Hesetay ariablesvay ontrolcay hetay ositioningpay anday pacingsay ofay ariousvay useray interfaceay elementsay."
# gui.rpy:248
# gui/game/gui.rpy:248
old "## The position of the left side of the navigation buttons, relative to the left side of the screen."
new "## Hetay ositionpay ofay hetay eftlay idesay ofay hetay avigationnay uttonsbay, elativeray otay hetay eftlay idesay ofay hetay creensay."
# gui.rpy:252
# gui/game/gui.rpy:252
old "## The vertical position of the skip indicator."
new "## Hetay erticalvay ositionpay ofay hetay kipsay indicatoray."
# gui.rpy:255
# gui/game/gui.rpy:255
old "## The vertical position of the notify screen."
new "## Hetay erticalvay ositionpay ofay hetay otifynay creensay."
# gui.rpy:258
# gui/game/gui.rpy:258
old "## The spacing between menu choices."
new "## Hetay pacingsay etweenbay enumay oiceschay."
# gui.rpy:261
# gui/game/gui.rpy:261
old "## Buttons in the navigation section of the main and game menus."
new "## Uttonsbay inay hetay avigationnay ectionsay ofay hetay ainmay anday amegay enusmay."
# gui.rpy:264
# gui/game/gui.rpy:264
old "## Controls the amount of spacing between preferences."
new "## Ontrolscay hetay amountay ofay pacingsay etweenbay referencespay."
# gui.rpy:267
# gui/game/gui.rpy:267
old "## Controls the amount of spacing between preference buttons."
new "## Ontrolscay hetay amountay ofay pacingsay etweenbay referencepay uttonsbay."
# gui.rpy:270
# gui/game/gui.rpy:270
old "## The spacing between file page buttons."
new "## Hetay pacingsay etweenbay ilefay agepay uttonsbay."
# gui.rpy:273
# gui/game/gui.rpy:273
old "## The spacing between file slots."
new "## Hetay pacingsay etweenbay ilefay otsslay."
# gui.rpy:276
# gui/game/gui.rpy:276
old "## The position of the main menu text."
new "## Hetay ositionpay ofay hetay ainmay enumay exttay."
# gui.rpy:280
# gui/game/gui.rpy:280
old "## Frames"
new "## Ramesfay"
# gui.rpy:282
# gui/game/gui.rpy:282
old "## These variables control the look of frames that can contain user interface components when an overlay or window is not present."
new "## Hesetay ariablesvay ontrolcay hetay ooklay ofay amesfray hattay ancay ontaincay useray interfaceay omponentscay henway anay overlayay oray indowway isay otnay resentpay."
# gui.rpy:285
# gui/game/gui.rpy:285
old "## Generic frames."
new "## Enericgay amesfray."
# gui.rpy:288
# gui/game/gui.rpy:288
old "## The frame that is used as part of the confirm screen."
new "## Hetay amefray hattay isay useday asay artpay ofay hetay onfirmcay creensay."
# gui.rpy:291
# gui/game/gui.rpy:291
old "## The frame that is used as part of the skip screen."
new "## Hetay amefray hattay isay useday asay artpay ofay hetay kipsay creensay."
# gui.rpy:294
# gui/game/gui.rpy:294
old "## The frame that is used as part of the notify screen."
new "## Hetay amefray hattay isay useday asay artpay ofay hetay otifynay creensay."
# gui.rpy:297
# gui/game/gui.rpy:297
old "## Should frame backgrounds be tiled?"
new "## Houldsay amefray ackgroundsbay ebay iledtay?"
# gui.rpy:301
# gui/game/gui.rpy:301
old "## Bars, Scrollbars, and Sliders"
new "## Arsbay, Crollbarssay, anday Liderssay"
# gui.rpy:303
# gui/game/gui.rpy:303
old "## These control the look and size of bars, scrollbars, and sliders."
new "## Hesetay ontrolcay hetay ooklay anday izesay ofay arsbay, crollbarssay, anday idersslay."
# gui.rpy:305
# gui/game/gui.rpy:305
old "## The default GUI only uses sliders and vertical scrollbars. All of the other bars are only used in creator-written screens."
new "## Hetay efaultday Uigay onlyay usesay idersslay anday erticalvay crollbarssay. Llaay ofay hetay otheray arsbay areay onlyay useday inay reatorcay-rittenway creenssay."
# gui.rpy:308
# gui/game/gui.rpy:308
old "## The height of horizontal bars, scrollbars, and sliders. The width of vertical bars, scrollbars, and sliders."
new "## Hetay eighthay ofay orizontalhay arsbay, crollbarssay, anday idersslay. Hetay idthway ofay erticalvay arsbay, crollbarssay, anday idersslay."
# gui.rpy:314
# gui/game/gui.rpy:314
old "## True if bar images should be tiled. False if they should be linearly scaled."
new "## Ruetay ifay arbay imagesay ouldshay ebay iledtay. Alsefay ifay heytay ouldshay ebay inearlylay caledsay."
# gui.rpy:319
# gui/game/gui.rpy:319
old "## Horizontal borders."
new "## Orizontalhay ordersbay."
# gui.rpy:324
# gui/game/gui.rpy:324
old "## Vertical borders."
new "## Erticalvay ordersbay."
# gui.rpy:329
# gui/game/gui.rpy:329
old "## What to do with unscrollable scrollbars in the gui. \"hide\" hides them, while None shows them."
new "## Hatway otay oday ithway unscrollableay crollbarssay inay hetay uigay. \"idehay\" ideshay hemtay, hileway Onenay owsshay hemtay."
# gui.rpy:334
# gui/game/gui.rpy:334
old "## History"
new "## Istoryhay"
# gui.rpy:336
# gui/game/gui.rpy:336
old "## The history screen displays dialogue that the player has already dismissed."
new "## Hetay istoryhay creensay isplaysday ialogueday hattay hetay ayerplay ashay alreadyay ismissedday."
# gui.rpy:338
# gui/game/gui.rpy:338
old "## The number of blocks of dialogue history Ren'Py will keep."
new "## Hetay umbernay ofay ocksblay ofay ialogueday istoryhay Enray'Ypay illway eepkay."
# gui.rpy:341
# gui/game/gui.rpy:341
old "## The height of a history screen entry, or None to make the height variable at the cost of performance."
new "## Hetay eighthay ofay aay istoryhay creensay entryay, oray Onenay otay akemay hetay eighthay ariablevay atay hetay ostcay ofay erformancepay."
# gui.rpy:345
# gui/game/gui.rpy:345
old "## The position, width, and alignment of the label giving the name of the speaking character."
new "## Hetay ositionpay, idthway, anday alignmentay ofay hetay abellay ivinggay hetay amenay ofay hetay peakingsay aracterchay."
# gui.rpy:352
# gui/game/gui.rpy:352
old "## The position, width, and alignment of the dialogue text."
new "## Hetay ositionpay, idthway, anday alignmentay ofay hetay ialogueday exttay."
# gui.rpy:359
# gui/game/gui.rpy:359
old "## NVL-Mode"
new "## Vlnay-Odemay"
# gui.rpy:361
# gui/game/gui.rpy:361
old "## The NVL-mode screen displays the dialogue spoken by NVL-mode characters."
new "## Hetay Vlnay-odemay creensay isplaysday hetay ialogueday pokensay ybay Vlnay-odemay aracterschay."
# gui.rpy:363
# gui/game/gui.rpy:363
old "## The borders of the background of the NVL-mode background window."
new "## Hetay ordersbay ofay hetay ackgroundbay ofay hetay Vlnay-odemay ackgroundbay indowway."
# gui.rpy:366
# gui/game/gui.rpy:366
old "## The maximum number of NVL-mode entries Ren'Py will display. When more entries than this are to be show, the oldest entry will be removed."
new "## Hetay aximummay umbernay ofay Vlnay-odemay entriesay Enray'Ypay illway isplayday. Henway oremay entriesay hantay histay areay otay ebay owshay, hetay oldestay entryay illway ebay emovedray."
# gui.rpy:370
# gui/game/gui.rpy:370
old "## The height of an NVL-mode entry. Set this to None to have the entries dynamically adjust height."
new "## Hetay eighthay ofay anay Vlnay-odemay entryay. Etsay histay otay Onenay otay avehay hetay entriesay ynamicallyday adjustay eighthay."
# gui.rpy:374
# gui/game/gui.rpy:374
old "## The spacing between NVL-mode entries when gui.nvl_height is None, and between NVL-mode entries and an NVL-mode menu."
new "## Hetay pacingsay etweenbay Vlnay-odemay entriesay henway uigay.vl_heightnay isay Onenay, anday etweenbay Vlnay-odemay entriesay anday anay Vlnay-odemay enumay."
# gui.rpy:391
# gui/game/gui.rpy:391
old "## The position, width, and alignment of nvl_thought text (the text said by the nvl_narrator character.)"
new "## Hetay ositionpay, idthway, anday alignmentay ofay vl_thoughtnay exttay (hetay exttay aidsay ybay hetay vl_narratornay aracterchay.)"
# gui.rpy:398
# gui/game/gui.rpy:398
old "## The position of nvl menu_buttons."
new "## Hetay ositionpay ofay vlnay enu_buttonsmay."
# gui.rpy:402
# gui/game/gui.rpy:402
old "## Localization"
new "## Ocalizationlay"
# gui.rpy:404
# gui/game/gui.rpy:404
old "## This controls where a line break is permitted. The default is suitable for most languages. A list of available values can be found at https://www.renpy.org/doc/html/style_properties.html#style-property-language"
new "## Histay ontrolscay hereway aay inelay eakbray isay ermittedpay. Hetay efaultday isay uitablesay orfay ostmay anguageslay. Aay istlay ofay availableay aluesvay ancay ebay oundfay atay ttpshay://wwway.enpyray.orgay/ocday/tmlhay/yle_propertiesstay.tmlhay#ylestay-ropertypay-anguagelay"
# gui.rpy:412
# gui/game/gui.rpy:412
old "## Mobile devices"
new "## Obilemay evicesday"
# gui.rpy:417
# gui/game/gui.rpy:417
old "## This increases the size of the quick buttons to make them easier to touch on tablets and phones."
new "## Histay increasesay hetay izesay ofay hetay uickqay uttonsbay otay akemay hemtay easieray otay ouchtay onay abletstay anday onesphay."
# gui.rpy:423
# gui/game/gui.rpy:423
old "## This changes the size and spacing of various GUI elements to ensure they are easily visible on phones."
new "## Histay angeschay hetay izesay anday pacingsay ofay ariousvay Uigay elementsay otay ensureay heytay areay easilyay isiblevay onay onesphay."
# gui.rpy:427
# gui/game/gui.rpy:427
old "## Font sizes."
new "## Ontfay izessay."
# gui.rpy:435
# gui/game/gui.rpy:435
old "## Adjust the location of the textbox."
new "## Djustaay hetay ocationlay ofay hetay extboxtay."
# gui.rpy:441
# gui/game/gui.rpy:441
old "## Change the size and spacing of various things."
new "## Hangecay hetay izesay anday pacingsay ofay ariousvay hingstay."
# gui.rpy:454
# gui/game/gui.rpy:454
old "## File button layout."
new "## Ilefay uttonbay ayoutlay."
# gui.rpy:458
# gui/game/gui.rpy:458
old "## NVL-mode."
new "## Vlnay-odemay."
File diff suppressed because it is too large Load Diff
+6 -6
View File
@@ -1,27 +1,27 @@
translate piglatin strings:
# _layout/classic_joystick_preferences.rpym:94
# renpy/common/_layout/classic_joystick_preferences.rpym:94
old "Joystick Mapping"
new "Oystickjay Appingmay"
# _layout/classic_load_save.rpym:138
# renpy/common/_layout/classic_load_save.rpym:138
old "Empty Slot."
new "Mptyeay Lotsay."
# _layout/classic_load_save.rpym:170
# renpy/common/_layout/classic_load_save.rpym:170
old "a"
new "aay"
# _layout/classic_load_save.rpym:179
# renpy/common/_layout/classic_load_save.rpym:179
old "q"
new "qay"
# _compat/gamemenu.rpym:355
# renpy/common/_compat/gamemenu.rpym:355
old "Previous"
new "Reviouspay"
# _compat/gamemenu.rpym:362
# renpy/common/_compat/gamemenu.rpym:362
old "Next"
new "Extnay"
+50 -50
View File
@@ -1,203 +1,203 @@
translate piglatin strings:
# options.rpy:1
# gui/game/options.rpy:1
old "## This file contains options that can be changed to customize your game."
new "## Histay ilefay ontainscay optionsay hattay ancay ebay angedchay otay ustomizecay ouryay amegay."
# options.rpy:4
# gui/game/options.rpy:4
old "## Lines beginning with two '#' marks are comments, and you shouldn't uncomment them. Lines beginning with a single '#' mark are commented-out code, and you may want to uncomment them when appropriate."
new "## Ineslay eginningbay ithway wotay '#' arksmay areay ommentscay, anday ouyay ouldnshay'tay uncommentay hemtay. Ineslay eginningbay ithway aay inglesay '#' arkmay areay ommentedcay-outay odecay, anday ouyay aymay antway otay uncommentay hemtay henway appropriateay."
# options.rpy:10
# gui/game/options.rpy:10
old "## Basics"
new "## Asicsbay"
# options.rpy:12
# gui/game/options.rpy:12
old "## A human-readable name of the game. This is used to set the default window title, and shows up in the interface and error reports."
new "## Aay umanhay-eadableray amenay ofay hetay amegay. Histay isay useday otay etsay hetay efaultday indowway itletay, anday owsshay upay inay hetay interfaceay anday erroray eportsray."
# options.rpy:15
# gui/game/options.rpy:15
old "## The _() surrounding the string marks it as eligible for translation."
new "## Hetay _ay() urroundingsay hetay ringstay arksmay itay asay eligibleay orfay anslationtray."
# options.rpy:17
# gui/game/options.rpy:17
old "Ren'Py 7 Default GUI"
new "Enray'Ypay 7ay Efaultday Uigay"
# options.rpy:20
# gui/game/options.rpy:20
old "## Determines if the title given above is shown on the main menu screen. Set this to False to hide the title."
new "## Eterminesday ifay hetay itletay ivengay aboveay isay ownshay onay hetay ainmay enumay creensay. Etsay histay otay Alsefay otay idehay hetay itletay."
# options.rpy:26
# gui/game/options.rpy:26
old "## The version of the game."
new "## Hetay ersionvay ofay hetay amegay."
# options.rpy:31
# gui/game/options.rpy:31
old "## Text that is placed on the game's about screen. Place the text between the triple-quotes, and leave a blank line between paragraphs."
new "## Exttay hattay isay acedplay onay hetay amegay'say aboutay creensay. Lacepay hetay exttay etweenbay hetay ipletray-uotesqay, anday eavelay aay ankblay inelay etweenbay aragraphspay."
# options.rpy:38
# gui/game/options.rpy:38
old "## A short name for the game used for executables and directories in the built distribution. This must be ASCII-only, and must not contain spaces, colons, or semicolons."
new "## Aay ortshay amenay orfay hetay amegay useday orfay executablesay anday irectoriesday inay hetay uiltbay istributionday. Histay ustmay ebay Sciiaay-onlyay, anday ustmay otnay ontaincay pacessay, olonscay, oray emicolonssay."
# options.rpy:45
# gui/game/options.rpy:45
old "## Sounds and music"
new "## Oundssay anday usicmay"
# options.rpy:47
# gui/game/options.rpy:47
old "## These three variables control which mixers are shown to the player by default. Setting one of these to False will hide the appropriate mixer."
new "## Hesetay hreetay ariablesvay ontrolcay hichway ixersmay areay ownshay otay hetay ayerplay ybay efaultday. Ettingsay oneay ofay hesetay otay Alsefay illway idehay hetay appropriateay ixermay."
# options.rpy:56
# gui/game/options.rpy:56
old "## To allow the user to play a test sound on the sound or voice channel, uncomment a line below and use it to set a sample sound to play."
new "## Otay alloway hetay useray otay ayplay aay esttay oundsay onay hetay oundsay oray oicevay annelchay, uncommentay aay inelay elowbay anday useay itay otay etsay aay amplesay oundsay otay ayplay."
# options.rpy:63
# gui/game/options.rpy:63
old "## Uncomment the following line to set an audio file that will be played while the player is at the main menu. This file will continue playing into the game, until it is stopped or another file is played."
new "## Ncommentuay hetay ollowingfay inelay otay etsay anay audioay ilefay hattay illway ebay ayedplay hileway hetay ayerplay isay atay hetay ainmay enumay. Histay ilefay illway ontinuecay ayingplay intoay hetay amegay, untilay itay isay oppedstay oray anotheray ilefay isay ayedplay."
# options.rpy:70
# gui/game/options.rpy:70
old "## Transitions"
new "## Ransitionstay"
# options.rpy:72
# gui/game/options.rpy:72
old "## These variables set transitions that are used when certain events occur. Each variable should be set to a transition, or None to indicate that no transition should be used."
new "## Hesetay ariablesvay etsay ansitionstray hattay areay useday henway ertaincay eventsay occuray. Acheay ariablevay ouldshay ebay etsay otay aay ansitiontray, oray Onenay otay indicateay hattay onay ansitiontray ouldshay ebay useday."
# options.rpy:76
# gui/game/options.rpy:76
old "## Entering or exiting the game menu."
new "## Nteringeay oray exitingay hetay amegay enumay."
# options.rpy:82
# gui/game/options.rpy:82
old "## Between screens of the game menu."
new "## Etweenbay creenssay ofay hetay amegay enumay."
# options.rpy:87
# gui/game/options.rpy:87
old "## A transition that is used after a game has been loaded."
new "## Aay ansitiontray hattay isay useday afteray aay amegay ashay eenbay oadedlay."
# options.rpy:92
# gui/game/options.rpy:92
old "## Used when entering the main menu after the game has ended."
new "## Seduay henway enteringay hetay ainmay enumay afteray hetay amegay ashay endeday."
# options.rpy:97
# gui/game/options.rpy:97
old "## A variable to set the transition used when the game starts does not exist. Instead, use a with statement after showing the initial scene."
new "## Aay ariablevay otay etsay hetay ansitiontray useday henway hetay amegay artsstay oesday otnay existay. Nsteadiay, useay aay ithway atementstay afteray owingshay hetay initialay cenesay."
# options.rpy:102
# gui/game/options.rpy:102
old "## Window management"
new "## Indowway anagementmay"
# options.rpy:104
# gui/game/options.rpy:104
old "## This controls when the dialogue window is displayed. If \"show\", it is always displayed. If \"hide\", it is only displayed when dialogue is present. If \"auto\", the window is hidden before scene statements and shown again once dialogue is displayed."
new "## Histay ontrolscay henway hetay ialogueday indowway isay isplayedday. Fiay \"owshay\", itay isay alwaysay isplayedday. Fiay \"idehay\", itay isay onlyay isplayedday henway ialogueday isay resentpay. Fiay \"autoay\", hetay indowway isay iddenhay eforebay cenesay atementsstay anday ownshay againay onceay ialogueday isay isplayedday."
# options.rpy:109
# gui/game/options.rpy:109
old "## After the game has started, this can be changed with the \"window show\", \"window hide\", and \"window auto\" statements."
new "## Fteraay hetay amegay ashay artedstay, histay ancay ebay angedchay ithway hetay \"indowway owshay\", \"indowway idehay\", anday \"indowway autoay\" atementsstay."
# options.rpy:115
# gui/game/options.rpy:115
old "## Transitions used to show and hide the dialogue window"
new "## Ransitionstay useday otay owshay anday idehay hetay ialogueday indowway"
# options.rpy:121
# gui/game/options.rpy:121
old "## Preference defaults"
new "## Referencepay efaultsday"
# options.rpy:123
# gui/game/options.rpy:123
old "## Controls the default text speed. The default, 0, is infinite, while any other number is the number of characters per second to type out."
new "## Ontrolscay hetay efaultday exttay peedsay. Hetay efaultday, 0ay, isay infiniteay, hileway anyay otheray umbernay isay hetay umbernay ofay aracterschay erpay econdsay otay ypetay outay."
# options.rpy:129
# gui/game/options.rpy:129
old "## The default auto-forward delay. Larger numbers lead to longer waits, with 0 to 30 being the valid range."
new "## Hetay efaultday autoay-orwardfay elayday. Argerlay umbersnay eadlay otay ongerlay aitsway, ithway 0ay otay 03ay eingbay hetay alidvay angeray."
# options.rpy:135
# gui/game/options.rpy:135
old "## Save directory"
new "## Avesay irectoryday"
# options.rpy:137
# gui/game/options.rpy:137
old "## Controls the platform-specific place Ren'Py will place the save files for this game. The save files will be placed in:"
new "## Ontrolscay hetay atformplay-pecificsay aceplay Enray'Ypay illway aceplay hetay avesay ilesfay orfay histay amegay. Hetay avesay ilesfay illway ebay acedplay inay:"
# options.rpy:140
# gui/game/options.rpy:140
old "## Windows: %APPDATA\\RenPy\\<config.save_directory>"
new "## Indowsway: %Ppdataaay\\Enpyray\\<onfigcay.ave_directorysay>"
# options.rpy:142
# gui/game/options.rpy:142
old "## Macintosh: $HOME/Library/RenPy/<config.save_directory>"
new "## Acintoshmay: $Omehay/Ibrarylay/Enpyray/<onfigcay.ave_directorysay>"
# options.rpy:144
# gui/game/options.rpy:144
old "## Linux: $HOME/.renpy/<config.save_directory>"
new "## Inuxlay: $Omehay/.enpyray/<onfigcay.ave_directorysay>"
# options.rpy:146
# gui/game/options.rpy:146
old "## This generally should not be changed, and if it is, should always be a literal string, not an expression."
new "## Histay enerallygay ouldshay otnay ebay angedchay, anday ifay itay isay, ouldshay alwaysay ebay aay iterallay ringstay, otnay anay expressionay."
# options.rpy:152
# gui/game/options.rpy:152
old "## Icon"
new "## Coniay"
# options.rpy:154
# gui/game/options.rpy:154
old "## The icon displayed on the taskbar or dock."
new "## Hetay iconay isplayedday onay hetay askbartay oray ockday."
# options.rpy:159
# gui/game/options.rpy:159
old "## Build configuration"
new "## Uildbay onfigurationcay"
# options.rpy:161
# gui/game/options.rpy:161
old "## This section controls how Ren'Py turns your project into distribution files."
new "## Histay ectionsay ontrolscay owhay Enray'Ypay urnstay ouryay rojectpay intoay istributionday ilesfay."
# options.rpy:166
# gui/game/options.rpy:166
old "## The following functions take file patterns. File patterns are case- insensitive, and matched against the path relative to the base directory, with and without a leading /. If multiple patterns match, the first is used."
new "## Hetay ollowingfay unctionsfay aketay ilefay atternspay. Ilefay atternspay areay asecay- insensitiveay, anday atchedmay againstay hetay athpay elativeray otay hetay asebay irectoryday, ithway anday ithoutway aay eadinglay /. Fiay ultiplemay atternspay atchmay, hetay irstfay isay useday."
# options.rpy:171
# gui/game/options.rpy:171
old "## In a pattern:"
new "## Niay aay atternpay:"
# options.rpy:173
# gui/game/options.rpy:173
old "## / is the directory separator."
new "## / isay hetay irectoryday eparatorsay."
# options.rpy:175
# gui/game/options.rpy:175
old "## * matches all characters, except the directory separator."
new "## * atchesmay allay aracterschay, exceptay hetay irectoryday eparatorsay."
# options.rpy:177
# gui/game/options.rpy:177
old "## ** matches all characters, including the directory separator."
new "## ** atchesmay allay aracterschay, includingay hetay irectoryday eparatorsay."
# options.rpy:179
# gui/game/options.rpy:179
old "## For example, \"*.txt\" matches txt files in the base directory, \"game/**.ogg\" matches ogg files in the game directory or any of its subdirectories, and \"**.psd\" matches psd files anywhere in the project."
new "## Orfay exampleay, \"*.xttay\" atchesmay xttay ilesfay inay hetay asebay irectoryday, \"amegay/**.oggay\" atchesmay oggay ilesfay inay hetay amegay irectoryday oray anyay ofay itsay ubdirectoriessay, anday \"**.sdpay\" atchesmay sdpay ilesfay anywhereay inay hetay rojectpay."
# options.rpy:183
# gui/game/options.rpy:183
old "## Classify files as None to exclude them from the built distributions."
new "## Lassifycay ilesfay asay Onenay otay excludeay hemtay omfray hetay uiltbay istributionsday."
# options.rpy:191
# gui/game/options.rpy:191
old "## To archive files, classify them as 'archive'."
new "## Otay archiveay ilesfay, assifyclay hemtay asay 'archiveay'."
# options.rpy:196
# gui/game/options.rpy:196
old "## Files matching documentation patterns are duplicated in a mac app build, so they appear in both the app and the zip file."
new "## Ilesfay atchingmay ocumentationday atternspay areay uplicatedday inay aay acmay appay uildbay, osay heytay appearay inay othbay hetay appay anday hetay ipzay ilefay."
# options.rpy:202
# gui/game/options.rpy:202
old "## Set this to a string containing your Apple Developer ID Application to enable codesigning on the Mac. Be sure to change it to your own Apple-issued ID."
new "## Etsay histay otay aay ringstay ontainingcay ouryay Ppleaay Eveloperday Diay Pplicationaay otay enableay odesigningcay onay hetay Acmay. Ebay uresay otay angechay itay otay ouryay ownay Ppleaay-issueday Diay."
# options.rpy:209
# gui/game/options.rpy:209
old "## A Google Play license key is required to download expansion files and perform in-app purchases. It can be found on the \"Services & APIs\" page of the Google Play developer console."
new "## Aay Ooglegay Laypay icenselay eykay isay equiredray otay ownloadday expansionay ilesfay anday erformpay inay-appay urchasespay. Tiay ancay ebay oundfay onay hetay \"Ervicessay & Pisaay\" agepay ofay hetay Ooglegay Laypay eveloperday onsolecay."
# options.rpy:216
# gui/game/options.rpy:216
old "## The username and project name associated with an itch.io project, separated by a slash."
new "## Hetay usernameay anday rojectpay amenay associateday ithway anay itchay.ioay rojectpay, eparatedsay ybay aay ashslay."
+168 -168
View File
@@ -1,675 +1,675 @@
translate piglatin strings:
# screens.rpy:9
# gui/game/screens.rpy:9
old "## Styles"
new "## Tylessay"
# screens.rpy:81
# gui/game/screens.rpy:81
old "## In-game screens"
new "## Niay-amegay creenssay"
# screens.rpy:85
# gui/game/screens.rpy:85
old "## Say screen"
new "## Aysay creensay"
# screens.rpy:87
# gui/game/screens.rpy:87
old "## The say screen is used to display dialogue to the player. It takes two parameters, who and what, which are the name of the speaking character and the text to be displayed, respectively. (The who parameter can be None if no name is given.)"
new "## Hetay aysay creensay isay useday otay isplayday ialogueday otay hetay ayerplay. Tiay akestay wotay arameterspay, howay anday hatway, hichway areay hetay amenay ofay hetay peakingsay aracterchay anday hetay exttay otay ebay isplayedday, espectivelyray. (Hetay howay arameterpay ancay ebay Onenay ifay onay amenay isay ivengay.)"
# screens.rpy:92
# gui/game/screens.rpy:92
old "## This screen must create a text displayable with id \"what\", as Ren'Py uses this to manage text display. It can also create displayables with id \"who\" and id \"window\" to apply style properties."
new "## Histay creensay ustmay reatecay aay exttay isplayableday ithway iday \"hatway\", asay Enray'Ypay usesay histay otay anagemay exttay isplayday. Tiay ancay alsoay reatecay isplayablesday ithway iday \"howay\" anday iday \"indowway\" otay applyay ylestay ropertiespay."
# screens.rpy:96
# gui/game/screens.rpy:96
old "## https://www.renpy.org/doc/html/screen_special.html#say"
new "## ttpshay://wwway.enpyray.orgay/ocday/tmlhay/creen_specialsay.tmlhay#aysay"
# screens.rpy:114
# gui/game/screens.rpy:114
old "## If there's a side image, display it above the text. Do not display on the phone variant - there's no room."
new "## Fiay heretay'say aay idesay imageay, isplayday itay aboveay hetay exttay. Oday otnay isplayday onay hetay onephay ariantvay - heretay'say onay oomray."
# screens.rpy:120
# gui/game/screens.rpy:120
old "## Make the namebox available for styling through the Character object."
new "## Akemay hetay ameboxnay availableay orfay ylingstay hroughtay hetay Haractercay objectay."
# screens.rpy:164
# gui/game/screens.rpy:164
old "## Input screen"
new "## Nputiay creensay"
# screens.rpy:166
# gui/game/screens.rpy:166
old "## This screen is used to display renpy.input. The prompt parameter is used to pass a text prompt in."
new "## Histay creensay isay useday otay isplayday enpyray.inputay. Hetay romptpay arameterpay isay useday otay asspay aay exttay romptpay inay."
# screens.rpy:169
# gui/game/screens.rpy:169
old "## This screen must create an input displayable with id \"input\" to accept the various input parameters."
new "## Histay creensay ustmay reatecay anay inputay isplayableday ithway iday \"inputay\" otay acceptay hetay ariousvay inputay arameterspay."
# screens.rpy:172
# gui/game/screens.rpy:172
old "## https://www.renpy.org/doc/html/screen_special.html#input"
new "## ttpshay://wwway.enpyray.orgay/ocday/tmlhay/creen_specialsay.tmlhay#inputay"
# screens.rpy:199
# gui/game/screens.rpy:199
old "## Choice screen"
new "## Hoicecay creensay"
# screens.rpy:201
# gui/game/screens.rpy:201
old "## This screen is used to display the in-game choices presented by the menu statement. The one parameter, items, is a list of objects, each with caption and action fields."
new "## Histay creensay isay useday otay isplayday hetay inay-amegay oiceschay resentedpay ybay hetay enumay atementstay. Hetay oneay arameterpay, itemsay, isay aay istlay ofay objectsay, eachay ithway aptioncay anday actionay ieldsfay."
# screens.rpy:205
# gui/game/screens.rpy:205
old "## https://www.renpy.org/doc/html/screen_special.html#choice"
new "## ttpshay://wwway.enpyray.orgay/ocday/tmlhay/creen_specialsay.tmlhay#oicechay"
# screens.rpy:215
# gui/game/screens.rpy:215
old "## When this is true, menu captions will be spoken by the narrator. When false, menu captions will be displayed as empty buttons."
new "## Henway histay isay uetray, enumay aptionscay illway ebay pokensay ybay hetay arratornay. Henway alsefay, enumay aptionscay illway ebay isplayedday asay emptyay uttonsbay."
# screens.rpy:238
# gui/game/screens.rpy:238
old "## Quick Menu screen"
new "## Uickqay Enumay creensay"
# screens.rpy:240
# gui/game/screens.rpy:240
old "## The quick menu is displayed in-game to provide easy access to the out-of-game menus."
new "## Hetay uickqay enumay isay isplayedday inay-amegay otay rovidepay easyay accessay otay hetay outay-ofay-amegay enusmay."
# screens.rpy:245
# gui/game/screens.rpy:245
old "## Ensure this appears on top of other screens."
new "## Nsureeay histay appearsay onay optay ofay otheray creenssay."
# screens.rpy:256
# gui/game/screens.rpy:256
old "Back"
new "Ackbay"
# screens.rpy:257
# gui/game/screens.rpy:257
old "History"
new "Istoryhay"
# screens.rpy:258
# gui/game/screens.rpy:258
old "Skip"
new "Kipsay"
# screens.rpy:259
# gui/game/screens.rpy:259
old "Auto"
new "Utoaay"
# screens.rpy:260
# gui/game/screens.rpy:260
old "Save"
new "Avesay"
# screens.rpy:261
# gui/game/screens.rpy:261
old "Q.Save"
new "Qay.Avesay"
# screens.rpy:262
# gui/game/screens.rpy:262
old "Q.Load"
new "Qay.Oadlay"
# screens.rpy:263
# gui/game/screens.rpy:263
old "Prefs"
new "Refspay"
# screens.rpy:266
# gui/game/screens.rpy:266
old "## This code ensures that the quick_menu screen is displayed in-game, whenever the player has not explicitly hidden the interface."
new "## Histay odecay ensuresay hattay hetay uick_menuqay creensay isay isplayedday inay-amegay, heneverway hetay ayerplay ashay otnay explicitlyay iddenhay hetay interfaceay."
# screens.rpy:284
# gui/game/screens.rpy:284
old "## Main and Game Menu Screens"
new "## Ainmay anday Amegay Enumay Creenssay"
# screens.rpy:287
# gui/game/screens.rpy:287
old "## Navigation screen"
new "## Avigationnay creensay"
# screens.rpy:289
# gui/game/screens.rpy:289
old "## This screen is included in the main and game menus, and provides navigation to other menus, and to start the game."
new "## Histay creensay isay includeday inay hetay ainmay anday amegay enusmay, anday rovidespay avigationnay otay otheray enusmay, anday otay artstay hetay amegay."
# screens.rpy:304
# gui/game/screens.rpy:304
old "Start"
new "Tartsay"
# screens.rpy:312
# gui/game/screens.rpy:312
old "Load"
new "Oadlay"
# screens.rpy:314
# gui/game/screens.rpy:314
old "Preferences"
new "Referencespay"
# screens.rpy:318
# gui/game/screens.rpy:318
old "End Replay"
new "Ndeay Eplayray"
# screens.rpy:322
# gui/game/screens.rpy:322
old "Main Menu"
new "Ainmay Enumay"
# screens.rpy:324
# gui/game/screens.rpy:324
old "About"
new "Boutaay"
# screens.rpy:328
# gui/game/screens.rpy:328
old "## Help isn't necessary or relevant to mobile devices."
new "## Elphay isnay'tay ecessarynay oray elevantray otay obilemay evicesday."
# screens.rpy:329
# gui/game/screens.rpy:329
old "Help"
new "Elphay"
# screens.rpy:331
# gui/game/screens.rpy:331
old "## The quit button is banned on iOS and unnecessary on Android."
new "## Hetay uitqay uttonbay isay annedbay onay iOSay anday unnecessaryay onay Ndroidaay."
# screens.rpy:332
# gui/game/screens.rpy:332
old "Quit"
new "Uitqay"
# screens.rpy:346
# gui/game/screens.rpy:346
old "## Main Menu screen"
new "## Ainmay Enumay creensay"
# screens.rpy:348
# gui/game/screens.rpy:348
old "## Used to display the main menu when Ren'Py starts."
new "## Seduay otay isplayday hetay ainmay enumay henway Enray'Ypay artsstay."
# screens.rpy:350
# gui/game/screens.rpy:350
old "## https://www.renpy.org/doc/html/screen_special.html#main-menu"
new "## ttpshay://wwway.enpyray.orgay/ocday/tmlhay/creen_specialsay.tmlhay#ainmay-enumay"
# screens.rpy:354
# gui/game/screens.rpy:354
old "## This ensures that any other menu screen is replaced."
new "## Histay ensuresay hattay anyay otheray enumay creensay isay eplacedray."
# screens.rpy:361
# gui/game/screens.rpy:361
old "## This empty frame darkens the main menu."
new "## Histay emptyay amefray arkensday hetay ainmay enumay."
# screens.rpy:365
# gui/game/screens.rpy:365
old "## The use statement includes another screen inside this one. The actual contents of the main menu are in the navigation screen."
new "## Hetay useay atementstay includesay anotheray creensay insideay histay oneay. Hetay actualay ontentscay ofay hetay ainmay enumay areay inay hetay avigationnay creensay."
# screens.rpy:408
# gui/game/screens.rpy:408
old "## Game Menu screen"
new "## Amegay Enumay creensay"
# screens.rpy:410
# gui/game/screens.rpy:410
old "## This lays out the basic common structure of a game menu screen. It's called with the screen title, and displays the background, title, and navigation."
new "## Histay ayslay outay hetay asicbay ommoncay ructurestay ofay aay amegay enumay creensay. Tiay'say alledcay ithway hetay creensay itletay, anday isplaysday hetay ackgroundbay, itletay, anday avigationnay."
# screens.rpy:413
# gui/game/screens.rpy:413
old "## The scroll parameter can be None, or one of \"viewport\" or \"vpgrid\". When this screen is intended to be used with one or more children, which are transcluded (placed) inside it."
new "## Hetay crollsay arameterpay ancay ebay Onenay, oray oneay ofay \"iewportvay\" oray \"pgridvay\". Henway histay creensay isay intendeday otay ebay useday ithway oneay oray oremay ildrenchay, hichway areay anscludedtray (acedplay) insideay itay."
# screens.rpy:431
# gui/game/screens.rpy:431
old "## Reserve space for the navigation section."
new "## Eserveray pacesay orfay hetay avigationnay ectionsay."
# screens.rpy:473
# gui/game/screens.rpy:473
old "Return"
new "Eturnray"
# screens.rpy:536
# gui/game/screens.rpy:536
old "## About screen"
new "## Boutaay creensay"
# screens.rpy:538
# gui/game/screens.rpy:538
old "## This screen gives credit and copyright information about the game and Ren'Py."
new "## Histay creensay ivesgay reditcay anday opyrightcay informationay aboutay hetay amegay anday Enray'Ypay."
# screens.rpy:541
# gui/game/screens.rpy:541
old "## There's nothing special about this screen, and hence it also serves as an example of how to make a custom screen."
new "## Heretay'say othingnay pecialsay aboutay histay creensay, anday encehay itay alsoay ervessay asay anay exampleay ofay owhay otay akemay aay ustomcay creensay."
# screens.rpy:548
# gui/game/screens.rpy:548
old "## This use statement includes the game_menu screen inside this one. The vbox child is then included inside the viewport inside the game_menu screen."
new "## Histay useay atementstay includesay hetay ame_menugay creensay insideay histay oneay. Hetay boxvay ildchay isay hentay includeday insideay hetay iewportvay insideay hetay ame_menugay creensay."
# screens.rpy:558
# gui/game/screens.rpy:558
old "Version [config.version!t]\n"
new "Ersionvay [config.version!t]\n"
# screens.rpy:560
# gui/game/screens.rpy:560
old "## gui.about is usually set in options.rpy."
new "## uigay.aboutay isay usuallyay etsay inay optionsay.pyray."
# screens.rpy:564
# gui/game/screens.rpy:564
old "Made with {a=https://www.renpy.org/}Ren'Py{/a} [renpy.version_only].\n\n[renpy.license!t]"
new "Ademay ithway {a=https://www.renpy.org/}Enray'Ypay{/a} [renpy.version_only].\n\n[renpy.license!t]"
# screens.rpy:567
# gui/game/screens.rpy:567
old "## This is redefined in options.rpy to add text to the about screen."
new "## Histay isay edefinedray inay optionsay.pyray otay adday exttay otay hetay aboutay creensay."
# screens.rpy:579
# gui/game/screens.rpy:579
old "## Load and Save screens"
new "## Oadlay anday Avesay creenssay"
# screens.rpy:581
# gui/game/screens.rpy:581
old "## These screens are responsible for letting the player save the game and load it again. Since they share nearly everything in common, both are implemented in terms of a third screen, file_slots."
new "## Hesetay creenssay areay esponsibleray orfay ettinglay hetay ayerplay avesay hetay amegay anday oadlay itay againay. Incesay heytay areshay earlynay everythingay inay ommoncay, othbay areay implementeday inay ermstay ofay aay hirdtay creensay, ile_slotsfay."
# screens.rpy:585
# gui/game/screens.rpy:585
old "## https://www.renpy.org/doc/html/screen_special.html#save https://www.renpy.org/doc/html/screen_special.html#load"
new "## ttpshay://wwway.enpyray.orgay/ocday/tmlhay/creen_specialsay.tmlhay#avesay ttpshay://wwway.enpyray.orgay/ocday/tmlhay/creen_specialsay.tmlhay#oadlay"
# screens.rpy:604
# gui/game/screens.rpy:604
old "Page {}"
new "Agepay {}"
# screens.rpy:604
# gui/game/screens.rpy:604
old "Automatic saves"
new "Utomaticaay avessay"
# screens.rpy:604
# gui/game/screens.rpy:604
old "Quick saves"
new "Uickqay avessay"
# screens.rpy:610
# gui/game/screens.rpy:610
old "## This ensures the input will get the enter event before any of the buttons do."
new "## Histay ensuresay hetay inputay illway etgay hetay enteray eventay eforebay anyay ofay hetay uttonsbay oday."
# screens.rpy:614
# gui/game/screens.rpy:614
old "## The page name, which can be edited by clicking on a button."
new "## Hetay agepay amenay, hichway ancay ebay editeday ybay ickingclay onay aay uttonbay."
# screens.rpy:626
# gui/game/screens.rpy:626
old "## The grid of file slots."
new "## Hetay idgray ofay ilefay otsslay."
# screens.rpy:646
# gui/game/screens.rpy:646
old "{#file_time}%A, %B %d %Y, %H:%M"
new "{#file_time}%Aay, %Bay %day %Yay, %Hay:%May"
# screens.rpy:646
# gui/game/screens.rpy:646
old "empty slot"
new "emptyay otslay"
# screens.rpy:654
# gui/game/screens.rpy:654
old "## Buttons to access other pages."
new "## Uttonsbay otay accessay otheray agespay."
# screens.rpy:663
# gui/game/screens.rpy:663
old "<"
new "<"
# screens.rpy:666
# gui/game/screens.rpy:666
old "{#auto_page}A"
new "{#auto_page}Aay"
# screens.rpy:669
# gui/game/screens.rpy:669
old "{#quick_page}Q"
new "{#quick_page}Qay"
# screens.rpy:671
# gui/game/screens.rpy:671
old "## range(1, 10) gives the numbers from 1 to 9."
new "## angeray(1ay, 01ay) ivesgay hetay umbersnay omfray 1ay otay 9ay."
# screens.rpy:675
# gui/game/screens.rpy:675
old ">"
new ">"
# screens.rpy:710
# gui/game/screens.rpy:710
old "## Preferences screen"
new "## Referencespay creensay"
# screens.rpy:712
# gui/game/screens.rpy:712
old "## The preferences screen allows the player to configure the game to better suit themselves."
new "## Hetay referencespay creensay allowsay hetay ayerplay otay onfigurecay hetay amegay otay etterbay uitsay hemselvestay."
# screens.rpy:715
# gui/game/screens.rpy:715
old "## https://www.renpy.org/doc/html/screen_special.html#preferences"
new "## ttpshay://wwway.enpyray.orgay/ocday/tmlhay/creen_specialsay.tmlhay#referencespay"
# screens.rpy:732
# gui/game/screens.rpy:732
old "Display"
new "Isplayday"
# screens.rpy:733
# gui/game/screens.rpy:733
old "Window"
new "Indowway"
# screens.rpy:734
# gui/game/screens.rpy:734
old "Fullscreen"
new "Ullscreenfay"
# screens.rpy:738
# gui/game/screens.rpy:738
old "Rollback Side"
new "Ollbackray Idesay"
# screens.rpy:739
# gui/game/screens.rpy:739
old "Disable"
new "Isableday"
# screens.rpy:740
# gui/game/screens.rpy:740
old "Left"
new "Eftlay"
# screens.rpy:741
# gui/game/screens.rpy:741
old "Right"
new "Ightray"
# screens.rpy:746
# gui/game/screens.rpy:746
old "Unseen Text"
new "Nseenuay Exttay"
# screens.rpy:747
# gui/game/screens.rpy:747
old "After Choices"
new "Fteraay Hoicescay"
# screens.rpy:748
# gui/game/screens.rpy:748
old "Transitions"
new "Ransitionstay"
# screens.rpy:750
# gui/game/screens.rpy:750
old "## Additional vboxes of type \"radio_pref\" or \"check_pref\" can be added here, to add additional creator-defined preferences."
new "## Dditionalaay boxesvay ofay ypetay \"adio_prefray\" oray \"eck_prefchay\" ancay ebay addeday erehay, otay adday additionalay reatorcay-efinedday referencespay."
# screens.rpy:761
# gui/game/screens.rpy:761
old "Text Speed"
new "Exttay Peedsay"
# screens.rpy:765
# gui/game/screens.rpy:765
old "Auto-Forward Time"
new "Utoaay-Orwardfay Imetay"
# screens.rpy:772
# gui/game/screens.rpy:772
old "Music Volume"
new "Usicmay Olumevay"
# screens.rpy:779
# gui/game/screens.rpy:779
old "Sound Volume"
new "Oundsay Olumevay"
# screens.rpy:785
# gui/game/screens.rpy:785
old "Test"
new "Esttay"
# screens.rpy:789
# gui/game/screens.rpy:789
old "Voice Volume"
new "Oicevay Olumevay"
# screens.rpy:800
# gui/game/screens.rpy:800
old "Mute All"
new "Utemay Llaay"
# screens.rpy:876
# gui/game/screens.rpy:876
old "## History screen"
new "## Istoryhay creensay"
# screens.rpy:878
# gui/game/screens.rpy:878
old "## This is a screen that displays the dialogue history to the player. While there isn't anything special about this screen, it does have to access the dialogue history stored in _history_list."
new "## Histay isay aay creensay hattay isplaysday hetay ialogueday istoryhay otay hetay ayerplay. Hileway heretay isnay'tay anythingay pecialsay aboutay histay creensay, itay oesday avehay otay accessay hetay ialogueday istoryhay oredstay inay history_list_ay."
# screens.rpy:882
# gui/game/screens.rpy:882
old "## https://www.renpy.org/doc/html/history.html"
new "## ttpshay://wwway.enpyray.orgay/ocday/tmlhay/istoryhay.tmlhay"
# screens.rpy:888
# gui/game/screens.rpy:888
old "## Avoid predicting this screen, as it can be very large."
new "## Voidaay redictingpay histay creensay, asay itay ancay ebay eryvay argelay."
# screens.rpy:899
# gui/game/screens.rpy:899
old "## This lays things out properly if history_height is None."
new "## Histay ayslay hingstay outay roperlypay ifay istory_heighthay isay Onenay."
# screens.rpy:909
# gui/game/screens.rpy:909
old "## Take the color of the who text from the Character, if set."
new "## Aketay hetay olorcay ofay hetay howay exttay omfray hetay Haractercay, ifay etsay."
# screens.rpy:918
# gui/game/screens.rpy:918
old "The dialogue history is empty."
new "Hetay ialogueday istoryhay isay emptyay."
# screens.rpy:921
# gui/game/screens.rpy:921
old "## This determines what tags are allowed to be displayed on the history screen."
new "## Histay eterminesday hatway agstay areay alloweday otay ebay isplayedday onay hetay istoryhay creensay."
# screens.rpy:968
# gui/game/screens.rpy:968
old "## Help screen"
new "## Elphay creensay"
# screens.rpy:970
# gui/game/screens.rpy:970
old "## A screen that gives information about key and mouse bindings. It uses other screens (keyboard_help, mouse_help, and gamepad_help) to display the actual help."
new "## Aay creensay hattay ivesgay informationay aboutay eykay anday ousemay indingsbay. Tiay usesay otheray creenssay (eyboard_helpkay, ouse_helpmay, anday amepad_helpgay) otay isplayday hetay actualay elphay."
# screens.rpy:989
# gui/game/screens.rpy:989
old "Keyboard"
new "Eyboardkay"
# screens.rpy:990
# gui/game/screens.rpy:990
old "Mouse"
new "Ousemay"
# screens.rpy:993
# gui/game/screens.rpy:993
old "Gamepad"
new "Amepadgay"
# screens.rpy:1006
# gui/game/screens.rpy:1006
old "Enter"
new "Ntereay"
# screens.rpy:1007
# gui/game/screens.rpy:1007
old "Advances dialogue and activates the interface."
new "Dvancesaay ialogueday anday activatesay hetay interfaceay."
# screens.rpy:1010
# gui/game/screens.rpy:1010
old "Space"
new "Pacesay"
# screens.rpy:1011
# gui/game/screens.rpy:1011
old "Advances dialogue without selecting choices."
new "Dvancesaay ialogueday ithoutway electingsay oiceschay."
# screens.rpy:1014
# gui/game/screens.rpy:1014
old "Arrow Keys"
new "Rrowaay Eyskay"
# screens.rpy:1015
# gui/game/screens.rpy:1015
old "Navigate the interface."
new "Avigatenay hetay interfaceay."
# screens.rpy:1018
# gui/game/screens.rpy:1018
old "Escape"
new "Scapeeay"
# screens.rpy:1019
# gui/game/screens.rpy:1019
old "Accesses the game menu."
new "Ccessesaay hetay amegay enumay."
# screens.rpy:1022
# gui/game/screens.rpy:1022
old "Ctrl"
new "Trlcay"
# screens.rpy:1023
# gui/game/screens.rpy:1023
old "Skips dialogue while held down."
new "Kipssay ialogueday hileway eldhay ownday."
# screens.rpy:1026
# gui/game/screens.rpy:1026
old "Tab"
new "Abtay"
# screens.rpy:1027
# gui/game/screens.rpy:1027
old "Toggles dialogue skipping."
new "Ogglestay ialogueday kippingsay."
# screens.rpy:1030
# gui/game/screens.rpy:1030
old "Page Up"
new "Agepay Puay"
# screens.rpy:1031
# gui/game/screens.rpy:1031
old "Rolls back to earlier dialogue."
new "Ollsray ackbay otay earlieray ialogueday."
# screens.rpy:1034
# gui/game/screens.rpy:1034
old "Page Down"
new "Agepay Ownday"
# screens.rpy:1035
# gui/game/screens.rpy:1035
old "Rolls forward to later dialogue."
new "Ollsray orwardfay otay aterlay ialogueday."
# screens.rpy:1039
# gui/game/screens.rpy:1039
old "Hides the user interface."
new "Ideshay hetay useray interfaceay."
# screens.rpy:1043
# gui/game/screens.rpy:1043
old "Takes a screenshot."
new "Akestay aay creenshotsay."
# screens.rpy:1047
# gui/game/screens.rpy:1047
old "Toggles assistive {a=https://www.renpy.org/l/voicing}self-voicing{/a}."
new "Ogglestay assistiveay {a=https://www.renpy.org/l/voicing}elfsay-oicingvay{/a}."
# screens.rpy:1053
# gui/game/screens.rpy:1053
old "Left Click"
new "Eftlay Lickcay"
# screens.rpy:1057
# gui/game/screens.rpy:1057
old "Middle Click"
new "Iddlemay Lickcay"
# screens.rpy:1061
# gui/game/screens.rpy:1061
old "Right Click"
new "Ightray Lickcay"
# screens.rpy:1065
# gui/game/screens.rpy:1065
old "Mouse Wheel Up\nClick Rollback Side"
new "Ousemay Heelway Puay\nLickcay Ollbackray Idesay"
# screens.rpy:1069
# gui/game/screens.rpy:1069
old "Mouse Wheel Down"
new "Ousemay Heelway Ownday"
# screens.rpy:1076
# gui/game/screens.rpy:1076
old "Right Trigger\nA/Bottom Button"
new "Ightray Riggertay\nAay/Ottombay Uttonbay"
# screens.rpy:1080
# gui/game/screens.rpy:1080
old "Left Trigger\nLeft Shoulder"
new "Eftlay Riggertay\nEftlay Houldersay"
# screens.rpy:1084
# gui/game/screens.rpy:1084
old "Right Shoulder"
new "Ightray Houldersay"
# screens.rpy:1089
# gui/game/screens.rpy:1089
old "D-Pad, Sticks"
new "Day-Adpay, Tickssay"
# screens.rpy:1093
# gui/game/screens.rpy:1093
old "Start, Guide"
new "Tartsay, Uidegay"
# screens.rpy:1097
# gui/game/screens.rpy:1097
old "Y/Top Button"
new "Yay/Optay Uttonbay"
# screens.rpy:1100
# gui/game/screens.rpy:1100
old "Calibrate"
new "Alibratecay"
# screens.rpy:1128
# gui/game/screens.rpy:1128
old "## Additional screens"
new "## Dditionalaay creenssay"
# screens.rpy:1132
# gui/game/screens.rpy:1132
old "## Confirm screen"
new "## Onfirmcay creensay"
# screens.rpy:1134
# gui/game/screens.rpy:1134
old "## The confirm screen is called when Ren'Py wants to ask the player a yes or no question."
new "## Hetay onfirmcay creensay isay alledcay henway Enray'Ypay antsway otay askay hetay ayerplay aay esyay oray onay uestionqay."
# screens.rpy:1137
# gui/game/screens.rpy:1137
old "## https://www.renpy.org/doc/html/screen_special.html#confirm"
new "## ttpshay://wwway.enpyray.orgay/ocday/tmlhay/creen_specialsay.tmlhay#onfirmcay"
# screens.rpy:1141
# gui/game/screens.rpy:1141
old "## Ensure other screens do not get input while this screen is displayed."
new "## Nsureeay otheray creenssay oday otnay etgay inputay hileway histay creensay isay isplayedday."
# screens.rpy:1165
# gui/game/screens.rpy:1165
old "Yes"
new "Esyay"
# screens.rpy:1166
# gui/game/screens.rpy:1166
old "No"
new "Onay"
# screens.rpy:1168
# gui/game/screens.rpy:1168
old "## Right-click and escape answer \"no\"."
new "## Ightray-ickclay anday escapeay answeray \"onay\"."
# screens.rpy:1195
# gui/game/screens.rpy:1195
old "## Skip indicator screen"
new "## Kipsay indicatoray creensay"
# screens.rpy:1197
# gui/game/screens.rpy:1197
old "## The skip_indicator screen is displayed to indicate that skipping is in progress."
new "## Hetay kip_indicatorsay creensay isay isplayedday otay indicateay hattay kippingsay isay inay rogresspay."
# screens.rpy:1200
# gui/game/screens.rpy:1200
old "## https://www.renpy.org/doc/html/screen_special.html#skip-indicator"
new "## ttpshay://wwway.enpyray.orgay/ocday/tmlhay/creen_specialsay.tmlhay#kipsay-indicatoray"
# screens.rpy:1212
# gui/game/screens.rpy:1212
old "Skipping"
new "Kippingsay"
# screens.rpy:1219
# gui/game/screens.rpy:1219
old "## This transform is used to blink the arrows one after another."
new "## Histay ansformtray isay useday otay inkblay hetay arrowsay oneay afteray anotheray."
# screens.rpy:1246
# gui/game/screens.rpy:1246
old "## We have to use a font that has the BLACK RIGHT-POINTING SMALL TRIANGLE glyph in it."
new "## Eway avehay otay useay aay ontfay hattay ashay hetay Lackbay Ightray-Ointingpay Mallsay Riangletay yphglay inay itay."
# screens.rpy:1251
# gui/game/screens.rpy:1251
old "## Notify screen"
new "## Otifynay creensay"
# screens.rpy:1253
# gui/game/screens.rpy:1253
old "## The notify screen is used to show the player a message. (For example, when the game is quicksaved or a screenshot has been taken.)"
new "## Hetay otifynay creensay isay useday otay owshay hetay ayerplay aay essagemay. (Orfay exampleay, henway hetay amegay isay uicksavedqay oray aay creenshotsay ashay eenbay akentay.)"
# screens.rpy:1256
# gui/game/screens.rpy:1256
old "## https://www.renpy.org/doc/html/screen_special.html#notify-screen"
new "## ttpshay://wwway.enpyray.orgay/ocday/tmlhay/creen_specialsay.tmlhay#otifynay-creensay"
# screens.rpy:1290
# gui/game/screens.rpy:1290
old "## NVL screen"
new "## Vlnay creensay"
# screens.rpy:1292
# gui/game/screens.rpy:1292
old "## This screen is used for NVL-mode dialogue and menus."
new "## Histay creensay isay useday orfay Vlnay-odemay ialogueday anday enusmay."
# screens.rpy:1294
# gui/game/screens.rpy:1294
old "## https://www.renpy.org/doc/html/screen_special.html#nvl"
new "## ttpshay://wwway.enpyray.orgay/ocday/tmlhay/creen_specialsay.tmlhay#vlnay"
# screens.rpy:1305
# gui/game/screens.rpy:1305
old "## Displays dialogue in either a vpgrid or the vbox."
new "## Isplaysday ialogueday inay eitheray aay pgridvay oray hetay boxvay."
# screens.rpy:1318
# gui/game/screens.rpy:1318
old "## Displays the menu, if given. The menu may be displayed incorrectly if config.narrator_menu is set to True, as it is above."
new "## Isplaysday hetay enumay, ifay ivengay. Hetay enumay aymay ebay isplayedday incorrectlyay ifay onfigcay.arrator_menunay isay etsay otay Ruetay, asay itay isay aboveay."
# screens.rpy:1348
# gui/game/screens.rpy:1348
old "## This controls the maximum number of NVL-mode entries that can be displayed at once."
new "## Histay ontrolscay hetay aximummay umbernay ofay Vlnay-odemay entriesay hattay ancay ebay isplayedday atay onceay."
# screens.rpy:1410
# gui/game/screens.rpy:1410
old "## Mobile Variants"
new "## Obilemay Ariantsvay"
# screens.rpy:1417
# gui/game/screens.rpy:1417
old "## Since a mouse may not be present, we replace the quick menu with a version that uses fewer and bigger buttons that are easier to touch."
new "## Incesay aay ousemay aymay otnay ebay resentpay, eway eplaceray hetay uickqay enumay ithway aay ersionvay hattay usesay ewerfay anday iggerbay uttonsbay hattay areay easieray otay ouchtay."
# screens.rpy:1435
# gui/game/screens.rpy:1435
old "Menu"
new "Enumay"
+2 -2
View File
@@ -61,8 +61,8 @@
new "ERROR"
# game/interface.rpy:328
old "While [what!q], an error occured:"
new "Enquanto [what!q], ocorreu um erro:"
old "While [what!qt], an error occured:"
new "Enquanto [what!qt], ocorreu um erro:"
# game/interface.rpy:329
old "[exception!q]"
+60
View File
@@ -820,3 +820,63 @@ translate russian strings:
# _developer\developer.rpym:154
old "Show deleted"
new "Показать удалённые"
# 00accessibility.rpy:76
old "Font Override"
new "Переопределение шрифта"
# 00accessibility.rpy:80
old "Default"
new "По умолчанию"
# 00accessibility.rpy:84
old "DejaVu Sans"
new "DejaVu Sans"
# 00accessibility.rpy:88
old "Opendyslexic"
new "Opendyslexic"
# 00accessibility.rpy:94
old "Text Size Scaling"
new "Масштабирование размера текста"
# 00accessibility.rpy:100
old "Reset"
new "Сбросить"
# 00accessibility.rpy:105
old "Line Spacing Scaling"
new "Масштабирование межстрочного интервала"
# 00accessibility.rpy:117
old "Self-Voicing"
new "Озвучка через синтезатор речи"
# 00accessibility.rpy:121
old "Off"
new "Выключить"
# 00accessibility.rpy:125
old "Text-to-speech"
new "Преобразование текста в речь"
# 00accessibility.rpy:129
old "Clipboard"
new "Из буфера обмена"
# 00preferences.rpy:430
old "font transform"
new "преобразование шрифта"
# 00preferences.rpy:433
old "font size"
new "размер шрифта"
# 00preferences.rpy:441
old "font line spacing"
new "межстрочный интервал"
# renpy/common/00accessibility.rpy:191
old "The options on this menu are intended to improve accessibility. They may not work with all games, and some combinations of options may render the game unplayable. This is not an issue with the game or engine. For the best results when changing fonts, try to keep the text size the same as it originally was."
new "Параметры этого меню предназначены для увеличения доступности. Они могут работать не со всеми играми, а некоторые комбинации опций могут сделать игру отображаемой некорректно. Это не проблема с игрой или движком. Для достижения наилучших результатов при изменении шрифтов старайтесь сохранять размер текста таким, каким он был изначально."
+7
View File
@@ -65,3 +65,10 @@ translate russian strings:
old "jump <label>: jumps to label"
new "jump <label>: прыжок на метку"
# 00console.rpy:685
old "short: Shorten the representation of objects on the console (default)."
new "short: Сокращённое представление обектов (repr) в консоли (по умолчанию)."
# 00console.rpy:690
old "long: Print the full representation of objects on the console."
new "long: Выводить полное представление обектов (repr) в консоли."
+23
View File
@@ -213,3 +213,26 @@ translate russian strings:
old "Copies the errors.txt file to the clipboard."
new "Копирует файл errors.txt в буфер обмена."
# _errorhandling.rpym:542
old "Copy BBCode"
new "Скопировать как BBCode"
# _errorhandling.rpym:544
old "Copies the traceback.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "Копирует файл traceback.txt в буфер обмена как BBCode для форумов типа https://lemmasoft.renai.us/."
# _errorhandling.rpym:546
old "Copy Markdown"
new "Скопировать как Markdown"
# _errorhandling.rpym:548
old "Copies the traceback.txt file to the clipboard as Markdown for Discord."
new "Копирует файл traceback.txt в буфер обмена как Markdown для Дискорда."
# _errorhandling.rpym:683
old "Copies the errors.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "Копирует файл errors.txt в буфер обмена как BBCode для форумов типа https://lemmasoft.renai.us/."
# _errorhandling.rpym:687
old "Copies the errors.txt file to the clipboard as Markdown for Discord."
new "Копирует файл errors.txt в буфер обмена как Markdown для Дискорда."
+97 -1
View File
@@ -362,7 +362,7 @@ translate russian strings:
new "Я не смогла воспользоваться javac для компиляции тестового файла. Если у вас не установлен Инструментарий Разработки Java, пожалуйста, загрузите его с:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nJDK отличается от JRE, так что есть вероятность, что у вас установлена Java без JDK. Без функционирующего JDK я не могу продолжить."
# androidstrings.rpy:52
old "The version of Java on your computer does not appear to be JDK 8, which is the only version supported by the Android SDK. If you need to install JDK 8, you can download it from:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nYou can also set the JAVA_HOME environment variabe to use a different version of Java."
old "The version of Java on your computer does not appear to be JDK 8, which is the only version supported by the Android SDK. If you need to install JDK 8, you can download it from:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nYou can also set the JAVA_HOME environment variable to use a different version of Java."
new "Судя по всему, версия Java на вашем компьютере - не JDK 8, единственная версия, поддерживаемая Android SDK. Если вам нужно установить JDK 8, вы можете скачать его с:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nТакже вы можете изменить переменную окружения JAVA_HOME, чтобы воспользоваться другой версией Java."
# androidstrings.rpy:53
@@ -1508,3 +1508,99 @@ translate russian strings:
# updater.rpy:188
old "Fetching the list of update channels"
new "Запрашиваю список каналов обновления"
# androidstrings.rpy:20
old "The arm64-v8a version works on newer Android devices, the armeabi-v7a version works on older devices, and the x86_64 version works on the simulator and chromebooks."
new "Версия arm64-v8a работает на новых Android устройствах, версия armeabi-v7a требуется для старых устройств, а версия x86_64 требуется для симуляторов и хромбуков."
# front_page.rpy:252
old "Web"
new "Веб-инструменты"
# game/front_page.rpy:252
old "(Beta)"
new "(Бета)"
# interface.rpy:394
old "While [what!qt], an error occured:"
new "В процессе выполнения \"[what!qt]\" произошла ошибка:"
# interface.rpy:394
old "[exception!q]"
new "[exception!q]"
# itch.rpy:43
old "Downloading the itch.io butler."
new "Загрузка itch.io помошника"
# web.rpy:118
old "Web: [project.current.display_name!q]"
new "Web: [project.current.display_name!q]"
# web.rpy:148
old "Build Web Application"
new "Построить приложение для сети"
# web.rpy:149
old "Build and Open in Browser"
new "Построить и открыть в браузере"
# web.rpy:150
old "Open without Build"
new "Открыть без постройки"
# web.rpy:154
old "Support:"
new "Поддержка:"
# web.rpy:162
old "RenPyWeb Home"
new "RenPyWeb главная страница"
# web.rpy:163
old "Beuc's Patreon"
new "Патреон Beuc"
# web.rpy:181
old "Ren'Py web applications require the entire game to be downloaded to the player's computer before it can start."
new "Веб-приложения Ren'Py требуют, чтобы вся игра была загружена на компьютер игрока, прежде чем она запуститься."
# web.rpy:185
old "Current limitations in the web platform mean that loading large images, audio files, or movies may cause audio or framerate glitches, and lower performance in general."
new "Текущие ограничения веб-платформы означают, что загрузка больших изображений, аудиофайлов или фильмов может привести к сбоям звука или частоты смены кадров, а также к снижению производительности в целом."
# web.rpy:194
old "Before packaging web apps, you'll need to download RenPyWeb, Ren'Py's web support. Would you like to download RenPyWeb now?"
new "Перед упаковкой веб-приложений вам необходимо загрузить RenPyWeb, веб-поддержку Ren'Py. Вы хотите загрузить RenPyWeb прямо сейчас?"
# choose_theme.rpy:507
old "changing the theme"
new "смена темы"
# gui7.rpy:429
old "creating a new project"
new "создание нового проекта"
# gui7.rpy:433
old "activating the new project"
new "активация нового проекта"
# interface.rpy:372
old "opening the log file"
new "открытие лог-файла"
# updater.rpy:194
old "downloading the list of update channels"
new "загрузка списка каналов обновления"
# updater.rpy:198
old "parsing the list of update channels"
new "разбор списка каналов обновления"
# game/web.rpy:150
old "Open in Browser"
new "Открыть в браузере"
# game/web.rpy:151
old "Open build directory"
new "Открыть папку сборки"
+2 -3
View File
@@ -158,8 +158,8 @@ translate russian strings:
new "Помощь"
# screens.rpy:331
old "## The quit button is banned on iOS and unnecessary on Android."
new "## Кнопка выхода блокирована в iOS и не нужна на Android."
old "## The quit button is banned on iOS and unnecessary on Android and Web."
new "## Кнопка выхода блокирована в iOS и не нужна на Android и в веб-версии."
# screens.rpy:332
old "Quit"
@@ -672,4 +672,3 @@ translate russian strings:
# screens.rpy:1431
old "Menu"
new "Меню"
+94 -91
View File
@@ -1,5 +1,4 @@
translate spanish strings:
translate spanish strings:
# 00action_file.rpy:26
old "{#weekday}Monday"
@@ -155,7 +154,7 @@ translate spanish strings:
# 00action_file.rpy:237
old "%b %d, %H:%M"
new "%d %b, %H:%M"
new "%d de %b, %H:%M"
# 00action_file.rpy:344
old "Save slot %s: [text]"
@@ -647,91 +646,95 @@ translate spanish strings:
# 00gallery.rpy:596
old "return"
new "volver"
translate spanish strings:
# 00accessibility.rpy:76
old "Font Override"
new "Invalidar Fuente"
# 00accessibility.rpy:80
old "Default"
new "por Defecto"
# 00accessibility.rpy:84
old "DejaVu Sans"
new "DejaVu Sans"
# 00accessibility.rpy:88
old "Opendyslexic"
new "Opendyslexic"
# 00accessibility.rpy:94
old "Text Size Scaling"
new "Tamaño de la Escala del Texto"
# 00accessibility.rpy:100
old "Reset"
new "Reiniciar"
# 00accessibility.rpy:105
old "Line Spacing Scaling"
new "Escalado del espaciado de línea"
# 00accessibility.rpy:117
old "Self-Voicing"
new "Voz-automática"
# 00accessibility.rpy:121
old "Off"
new "Apagado"
# 00accessibility.rpy:125
old "Text-to-speech"
new "Texto a voz"
# 00accessibility.rpy:129
old "Clipboard"
new "Potapapeles"
# 00accessibility.rpy:133
old "Debug"
new "Depurar"
# 00action_file.rpy:434
old "Load slot %s: [text]"
new "Cargar ranura %s: [text]"
# 00preferences.rpy:430
old "font transform"
new "transformación de fuente"
# 00preferences.rpy:433
old "font size"
new "tamaño de fuente"
# 00preferences.rpy:441
old "font line spacing"
new "fuente de espacio de líneas"
# _developer\developer.rpym:63
old "Image Attributes"
new "Atrubutos de Imagen"
# _developer\developer.rpym:90
old "[name] [attributes] (hidden)"
new "[name] [attributes] (hidden)"
# _developer\developer.rpym:94
old "[name] [attributes]"
new "[name] [attributes]"
# _developer\developer.rpym:154
old "Hide deleted"
new "Hide deleted"
# _developer\developer.rpym:154
old "Show deleted"
new "Show deleted"
new "volver"
translate spanish strings:
# 00accessibility.rpy:76
old "Font Override"
new "Cambiar Fuente"
# 00accessibility.rpy:80
old "Default"
new "por Defecto"
# 00accessibility.rpy:84
old "DejaVu Sans"
new "DejaVu Sans"
# 00accessibility.rpy:88
old "Opendyslexic"
new "Opendyslexic"
# 00accessibility.rpy:94
old "Text Size Scaling"
new "Escala del tamaño del texto"
# 00accessibility.rpy:100
old "Reset"
new "Reiniciar"
# 00accessibility.rpy:105
old "Line Spacing Scaling"
new "Escala del espacio de línea"
# 00accessibility.rpy:117
old "Self-Voicing"
new "Voz-automática"
# 00accessibility.rpy:121
old "Off"
new "Apagado"
# 00accessibility.rpy:125
old "Text-to-speech"
new "Texto a voz"
# 00accessibility.rpy:129
old "Clipboard"
new "Potapapeles"
# 00accessibility.rpy:133
old "Debug"
new "Depurar"
# 00action_file.rpy:434
old "Load slot %s: [text]"
new "Cargar ranura %s: [text]"
# 00preferences.rpy:430
old "font transform"
new "transformación de fuente"
# 00preferences.rpy:433
old "font size"
new "tamaño de fuente"
# 00preferences.rpy:441
old "font line spacing"
new "fuente de espacio de líneas"
# _developer\developer.rpym:63
old "Image Attributes"
new "Atrubutos de Imagen"
# _developer\developer.rpym:90
old "[name] [attributes] (hidden)"
new "[name] [attributes] (hidden)"
# _developer\developer.rpym:94
old "[name] [attributes]"
new "[name] [attributes]"
# _developer\developer.rpym:154
old "Hide deleted"
new "Oculultar borrados"
# _developer\developer.rpym:154
old "Show deleted"
new "Mostrar borrados"
# renpy/common/00accessibility.rpy:146
old "The options on this menu are intended to improve accessibility. They may not work with all games, and some combinations of options may render the game unplayable. This is not an issue with the game or engine. For the best results when changing fonts, try to keep the text size the same as it originally was."
new "Las opciones en este menú están destinadas a mejorar la accesibilidad. Es posible que no funcionen con todos los juegos, y algunas combinaciones de opciones pueden hacer que el juego no se pueda jugar. Esto no es un problema con el juego o el motor. Para obtener los mejores resultados al cambiar las fuentes, intente mantener el tamaño del texto igual al original."
+11 -14
View File
@@ -1,5 +1,4 @@
translate spanish strings:
translate spanish strings:
# _developer/developer.rpym:38
old "Developer Menu"
@@ -187,15 +186,13 @@ translate spanish strings:
# 00console.rpy:639
old "jump <label>: jumps to label"
new "jump <label>: salta a la etiqueta"
translate spanish strings:
# 00console.rpy:680
old "short: Shorten the representation of objects on the console (default)."
new "corto: Acorta la representación de los objetos en la consola (predeterminado)."
# 00console.rpy:685
old "long: Print the full representation of objects on the console."
new "largo: imprime la representación completa de los objetos en la consola."
new "jump <label>: salta a la etiqueta"
# 00console.rpy:680
old "short: Shorten the representation of objects on the console (default)."
new "short: Acorta la representación de los objetos en la consola (predeterminado)."
# 00console.rpy:685
old "long: Print the full representation of objects on the console."
new "long: imprime la representación completa de los objetos en la consola."
+27 -30
View File
@@ -1,5 +1,4 @@
translate spanish strings:
translate spanish strings:
# 00gltest.rpy:70
old "Renderer"
@@ -211,31 +210,29 @@ translate spanish strings:
# _errorhandling.rpym:667
old "Copies the errors.txt file to the clipboard."
new "Copia el archivo errors.txt al portapapeles."
translate spanish strings:
# _errorhandling.rpym:542
old "Copy BBCode"
new "Copiar BBCode"
# _errorhandling.rpym:544
old "Copies the traceback.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "Copia el archivo traceback.txt en el portapapeles como BBcode para foros como https://lemmasoft.renai.us/."
# _errorhandling.rpym:546
old "Copy Markdown"
new "Copiar Markdown"
# _errorhandling.rpym:548
old "Copies the traceback.txt file to the clipboard as Markdown for Discord."
new "Copia el archivo traceback.txt al portapapeles como Markdown paara Discord."
# _errorhandling.rpym:683
old "Copies the errors.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "Copia el archivo errors.txt en el portapapeles como BBcode para foros como https://lemmasoft.renai.us/."
# _errorhandling.rpym:687
old "Copies the errors.txt file to the clipboard as Markdown for Discord."
new "Copia el archivo errors.txt al portapapeles como Markdown para Discord."
new "Copia el archivo errors.txt al portapapeles."
# _errorhandling.rpym:542
old "Copy BBCode"
new "Copiar BBCode"
# _errorhandling.rpym:544
old "Copies the traceback.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "Copia el archivo traceback.txt en el portapapeles como BBcode para foros como https://lemmasoft.renai.us/."
# _errorhandling.rpym:546
old "Copy Markdown"
new "Copiar Markdown"
# _errorhandling.rpym:548
old "Copies the traceback.txt file to the clipboard as Markdown for Discord."
new "Copia el archivo traceback.txt al portapapeles como Markdown paara Discord."
# _errorhandling.rpym:683
old "Copies the errors.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "Copia el archivo errors.txt en el portapapeles como BBcode para foros como https://lemmasoft.renai.us/."
# _errorhandling.rpym:687
old "Copies the errors.txt file to the clipboard as Markdown for Discord."
new "Copia el archivo errors.txt al portapapeles como Markdown para Discord."
+1 -2
View File
@@ -1,5 +1,4 @@
translate spanish strings:
translate spanish strings:
# gui.rpy:2
old "## Initialization"
+391 -5
View File
@@ -1,5 +1,4 @@
translate spanish strings:
translate spanish strings:
# about.rpy:39
old "[version!q]"
@@ -363,7 +362,7 @@ translate spanish strings:
# dmgcheck.rpy:50
old "This is probably because Ren'Py is running directly from a Macintosh drive image. To fix this, quit this launcher, copy the entire %s folder somewhere else on your computer, and run Ren'Py again."
new "Esto sucede probablemente porque Ren'Py se ejecuta directamente desde una imagen de disco Macintosh. Cierra este lanzador, copia toda la carpeta %s en otro lugar del ordenador y ejecuta Ren'Py de nuevo."
new "Esto sucede probablemente porque Ren'Py se ejecuta directamente desde una imagen de disco Macintosh. Cierra este launcher, copia toda la carpeta %s en otro lugar del ordenador y ejecuta Ren'Py de nuevo."
# editor.rpy:152
old "(Recommended) A modern and approachable text editor."
@@ -875,7 +874,7 @@ translate spanish strings:
# navigation.rpy:204
old "TODOs"
new "TODO"
new "TODOs"
# navigation.rpy:243
old "+ Add script file"
@@ -915,7 +914,7 @@ translate spanish strings:
# new_project.rpy:71
old "You will be creating an [new_project_language]{#this substitution may be localized} language project. Change the launcher language in preferences to create a project in another language."
new "Vas a crear un proyecto en idioma [new_project_language]. Cambia el idioma del lanzador en preferencias para crear un proyecto en otro idioma."
new "Vas a crear un proyecto en idioma [new_project_language]. Cambia el idioma del launcher en preferencias para crear un proyecto en otro idioma."
# new_project.rpy:79
old "Which interface would you like to use? The new GUI has a modern look, supports wide screens and mobile devices, and is easier to customize. Legacy themes might be necessary to work with older example code.\n\n[language_support!t]\n\nIf in doubt, choose the new GUI, then click Continue on the bottom-right."
@@ -1264,3 +1263,390 @@ translate spanish strings:
# updater.rpy:195
old "Proceed"
new "Continuar"
translate spanish strings:
# game/add_file.rpy:37
old "The file name may not be empty."
new "El nombre del archivo no puede estar vacío."
# game/android.rpy:31
old "A 64-bit/x64 Java 8 Development Kit is required to build Android packages on Windows. The JDK is different from the JRE, so it's possible you have Java without having the JDK.\n\nPlease {a=http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html}download and install the JDK{/a}, then restart the Ren'Py launcher."
new "Se requiere un kit de desarrollo Java 8 de 64 bits/x64 para construir paquetes de Android en Windows. El JDK es diferente del JRE, por lo que es posible que tengas Java sin el JDK.\n\nPor favor, {a=http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html}descarga e instala el JDK{/a}, luego reinicie el launcher de Ren'Py."
# game/android.rpy:50
old "Selects the Debug build, which can be accessed through Android Studio. Changing between debug and release builds requires an uninstall from your device."
new "Selecciona la versión de depuración, a la que se puedes acceder a través de Android Studio. Cambiar entre las compilaciones de depuración y de versión requiere una desinstalación de su dispositivo."
# game/android.rpy:51
old "Selects the Release build, which can be uploaded to stores. Changing between debug and release builds requires an uninstall from your device."
new "Selecciona la versión de lanzamiento, que se puede cargar en las tiendas. Cambiar entre las compilaciones de depuración y de versión requiere una desinstalación de su dispositivo."
# game/androidstrings.rpy:7
old "{} is not a directory."
new "{} no es un directorio"
# game/androidstrings.rpy:8
old "{} does not contain a Ren'Py game."
new "{} no contiene un juego de Ren'Py."
# game/androidstrings.rpy:9
old "Run configure before attempting to build the app."
new "Ejecute configurar antes de intentar construir la aplicación."
# game/androidstrings.rpy:10
old "Google Play support is enabled, but build.google_play_key is not defined."
new "El soporte de Google Play está habilitado, pero build.google_play_key no está definido."
# game/androidstrings.rpy:11
old "Updating project."
new "Actualizando proyecto"
# game/androidstrings.rpy:12
old "Creating assets directory."
new "Creando directorio de recursos."
# game/androidstrings.rpy:13
old "Creating expansion file."
new "Creando archivo de expansión."
# game/androidstrings.rpy:14
old "Packaging internal data."
new "Empaquetando datos internos."
# game/androidstrings.rpy:15
old "I'm using Gradle to build the package."
new "Estoy usando Gradle para construir el paquete."
# game/androidstrings.rpy:16
old "Uploading expansion file."
new "Subiendo archivo de expansión."
# game/androidstrings.rpy:17
old "The build seems to have failed."
new "La construcción parece haber fallado."
# game/androidstrings.rpy:18
old "Launching app."
new "Lanzando app."
# game/androidstrings.rpy:19
old "The build seems to have succeeded."
new "La construcción parece haber tenido éxito."
# game/androidstrings.rpy:20
old "The arm64-v8a version works on newer Android devices, the armeabi-v7a version works on older devices, and the x86_64 version works on the simulator and chromebooks."
new "La versión de arm64-v8a funciona en dispositivos Android más nuevos, la versión de armeabi-v7a funciona en dispositivos más antiguos y la versión x86_64 funciona en el simulador y chromebooks."
# game/androidstrings.rpy:21
old "What is the full name of your application? This name will appear in the list of installed applications."
new "¿Cuál es el nombre completo de su aplicación? Este nombre aparecerá en la lista de aplicaciones instaladas."
# game/androidstrings.rpy:22
old "What is the short name of your application? This name will be used in the launcher, and for application shortcuts."
new "¿Cuál es el nombre corto de su aplicación? Este nombre se utilizará en el launcher y para los accesos directos de aplicaciones."
# game/androidstrings.rpy:23
old "What is the name of the package?\n\nThis is usually of the form com.domain.program or com.domain.email.program. It may only contain ASCII letters and dots. It must contain at least one dot."
new "¿Cuál es el nombre del paquete?\n\nEsto suele tener la forma com.dominio.programa o com.dominio.correo.programa. Solo puede contener letras y puntos ASCII. Debe contener al menos un punto."
# game/androidstrings.rpy:24
old "The package name may not be empty."
new "El nombre del paquete no puede estar vacío."
# game/androidstrings.rpy:25
old "The package name may not contain spaces."
new "El nombre del paquete no puede contener espacios."
# game/androidstrings.rpy:26
old "The package name must contain at least one dot."
new "El nombre del paquete debe contener al menos un punto."
# game/androidstrings.rpy:27
old "The package name may not contain two dots in a row, or begin or end with a dot."
new "El nombre del paquete no puede contener dos puntos en una fila, o comenzar o terminar con un punto."
# game/androidstrings.rpy:28
old "Each part of the package name must start with a letter, and contain only letters, numbers, and underscores."
new "Cada parte del nombre del paquete debe comenzar con una letra y contener solo letras, números y guiones bajos."
# game/androidstrings.rpy:29
old "{} is a Java keyword, and can't be used as part of a package name."
new "{} es una palabra clave de Java y no se puede utilizar como parte de un nombre de paquete."
# game/androidstrings.rpy:30
old "What is the application's version?\n\nThis should be the human-readable version that you would present to a person. It must contain only numbers and dots."
new "¿Cuál es la versión de la aplicación?\n\nEsta debe ser la versión legible para el ser humano que presentarías a una persona. Debe contener solo números y puntos."
# game/androidstrings.rpy:31
old "The version number must contain only numbers and dots."
new "El número de versión debe contener solo números y puntos."
# game/androidstrings.rpy:32
old "What is the version code?\n\nThis must be a positive integer number, and the value should increase between versions."
new "¿Cuál es el código de la versión?\n\nEste debe ser un número entero positivo, y el valor debe aumentar entre las versiones."
# game/androidstrings.rpy:33
old "The numeric version must contain only numbers."
new "La versión numérica debe contener solo números."
# game/androidstrings.rpy:34
old "How would you like your application to be displayed?"
new "¿Cómo desea que se muestre su aplicación?"
# game/androidstrings.rpy:35
old "In landscape orientation."
new "En orientación horizontal."
# game/androidstrings.rpy:36
old "In portrait orientation."
new "En orientación vertical."
# game/androidstrings.rpy:37
old "In the user's preferred orientation."
new "En la orientación preferida del usuario."
# game/androidstrings.rpy:38
old "Which app store would you like to support in-app purchasing through?"
new "¿En qué tienda de aplicaciones te gustaría soporte paracompras desde la aplicación?"
# game/androidstrings.rpy:39
old "Google Play."
new "Google Play."
# game/androidstrings.rpy:40
old "Amazon App Store."
new "Amazon App Store."
# game/androidstrings.rpy:41
old "Both, in one app."
new "Ambos, en una sola aplicación."
# game/androidstrings.rpy:42
old "Neither."
new "Ninguna."
# game/androidstrings.rpy:43
old "Would you like to create an expansion APK?"
new "¿Te gustaría crear un APK de expansión?"
# game/androidstrings.rpy:44
old "No. Size limit of 100 MB on Google Play, but can be distributed through other stores and sideloaded."
new "No. El límite de tamaño de 100 MB en Google Play, pero se puede distribuir a través de otras tiendas y se puede descargar de forma simultánea."
# game/androidstrings.rpy:45
old "Yes. 2 GB size limit, but won't work outside of Google Play. (Read the documentation to get this to work.)"
new "Sí. Límite de tamaño de 2 GB, pero no funcionará fuera de Google Play. (Lea la documentación para que esto funcione.)"
# game/androidstrings.rpy:46
old "Do you want to allow the app to access the Internet?"
new "¿Quieres permitir que la aplicación acceda a Internet?"
# game/androidstrings.rpy:47
old "Do you want to automatically update the generated project?"
new "¿Quieres actualizar automáticamente el proyecto generado?"
# game/androidstrings.rpy:48
old "Yes. This is the best choice for most projects."
new "Sí. Esta es la mejor opción para la mayoría de los proyectos."
# game/androidstrings.rpy:49
old "No. This may require manual updates when Ren'Py or the project configuration changes."
new "No. Esto puede requerir actualizaciones manuales cuando Ren'Py o la configuración del proyecto cambien."
# game/androidstrings.rpy:50
old "Unknown configuration variable: {}"
new "Variable de configuración desconocida: {}."
# game/androidstrings.rpy:51
old "I'm compiling a short test program, to see if you have a working JDK on your system."
new "Estoy compilando un programa de prueba corto, para ver si tienes un JDK en funcionamiento en tu sistema."
# game/androidstrings.rpy:52
old "I was unable to use javac to compile a test file. If you haven't installed the Java Development Kit yet, please download it from:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nThe JDK is different from the JRE, so it's possible you have Java without having the JDK. Without a working JDK, I can't continue."
new "No pude usar javac para compilar un archivo de prueba. Si aún no has instalado el Kit de desarrollo de Java, descárgalo de:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nEl JDK es diferente del JRE, por lo que es posible que tengas Java sin tener el JDK. Sin un JDK en funcionamiento, no puedo continuar."
# game/androidstrings.rpy:53
old "The version of Java on your computer does not appear to be JDK 8, which is the only version supported by the Android SDK. If you need to install JDK 8, you can download it from:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nYou can also set the JAVA_HOME environment variable to use a different version of Java."
new "La versión de Java en su computadora no parece ser JDK 8, que es la única versión compatible con el SDK de Android. Si necesitas instalar JDK 8, puedes descargarlo de:\n\nhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n\nTambién puedes configurar la Variable de entorno JAVA_HOME para usar una versión diferente de Java."
# game/androidstrings.rpy:54
old "The JDK is present and working. Good!"
new "El JDK está presente y funcionando. ¡Bien!"
# game/androidstrings.rpy:55
old "The Android SDK has already been unpacked."
new "El SDK de Android ya ha sido desempaquetado."
# game/androidstrings.rpy:56
old "Do you accept the Android SDK Terms and Conditions?"
new "¿Aceptas los Términos y Condiciones del SDK de Android?"
# game/androidstrings.rpy:57
old "I'm downloading the Android SDK. This might take a while."
new "Estoy descargando el SDK de Android. Esto podría tomar un tiempo."
# game/androidstrings.rpy:58
old "I'm extracting the Android SDK."
new "Estoy extrayendo el SDK de Android."
# game/androidstrings.rpy:59
old "I've finished unpacking the Android SDK."
new "He terminado de desempacar el SDK de Android."
# game/androidstrings.rpy:60
old "I'm about to download and install the required Android packages. This might take a while."
new "Estoy a punto de descargar e instalar los paquetes de Android necesarios. Esto podría tomar un tiempo."
# game/androidstrings.rpy:61
old "I was unable to accept the Android licenses."
new "No pude aceptar las licencias de Android."
# game/androidstrings.rpy:62
old "I was unable to install the required Android packages."
new "No pude instalar los paquetes de Android necesarios."
# game/androidstrings.rpy:63
old "I've finished installing the required Android packages."
new "He terminado de instalar los paquetes de Android requeridos."
# game/androidstrings.rpy:64
old "You set the keystore yourself, so I'll assume it's how you want it."
new "Tú mismo configuras el keystore, así que asumiré que es como lo quieres."
# game/androidstrings.rpy:65
old "You've already created an Android keystore, so I won't create a new one for you."
new "Ya has creado un keystore de Android, así que no crearé uno nuevo para ti."
# game/androidstrings.rpy:66
old "I can create an application signing key for you. Signing an application with this key allows it to be placed in the Android Market and other app stores.\n\nDo you want to create a key?"
new "Puedo crear una clave de firma de la aplicación para usted. Firmar una aplicación con esta clave le permite ubicarla en Android Market y otras tiendas de aplicaciones. \ N \ n¿Desea crear una clave?"
# game/androidstrings.rpy:67
old "I will create the key in the android.keystore file.\n\nYou need to back this file up. If you lose it, you will not be able to upgrade your application.\n\n\\You also need to keep the key safe. If evil people get this file, they could make fake versions of your application, and potentially steal your users' data.\n\nWill you make a backup of android.keystore, and keep it in a safe place?"
new "Crearé la clave en el archivo android.keystore.\n\nTienes que hacer una copia de seguridad de este archivo. Si lo pierdes, no podrás actualizar tu aplicación.\n\n\\También debes mantener la clave segura. Si la gente malvada obtiene este archivo, podrían crear versiones falsas de su aplicación y, posiblemente, robar los datos de sus usuarios.\n\n¿Harás una copia de seguridad de android.keystore y la mantendrás en un lugar seguro?"
# game/androidstrings.rpy:68
old "Please enter your name or the name of your organization."
new "Por favor ingresa tu nombre o el nombre de tu organización."
# game/androidstrings.rpy:69
old "Could not create android.keystore. Is keytool in your path?"
new "No se pudo crear android.keystore. ¿Esta keytool en tu ruta?"
# game/androidstrings.rpy:70
old "I've finished creating android.keystore. Please back it up, and keep it in a safe place."
new "He terminado de crear android.keystore. Por favor haga una copia de seguridad y guárdelo en un lugar seguro."
# game/androidstrings.rpy:71
old "It looks like you're ready to start packaging games."
new "Parece que estás listo para comenzar a empaquetar juegos."
# game/choose_theme.rpy:507
old "changing the theme"
new "cambiando el tema"
# game/front_page.rpy:252
old "Web"
new "Web"
# game/front_page.rpy:252
old "(Beta)"
new "(Beta)"
# game/gui7.rpy:429
old "creating a new project"
new "creando un nuevo proyecto"
# game/gui7.rpy:433
old "activating the new project"
new "activando el nuevo proyecto"
# game/interface.rpy:372
old "opening the log file"
new "abriendo el archivo de registro"
# game/interface.rpy:394
old "While [what!qt], an error occured:"
new "Mientras que [what!qt], ocurrió un error:"
# game/interface.rpy:394
old "[exception!q]"
new "[exception!q]"
# game/itch.rpy:43
old "Downloading the itch.io butler."
new "Descargando el butler de itch.io"
# game/updater.rpy:101
old "The update channel controls the version of Ren'Py the updater will download."
new "El canal de actualización controla la versión de Ren'Py que el actualizador descargará."
# game/updater.rpy:110
old "• This version is installed and up-to-date."
new "• Esta versión está instalada y actualizada."
# game/updater.rpy:118
old "%B %d, %Y"
new "%d de %B, %Y"
# game/updater.rpy:188
old "Fetching the list of update channels"
new "Obteniendo la lista de canales de actualización."
# game/updater.rpy:194
old "downloading the list of update channels"
new "descargando la lista de canales de actualización"
# game/updater.rpy:198
old "parsing the list of update channels"
new "analizar la lista de canales de actualización"
# game/web.rpy:118
old "Web: [project.current.display_name!q]"
new "Web: [project.current.display_name!q]"
# game/web.rpy:148
old "Build Web Application"
new "Construir una aplicación web"
# game/web.rpy:149
old "Build and Open in Browser"
new "Construir y abrir en el navegador"
# game/web.rpy:150
old "Open without Build"
new "Abrir sin construir"
# game/web.rpy:154
old "Support:"
new "Apoyar:"
# game/web.rpy:162
old "RenPyWeb Home"
new "Home de RenpyWeb"
# game/web.rpy:163
old "Beuc's Patreon"
new "Patreon de Beuc"
# game/web.rpy:181
old "Ren'Py web applications require the entire game to be downloaded to the player's computer before it can start."
new "Las aplicaciones web de Ren'Py requieren que todo el juego se descargue en la computadora del jugador antes de que pueda comenzar."
# game/web.rpy:185
old "Current limitations in the web platform mean that loading large images, audio files, or movies may cause audio or framerate glitches, and lower performance in general."
new "Las limitaciones actuales en la plataforma web significan que la carga de imágenes grandes, archivos de audio o películas pueden ocasionar problemas de audio o de frecuencia de cuadros, y un rendimiento más bajo en general."
# game/web.rpy:194
old "Before packaging web apps, you'll need to download RenPyWeb, Ren'Py's web support. Would you like to download RenPyWeb now?"
new "Antes de empaquetar aplicaciones web, deberá descargar RenPyWeb, el soporte web de Ren'Py. ¿Te gustaría descargar RenPyWeb ahora?"
# game/web.rpy:150
old "Open in Browser"
new "Abrir en Navegador"
# game/web.rpy:151
old "Open build directory"
new "Abrir directorio de construcción"
+1 -2
View File
@@ -1,5 +1,4 @@
translate spanish strings:
translate spanish strings:
# _layout/classic_joystick_preferences.rpym:94
old "Joystick Mapping"
+3 -4
View File
@@ -1,5 +1,4 @@
translate spanish strings:
translate spanish strings:
# options.rpy:1
old "## This file contains options that can be changed to customize your game."
@@ -139,11 +138,11 @@ translate spanish strings:
# options.rpy:152
old "## Icon"
new "## Icono"
new "## Ícono"
# options.rpy:154
old "## The icon displayed on the taskbar or dock."
new "## El icono mostrado en la barra de tareas."
new "## El ícono mostrado en la barra de tareas."
# options.rpy:159
old "## Build configuration"
+1 -1
View File
@@ -279,7 +279,7 @@ translate spanish strings:
# screens.rpy:646
old "{#file_time}%A, %B %d %Y, %H:%M"
new "{#file_time}%A, %d %B %Y, %H:%M"
new "{#file_time}%A, %d de %B %Y, %H:%M"
# screens.rpy:646
old "empty slot"
@@ -606,8 +606,8 @@ translate traditional_chinese strings:
new "錯誤"
# interface.rpy:356
old "While [what!q], an error occured:"
new "[what!q]時,出現錯誤:"
old "While [what!qt], an error occured:"
new "[what!qt]時,出現錯誤:"
# interface.rpy:356
old "[exception!q]"
+883
View File
@@ -0,0 +1,883 @@
translate turkish strings:
# 00accessibility.rpy:76
old "Font Override"
new "Font Üstüne Yaz"
# 00accessibility.rpy:80
old "Default"
new "Varsayılan"
# 00accessibility.rpy:84
old "DejaVu Sans"
new "DejaVu Sans"
# 00accessibility.rpy:88
old "Opendyslexic"
new "Opendyslexic"
# 00accessibility.rpy:94
old "Text Size Scaling"
new "Metin Boyutlandırma"
# 00accessibility.rpy:100
old "Reset"
new "Sıfırla"
# 00accessibility.rpy:105
old "Line Spacing Scaling"
new "Satır Boşluğu Boyutlandırma"
# 00accessibility.rpy:117
old "Self-Voicing"
new "Kendiliğinden Seslendirme"
# 00accessibility.rpy:121
old "Off"
new "Kapalı"
# 00accessibility.rpy:125
old "Text-to-speech"
new "Metinden-ses"
# 00accessibility.rpy:129
old "Clipboard"
new "Pano"
# 00accessibility.rpy:133
old "Debug"
new "Hata Ayıklama"
# 00action_file.rpy:26
old "{#weekday}Monday"
new "{#weekday}Pazartesi"
# 00action_file.rpy:26
old "{#weekday}Tuesday"
new "{#weekday}Salı"
# 00action_file.rpy:26
old "{#weekday}Wednesday"
new "{#weekday}Çarşamba"
# 00action_file.rpy:26
old "{#weekday}Thursday"
new "{#weekday}Perşembe"
# 00action_file.rpy:26
old "{#weekday}Friday"
new "{#weekday}Cuma"
# 00action_file.rpy:26
old "{#weekday}Saturday"
new "{#weekday}Cumartesi"
# 00action_file.rpy:26
old "{#weekday}Sunday"
new "{#weekday}Pazar"
# 00action_file.rpy:37
old "{#weekday_short}Mon"
new "{#weekday_short}Pzt"
# 00action_file.rpy:37
old "{#weekday_short}Tue"
new "{#weekday_short}Sal"
# 00action_file.rpy:37
old "{#weekday_short}Wed"
new "{#weekday_short}Çar"
# 00action_file.rpy:37
old "{#weekday_short}Thu"
new "{#weekday_short}Per"
# 00action_file.rpy:37
old "{#weekday_short}Fri"
new "{#weekday_short}Cum"
# 00action_file.rpy:37
old "{#weekday_short}Sat"
new "{#weekday_short}Cmt"
# 00action_file.rpy:37
old "{#weekday_short}Sun"
new "{#weekday_short}Paz"
# 00action_file.rpy:47
old "{#month}January"
new "{#month}Ocak"
# 00action_file.rpy:47
old "{#month}February"
new "{#month}Şubat"
# 00action_file.rpy:47
old "{#month}March"
new "{#month}Mart"
# 00action_file.rpy:47
old "{#month}April"
new "{#month}Nisan"
# 00action_file.rpy:47
old "{#month}May"
new "{#month}Mayıs"
# 00action_file.rpy:47
old "{#month}June"
new "{#month}Haziran"
# 00action_file.rpy:47
old "{#month}July"
new "{#month}Temmuz"
# 00action_file.rpy:47
old "{#month}August"
new "{#month}Ağustos"
# 00action_file.rpy:47
old "{#month}September"
new "{#month}Eylül"
# 00action_file.rpy:47
old "{#month}October"
new "{#month}Ekim"
# 00action_file.rpy:47
old "{#month}November"
new "{#month}Kasım"
# 00action_file.rpy:47
old "{#month}December"
new "{#month}Aralık"
# 00action_file.rpy:63
old "{#month_short}Jan"
new "{#month_short}Oca"
# 00action_file.rpy:63
old "{#month_short}Feb"
new "{#month_short}Şub"
# 00action_file.rpy:63
old "{#month_short}Mar"
new "{#month_short}Mar"
# 00action_file.rpy:63
old "{#month_short}Apr"
new "{#month_short}Nis"
# 00action_file.rpy:63
old "{#month_short}May"
new "{#month_short}May"
# 00action_file.rpy:63
old "{#month_short}Jun"
new "{#month_short}Haz"
# 00action_file.rpy:63
old "{#month_short}Jul"
new "{#month_short}Tem"
# 00action_file.rpy:63
old "{#month_short}Aug"
new "{#month_short}Ağu"
# 00action_file.rpy:63
old "{#month_short}Sep"
new "{#month_short}Eyl"
# 00action_file.rpy:63
old "{#month_short}Oct"
new "{#month_short}Eki"
# 00action_file.rpy:63
old "{#month_short}Nov"
new "{#month_short}Kas"
# 00action_file.rpy:63
old "{#month_short}Dec"
new "{#month_short}Ara"
# 00action_file.rpy:240
old "%b %d, %H:%M"
new "%b %d, %H:%M"
# 00action_file.rpy:353
old "Save slot %s: [text]"
new "Slota kaydet %s: [text]"
# 00action_file.rpy:434
old "Load slot %s: [text]"
new "Slottan yükle %s: [text]"
# 00action_file.rpy:487
old "Delete slot [text]"
new "Slotu sil [text]"
# 00action_file.rpy:569
old "File page auto"
new "Dosya sayfası oto"
# 00action_file.rpy:571
old "File page quick"
new "Dosya sayfası hızlı"
# 00action_file.rpy:573
old "File page [text]"
new "Dosya sayfası [text]"
# 00action_file.rpy:772
old "Next file page."
new "Sonraki dosya sayfası."
# 00action_file.rpy:845
old "Previous file page."
new "Önceki dosya sayfası."
# 00action_file.rpy:906
old "Quick save complete."
new "Hızlı kayıt tamamlandı."
# 00action_file.rpy:924
old "Quick save."
new "Hızlı kayıt."
# 00action_file.rpy:943
old "Quick load."
new "Hızlı yükleme."
# 00action_other.rpy:355
old "Language [text]"
new "Dil [text]"
# 00director.rpy:708
old "The interactive director is not enabled here."
new "İnteraktif yönetici burada aktif değil."
# 00director.rpy:1481
old "⬆"
new "⬆"
# 00director.rpy:1487
old "⬇"
new "⬇"
# 00director.rpy:1551
old "Done"
new "Tamam."
# 00director.rpy:1561
old "(statement)"
new "(ifade)"
# 00director.rpy:1562
old "(tag)"
new "(etiket)"
# 00director.rpy:1563
old "(attributes)"
new "(öznitelikler)"
# 00director.rpy:1564
old "(transform)"
new "(dönüşüm)"
# 00director.rpy:1589
old "(transition)"
new "(geçiş)"
# 00director.rpy:1601
old "(channel)"
new "(kanal)"
# 00director.rpy:1602
old "(filename)"
new "(dosya adı)"
# 00director.rpy:1631
old "Change"
new "Değiştir"
# 00director.rpy:1633
old "Add"
new "Ekle"
# 00director.rpy:1636
old "Cancel"
new "İptal"
# 00director.rpy:1639
old "Remove"
new "Kaldır"
# 00director.rpy:1674
old "Statement:"
new "İfade:"
# 00director.rpy:1695
old "Tag:"
new "Etiket:"
# 00director.rpy:1711
old "Attributes:"
new "Öznitelikler:"
# 00director.rpy:1729
old "Transforms:"
new "Dönüşümler:"
# 00director.rpy:1748
old "Behind:"
new "Arka:"
# 00director.rpy:1767
old "Transition:"
new "Geçiş:"
# 00director.rpy:1785
old "Channel:"
new "Kanal:"
# 00director.rpy:1803
old "Audio Filename:"
new "Ses Dosya Adı"
# 00gui.rpy:371
old "Are you sure?"
new "Emin misiniz?"
# 00gui.rpy:372
old "Are you sure you want to delete this save?"
new "Bu kaydı silmek istediğinize emin misiniz?"
# 00gui.rpy:373
old "Are you sure you want to overwrite your save?"
new "Bu kaydın üstüne yazmak istediğinize emin misiniz?"
# 00gui.rpy:374
old "Loading will lose unsaved progress.\nAre you sure you want to do this?"
new "Yüklemek kaydedilmemiş ilerlemenizin kaybolmasına sebep olacaktır. \nBunu yapmak istediğinize emin misiniz?"
# 00gui.rpy:375
old "Are you sure you want to quit?"
new "Çıkmak istediğinize emin misiniz?"
# 00gui.rpy:376
old "Are you sure you want to return to the main menu?\nThis will lose unsaved progress."
new "Ana menüye dönmek istediğinize emin misiniz?\nKaydedilmemiş ilerleme kaybolacaktır."
# 00gui.rpy:377
old "Are you sure you want to end the replay?"
new "Yeniden oynatmayı bitirmek istediğinize emin misiniz?"
# 00gui.rpy:378
old "Are you sure you want to begin skipping?"
new "Atlamaya başlmak istediğinize emin misiniz?"
# 00gui.rpy:379
old "Are you sure you want to skip to the next choice?"
new "Bir sonraki seçime atlamak istediğinize emin misiniz?"
# 00gui.rpy:380
old "Are you sure you want to skip unseen dialogue to the next choice?"
new "Bir sonraki seçime kadar görülmemiş olan diyalogları atlamak istediğinize emin misiniz?"
# 00keymap.rpy:261
old "Failed to save screenshot as %s."
new "Ekran görüntüsü %s olarak kaydedilemedi."
# 00keymap.rpy:273
old "Saved screenshot as %s."
new "Ekran görüntüsü %s olarak kaydedildi."
# 00library.rpy:175
old "Self-voicing disabled."
new "Kendiliğinden-Seslendirme devre dışı."
# 00library.rpy:176
old "Clipboard voicing enabled. "
new "Pano seslendirme etkin."
# 00library.rpy:177
old "Self-voicing enabled. "
new "Kendiliğinden-Seslendirme etkin."
# 00library.rpy:179
old "bar"
new "çubuk"
# 00library.rpy:180
old "selected"
new "seçili"
# 00library.rpy:181
old "viewport"
new "gözlem noktası"
# 00library.rpy:182
old "horizontal scroll"
new "yatay kaydırma"
# 00library.rpy:183
old "vertical scroll"
new "dikey kaydırma"
# 00library.rpy:184
old "activate"
new "etkinleştir"
# 00library.rpy:185
old "deactivate"
new "devre dışı bırak"
# 00library.rpy:186
old "increase"
new "arttır"
# 00library.rpy:187
old "decrease"
new "azalt"
# 00library.rpy:222
old "Skip Mode"
new "Atlama Modu"
# 00library.rpy:308
old "This program contains free software under a number of licenses, including the MIT License and GNU Lesser General Public License. A complete list of software, including links to full source code, can be found {a=https://www.renpy.org/l/license}here{/a}."
new "Bu program MIT ve GNU Lesser General Public License da dahil olmak üzere pek çok özgür yazılım lisansı içerir. Tam kaynak kodu da dahil olmak üzere bütün yazılımların listesi {a=https://www.renpy.org/l/license}here{/a} adresinde bulunabilir."
# 00preferences.rpy:233
old "display"
new "görüntü"
# 00preferences.rpy:245
old "transitions"
new "geçişler"
# 00preferences.rpy:254
old "skip transitions"
new "geçişleri atla"
# 00preferences.rpy:256
old "video sprites"
new "video spriteları"
# 00preferences.rpy:265
old "show empty window"
new "boş pencere göster"
# 00preferences.rpy:274
old "text speed"
new "metin hızı"
# 00preferences.rpy:282
old "joystick"
new "joystick"
# 00preferences.rpy:282
old "joystick..."
new "joystick..."
# 00preferences.rpy:289
old "skip"
new "atla"
# 00preferences.rpy:292
old "skip unseen [text]"
new "görülmemiş [text] atla"
# 00preferences.rpy:297
old "skip unseen text"
new "görülmemiş metni atla"
# 00preferences.rpy:299
old "begin skipping"
new "atlamaya başla"
# 00preferences.rpy:303
old "after choices"
new "seçimden sonra"
# 00preferences.rpy:310
old "skip after choices"
new "seçimlerden sonra atla"
# 00preferences.rpy:312
old "auto-forward time"
new "zamanı otomatik ileri sar"
# 00preferences.rpy:326
old "auto-forward"
new "otomatik ileri sar"
# 00preferences.rpy:333
old "Auto forward"
new "Otomatik ileri sar"
# 00preferences.rpy:336
old "auto-forward after click"
new "tıklamadan sonra otomatik ileri sar"
# 00preferences.rpy:345
old "automatic move"
new "otomatik hareket"
# 00preferences.rpy:354
old "wait for voice"
new "sesi bekle"
# 00preferences.rpy:363
old "voice sustain"
new "sesi sürdür"
# 00preferences.rpy:372
old "self voicing"
new "kendiliğinden seslendirme"
# 00preferences.rpy:381
old "clipboard voicing"
new "pano seslendirme"
# 00preferences.rpy:390
old "debug voicing"
new "hata ayıklama seslendirmesi"
# 00preferences.rpy:399
old "emphasize audio"
new "sesi vurgula"
# 00preferences.rpy:408
old "rollback side"
new "geri alma tarafı"
# 00preferences.rpy:418
old "gl powersave"
new "gl powersave"
# 00preferences.rpy:424
old "gl framerate"
new "gl kare hızı"
# 00preferences.rpy:427
old "gl tearing"
new "gl tearing"
# 00preferences.rpy:430
old "font transform"
new "font dönüşüm"
# 00preferences.rpy:433
old "font size"
new "font boyutu"
# 00preferences.rpy:441
old "font line spacing"
new "font satır boşluğu"
# 00preferences.rpy:460
old "music volume"
new "müzik düzeyi"
# 00preferences.rpy:461
old "sound volume"
new "ses düzeyi"
# 00preferences.rpy:462
old "voice volume"
new "konuşma düzeyi"
# 00preferences.rpy:463
old "mute music"
new "müziği sustur"
# 00preferences.rpy:464
old "mute sound"
new "sesi sustur"
# 00preferences.rpy:465
old "mute voice"
new "konuşmayı sustur"
# 00preferences.rpy:466
old "mute all"
new "hepsini sustur"
# 00preferences.rpy:547
old "Clipboard voicing enabled. Press 'shift+C' to disable."
new "Pano seslendirme etkin. Devre dışı bırakmak için 'shift+C'ye basın."
# 00preferences.rpy:549
old "Self-voicing would say \"[renpy.display.tts.last]\". Press 'alt+shift+V' to disable."
new "Kendiliğinden-Seslendirme \"[renpy.display.tts.last]\" derdi. Devre dışı bırakmak için 'alt+shift+V'ye basın."
# 00preferences.rpy:551
old "Self-voicing enabled. Press 'v' to disable."
new "Kendiliğinden-seslendirme etkin. Devre dışı bırakmak için 'v'ye basın."
# _compat\gamemenu.rpym:198
old "Empty Slot."
new "Boş Slot."
# _compat\gamemenu.rpym:355
old "Previous"
new "Önceki"
# _compat\gamemenu.rpym:362
old "Next"
new "Sonraki"
# _compat\preferences.rpym:428
old "Joystick Mapping"
new "Joystick Ayarlama"
# _developer\developer.rpym:38
old "Developer Menu"
new "Geliştirici Menüsü"
# _developer\developer.rpym:43
old "Interactive Director (D)"
new "İnteraktif Yönetici (D)"
# _developer\developer.rpym:45
old "Reload Game (Shift+R)"
new "Oyunu Geri Yükle (Shift-R)"
# _developer\developer.rpym:47
old "Console (Shift+O)"
new "Konsol (Shift+O)"
# _developer\developer.rpym:49
old "Variable Viewer"
new "Değişken Görüntüleyici"
# _developer\developer.rpym:51
old "Image Location Picker"
new "Resim Yeri Seçici"
# _developer\developer.rpym:53
old "Filename List"
new "Dosya Adı Listesi"
# _developer\developer.rpym:57
old "Show Image Load Log (F4)"
new "Resim Yükleme Kaydını Göster (F4)"
# _developer\developer.rpym:60
old "Hide Image Load Log (F4)"
new "Resim Yükleme Kaydını Gizle (F4)"
# _developer\developer.rpym:63
old "Image Attributes"
new "Resim Öznitelikleri"
# _developer\developer.rpym:90
old "[name] [attributes] (hidden)"
new "[name] [attributes] (gizli)"
# _developer\developer.rpym:94
old "[name] [attributes]"
new "[name] [attributes]"
# _developer\developer.rpym:143
old "Nothing to inspect."
new "İncelenecek bir şey yok."
# _developer\developer.rpym:154
old "Hide deleted"
new "Silineni gizle"
# _developer\developer.rpym:154
old "Show deleted"
new "Silineni göster"
# _developer\developer.rpym:278
old "Return to the developer menu"
new "Geliştiric menüsüne dön."
# _developer\developer.rpym:443
old "Rectangle: %r"
new "Dikdörtgen: %r"
# _developer\developer.rpym:448
old "Mouse position: %r"
new "Fare konumu: %r"
# _developer\developer.rpym:453
old "Right-click or escape to quit."
new "Çıkmak için sağ-tıkla veya escape tuşuna bas."
# _developer\developer.rpym:485
old "Rectangle copied to clipboard."
new "Dikdörtgen panoya kopyalandı."
# _developer\developer.rpym:488
old "Position copied to clipboard."
new "Konum panoya kopyalandı."
# _developer\developer.rpym:507
old "Type to filter: "
new "Filtrelenecek tür: "
# _developer\developer.rpym:635
old "Textures: [tex_count] ([tex_size_mb:.1f] MB)"
new "Dokular: [tex_count] ([tex_size_mb:.1f] MB)"
# _developer\developer.rpym:639
old "Image cache: [cache_pct:.1f]% ([cache_size_mb:.1f] MB)"
new "Resim önbelleği: [cache_pct:.1f]% ([cache_size_mb:.1f] MB)"
# _developer\developer.rpym:649
old "✔ "
new "✔"
# _developer\developer.rpym:652
old "✘ "
new "✘ "
# _developer\developer.rpym:657
old "\n{color=#cfc}✔ predicted image (good){/color}\n{color=#fcc}✘ unpredicted image (bad){/color}\n{color=#fff}Drag to move.{/color}"
new "\n{color=#cfc}✔ beklenen resim (iyi){/color}\n{color=#fcc}✘ beklenmeyen resim (kötü){/color}\n{color=#fff}Kaydırmak için sürükle.{/color}"
# _developer\inspector.rpym:38
old "Displayable Inspector"
new "Görüntülenebilir İnceleyici"
# _developer\inspector.rpym:61
old "Size"
new "Boyut"
# _developer\inspector.rpym:65
old "Style"
new "Stil"
# _developer\inspector.rpym:71
old "Location"
new "Konum"
# _developer\inspector.rpym:122
old "Inspecting Styles of [displayable_name!q]"
new "[displayable_name!q] Stilleri İnceleniyor"
# _developer\inspector.rpym:139
old "displayable:"
new "görüntülenebilir:"
# _developer\inspector.rpym:145
old " (no properties affect the displayable)"
new " (hiçbir özellik görüntülenebiliri etkilemiyor)"
# _developer\inspector.rpym:147
old " (default properties omitted)"
new " (varsayılan özellikler boş bırakıldı)"
# _developer\inspector.rpym:185
old "<repr() failed>"
new "<repr() başarısız>"
# _layout\classic_load_save.rpym:170
old "a"
new "a"
# _layout\classic_load_save.rpym:179
old "q"
new "q"
# 00iap.rpy:217
old "Contacting App Store\nPlease Wait..."
new "App Store'a Bağlanılıyor\nLütfen Bekleyin..."
# 00updater.rpy:375
old "The Ren'Py Updater is not supported on mobile devices."
new "Ren'Py Güncelleyicisi mobil cihazlarda desteklenmiyor."
# 00updater.rpy:494
old "An error is being simulated."
new "Bir hata canlandırması yapılıyor."
# 00updater.rpy:678
old "Either this project does not support updating, or the update status file was deleted."
new "Ya bu proje güncellemeyi desteklemiyor, ya da güncelleme durumu dosyası silinmiş."
# 00updater.rpy:692
old "This account does not have permission to perform an update."
new "Bu hesap güncelleme yetkisine sahip değil."
# 00updater.rpy:695
old "This account does not have permission to write the update log."
new "Bu hesap güncelleme kaydı yazma yetkisine sahip değil."
# 00updater.rpy:722
old "Could not verify update signature."
new "Güncelleme imzası doğrulanamadı."
# 00updater.rpy:997
old "The update file was not downloaded."
new "Güncelleme dosyası indirilmedi."
# 00updater.rpy:1015
old "The update file does not have the correct digest - it may have been corrupted."
new "Güncelleme dosyası doğru değil - bozulmuş olabilir."
# 00updater.rpy:1071
old "While unpacking {}, unknown type {}."
new "{} açılırken, bilinmeyen tür {}."
# 00updater.rpy:1439
old "Updater"
new "Güncelleyici"
# 00updater.rpy:1450
old "This program is up to date."
new "Bu program güncel"
# 00updater.rpy:1452
old "[u.version] is available. Do you want to install it?"
new "[u.version] mevcut. Yüklemek ister misiniz?"
# 00updater.rpy:1454
old "Preparing to download the updates."
new "Güncellemeyi indirmeye hazırlanıyor."
# 00updater.rpy:1456
old "Downloading the updates."
new "Güncelleme indiriliyor."
# 00updater.rpy:1458
old "Unpacking the updates."
new "Güncellemeler açılıyor."
# 00updater.rpy:1462
old "The updates have been installed. The program will restart."
new "Güncellemeler yüklendi. Program yeniden başlayacak."
# 00updater.rpy:1464
old "The updates have been installed."
new "Güncellemeler kuruldu."
# 00updater.rpy:1466
old "The updates were cancelled."
new "Güncelleme iptal edildi."
# 00gallery.rpy:587
old "Image [index] of [count] locked."
new "[index] resmin [count] kadarı kilitlendi."
# 00gallery.rpy:607
old "prev"
new "önceki"
# 00gallery.rpy:608
old "next"
new "sonraki"
# 00gallery.rpy:609
old "slideshow"
new "slayt gösterisi"
# 00gallery.rpy:610
old "return"
new "dön"
+75
View File
@@ -0,0 +1,75 @@
translate turkish strings:
# 00console.rpy:271
old "Press <esc> to exit console. Type help for help.\n"
new "Konsoldan çıkmak için <esc> tuşuna bas. Yardım için help yaz.\n"
# 00console.rpy:275
old "Ren'Py script enabled."
new "Ren'Py scripti etkin."
# 00console.rpy:277
old "Ren'Py script disabled."
new "Ren'Py scripti devre dışı."
# 00console.rpy:524
old "help: show this help"
new "yardım: bu yardımcıyı göster"
# 00console.rpy:529
old "commands:\n"
new "komutlar:\n"
# 00console.rpy:539
old " <renpy script statement>: run the statement\n"
new " <renpy script statement>: ifadeyi yürüt\n"
# 00console.rpy:541
old " <python expression or statement>: run the expression or statement"
new " <python expression or statement>: ibare ya da ifadeyi yürüt"
# 00console.rpy:549
old "clear: clear the console history"
new "clear: konsol geçmişini temizle"
# 00console.rpy:553
old "exit: exit the console"
new "exit: konsoldan çık"
# 00console.rpy:561
old "load <slot>: loads the game from slot"
new "load <slot>: slottan oyun yükle"
# 00console.rpy:574
old "save <slot>: saves the game in slot"
new "save <slot>: slota oyun kaydet"
# 00console.rpy:585
old "reload: reloads the game, refreshing the scripts"
new "reload: oyunu geri yükler, scriptleri yeniler"
# 00console.rpy:593
old "watch <expression>: watch a python expression"
new "watch <expression>: bir python ifadesini izle"
# 00console.rpy:619
old "unwatch <expression>: stop watching an expression"
new "unwatch <expression>: bir ifadeyi izlemeyi bırak"
# 00console.rpy:650
old "unwatchall: stop watching all expressions"
new "unwatchall: tüm ifadeleri izlemeyi bırak"
# 00console.rpy:667
old "jump <label>: jumps to label"
new "jump <label>: etikete atlar"
# 00console.rpy:680
old "short: Shorten the representation of objects on the console (default)."
new "short: Nesnelerin konsoldaki temsillerini kısalt (varsayılan)."
# 00console.rpy:685
old "long: Print the full representation of objects on the console."
new "long: Konsoldaki nsnelerin temsillerinin tamamını yaz."
+227
View File
@@ -0,0 +1,227 @@
translate turkish strings:
# 00gltest.rpy:70
old "Renderer"
new "Görüntü Oluşturucu"
# 00gltest.rpy:74
old "Automatically Choose"
new "Otomatik Seç"
# 00gltest.rpy:79
old "Force Angle/DirectX Renderer"
new "Angle/DirectX Görüntüye Zorla"
# 00gltest.rpy:83
old "Force OpenGL Renderer"
new "OpenGL Görüntüye Zorla"
# 00gltest.rpy:87
old "Force Software Renderer"
new "Yazılım Görüntüsüne Zorla"
# 00gltest.rpy:93
old "NPOT"
new "NPOT"
# 00gltest.rpy:97
old "Enable"
new "Etkinleştir"
# 00gltest.rpy:131
old "Powersave"
new "Powersave"
# 00gltest.rpy:145
old "Framerate"
new "Kare hızı"
# 00gltest.rpy:149
old "Screen"
new "Ekran"
# 00gltest.rpy:153
old "60"
new "60"
# 00gltest.rpy:157
old "30"
new "30"
# 00gltest.rpy:163
old "Tearing"
new "Tearing"
# 00gltest.rpy:179
old "Changes will take effect the next time this program is run."
new "Değişiklikler bu programın bir sonraki çalışmasında etkili olacak."
# 00gltest.rpy:213
old "Performance Warning"
new "Performans Uyarısı"
# 00gltest.rpy:218
old "This computer is using software rendering."
new "Bu bilgisayar yazılım görüntüleyicisini kullanıyor."
# 00gltest.rpy:220
old "This computer is not using shaders."
new "Bu bilgisayar shader kullanmıyor."
# 00gltest.rpy:222
old "This computer is displaying graphics slowly."
new "Bu bilgisayar grafikleri yavaş gösteriyor."
# 00gltest.rpy:224
old "This computer has a problem displaying graphics: [problem]."
new "Bu bilgisayarın grafik gösterme problemi var: [problem]."
# 00gltest.rpy:229
old "Its graphics drivers may be out of date or not operating correctly. This can lead to slow or incorrect graphics display. Updating DirectX could fix this problem."
new "Grafik sürücüleri düzgün çalışmıyor ya da eski olabilir. Bu yavaş ya da bozuk grafiklere sebep olabilir. DirectX'i gğncellemek bu problemi çözebilir."
# 00gltest.rpy:231
old "Its graphics drivers may be out of date or not operating correctly. This can lead to slow or incorrect graphics display."
new "Grafik sürücüleri düzgün çalışmıyor ya da eski olabilir. Bu yavaş ya da bozuk grafiklere sebep olabilir."
# 00gltest.rpy:236
old "Update DirectX"
new "DirectX'i Güncelle"
# 00gltest.rpy:242
old "Continue, Show this warning again"
new "Devam et, bu uyarıyı tekrar göster"
# 00gltest.rpy:246
old "Continue, Don't show warning again"
new "Devam et, bu uyarıyı tekrar gösterme"
# 00gltest.rpy:264
old "Updating DirectX."
new "DirectX Güncelleniyor"
# 00gltest.rpy:268
old "DirectX web setup has been started. It may start minimized in the taskbar. Please follow the prompts to install DirectX."
new "DirectX web kurulumu başladı. Araç çubuğuna küçültülmüş durumda başlamış olabilir. Lütfen DirectX'i kurmak için yönergeleri izleyin."
# 00gltest.rpy:272
old "{b}Note:{/b} Microsoft's DirectX web setup program will, by default, install the Bing toolbar. If you do not want this toolbar, uncheck the appropriate box."
new "{b}Not:{/b} Microsoft'un DirectX web kurulum programı, varsayılan olarak Bing araç çubuğunu da yükler. Bu araç çubuğunu istemiyorsanız, kutudaki tiki kaldırın."
# 00gltest.rpy:276
old "When setup finishes, please click below to restart this program."
new "Kurulum bittiğinde, lütfen programı yeniden başlatmak için aşağıya tıklayın."
# 00gltest.rpy:278
old "Restart"
new "Yeniden Başlat"
# 00gamepad.rpy:32
old "Select Gamepad to Calibrate"
new "Kalibre Etmek için Gamepad Seçin"
# 00gamepad.rpy:35
old "No Gamepads Available"
new "Mevcut Gamepad Yok"
# 00gamepad.rpy:54
old "Calibrating [name] ([i]/[total])"
new "Kalibre Ediliyor [name] ([i]/[total])"
# 00gamepad.rpy:58
old "Press or move the [control!r] [kind]."
new "Bas veya hareket ettir [control!r] [kind]."
# 00gamepad.rpy:66
old "Skip (A)"
new "Atla (A)"
# 00gamepad.rpy:69
old "Back (B)"
new "Geri (B)"
# _errorhandling.rpym:538
old "Open"
new "Aç"
# _errorhandling.rpym:540
old "Opens the traceback.txt file in a text editor."
new "traceback.txt dosyasını bir metin düzenleyicisinde açar."
# _errorhandling.rpym:542
old "Copy BBCode"
new "BBCode Kopyala"
# _errorhandling.rpym:544
old "Copies the traceback.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "traceback.txt dosyasını https://lemmasoft.renai.us/ gibi forumlarda kullanmak üzere BBcode olarak panoya kopyalar."
# _errorhandling.rpym:546
old "Copy Markdown"
new "Markdown Kopyala"
# _errorhandling.rpym:548
old "Copies the traceback.txt file to the clipboard as Markdown for Discord."
new "traceback.txt dosyasını Discord'da kullanmak üzere Markdown olarak panoya kopyalar."
# _errorhandling.rpym:577
old "An exception has occurred."
new "Bir hata meydana geldi."
# _errorhandling.rpym:597
old "Rollback"
new "Geri al"
# _errorhandling.rpym:599
old "Attempts a roll back to a prior time, allowing you to save or choose a different choice."
new "Kaydetmeniz ya da başka bir seçim yapmanız için önceki bir zamana geri almayı dener."
# _errorhandling.rpym:602
old "Ignore"
new "Yok say"
# _errorhandling.rpym:606
old "Ignores the exception, allowing you to continue."
new "Hatayı görmezden gelir ve devam etmenize izin verir."
# _errorhandling.rpym:608
old "Ignores the exception, allowing you to continue. This often leads to additional errors."
new "Hatayı görmezden gelir ve devam etmenize izin verir. Bu genelde ek hatalara yol açar."
# _errorhandling.rpym:612
old "Reload"
new "Yeniden yükle"
# _errorhandling.rpym:614
old "Reloads the game from disk, saving and restoring game state if possible."
new "Oyunu bellekten geri yükler, mümkünse oyun durumunu geri yükler ve kaydeder."
# _errorhandling.rpym:617
old "Console"
new "Konsol"
# _errorhandling.rpym:619
old "Opens a console to allow debugging the problem."
new "Hata ayıklamak için bir konsol açar."
# _errorhandling.rpym:629
old "Quits the game."
new "Oyundan çıkar."
# _errorhandling.rpym:653
old "Parsing the script failed."
new "Script ayrıştırma başarısız oldu."
# _errorhandling.rpym:679
old "Opens the errors.txt file in a text editor."
new "errors.txt dosyasını bir metin düzenleyicide açar."
# _errorhandling.rpym:683
old "Copies the errors.txt file to the clipboard as BBcode for forums like https://lemmasoft.renai.us/."
new "errors.txt dosyasını https://lemmasoft.renai.us/ gibi forumlarda kullanmak üzere BBcode olarak panoya kopyalar."
# _errorhandling.rpym:687
old "Copies the errors.txt file to the clipboard as Markdown for Discord."
new "errors.txt dosyasını Discord'da kullanmak üzere Markdown olarak panoya kopyalar."
+435
View File
@@ -0,0 +1,435 @@
translate turkish strings:
# gui.rpy:2
old "## Initialization"
new "## Başlatma"
# gui.rpy:5
old "## The init offset statement causes the initialization statements in this file to run before init statements in any other file."
new "## Başlatma uzaklık ifadesi bu dosyadaki başlatma ifadelerinin başka bir dosyadaki başlatma ifadelerinden önce çalışmasını sağlar."
# gui.rpy:9
old "## Calling gui.init resets the styles to sensible default values, and sets the width and height of the game."
new "## gui.init çağrısı duyarlı varsayılan stilleri sıfırlar, oyunun en ve boyunu ayarlar."
# gui.rpy:17
old "## GUI Configuration Variables"
new "## GUI Yapılandırma Değişkenleri"
# gui.rpy:21
old "## Colors"
new "## Renkler"
# gui.rpy:23
old "## The colors of text in the interface."
new "## Arayüzdeki metin renkleri"
# gui.rpy:25
old "## An accent color used throughout the interface to label and highlight text."
new "## Arayüzde başlık ve vurgulu metinlerde kullanılan bir renk"
# gui.rpy:29
old "## The color used for a text button when it is neither selected nor hovered."
new "## Bir metin düğmesi seçili ya da fare üstünde değilken kullanılan renk."
# gui.rpy:32
old "## The small color is used for small text, which needs to be brighter/darker to achieve the same effect."
new "## Küçük renk, aynı etkiyi yaratmak için daha parlak/koyu olması gereken küçük metin için kullanılır."
# gui.rpy:36
old "## The color that is used for buttons and bars that are hovered."
new "## Üstüne fare imleci tutulan düğme ve çubuklar için kullanılan renk."
# gui.rpy:39
old "## The color used for a text button when it is selected but not focused. A button is selected if it is the current screen or preference value."
new "## Odaklanmamış ancak seçilmiş bir metin düğmesi için kullanılan renk. Bir buton ancak ekranda ise ya da tercih değeri ise seçilir."
# gui.rpy:43
old "## The color used for a text button when it cannot be selected."
new "## Seçilemeyen bir metin düğmesinde kullanılan renk."
# gui.rpy:46
old "## Colors used for the portions of bars that are not filled in. These are not used directly, but are used when re-generating bar image files."
new "## Çubukların dolmamış parçaları için kullanılan renk. Direkt olarak kullanılmazlar, ancak resimleri yeniden yaratırken kullanılırlar."
# gui.rpy:51
old "## The colors used for dialogue and menu choice text."
new "## Diyalog ve menü seçimleri için kullanılan renkler."
# gui.rpy:56
old "## Fonts and Font Sizes"
new "## Fontlar ve Font Boyutları"
# gui.rpy:58
old "## The font used for in-game text."
new "## Oyun-içi metin için kullanılan font."
# gui.rpy:61
old "## The font used for character names."
new "## Karakter adları için kullanılan font."
# gui.rpy:64
old "## The font used for out-of-game text."
new "## Oyun-dışı metin için kullanılan font."
# gui.rpy:67
old "## The size of normal dialogue text."
new "## Normal diyalog metni için kullanılan boyut."
# gui.rpy:70
old "## The size of character names."
new "## Karakter adı boyutu."
# gui.rpy:73
old "## The size of text in the game's user interface."
new "## Oyun arayüzü için kullanılan metin boyutu."
# gui.rpy:76
old "## The size of labels in the game's user interface."
new "## Oyun arayüzünde kullanılan başlık boyutu."
# gui.rpy:79
old "## The size of text on the notify screen."
new "## Bildirim ekranındaki metin boyutu."
# gui.rpy:82
old "## The size of the game's title."
new "## Oyun başlığı boyutu."
# gui.rpy:86
old "## Main and Game Menus"
new "## Ana ve Oyun Menüleri"
# gui.rpy:88
old "## The images used for the main and game menus."
new "## Ana menü ve oyun menüsü için kullanılan resimler."
# gui.rpy:93
old "## Dialogue"
new "## Diyalog"
# gui.rpy:95
old "## These variables control how dialogue is displayed on the screen one line at a time."
new "## Bu değişkenler diyaloğun ekranda satır satır nasıl görüneceğini belirler."
# gui.rpy:98
old "## The height of the textbox containing dialogue."
new "## Diyalog metni kutusunun boyu."
# gui.rpy:101
old "## The placement of the textbox vertically on the screen. 0.0 is the top, 0.5 is center, and 1.0 is the bottom."
new "## Metin kutusunun dikey olarak ekrandaki yeri. 0.0 en üst, 0.5 merkez, 1.0 ise en alt."
# gui.rpy:106
old "## The placement of the speaking character's name, relative to the textbox. These can be a whole number of pixels from the left or top, or 0.5 to center."
new "## Konuşan karakterin adının metin kutusuna göre yerleştirilmesi. Soldan ya da üstten herhangi sayıda piksel olabilir, ya da 0.5 ile ortalanabilir."
# gui.rpy:111
old "## The horizontal alignment of the character's name. This can be 0.0 for left-aligned, 0.5 for centered, and 1.0 for right-aligned."
new "## Karakter adının yatay hizalanması. 0.0 ile sola yapıştırılabilir, 0.5 ile ortalanabilir ve 1.0 ile sağa yapıştırılabilir."
# gui.rpy:115
old "## The width, height, and borders of the box containing the character's name, or None to automatically size it."
new "## Karakter adını taşıyan kutunun eni, boyu ve sınırları. Otomatik boyutlandırma için seçim yapmayın."
# gui.rpy:120
old "## The borders of the box containing the character's name, in left, top, right, bottom order."
new "## Karakter adını taşıyan kutunun sınırları, sırasıyla sol, üst, sağ ve alt."
# gui.rpy:124
old "## If True, the background of the namebox will be tiled, if False, the background of the namebox will be scaled."
new "## Etkin ise isim kutusunun arkaplanı eğilecek, etkin değil ise arkaplan boyutlandırılacak."
# gui.rpy:129
old "## The placement of dialogue relative to the textbox. These can be a whole number of pixels relative to the left or top side of the textbox, or 0.5 to center."
new "## Metin kutusuna göre diyaloğun yerleştirilmesi. Soldan ya da üstten herhangi sayıda piksel olabilir, ya da 0.5 ile ortalanabilir."
# gui.rpy:135
old "## The maximum width of dialogue text, in pixels."
new "## Diyalog metninin piksel olarak maksimum genişliği."
# gui.rpy:138
old "## The horizontal alignment of the dialogue text. This can be 0.0 for left-aligned, 0.5 for centered, and 1.0 for right-aligned."
new "## Diyalog metninin yatay hizalandırılması. 0.0 ile sola yapıştırılabilir, 0.5 ile ortalanabilir ve 1.0 ile sağa yapıştırılabilir."
# gui.rpy:143
old "## Buttons"
new "## Düğmeler"
# gui.rpy:145
old "## These variables, along with the image files in gui/button, control aspects of how buttons are displayed."
new "## Bu değişkenler, gui/button'daki resim dosyaları ile birlikte hangi düğmelerin gösterileceğini kontrol eder."
# gui.rpy:148
old "## The width and height of a button, in pixels. If None, Ren'Py computes a size."
new "## Bir düğmenin piksel olarak eni ve boyu. Eğer seçilmezse, Ren'Py bir boyut hesaplar."
# gui.rpy:152
old "## The borders on each side of the button, in left, top, right, bottom order."
new "## Bir düğmenin sınırları, sırasıyla sol, üst, sağ ve alt."
# gui.rpy:155
old "## If True, the background image will be tiled. If False, the background image will be linearly scaled."
new "## Etkin ise arkaplan resmi eğilecek. Etkin değil ise arkaplan resmi doğrusal boyutlandırılacak."
# gui.rpy:159
old "## The font used by the button."
new "## Düğme tarafından kullanılan font."
# gui.rpy:162
old "## The size of the text used by the button."
new "## Düğme tarafından kullanılan metin boyutu."
# gui.rpy:165
old "## The color of button text in various states."
new "## Düğme metninin değişik durumlardaki rengi."
# gui.rpy:171
old "## The horizontal alignment of the button text. (0.0 is left, 0.5 is center, 1.0 is right)."
new "## Düğme metninin yatay hizalandırılması. (0.0 sol, 0.5 merkez, 1.0 sağ)."
# gui.rpy:176
old "## These variables override settings for different kinds of buttons. Please see the gui documentation for the kinds of buttons available, and what each is used for."
new "## Bu değişkenler değişik butonlarda kullanılan ayarların üstüne yazılır. Lütfen hangi düğmelerin mevcut olduğu ve ne için kullanıldıklarını öğrenmek için gui blgelerine bakınız."
# gui.rpy:180
old "## These customizations are used by the default interface:"
new "## Bu yapılandırmalar varsayılan arayüz tarafından kullanılır:"
# gui.rpy:195
old "## You can also add your own customizations, by adding properly-named variables. For example, you can uncomment the following line to set the width of a navigation button."
new "## Düzgün isimlendirilmiş değişkenler ekleyerek kendi düzenlemelerinizi de yapabilirsiniz. Örneğin bir sonraki yorum satırını aktifleştirerek bit navigasyon düğmesinin genişliğini ayarlayabilirsiniz."
# gui.rpy:202
old "## Choice Buttons"
new "## Seçim Düğmeleri"
# gui.rpy:204
old "## Choice buttons are used in the in-game menus."
new "## Seçim düğmeleri oyun içi menülerde kullanılır."
# gui.rpy:218
old "## File Slot Buttons"
new "## Dosya Solut Düğmeleri"
# gui.rpy:220
old "## A file slot button is a special kind of button. It contains a thumbnail image, and text describing the contents of the save slot. A save slot uses image files in gui/button, like the other kinds of buttons."
new "## Bir dosya slotu düğmesi özel bir tür düğmedir. Bir önizleme resmi ve kayıdın içeriğine dair bir metin içerir. Diğer düğmeler gibi bir kayıt slotu düğmesi de gui/button'daki resimleri kullanır."
# gui.rpy:224
old "## The save slot button."
new "## Kayıt slotu düğmesi."
# gui.rpy:234
old "## The width and height of thumbnails used by the save slots."
new "## Kayıt slotlarında kullanılan önizleme resminin boy ve eni."
# gui.rpy:238
old "## The number of columns and rows in the grid of save slots."
new "## Kayıt slotlarının gösterildiği satır ve sütun sayısı."
# gui.rpy:243
old "## Positioning and Spacing"
new "## Konumlandırma ve Boşluklar"
# gui.rpy:245
old "## These variables control the positioning and spacing of various user interface elements."
new "## Bu değişkenler değişik kullanıcı arayüzü elemanlarının yerlerini ve aralarındaki boşlukları kontrol eder."
# gui.rpy:248
old "## The position of the left side of the navigation buttons, relative to the left side of the screen."
new "## Navigasyon düğmelerinin sol taraflarının ekranın soluna göre konumları."
# gui.rpy:252
old "## The vertical position of the skip indicator."
new "## Atlama göstergesinin dikey konumu."
# gui.rpy:255
old "## The vertical position of the notify screen."
new "## Bildirim ekranının dikey konumu."
# gui.rpy:258
old "## The spacing between menu choices."
new "## Menü seçimleri arası boşluk."
# gui.rpy:261
old "## Buttons in the navigation section of the main and game menus."
new "## Ana menü ve oyun menülerindeki navigasyon bölümündeki düğmeler."
# gui.rpy:264
old "## Controls the amount of spacing between preferences."
new "## Tercihler arası boşluk miktarını kontrol eder."
# gui.rpy:267
old "## Controls the amount of spacing between preference buttons."
new "## Terchi düğmeleri arası boşluk miktarını kontrol eder."
# gui.rpy:270
old "## The spacing between file page buttons."
new "## Dosya sayfası düğmeleri arası boşluk."
# gui.rpy:273
old "## The spacing between file slots."
new "## Dosya slotları arası boşluk."
# gui.rpy:276
old "## The position of the main menu text."
new "## Ana menü metni konumu."
# gui.rpy:280
old "## Frames"
new "## Çerçeveler"
# gui.rpy:282
old "## These variables control the look of frames that can contain user interface components when an overlay or window is not present."
new "## Bu değişkenler bir pencere veya üst sayfa olmadığı zaman kullanıcı arayüzü elemanlarının görünümünü kontrol eder."
# gui.rpy:285
old "## Generic frames."
new "## Genel çerçeveler."
# gui.rpy:288
old "## The frame that is used as part of the confirm screen."
new "## Onay ekranının bir parçası olarak kullanılan çerçeve."
# gui.rpy:291
old "## The frame that is used as part of the skip screen."
new "## Atlama ekranının bir parçası olarak kullanılan çerçeve."
# gui.rpy:294
old "## The frame that is used as part of the notify screen."
new "## Bildirim ekranının bir parçası olarak kullanılan çerçeve."
# gui.rpy:297
old "## Should frame backgrounds be tiled?"
new "## Çerçeve arkaplanları eğimli olmalı mı ?"
# gui.rpy:301
old "## Bars, Scrollbars, and Sliders"
new "## Çubuklar, Kaydırma Çububkları ve Kaydırıcılar"
# gui.rpy:303
old "## These control the look and size of bars, scrollbars, and sliders."
new "## Bunlar çubuklar, kaydırma çububkları ve kaydırıcıların boyutunu kontrol eder."
# gui.rpy:305
old "## The default GUI only uses sliders and vertical scrollbars. All of the other bars are only used in creator-written screens."
new "## Varsayılan GUI yalnızca kaydırıcıları ve dikey kaydırma çubuklarını kullanır. Diğer bütün çubuklar sadece yaratıcı tarafından yazılmış ekranlarda kullanılır."
# gui.rpy:308
old "## The height of horizontal bars, scrollbars, and sliders. The width of vertical bars, scrollbars, and sliders."
new "## Yatay çubuklar, kaydırma çububkları ve kaydırıcıların boyu. Dikey çubuklar, kaydırma çububkları ve kaydırıcıların eni."
# gui.rpy:314
old "## True if bar images should be tiled. False if they should be linearly scaled."
new "## Eğer çubuk resimleri eğilmeliyse etkin. Eğer doğrusal boyutlandırılmalılar ise etkin değil."
# gui.rpy:319
old "## Horizontal borders."
new "## Yatay sınırlar."
# gui.rpy:324
old "## Vertical borders."
new "## Dikey sınırlar."
# gui.rpy:329
old "## What to do with unscrollable scrollbars in the gui. \"hide\" hides them, while None shows them."
new "## GUI'deki kaydırılamayan çubukların yapacağı eylem. \"hide\" onları saklar, seçim yapılmazsa gösterir."
# gui.rpy:334
old "## History"
new "## Geçmiş"
# gui.rpy:336
old "## The history screen displays dialogue that the player has already dismissed."
new "## Geçmiş ekranı oyuncunun halihazırda gördüğü diyaloğu gösterir."
# gui.rpy:338
old "## The number of blocks of dialogue history Ren'Py will keep."
new "## Ren'Py tarafından tutulacak diyalog bloklarının sayısı."
# gui.rpy:341
old "## The height of a history screen entry, or None to make the height variable at the cost of performance."
new "## Geçmiş ekranı girişinin boyu. Performans bedeliyle boyu değişken yapmak için seçim yapmayın."
# gui.rpy:345
old "## The position, width, and alignment of the label giving the name of the speaking character."
new "## Konuşan karakterin isminin konumu, genişliği ve hizalanması."
# gui.rpy:352
old "## The position, width, and alignment of the dialogue text."
new "## Diyalog metninin konumu, genişliği ve hizalanması."
# gui.rpy:359
old "## NVL-Mode"
new "## NVL-Modu"
# gui.rpy:361
old "## The NVL-mode screen displays the dialogue spoken by NVL-mode characters."
new "## NVL-mod ekran, NVL-mod karakterler tarafından konuşulan diyalogu gösterir."
# gui.rpy:363
old "## The borders of the background of the NVL-mode background window."
new "## NVL-mod arkaplan penceresinin sınırları."
# gui.rpy:366
old "## The maximum number of NVL-mode entries Ren'Py will display. When more entries than this are to be show, the oldest entry will be removed."
new "## Ren'Py tarafındad gösterilecek maksimum NVL-modu girişi sayısı. Bundan daha çok giriş gösterilmesi gerektiğinde, en eski giriş kaldırılacak."
# gui.rpy:370
old "## The height of an NVL-mode entry. Set this to None to have the entries dynamically adjust height."
new "## NVL-modu girişinin boyu. Boyun dinamik olarak değiştirilmesi için seçim yapmayın."
# gui.rpy:374
old "## The spacing between NVL-mode entries when gui.nvl_height is None, and between NVL-mode entries and an NVL-mode menu."
new "## gui.nvl_height seçili değilken NVL-modu girişleri arası, aynı zamanda NVL-modu menüsü ve NVL-modu girişleri arası boşluk."
# gui.rpy:391
old "## The position, width, and alignment of nvl_thought text (the text said by the nvl_narrator character.)"
new "## nvl_thought metninin konumu, genişliği ve hizalanması (nvl_narrator karakteri tarafından konuşulan metin.)"
# gui.rpy:398
old "## The position of nvl menu_buttons."
new "## nvl menu_button'ları konumu."
# gui.rpy:402
old "## Localization"
new "## Yerelleştirme"
# gui.rpy:404
old "## This controls where a line break is permitted. The default is suitable for most languages. A list of available values can be found at https://www.renpy.org/doc/html/style_properties.html#style-property-language"
new "## Satırları kırma iznini kontrol eder. Varsayılan ayar pek çok dile uygundur. Mevctu bütün değerler https://www.renpy.org/doc/html/style_properties.html#style-property-language adresinde bulunabilir."
# gui.rpy:412
old "## Mobile devices"
new "## Mobil cihazlar"
# gui.rpy:417
old "## This increases the size of the quick buttons to make them easier to touch on tablets and phones."
new "## Hızlı düğmelerin boyutlarını değiştirerek tablet ve telefonlarda dokunmayı kolaylaştırır."
# gui.rpy:423
old "## This changes the size and spacing of various GUI elements to ensure they are easily visible on phones."
new "## Telefonlarda kolayca görünebildiklerinden emin olmak için çeşitli GUI elemanlarının boy ve aralığını değiştirir."
# gui.rpy:427
old "## Font sizes."
new "## Font boyutları."
# gui.rpy:435
old "## Adjust the location of the textbox."
new "## Metin kutusunun konumunu ayarla."
# gui.rpy:441
old "## Change the size and spacing of various things."
new "## Çeiştli şeylerin boy ve aralığını ayarla."
# gui.rpy:454
old "## File button layout."
new "## Dosya düğmesi düzeni."
# gui.rpy:458
old "## NVL-mode."
new "## NVL-modu."
File diff suppressed because it is too large Load Diff
+203
View File
@@ -0,0 +1,203 @@
translate turkish strings:
# options.rpy:1
old "## This file contains options that can be changed to customize your game."
new "## Bu dosya oyununuzu özelleştirmek için değiştirlebilecek ayarları içerir."
# options.rpy:4
old "## Lines beginning with two '#' marks are comments, and you shouldn't uncomment them. Lines beginning with a single '#' mark are commented-out code, and you may want to uncomment them when appropriate."
new "## İki '#' ile başlayan satırlar yorumdur, öyle kalmalıdırlar. Tek '#' ile başlayan satırlar etkin olmayan kodlardır, gerekli olduğunda '#' işareti silinerek etkinleştirilebilirler."
# options.rpy:10
old "## Basics"
new "## Temeller"
# options.rpy:12
old "## A human-readable name of the game. This is used to set the default window title, and shows up in the interface and error reports."
new "## Oyunun insan tarafından okunabilir ismi. Varsayılan pencere başlığını ayarlamak için kullanılır, arayüzde ve hata raporlarında görünür."
# options.rpy:15
old "## The _() surrounding the string marks it as eligible for translation."
new "## Stringi çevreleyen _(), stringin çeviriye uygun olduğu anlamına gelir."
# options.rpy:17
old "Ren'Py 7 Default GUI"
new "Ren'Py 7 Varsayılan GUI"
# options.rpy:20
old "## Determines if the title given above is shown on the main menu screen. Set this to False to hide the title."
new "## Yukarıda yazılan başlığı ana menüde görünüp görünmeyeceğini belirler. Başlığı gizlemek için bunu etkinleştirmeyin."
# options.rpy:26
old "## The version of the game."
new "## Oyunun versiyonu."
# options.rpy:31
old "## Text that is placed on the game's about screen. Place the text between the triple-quotes, and leave a blank line between paragraphs."
new "## Oyunun 'hakkında' ekranına yerleştirilen metin. Metni üçlü-tırnak arasına yerleştirin, paragraflar arası boş bir satır bırakın."
# options.rpy:38
old "## A short name for the game used for executables and directories in the built distribution. This must be ASCII-only, and must not contain spaces, colons, or semicolons."
new "## Oyunun yayımlanacak derlemenin kısayollarında ve klasörlerinde kullanılacak kısa ismi. Bu sadece ASCII karakterleri içermeli; boşluk, iki nokta ya da noktalı virgül içermemeli."
# options.rpy:45
old "## Sounds and music"
new "## Sesler ve müzik"
# options.rpy:47
old "## These three variables control which mixers are shown to the player by default. Setting one of these to False will hide the appropriate mixer."
new "## Bu üç değişken oynatıcıda varsayılan olarak gösterilecek mixer'ları kontrol eder. Bunların birini etkisizleştirmek, uygun mixer'ı saklar."
# options.rpy:56
old "## To allow the user to play a test sound on the sound or voice channel, uncomment a line below and use it to set a sample sound to play."
new "## Kullanıcının ses kanalında bir örnek ses oynatabilmesine izin vermek istiyorsanız, aşağıdaki satırı etkinleştirin ve oynatılacak bir örnek ses seçin."
# options.rpy:63
old "## Uncomment the following line to set an audio file that will be played while the player is at the main menu. This file will continue playing into the game, until it is stopped or another file is played."
new "## Oyuncu ana menüdeyken oynatılacak bir ses dosyasını ayarlamak için aşağıdaki satırı etkinleştirin. Bu dosya oyun başladıktan sonra durdurulana ya da başka bir dosya oynatılana kadr çalmaya devam edecektir."
# options.rpy:70
old "## Transitions"
new "## Geçişler"
# options.rpy:72
old "## These variables set transitions that are used when certain events occur. Each variable should be set to a transition, or None to indicate that no transition should be used."
new "## Bu değişkenler belli olaylardan sonraki geçişleri ayarlamak için kullanılır. Her değişken bir geçişe ayarlanmalı, geçiş kullanılmak istenmiyorsa 'Hiçbiri' seçilmeli."
# options.rpy:76
old "## Entering or exiting the game menu."
new "## Oyun menüsüne giriş ve menüden çıkış."
# options.rpy:82
old "## Between screens of the game menu."
new "## Oyun menüleri ekranları arası."
# options.rpy:87
old "## A transition that is used after a game has been loaded."
new "## Oyun yüklendikten sonra kullanılan bir geçiş."
# options.rpy:92
old "## Used when entering the main menu after the game has ended."
new "## Oyun bittikten sonra ana menüye geçerken kullanılır."
# options.rpy:97
old "## A variable to set the transition used when the game starts does not exist. Instead, use a with statement after showing the initial scene."
new "## Oyun başlangı sırasında kullanılan geçiş için bir değişken yok. Onun yerine, sahneyi gösterdikten sonra bir 'with' ifadesi kullanın."
# options.rpy:102
old "## Window management"
new "## Pencere yönetimi"
# options.rpy:104
old "## This controls when the dialogue window is displayed. If \"show\", it is always displayed. If \"hide\", it is only displayed when dialogue is present. If \"auto\", the window is hidden before scene statements and shown again once dialogue is displayed."
new "## Bu, diyalog ekranının ne zaman gösterildiğini kontrol eder. Eğer \"show\" seçili ise, her zaman gösterilir. Eğer \"hide\" ise, sadece diyalog olduğu zaman gösterilir. Eğer \"auto\" ise, sahne ifadelerinde pencere gizlenir ve diyalog sırasında yeniden gösterilir."
# options.rpy:109
old "## After the game has started, this can be changed with the \"window show\", \"window hide\", and \"window auto\" statements."
new "## Bu, oyun başladıktan sonra \"window show\", \"window hide\", ve \"window auto\" ifadeleriyle değiştirilebilir."
# options.rpy:115
old "## Transitions used to show and hide the dialogue window"
new "## Diyalog penceresini gösterip gizlerken kullanılan geçişler"
# options.rpy:121
old "## Preference defaults"
new "## Tercih varsayılanları"
# options.rpy:123
old "## Controls the default text speed. The default, 0, is infinite, while any other number is the number of characters per second to type out."
new "## Varsayılan metin hızını kontrol eder. Varsayılan olan 0 sayısı metni anında gösterir, eğer başka bir sayı girilirse bu sayı saniye başına yazılan karakter hızını belirler."
# options.rpy:129
old "## The default auto-forward delay. Larger numbers lead to longer waits, with 0 to 30 being the valid range."
new "## Varsayılan oto-ileri-sarma beklemesi. Uzun sayılar daha uzun beklemeye yol açar, 0 ve 30 arası uygundur."
# options.rpy:135
old "## Save directory"
new "## Kayıt klasörü"
# options.rpy:137
old "## Controls the platform-specific place Ren'Py will place the save files for this game. The save files will be placed in:"
new "## Ren'Py'ın oyun kayıt dosyaları için kullanacağı, platforma özel olan yeri knotrol eder. Kayıt dosyaları şuraya yerleştirilecektir:"
# options.rpy:140
old "## Windows: %APPDATA\\RenPy\\<config.save_directory>"
new "## Windows: %APPDATA\\RenPy\\<config.save_directory>"
# options.rpy:142
old "## Macintosh: $HOME/Library/RenPy/<config.save_directory>"
new "## Macintosh: $HOME/Library/RenPy/<config.save_directory>"
# options.rpy:144
old "## Linux: $HOME/.renpy/<config.save_directory>"
new "## Linux: $HOME/.renpy/<config.save_directory>"
# options.rpy:146
old "## This generally should not be changed, and if it is, should always be a literal string, not an expression."
new "## Bu genelde değiştirilmemelidir, ancak değiştirilecekse mutlaka bir string olmalı, bir ifade değil."
# options.rpy:152
old "## Icon"
new "## İkon"
# options.rpy:154
old "## The icon displayed on the taskbar or dock."
new "## İşlem çubuğunda ya da kenetlenmiş durumda gösterilecek ikon."
# options.rpy:159
old "## Build configuration"
new "## Derleme yapılandırması"
# options.rpy:161
old "## This section controls how Ren'Py turns your project into distribution files."
new "## Bu bölüm Ren'Py'ın projenizi nasıl dağıtım dosyalarına dönüştüreceğini kontrol eder."
# options.rpy:166
old "## The following functions take file patterns. File patterns are case- insensitive, and matched against the path relative to the base directory, with and without a leading /. If multiple patterns match, the first is used."
new "## Bu fonksiyonlar dosya yolları gerektirir. Dosya yolları büyük-küçük harfe duyarsızdır ve başında ister / olsun ister olmasın ana klasöre göre eşleştirilirler. Eğer birden çok eşleşme olursa ilki kullanılır."
# options.rpy:171
old "## In a pattern:"
new "## Bir yolda:"
# options.rpy:173
old "## / is the directory separator."
new "## / karakteri klasör ayıracıdır."
# options.rpy:175
old "## * matches all characters, except the directory separator."
new "## * klasör ayıracı dışında bütün karakterleri eşleştirir."
# options.rpy:177
old "## ** matches all characters, including the directory separator."
new "## ** klasör ayıracı da dahil bütün karakterleri eşleştirir."
# options.rpy:179
old "## For example, \"*.txt\" matches txt files in the base directory, \"game/**.ogg\" matches ogg files in the game directory or any of its subdirectories, and \"**.psd\" matches psd files anywhere in the project."
new "## Örneğin, \"*.txt\" ana klasördeki bütün txt dosyalarını, \"game/**.ogg\" oyun klasöründeki ve alt klasörlerdeki bütün ogg'leri, \"**.psd\" ise projenin herhangi bir yerindeki tüm psd dosyalarını eşleştirir."
# options.rpy:183
old "## Classify files as None to exclude them from the built distributions."
new "## Dosyaları derlenmiş dağıtımlardan ayırmak için 'Hiçbiri (None)' olarak sınıflandırın."
# options.rpy:191
old "## To archive files, classify them as 'archive'."
new "## Dosyaları arşivlemek için 'arşiv' olarak sınıflandırın."
# options.rpy:196
old "## Files matching documentation patterns are duplicated in a mac app build, so they appear in both the app and the zip file."
new "## Doküman yollarıyla eşleşen dosyalar mac uygulaması derlemesinde kopyalanır, böylece hem uygulamada hem de zip dosyasında görünürler."
# options.rpy:202
old "## Set this to a string containing your Apple Developer ID Application to enable codesigning on the Mac. Be sure to change it to your own Apple-issued ID."
new "## Mac'te codesigning'i etkinleştirmek için bunu Apple Developer ID Application'ınızı içeren bir stringe ayarlayın. Bunun size Apple tarafından verilen ID olduğuna emin olun."
# options.rpy:209
old "## A Google Play license key is required to download expansion files and perform in-app purchases. It can be found on the \"Services & APIs\" page of the Google Play developer console."
new "## Uygulama içi satın alma ve genişletme paketleri indirmek için bir Google Play lisans anahtarı gerekir. Bu, Google Play geliştirici konsolunda \"Services & APIs\" sayfasında bulunabilir."
# options.rpy:216
old "## The username and project name associated with an itch.io project, separated by a slash."
new "## itch.io projesine bağlı, eğik çizgi ile ayrılmış kullanıcı adı ve proje adı."
+675
View File
@@ -0,0 +1,675 @@
translate turkish strings:
# screens.rpy:9
old "## Styles"
new "## Stiller"
# screens.rpy:81
old "## In-game screens"
new "## Oyun içi ekranlar"
# screens.rpy:85
old "## Say screen"
new "## Söyleme ekranı"
# screens.rpy:87
old "## The say screen is used to display dialogue to the player. It takes two parameters, who and what, which are the name of the speaking character and the text to be displayed, respectively. (The who parameter can be None if no name is given.)"
new "## Söyleme ekranı oyuncuya diyalogu göstermek için kullanılır. İki parametre alır; kim ve ne. Bunlar sırasıyla konuşan karaktere ve gösterliecek metne karşılık gelir. (Eğer isim verilmezse 'kim' parametresi Hiçbiri (None) olabilir.)"
# screens.rpy:92
old "## This screen must create a text displayable with id \"what\", as Ren'Py uses this to manage text display. It can also create displayables with id \"who\" and id \"window\" to apply style properties."
new "## Ren'Py, bu ekranı gösterilen metni düzenlemek için kullandığından \"what\" id'si ile gösterilebilir bir metin yaratmalıdır. Aynı zamanda gösterilebilir yaratmak için \"who\" ve stil özelliklerini uygulamak için \"window\" id'lerini alabilir."
# screens.rpy:96
old "## https://www.renpy.org/doc/html/screen_special.html#say"
new "## https://www.renpy.org/doc/html/screen_special.html#say"
# screens.rpy:114
old "## If there's a side image, display it above the text. Do not display on the phone variant - there's no room."
new "## Bir yan resim varsa, metnin üzerinde göster. Telefon versiyonunda gösterme - yeterince yer yok."
# screens.rpy:120
old "## Make the namebox available for styling through the Character object."
new "## Karakter nesnesi aracılığıyla isim kutusunun stillendirilmesine izin ver."
# screens.rpy:164
old "## Input screen"
new "## Giriş ekranı"
# screens.rpy:166
old "## This screen is used to display renpy.input. The prompt parameter is used to pass a text prompt in."
new "## Bu ekran renpy.input'u göstermek için kullanılır. Komut istemi parametresi bir metin komutu aktarmak için kullanılır."
# screens.rpy:169
old "## This screen must create an input displayable with id \"input\" to accept the various input parameters."
new "## Bu ekran çeşitli giriş parametrelerini kabul etmek için \"input\" id'si ile bir giriş göstermeli."
# screens.rpy:172
old "## https://www.renpy.org/doc/html/screen_special.html#input"
new "## https://www.renpy.org/doc/html/screen_special.html#input"
# screens.rpy:199
old "## Choice screen"
new "## Seçim ekranı"
# screens.rpy:201
old "## This screen is used to display the in-game choices presented by the menu statement. The one parameter, items, is a list of objects, each with caption and action fields."
new "## Bu ekran menü ifadesiyle sunulan oyun içi seçimleri göstermek için kullanılır. Tek parametre olan maddeler, nesne listeleridir; her birinin başlığı ve eylem alanı vardır."
# screens.rpy:205
old "## https://www.renpy.org/doc/html/screen_special.html#choice"
new "## https://www.renpy.org/doc/html/screen_special.html#choice"
# screens.rpy:215
old "## When this is true, menu captions will be spoken by the narrator. When false, menu captions will be displayed as empty buttons."
new "## Bu etkinken, menü başlıkları anlatıcı tarafından okunur. Etkin değilken, menü başlıkları boş düğmeler olarak gösterilir."
# screens.rpy:238
old "## Quick Menu screen"
new "## Hızlı Menü ekranı"
# screens.rpy:240
old "## The quick menu is displayed in-game to provide easy access to the out-of-game menus."
new "## Hızlı menü, oyun-dışı menülere kolay erişim için oyunda gösterilir."
# screens.rpy:245
old "## Ensure this appears on top of other screens."
new "## Bunun diğer ekranlar üzerinde göründüğünden emin olun."
# screens.rpy:256
old "Back"
new "Geri"
# screens.rpy:257
old "History"
new "Geçmiş"
# screens.rpy:258
old "Skip"
new "Atla"
# screens.rpy:259
old "Auto"
new "Oto"
# screens.rpy:260
old "Save"
new "Kayıt"
# screens.rpy:261
old "Q.Save"
new "H.Kayıt"
# screens.rpy:262
old "Q.Load"
new "H.Yükle"
# screens.rpy:263
old "Prefs"
new "Tercih"
# screens.rpy:266
old "## This code ensures that the quick_menu screen is displayed in-game, whenever the player has not explicitly hidden the interface."
new "## Bu kod, oyuncu kasten arayüzü gizlemediği sürece hızlı menünün oyunda gösterildiğinden emin olmak içindir."
# screens.rpy:284
old "## Main and Game Menu Screens"
new "## Ana Menü ve Oyun Menüsü Ekranları"
# screens.rpy:287
old "## Navigation screen"
new "## Gezinti ekranı"
# screens.rpy:289
old "## This screen is included in the main and game menus, and provides navigation to other menus, and to start the game."
new "## Bu ekran ana menü ve oyun menülerindedir, diğer menülere gezintiyi sağlar veya oyunu başlatabilir."
# screens.rpy:304
old "Start"
new "Başla"
# screens.rpy:312
old "Load"
new "Yükle"
# screens.rpy:314
old "Preferences"
new "Tercihler"
# screens.rpy:318
old "End Replay"
new "Yeniden Oynatmayı Durdur"
# screens.rpy:322
old "Main Menu"
new "Ana Menü"
# screens.rpy:324
old "About"
new "Hakkında"
# screens.rpy:328
old "## Help isn't necessary or relevant to mobile devices."
new "## Yardım mobil cihazlarla alakalı ya da gerekli değildir."
# screens.rpy:329
old "Help"
new "Yardım"
# screens.rpy:331
old "## The quit button is banned on iOS and unnecessary on Android."
new "## Çıkış butonu iOS'ta yasak ve Android'de gereksizdir."
# screens.rpy:332
old "Quit"
new "Çıkış"
# screens.rpy:346
old "## Main Menu screen"
new "## Ana Menü ekranı"
# screens.rpy:348
old "## Used to display the main menu when Ren'Py starts."
new "## Ren'Py başlatıldığında ana menüyü göstermek için kullanılır."
# screens.rpy:350
old "## https://www.renpy.org/doc/html/screen_special.html#main-menu"
new "## https://www.renpy.org/doc/html/screen_special.html#main-menu"
# screens.rpy:354
old "## This ensures that any other menu screen is replaced."
new "## Bu diğer herhangi bir menünün aktif olmadığından emin olur."
# screens.rpy:361
old "## This empty frame darkens the main menu."
new "## Bu boş çerçeve ana menüyü karartır."
# screens.rpy:365
old "## The use statement includes another screen inside this one. The actual contents of the main menu are in the navigation screen."
new "## Kullan ifadesi bunun içine başka bir ekranı dahil eder. Ana menünün asıl içeriği gezinti ekranındadır."
# screens.rpy:408
old "## Game Menu screen"
new "## Oyun Menüsü ekranı"
# screens.rpy:410
old "## This lays out the basic common structure of a game menu screen. It's called with the screen title, and displays the background, title, and navigation."
new "## Bu, bir oyun menüsünün temel yapısını ortaya koyar. Ekran başlığı ile çağrılır; arka planı, başlığı ve gezinmeyi gösterir."
# screens.rpy:413
old "## The scroll parameter can be None, or one of \"viewport\" or \"vpgrid\". When this screen is intended to be used with one or more children, which are transcluded (placed) inside it."
new "## Kaydırma parametresi Hiçbiri (None), \"viewport\" veya \"vpgrid\" olabilir. Bu ekran, içine yerleştirilen bir veya birden çok alt nesne (children) ile kullanılmak içindir."
# screens.rpy:431
old "## Reserve space for the navigation section."
new "## Gezinti bölmesi için yer ayır."
# screens.rpy:473
old "Return"
new "Dön"
# screens.rpy:536
old "## About screen"
new "## Hakkında ekranı"
# screens.rpy:538
old "## This screen gives credit and copyright information about the game and Ren'Py."
new "## Bu ekran oyun ve Ren'Py ile ilgili telif hakkı ve atıf bilgisi içerir."
# screens.rpy:541
old "## There's nothing special about this screen, and hence it also serves as an example of how to make a custom screen."
new "## Bu ekranla ilgili özel bir şey yoktur. Özelleştirilmiş bir ekran yaratmak için örnek olarak kullanılabilir."
# screens.rpy:548
old "## This use statement includes the game_menu screen inside this one. The vbox child is then included inside the viewport inside the game_menu screen."
new "## Bu kullan ifadesi bu ekrana oyun menüsünü dahil eder. Vbox alt nesnesi (child) daha sonra oyun menüsü ekranındaki gözlemci (viewport) içine yerleştirilir."
# screens.rpy:558
old "Version [config.version!t]\n"
new "Versiyon [config.version!t]\n"
# screens.rpy:560
old "## gui.about is usually set in options.rpy."
new "## gui.about genelde options.rpy'de ayarlanır."
# screens.rpy:564
old "Made with {a=https://www.renpy.org/}Ren'Py{/a} [renpy.version_only].\n\n[renpy.license!t]"
new "{a=https://www.renpy.org/}Ren'Py{/a} [renpy.version_only].\n\n[renpy.license!t] ile yapılmıştır."
# screens.rpy:567
old "## This is redefined in options.rpy to add text to the about screen."
new "## Bu, hakkında ekranına metin eklemek için options.rpy'de yeniden tanımlanmıştır."
# screens.rpy:579
old "## Load and Save screens"
new "## Yükleme ve Kayıt ekranları"
# screens.rpy:581
old "## These screens are responsible for letting the player save the game and load it again. Since they share nearly everything in common, both are implemented in terms of a third screen, file_slots."
new "## Bu ekranlar oyuncunun oyunu kaydetmesi ve yeniden yüklemesi içindir. İkisi de neredeyse aynı olduğundan üçüncü bir ekran olan file_slots olarak eklenmiştir."
# screens.rpy:585
old "## https://www.renpy.org/doc/html/screen_special.html#save https://www.renpy.org/doc/html/screen_special.html#load"
new "## https://www.renpy.org/doc/html/screen_special.html#save https://www.renpy.org/doc/html/screen_special.html#load"
# screens.rpy:604
old "Page {}"
new "Sayfa {}"
# screens.rpy:604
old "Automatic saves"
new "Otomatik kayıtlar"
# screens.rpy:604
old "Quick saves"
new "Hızlı kayıtlar"
# screens.rpy:610
old "## This ensures the input will get the enter event before any of the buttons do."
new "## Bu, girişin diğer bütün düğmelerden önce önce giriş olayını almasını sağlar."
# screens.rpy:614
old "## The page name, which can be edited by clicking on a button."
new "## Bir düğmeye basılarak düzenlenebilen sayfa adı."
# screens.rpy:626
old "## The grid of file slots."
new "## Dosya slotları ızgarası."
# screens.rpy:646
old "{#file_time}%A, %B %d %Y, %H:%M"
new "{#file_time}%A, %B %d %Y, %H:%M"
# screens.rpy:646
old "empty slot"
new "boş slot"
# screens.rpy:654
old "## Buttons to access other pages."
new "## Diğer sayfalara ulaşmak için düğmeler."
# screens.rpy:663
old "<"
new "<"
# screens.rpy:666
old "{#auto_page}A"
new "{#auto_page}A"
# screens.rpy:669
old "{#quick_page}Q"
new "{#quick_page}Q"
# screens.rpy:671
old "## range(1, 10) gives the numbers from 1 to 9."
new "## range(1, 10) ifadesi 1'den 9'a kadar sayıları verir."
# screens.rpy:675
old ">"
new ">"
# screens.rpy:710
old "## Preferences screen"
new "Tercihler ekranı"
# screens.rpy:712
old "## The preferences screen allows the player to configure the game to better suit themselves."
new "## Tercihler ekranı oyuncunun oyunu kendisine uygun şekilde yapılandırmasını sağlar."
# screens.rpy:715
old "## https://www.renpy.org/doc/html/screen_special.html#preferences"
new "## https://www.renpy.org/doc/html/screen_special.html#preferences"
# screens.rpy:732
old "Display"
new "Görüntü"
# screens.rpy:733
old "Window"
new "Pencere"
# screens.rpy:734
old "Fullscreen"
new "Tam ekran"
# screens.rpy:738
old "Rollback Side"
new "Geri-Sarma Yanı"
# screens.rpy:739
old "Disable"
new "Devre Dışı Bırak"
# screens.rpy:740
old "Left"
new "Sol"
# screens.rpy:741
old "Right"
new "Sağ"
# screens.rpy:746
old "Unseen Text"
new "Görülmemiş Metin"
# screens.rpy:747
old "After Choices"
new "Seçim Sonrası"
# screens.rpy:748
old "Transitions"
new "Geçişler"
# screens.rpy:750
old "## Additional vboxes of type \"radio_pref\" or \"check_pref\" can be added here, to add additional creator-defined preferences."
new "## \"radio_pref\" veya \"check_pref\" türündeki ek vbox'lar, yaratıcı tarafından belirlenmiş tercihlere burada eklenebilir."
# screens.rpy:761
old "Text Speed"
new "Metin Hızı"
# screens.rpy:765
old "Auto-Forward Time"
new "Zamanı Oto İleri Sar"
# screens.rpy:772
old "Music Volume"
new "Müzik Düzeyi"
# screens.rpy:779
old "Sound Volume"
new "Ses Düzeyi"
# screens.rpy:785
old "Test"
new "Test"
# screens.rpy:789
old "Voice Volume"
new "Konuşma Düzeyi"
# screens.rpy:800
old "Mute All"
new "Hepsini Sustur"
# screens.rpy:876
old "## History screen"
new "## Geçmiş ekranı"
# screens.rpy:878
old "## This is a screen that displays the dialogue history to the player. While there isn't anything special about this screen, it does have to access the dialogue history stored in _history_list."
new "## Bu ekran oyuncuya diyalog geçmişini gösterir. Bu ekranla ilgili özel bir şey olmasa da _history_list'te depolanmış diyalog geçmişine erişmesi gerekmektedir."
# screens.rpy:882
old "## https://www.renpy.org/doc/html/history.html"
new "## https://www.renpy.org/doc/html/history.html"
# screens.rpy:888
old "## Avoid predicting this screen, as it can be very large."
new "## Bu ekranı öngörmekten uzak dur, çünkü çok büyük olabilir."
# screens.rpy:899
old "## This lays things out properly if history_height is None."
new "## Geçmiş yüksekliği (history_height) yok ise her şeyi düzgünce yerleştirir."
# screens.rpy:909
old "## Take the color of the who text from the Character, if set."
new "## Eğer seçili ise, Karakter'den metin rengini al."
# screens.rpy:918
old "The dialogue history is empty."
new "Diyalog geçmişi boş."
# screens.rpy:921
old "## This determines what tags are allowed to be displayed on the history screen."
new "## Geçmiş ekranında ne tür etiketlerin gösterilmesine izin verileceğini belirler."
# screens.rpy:968
old "## Help screen"
new "## Yardım ekranı"
# screens.rpy:970
old "## A screen that gives information about key and mouse bindings. It uses other screens (keyboard_help, mouse_help, and gamepad_help) to display the actual help."
new "## Tuş ve fare girdileriyle ilgili bilgi veren bir ekran. Asıl yardımı görüntülemek için diğer ekranları kullanır. (keyboard_help, mouse_help, ve gamepad_help)"
# screens.rpy:989
old "Keyboard"
new "Klavye"
# screens.rpy:990
old "Mouse"
new "Fare"
# screens.rpy:993
old "Gamepad"
new "Gamepad"
# screens.rpy:1006
old "Enter"
new "Enter"
# screens.rpy:1007
old "Advances dialogue and activates the interface."
new "Diyalogu ilerletir ve arayüzü aktifleştirir."
# screens.rpy:1010
old "Space"
new "Boşluk"
# screens.rpy:1011
old "Advances dialogue without selecting choices."
new "Seçim yapmadan diyalogu ilerletir."
# screens.rpy:1014
old "Arrow Keys"
new "Ok Tuşları"
# screens.rpy:1015
old "Navigate the interface."
new "Arayüzde gezinmeyi sağlar."
# screens.rpy:1018
old "Escape"
new "Escape"
# screens.rpy:1019
old "Accesses the game menu."
new "Oyun menüsüne erişir."
# screens.rpy:1022
old "Ctrl"
new "Ctrl"
# screens.rpy:1023
old "Skips dialogue while held down."
new "Basılı iken diyalogu atlar."
# screens.rpy:1026
old "Tab"
new "Tab"
# screens.rpy:1027
old "Toggles dialogue skipping."
new "Diyalog atlamayı etkinleştirir ya da devre dışı bırakır."
# screens.rpy:1030
old "Page Up"
new "Page Up"
# screens.rpy:1031
old "Rolls back to earlier dialogue."
new "Önceki diyaloga geri sarar."
# screens.rpy:1034
old "Page Down"
new "Page Down"
# screens.rpy:1035
old "Rolls forward to later dialogue."
new "Daha yeni diyaloga ileri sarar."
# screens.rpy:1039
old "Hides the user interface."
new "Kullanıcı arayüzünü gizler."
# screens.rpy:1043
old "Takes a screenshot."
new "Ekran görüntüsü kaydeder."
# screens.rpy:1047
old "Toggles assistive {a=https://www.renpy.org/l/voicing}self-voicing{/a}."
new "Yardımcı {a=https://www.renpy.org/l/voicing}kendiliğniden-seslendirme{/a}yi açar veya kapatır."
# screens.rpy:1053
old "Left Click"
new "Sol Tıklama"
# screens.rpy:1057
old "Middle Click"
new "Orta Tıklama"
# screens.rpy:1061
old "Right Click"
new "Sağ Tıklama"
# screens.rpy:1065
old "Mouse Wheel Up\nClick Rollback Side"
new "Fare Tekerleği Yukarı\nGeri Sarma Tarafına Tıklama"
# screens.rpy:1069
old "Mouse Wheel Down"
new "Fare Tekerleği Aşağı"
# screens.rpy:1076
old "Right Trigger\nA/Bottom Button"
new "Sağ Trigger\nA/Alt Tuş"
# screens.rpy:1080
old "Left Trigger\nLeft Shoulder"
new "Sol Trigger\nSol Omuz"
# screens.rpy:1084
old "Right Shoulder"
new "Sağ Omuz"
# screens.rpy:1089
old "D-Pad, Sticks"
new "D-Pad, Çubuklar"
# screens.rpy:1093
old "Start, Guide"
new "Başla, Rehber"
# screens.rpy:1097
old "Y/Top Button"
new "Y/Üst Tuş"
# screens.rpy:1100
old "Calibrate"
new "Kalibre Et"
# screens.rpy:1128
old "## Additional screens"
new "## Ek ekranlar"
# screens.rpy:1132
old "## Confirm screen"
new "## Doğrulama ekranı"
# screens.rpy:1134
old "## The confirm screen is called when Ren'Py wants to ask the player a yes or no question."
new "## Doğrulama ekranı, Ren'Py oyuncuya bir evet-hayır sorusu sorduğunda kullanılır."
# screens.rpy:1137
old "## https://www.renpy.org/doc/html/screen_special.html#confirm"
new "## https://www.renpy.org/doc/html/screen_special.html#confirm"
# screens.rpy:1141
old "## Ensure other screens do not get input while this screen is displayed."
new "## Bu ekran gösterilirken diğer ekranların girdi almamasını sağla."
# screens.rpy:1165
old "Yes"
new "Evet"
# screens.rpy:1166
old "No"
new "Hayır"
# screens.rpy:1168
old "## Right-click and escape answer \"no\"."
new "## Sağ tık ve Escape \"no\" anlamına gelir."
# screens.rpy:1195
old "## Skip indicator screen"
new "## Atlama gösterge ekranı"
# screens.rpy:1197
old "## The skip_indicator screen is displayed to indicate that skipping is in progress."
new "## Atlama gösterge ekranı, atlama işleminin devam ettiğini gösterir."
# screens.rpy:1200
old "## https://www.renpy.org/doc/html/screen_special.html#skip-indicator"
new "## https://www.renpy.org/doc/html/screen_special.html#skip-indicator"
# screens.rpy:1212
old "Skipping"
new "Atlama"
# screens.rpy:1219
old "## This transform is used to blink the arrows one after another."
new "## Bu transform, okları arka arkaya yakıp söndürmek için kullanılır."
# screens.rpy:1246
old "## We have to use a font that has the BLACK RIGHT-POINTING SMALL TRIANGLE glyph in it."
new "## İçinde SİYAH, SAĞI GÖSTEREN KÜÇÜK ÜÇGEN olan bir font kullanmalıyız."
# screens.rpy:1251
old "## Notify screen"
new "## Bildirim ekranı"
# screens.rpy:1253
old "## The notify screen is used to show the player a message. (For example, when the game is quicksaved or a screenshot has been taken.)"
new "## Bildirim ekranı oyuncuya bir mesaj göstermek için kullanılır. (Mesela hızlı kayıt yapıldığında veya ekran görüntüsü alındığında.)"
# screens.rpy:1256
old "## https://www.renpy.org/doc/html/screen_special.html#notify-screen"
new "## https://www.renpy.org/doc/html/screen_special.html#notify-screen"
# screens.rpy:1290
old "## NVL screen"
new "## NVL ekranı"
# screens.rpy:1292
old "## This screen is used for NVL-mode dialogue and menus."
new "## Bu ekran NVL-modu diyalogları ve menüleri için kullanılır."
# screens.rpy:1294
old "## https://www.renpy.org/doc/html/screen_special.html#nvl"
new "## https://www.renpy.org/doc/html/screen_special.html#nvl"
# screens.rpy:1305
old "## Displays dialogue in either a vpgrid or the vbox."
new "## Diyalogu vpgrid ya da vbox'ta gösterir."
# screens.rpy:1318
old "## Displays the menu, if given. The menu may be displayed incorrectly if config.narrator_menu is set to True, as it is above."
new "## Eğer varsa menüyü gösterir. Eğer yukarıdaki gibi config.narrator_menu etkinse menü yanlış gösterilebilir."
# screens.rpy:1348
old "## This controls the maximum number of NVL-mode entries that can be displayed at once."
new "## Bu, bir seferde gösterilen NVL-modu girdilerinin maksimum sayısını kontrol eder."
# screens.rpy:1410
old "## Mobile Variants"
new "## Mobil Varyasyonlar"
# screens.rpy:1417
old "## Since a mouse may not be present, we replace the quick menu with a version that uses fewer and bigger buttons that are easier to touch."
new "## Fare olmayabileceği için, hızlı menüyü dokunması daha kolay olan daha büyük ve daha az düğmeli bir versiyonu ile değiştiririz."
# screens.rpy:1435
old "Menu"
new "Menü"
+32
View File
@@ -0,0 +1,32 @@
# Oyun kodlaması bu dosyadadir.
# Oyundaki karakterleri tanimla. Renk argumani karakterin
# isminin rengini belirler.
define e = Character("Eileen")
# Oyun burada baslar.
label start:
# Bir arkaplan goster. Varsayilan olarak bir yer tutucu kullanilir, ancak siz
# resimler klasorune bir dosya ekleyerek (bg room.png ya da bg room.jpg adinda)
# eklediginiz resmi gosterebilirsiniz.
scene bg room
# Bu bir karakteri gösterir. Şimdilik bir yer tutucu kullaniliyor, ama siz
# "eileen happy.png" isimli bir dosyayi resimler klasörüne ekleyerek
# istediğiniz resmi gösterebilirsiniz.
show eileen happy
# Bunlar diyalog satirlarini gosterir.
e "Yeni bir Ren'Py oyunu yarattiniz."
e "Hikaye, resimler ve müzikleri ekledikten sonra, bütün dünya ile paylaşabilirsiniz!"
# Bu oyunu bitirir.
return
+2 -2
View File
@@ -606,8 +606,8 @@ translate vietnamese strings:
new "LỖI"
# interface.rpy:356
old "While [what!q], an error occured:"
new "Trong khi [what!q], một lỗi xảy ra:"
old "While [what!qt], an error occured:"
new "Trong khi [what!qt], một lỗi xảy ra:"
# interface.rpy:356
old "[exception!q]"
+2 -2
View File
@@ -191,11 +191,11 @@ label update:
import json
import ssl
with interface.error_handling("downloading the list of update channels"):
with interface.error_handling(_("downloading the list of update channels")):
context = ssl._create_unverified_context()
channel_data = urllib2.urlopen(CHANNELS_URL, context=context)
with interface.error_handling("parsing the list of update channels"):
with interface.error_handling(_("parsing the list of update channels")):
channels = json.load(channel_data)["releases"]
renpy.call_screen("update_channel", channels)
+10 -4
View File
@@ -27,6 +27,7 @@ init python:
import shutil
import webserver
import io
WEB_PATH = None
@@ -91,12 +92,12 @@ init python:
shutil.copy(os.path.join(WEB_PATH, fn), os.path.join(destination, fn))
# Copy over index.html.
with open(os.path.join(WEB_PATH, "index.html")) as f:
with io.open(os.path.join(WEB_PATH, "index.html"), encoding='utf-8') as f:
html = f.read()
html = html.replace("%%TITLE%%", display_name.encode("utf-8"))
html = html.replace("%%TITLE%%", display_name)
with open(os.path.join(destination, "index.html"), "w") as f:
with io.open(os.path.join(destination, "index.html"), "w", encoding='utf-8') as f:
f.write(html)
webserver.start(destination)
@@ -147,7 +148,8 @@ screen web():
textbutton _("Build Web Application") action Jump("web_build")
textbutton _("Build and Open in Browser") action Jump("web_launch")
textbutton _("Open without Build") action Jump("web_start")
textbutton _("Open in Browser") action Jump("web_start")
textbutton _("Open build directory") action Jump("open_build_directory")
add SPACER
@@ -209,6 +211,10 @@ label web_launch:
$ launch_web()
jump web
label open_build_directory():
$ project.current.update_dump(True, gui=True)
$ OpenDirectory(get_web_destination(project.current))()
jump web
label web_start:
$ project.current.update_dump(True, gui=True)
+17 -6
View File
@@ -20,7 +20,7 @@
static int audio_equal_mono = 1;
/* The weight of stereo channels when audio_equal_mono is true. */
static float stereo_matrix[] = { 1.0, 1.0 };
static double stereo_matrix[] = { 1.0, 1.0 };
/* The output audio sample rate. */
static int audio_sample_rate = 44100;
@@ -571,19 +571,30 @@ static void decode_audio(MediaState *ms) {
break;
}
converted_frame = av_frame_alloc();
converted_frame->sample_rate = audio_sample_rate;
converted_frame->channel_layout = AV_CH_LAYOUT_STEREO;
converted_frame->format = AV_SAMPLE_FMT_S16;
if (!ms->audio_decode_frame->channel_layout) {
ms->audio_decode_frame->channel_layout = av_get_default_channel_layout(ms->audio_decode_frame->channels);
if (audio_equal_mono && (ms->audio_decode_frame->channels == 1)) {
swr_alloc_set_opts(
ms->swr,
converted_frame->channel_layout,
converted_frame->format,
converted_frame->sample_rate,
ms->audio_decode_frame->channel_layout,
ms->audio_decode_frame->format,
ms->audio_decode_frame->sample_rate,
0,
NULL);
swr_set_matrix(ms->swr, stereo_matrix, 1);
}
}
converted_frame = av_frame_alloc();
converted_frame->sample_rate = audio_sample_rate;
converted_frame->channel_layout = AV_CH_LAYOUT_STEREO;
converted_frame->format = AV_SAMPLE_FMT_S16;
if(swr_convert_frame(ms->swr, converted_frame, ms->audio_decode_frame)) {
av_frame_free(&converted_frame);
continue;
+45
View File
@@ -0,0 +1,45 @@
#include <SDL.h>
#include <SDL_opengl.h>
#include <SDL_opengl_glext.h>
#include <stdio.h>
#include "gl2debug.h"
static void APIENTRY gl2_debug_callback(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar* message, const void* userParam) {
printf("GL %s: 0x%x, 0x%x: %s\n", (type == GL_DEBUG_TYPE_ERROR ? "ERROR" : " "), type, severity, message);
}
void gl2_enable_debug(void) {
void APIENTRY (*debugMessageCallback)(GLDEBUGPROC callback, const void *userParam);
void APIENTRY (*debugMessageControl)(GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint* ids, GLboolean enabled);
void APIENTRY (*glEnable)(GLenum);
debugMessageCallback = SDL_GL_GetProcAddress("glDebugMessageCallback");
if (!debugMessageCallback) {
debugMessageCallback = SDL_GL_GetProcAddress("glDebugMessageCallbackKHR");
}
if (debugMessageCallback == NULL) {
printf("GL: Could not get glDebugMessageCallback\n");
return;
}
debugMessageControl = SDL_GL_GetProcAddress("glDebugMessageControl");
if (!debugMessageControl) {
debugMessageControl = SDL_GL_GetProcAddress("glDebugMessageControlKHR");
}
if (debugMessageControl == NULL) {
printf("GL: Could not get glDebugMessageControl\n");
return;
}
glEnable = SDL_GL_GetProcAddress("glEnable");
glEnable(GL_DEBUG_OUTPUT);
debugMessageCallback(gl2_debug_callback, 0);
debugMessageControl(GL_DONT_CARE, GL_DONT_CARE, GL_DONT_CARE, 0, NULL, 1);
}
+
+6
View File
@@ -0,0 +1,6 @@
#ifndef GL2DEBUG_H
#define GL2DEBUG_H
void gl2_enable_debug(void);
#endif
+7 -27
View File
@@ -44,33 +44,6 @@
#endif
#if defined RENPY_GLES_1
#include <GLES/gl.h>
#include <GLES/glext.h>
#define glOrtho glOrthof
#define GL_SOURCE0_ALPHA GL_SRC0_ALPHA
#define GL_SOURCE1_ALPHA GL_SRC1_ALPHA
#define GL_SOURCE2_ALPHA GL_SRC2_ALPHA
#define GL_SOURCE0_RGB GL_SRC0_RGB
#define GL_SOURCE1_RGB GL_SRC1_RGB
#define GL_SOURCE2_RGB GL_SRC2_RGB
#define GL_FRAMEBUFFER_EXT GL_FRAMEBUFFER_OES
#define GL_COLOR_ATTACHMENT0_EXT GL_COLOR_ATTACHMENT0_OES
#define glBindFramebufferEXT glBindFramebufferOES
#define glFramebufferTexture2DEXT glFramebufferTexture2DOES
#define glGenFramebuffersEXT glGenFramebuffersOES
#define glDeleteFramebuffersEXT glDeleteFramebuffersOES
#define glCheckFramebufferStatusEXT glCheckFramebufferStatusOES
#define RENPY_THIRD_TEXTURE 0
#endif
#if defined RENPY_GLES_2
#ifdef ANGLE
@@ -88,6 +61,12 @@ typedef GLchar GLcharARB;
#define GL_MAX_TEXTURE_UNITS GL_MAX_TEXTURE_IMAGE_UNITS
#define GL_RENDERBUFFER_EXT GL_RENDERBUFFER
#define glGenRenderbuffersEXT glGenRenderbuffers
#define glBindRenderbufferEXT glBindRenderbuffer
#define glRenderbufferStorageEXT glRenderbufferStorage
#define glDeleteRenderbuffersEXT glDeleteRenderbuffers
#define GL_FRAMEBUFFER_EXT GL_FRAMEBUFFER
#define GL_FRAMEBUFFER_BINDING_EXT GL_FRAMEBUFFER_BINDING
#define GL_COLOR_ATTACHMENT0_EXT GL_COLOR_ATTACHMENT0
@@ -96,6 +75,7 @@ typedef GLchar GLcharARB;
#define glGenFramebuffersEXT glGenFramebuffers
#define glDeleteFramebuffersEXT glDeleteFramebuffers
#define glCheckFramebufferStatusEXT glCheckFramebufferStatus
#define glFramebufferRenderbufferEXT glFramebufferRenderbuffer
#define GL_OBJECT_INFO_LOG_LENGTH_ARB GL_INFO_LOG_LENGTH
#define GL_OBJECT_COMPILE_STATUS_ARB GL_COMPILE_STATUS
+3
View File
@@ -2755,6 +2755,9 @@ def find_gl_names(dirname, gl1):
rv = list(names)
rv.sort()
for i in rv:
print(i)
return rv
+3 -4
View File
@@ -181,6 +181,7 @@ for p in generate_styles.prefixes:
cython("renpy.styledata.style_{}functions".format(p), pyx=setuplib.gen + "/style_{}functions.pyx".format(p))
# renpy.display
cython("renpy.display.matrix")
cython("renpy.display.render", libs=[ 'z', 'm' ])
cython("renpy.display.accelerator", libs=sdl + [ 'z', 'm' ])
@@ -218,18 +219,16 @@ cython("renpy.gl.glrtt_fbo", libs=glew_libs)
cython("renpy.gl2.uguugl", libs=sdl)
cython("renpy.gl2.uguu", libs=sdl)
cython("renpy.gl2.gl2geometry")
cython("renpy.gl2.gl2draw", libs=sdl)
cython("renpy.gl2.gl2texture", libs=sdl)
cython("renpy.gl2.gl2environ_shader", libs=sdl)
cython("renpy.gl2.gl2rtt_fbo", libs=sdl)
cython("renpy.gl2.gl2shader", libs=sdl)
if not (android or ios or emscripten):
# renpy.angle
def anglecopy(fn):
copyfile("renpy/gl/" + fn, "renpy/angle/" + fn, "DEF ANGLE = False", "DEF ANGLE = True")
anglecopy("glblacklist.py")
anglecopy("gldraw.pxd")
anglecopy("gldraw.pyx")
anglecopy("glenviron_shader.pyx")
+279
View File
@@ -0,0 +1,279 @@
from __future__ import print_function
from sympy import symbols, Matrix, pi, cos, sin, simplify
matrix_names = [
"xdx",
"xdy",
"xdz",
"xdw",
"ydx",
"ydy",
"ydz",
"ydw",
"zdx",
"zdy",
"zdz",
"zdw",
"wdx",
"wdy",
"wdz",
"wdw",
]
def prefixed_matrix(prefix):
"""
Returns a matrix where each entry is of the for prefix___name.
"""
return Matrix(4, 4, [ symbols(prefix + "___" + i) for i in matrix_names ])
###############################################################################
import cStringIO
generators = [ ]
class Generator(object):
def __init__(self, name, docs):
self.f = cStringIO.StringIO()
self.name = name
self.docs = docs
generators.append(self)
self.first_let = True
def parameters(self, params):
print(file=self.f)
print(file=self.f)
print("def {}({}):".format(
self.name,
", ".join("float " + i for i in params.split())), file=self.f)
if self.docs:
print(' """' + self.docs + '"""', file=self.f)
if params.split():
return symbols(params)
def let(self, name, value):
if self.first_let:
print(file=self.f)
self.first_let = False
value = simplify(value, rational=True)
print(" cdef float {} = {}".format(name, str(value)), file=self.f)
return symbols(name)
def matrix(self, m):
print(file=self.f)
print(" cdef Matrix rv = Matrix(None)", file=self.f)
print(file=self.f)
for name, value in zip(matrix_names, m):
if value == 0.0:
continue
print(" rv.{} =".format(name), simplify(value, rational=True), file=self.f)
print(file=self.f)
print(" return rv", file=self.f)
def generate(func):
g = Generator(func.__name__, func.__doc__)
func(g)
return func
def write(fn):
with open(fn, "w") as f:
for i in generators:
f.write(i.f.getvalue())
@generate
def identity(g):
"""
Returns an identity matrix.
"""
g.parameters("")
g.matrix(Matrix(4, 4, [
1.0, 0.0, 0.0, 0.0,
0.0, 1.0, 0.0, 0.0,
0.0, 0.0, 1.0, 0.0,
0.0, 0.0, 0.0, 1.0,
]))
@generate
def offset(g):
"""
Returns a matrix that offsets the vertex by a fixed amount.
"""
x, y, z = g.parameters("x y z")
g.matrix(Matrix(4, 4, [
1.0, 0.0, 0.0, x,
0.0, 1.0, 0.0, y,
0.0, 0.0, 1.0, z,
0.0, 0.0, 0.0, 1.0,
]))
@generate
def rotate(g):
"""
Returns a matrix that rotates the displayable around the
origin.
`x`, `y`, `x`
The amount to rotate around the origin, in degrees.
"""
x, y, z = g.parameters("x y z")
sinx = g.let("sinx", sin(x * pi / 180.0))
cosx = g.let("cosx", cos(x * pi / 180.0))
siny = g.let("siny", sin(y * pi / 180.0))
cosy = g.let("cosy", cos(y * pi / 180.0))
sinz = g.let("sinz", sin(z * pi / 180.0))
cosz = g.let("cosz", cos(z * pi / 180.0))
rx = Matrix(4, 4, [
1, 0, 0, 0,
0, cosx, -sinx, 0,
0, sinx, cosx, 0,
0, 0, 0, 1 ])
ry = Matrix(4, 4, [
cosy, 0, siny, 0,
0, 1, 0, 0,
-siny, 0, cosy, 0,
0, 0, 0, 1])
rz = Matrix(4, 4, [
cosz, -sinz, 0, 0,
sinz, cosz, 0, 0,
0, 0, 1, 0,
0, 0, 0, 1, ])
g.matrix(rz * ry * rx)
@generate
def perspective(g):
"""
Returns the Ren'Py projection matrix. This is a view into a 3d space
where (0, 0) is the top left corner (`w`/2, `h`/2) is the center, and
(`w`,`h`) is the bottom right, when the z coordinate is 0.
`w`, `h`
The width and height of the input plane, in pixels.
`n`
The distance of the near plane from the camera.
`p`
The distance of the 1:1 plane from the camera. This is where 1 pixel
is one coordinate unit.
`f`
The distance of the far plane from the camera.
"""
w, h, n, p, f = g.parameters('w h n p f')
offset = Matrix(4, 4, [
1.0, 0.0, 0.0, -w / 2.0,
0.0, 1.0, 0.0, -h / 2.0,
0.0, 0.0, 1.0, -p,
0.0, 0.0, 0.0, 1.0,
])
projection = Matrix(4, 4, [
2.0 * p / w, 0.0, 0.0, 0.0,
0.0, 2.0 * p / h, 0.0, 0.0,
0.0, 0.0, -(f+n)/(f-n), -2 * f * n / (f - n),
0.0, 0.0, -1.0, 0.0,
])
reverse_offset = Matrix(4, 4, [
w / 2.0, 0.0, 0.0, w / 2.0,
0.0, h / 2.0, 0.0, h / 2.0,
0.0, 0.0, 1.0, 0.0,
0.0, 0.0, 0.0, 1.0,
])
g.matrix(reverse_offset * projection * offset)
@generate
def screen_projection(g):
"""
This generates a matrix that projects the Ren'Py space, where (0, 0) is the
top left and (`w`, `h`) is the bottom right, into the OpenGL viewport, where
(-1.0, 1.0) is the top left and (1.0, -1.0) is the bottom.
Generates the matrix that projects the Ren'Py screen to the OpenGL screen.
"""
w, h = g.parameters("w h")
m = Matrix(4, 4, [
2.0 / w, 0.0, 0.0, -1.0,
0.0, -2.0 / h, 0.0, 1.0,
0.0, 0.0, 1.0, 0.0,
0.0, 0.0, 0.0, 1.0
])
g.matrix(m)
@generate
def texture_projection(g):
"""
This generates a matrix that project the Ren'Py space, where (0, 0) is the
top left and (`w`, `h`) is the bottom right, into the OpenGL render-to-texture
space, where (-1.0, -1.0) is the top left and (1.0, 1.0) is the bottom.
Generates the matrix that projects the Ren'Py screen to the OpenGL screen.
"""
w, h = g.parameters("w h")
m = Matrix(4, 4, [
2.0 / w, 0.0, 0.0, -1.0,
0.0, 2.0 / h, 0.0, -1.0,
0.0, 0.0, 1.0, 0.0,
0.0, 0.0, 0.0, 1.0
])
g.matrix(m)
if __name__ == "__main__":
import os
RENPY = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
write(os.path.join(RENPY, "renpy", "display", "matrix_functions.pxi"))
+1 -1
View File
@@ -6,7 +6,7 @@ from libc.stdlib cimport calloc, free
from cpython.buffer cimport PyObject_GetBuffer, PyBuffer_Release, PyBUF_CONTIG, PyBUF_CONTIG_RO
cimport uguugl
from uguugl import reset_error, get_error, enable_check_error, load
from uguugl import load
cdef object proxy_return_string(const GLubyte *s):
"""
-38
View File
@@ -12,41 +12,3 @@ cdef void *find_gl_command(names):
raise Exception("{} not found.".format(names[0]))
cdef const char *error_function
cdef GLenum error_code
def reset_error():
"""
Resets the
"""
global error_function
error_function = NULL
global error_code
error_code = GL_NO_ERROR
reset_error()
def get_error():
if error_function != NULL:
return error_function.decode("utf-8"), error_code
else:
return None, GL_NO_ERROR
cdef void check_error(const char *function) nogil:
global error_function
global error_code
cdef GLenum error
error = real_glGetError()
if (error_function == NULL) and (error != GL_NO_ERROR):
error_function = function
error_code = error
+1 -27
View File
@@ -304,28 +304,10 @@ class XMLToPYX:
c = self.commands[i]
w("")
w(f"cdef {i}_type real_{i}")
w(f"cdef {i}_type {i}")
w("")
param_list = c.format_param_list()
proxy_call = c.format_proxy_call()
if c.return_type != "void":
w(f'cdef {c.return_type} check_{i}{param_list} nogil:')
w(f' cdef {c.return_type} rv')
w(f' rv = real_{i}{proxy_call}')
w(f' check_error("{i}")')
w(f' return rv')
else:
w(f'cdef {c.return_type} check_{i}{param_list} nogil:')
w(f' real_{i}{proxy_call}')
w(f' check_error("{i}")')
w("")
w("def load():")
@@ -339,16 +321,8 @@ class XMLToPYX:
names = [ i.encode("utf-8") for i in names ]
w(f"")
w(f" global real_{i}, {i}")
w(f" real_{i} = <{i}_type> find_gl_command({names!r})")
w(f" {i} = real_{i}")
w("")
w("def enable_check_error():")
for i in sorted(self.features.commands):
w(f" global {i}")
w(f" {i} = check_{i}")
w(f" {i} = <{i}_type> find_gl_command({names!r})")
def generate_uguu_pyx(self, f):
+1
View File
@@ -48,3 +48,4 @@ BLIT = int
DISSOLVE = int
IMAGEDISSOLVE = int
PIXELLATE = int
FLATTEN = int
+14 -4
View File
@@ -40,11 +40,10 @@ except ImportError:
vc_version = 0
# The tuple giving the version number.
version_tuple = (7, 2, 3, vc_version)
version_tuple = (7, 3, 4, vc_version)
# The name of this version.
version_name = "What's on the menu."
# 7.3: The world (wide web) is not enough.
version_name = "The world (wide web) is not enough."
# A string giving the version number only (8.0.1.123).
@@ -172,6 +171,7 @@ backup_blacklist = {
"renpy.test.testkey",
"renpy.test.testmouse",
"renpy.test.testparser",
"renpy.gl2",
"renpycoverage",
}
@@ -587,7 +587,7 @@ def reload_all():
renpy.display.render.mark_sweep()
# Get rid of the draw module and interface.
renpy.display.draw.deinit()
renpy.display.draw.quit()
renpy.display.draw = None
renpy.display.interface = None
@@ -655,6 +655,8 @@ def import_cython():
import renpy.arguments
import renpy.display.accelerator
import renpy.display.matrix
import renpy.display.render
import renpy.gl.gl
@@ -674,6 +676,14 @@ def import_cython():
import renpy.angle.glrtt_fbo
import renpy.angle.gltexture
import renpy.gl2.gl2draw
import renpy.gl2.gl2ftl
import renpy.gl2.gl2geometry
import renpy.gl2.gl2shader
import renpy.gl2.gl2texture
import renpy.gl2.uguu
import renpy.gl2.uguugl
if False:
import renpy.defaultstore as store
+6
View File
@@ -1526,16 +1526,19 @@ cdef extern from "glcompat.h" nogil:
cdef int glActiveTextureARB(GLenum) except? 0
cdef int glAttachObjectARB(GLhandleARB, GLhandleARB) except? 0
cdef int glBindFramebufferEXT(GLenum, GLuint) except? 0
cdef int glBindRenderbufferEXT(GLenum, GLuint) except? 0
cdef int glBindTexture(GLenum, GLuint) except? 0
cdef int glBlendFunc(GLenum, GLenum) except? 0
cdef int glClear(GLbitfield) except? 0
cdef int glClearColor(GLclampf, GLclampf, GLclampf, GLclampf) except? 0
cdef int glCompileShaderARB(GLhandleARB) except? 0
cdef int glCopyTexImage2D(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint) except? 0
cdef int glCopyTexSubImage2D(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) except? 0
cdef GLhandleARB glCreateProgramObjectARB() except? 0
cdef GLhandleARB glCreateShaderObjectARB(GLenum) except? 0
cdef int glDeleteFramebuffersEXT(GLsizei, GLuint *) except? 0
cdef int glDeleteProgram(GLuint) except? 0
cdef int glDeleteRenderbuffersEXT(GLsizei, GLuint *) except? 0
cdef int glDeleteShader(GLuint) except? 0
cdef int glDeleteTextures(GLsizei, GLuint *) except? 0
cdef int glDisable(GLenum) except? 0
@@ -1544,8 +1547,10 @@ cdef int glDrawArrays(GLenum, GLint, GLsizei) except? 0
cdef int glEnable(GLenum) except? 0
cdef int glEnableVertexAttribArrayARB(GLuint) except? 0
cdef int glFinish() except? 0
cdef int glFramebufferRenderbufferEXT(GLenum, GLenum, GLenum, GLuint) except? 0
cdef int glFramebufferTexture2DEXT(GLenum, GLenum, GLenum, GLuint, GLint) except? 0
cdef int glGenFramebuffersEXT(GLsizei, GLuint *) except? 0
cdef int glGenRenderbuffersEXT(GLsizei, GLuint *) except? 0
cdef int glGenTextures(GLsizei, GLuint *) except? 0
cdef GLint glGetAttribLocationARB(GLhandleARB, GLchar *) except? 0
cdef int glGetIntegerv(GLenum, GLint *) except? 0
@@ -1557,6 +1562,7 @@ cdef GLchar * glGetString(GLenum) except? NULL
cdef GLint glGetUniformLocationARB(GLhandleARB, GLchar *) except? 0
cdef int glLinkProgramARB(GLhandleARB) except? 0
cdef int glReadPixels(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLubyte *) except? 0
cdef int glRenderbufferStorageEXT(GLenum, GLenum, GLsizei, GLsizei) except? 0
cdef int glScissor(GLint, GLint, GLsizei, GLsizei) except? 0
cdef int glShaderSourceARB(GLhandleARB, GLsizei, GLchar * *, GLint *) except? 0
cdef int glTexImage2D(GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, GLubyte *) except? 0
+90 -2
View File
@@ -1,5 +1,3 @@
from __future__ import print_function
import os
import renpy
@@ -52,6 +50,21 @@ cdef int glBindFramebufferEXT(GLenum a0, GLuint a1) except? 0:
raise Exception(message)
return 1
cdef int glBindRenderbufferEXT(GLenum a0, GLuint a1) except? 0:
if check_errors & 4:
renpy.display.log.write('glBindRenderbufferEXT')
cdef GLenum error
realGlBindRenderbufferEXT(a0, a1)
if check_errors:
error = realGlGetError()
if error:
message = 'GL error %x in glBindRenderbufferEXT' % error
if check_errors & 1:
renpy.display.log.write('%s', message)
if check_errors & 2:
raise Exception(message)
return 1
cdef int glBindTexture(GLenum a0, GLuint a1) except? 0:
if check_errors & 4:
renpy.display.log.write('glBindTexture')
@@ -128,6 +141,21 @@ cdef int glCompileShaderARB(GLhandleARB a0) except? 0:
raise Exception(message)
return 1
cdef int glCopyTexImage2D(GLenum a0, GLint a1, GLenum a2, GLint a3, GLint a4, GLsizei a5, GLsizei a6, GLint a7) except? 0:
if check_errors & 4:
renpy.display.log.write('glCopyTexImage2D')
cdef GLenum error
realGlCopyTexImage2D(a0, a1, a2, a3, a4, a5, a6, a7)
if check_errors:
error = realGlGetError()
if error:
message = 'GL error %x in glCopyTexImage2D' % error
if check_errors & 1:
renpy.display.log.write('%s', message)
if check_errors & 2:
raise Exception(message)
return 1
cdef int glCopyTexSubImage2D(GLenum a0, GLint a1, GLint a2, GLint a3, GLint a4, GLint a5, GLsizei a6, GLsizei a7) except? 0:
if check_errors & 4:
renpy.display.log.write('glCopyTexSubImage2D')
@@ -203,6 +231,21 @@ cdef int glDeleteProgram(GLuint a0) except? 0:
raise Exception(message)
return 1
cdef int glDeleteRenderbuffersEXT(GLsizei a0, GLuint * a1) except? 0:
if check_errors & 4:
renpy.display.log.write('glDeleteRenderbuffersEXT')
cdef GLenum error
realGlDeleteRenderbuffersEXT(a0, a1)
if check_errors:
error = realGlGetError()
if error:
message = 'GL error %x in glDeleteRenderbuffersEXT' % error
if check_errors & 1:
renpy.display.log.write('%s', message)
if check_errors & 2:
raise Exception(message)
return 1
cdef int glDeleteShader(GLuint a0) except? 0:
if check_errors & 4:
renpy.display.log.write('glDeleteShader')
@@ -323,6 +366,21 @@ cdef int glFinish() except? 0:
raise Exception(message)
return 1
cdef int glFramebufferRenderbufferEXT(GLenum a0, GLenum a1, GLenum a2, GLuint a3) except? 0:
if check_errors & 4:
renpy.display.log.write('glFramebufferRenderbufferEXT')
cdef GLenum error
realGlFramebufferRenderbufferEXT(a0, a1, a2, a3)
if check_errors:
error = realGlGetError()
if error:
message = 'GL error %x in glFramebufferRenderbufferEXT' % error
if check_errors & 1:
renpy.display.log.write('%s', message)
if check_errors & 2:
raise Exception(message)
return 1
cdef int glFramebufferTexture2DEXT(GLenum a0, GLenum a1, GLenum a2, GLuint a3, GLint a4) except? 0:
if check_errors & 4:
renpy.display.log.write('glFramebufferTexture2DEXT')
@@ -353,6 +411,21 @@ cdef int glGenFramebuffersEXT(GLsizei a0, GLuint * a1) except? 0:
raise Exception(message)
return 1
cdef int glGenRenderbuffersEXT(GLsizei a0, GLuint * a1) except? 0:
if check_errors & 4:
renpy.display.log.write('glGenRenderbuffersEXT')
cdef GLenum error
realGlGenRenderbuffersEXT(a0, a1)
if check_errors:
error = realGlGetError()
if error:
message = 'GL error %x in glGenRenderbuffersEXT' % error
if check_errors & 1:
renpy.display.log.write('%s', message)
if check_errors & 2:
raise Exception(message)
return 1
cdef int glGenTextures(GLsizei a0, GLuint * a1) except? 0:
if check_errors & 4:
renpy.display.log.write('glGenTextures')
@@ -518,6 +591,21 @@ cdef int glReadPixels(GLint a0, GLint a1, GLsizei a2, GLsizei a3, GLenum a4, GLe
raise Exception(message)
return 1
cdef int glRenderbufferStorageEXT(GLenum a0, GLenum a1, GLsizei a2, GLsizei a3) except? 0:
if check_errors & 4:
renpy.display.log.write('glRenderbufferStorageEXT')
cdef GLenum error
realGlRenderbufferStorageEXT(a0, a1, a2, a3)
if check_errors:
error = realGlGetError()
if error:
message = 'GL error %x in glRenderbufferStorageEXT' % error
if check_errors & 1:
renpy.display.log.write('%s', message)
if check_errors & 2:
raise Exception(message)
return 1
cdef int glScissor(GLint a0, GLint a1, GLsizei a2, GLsizei a3) except? 0:
if check_errors & 4:
renpy.display.log.write('glScissor')
+72 -13
View File
@@ -356,9 +356,10 @@ class Node(object):
A node in the abstract syntax tree of the program.
@ivar name: The name of this node.
@ivar filename: The filename where this node comes from.
@ivar linenumber: The line number of the line on which this node is defined.
@ivar next: The statement that will execute after this one.
@ivar statement_start: If present, the first node that makes up the statement that includes this node.
"""
__slots__ = [
@@ -366,6 +367,7 @@ class Node(object):
'filename',
'linenumber',
'next',
'statement_start',
]
# True if this node is translatable, false otherwise. (This can be set on
@@ -589,6 +591,7 @@ class Say(Node):
'attributes',
'arguments',
'temporary_attributes',
'rollback',
]
def diff_info(self):
@@ -600,6 +603,7 @@ class Say(Node):
self.interact = True
self.arguments = None
self.temporary_attributes = None
self.rollback = "normal"
return self
def __init__(self, loc, who, what, with_, interact=True, attributes=None, arguments=None, temporary_attributes=None):
@@ -1516,7 +1520,6 @@ class Return(Node):
class Menu(Node):
translation_relevant = True
rollback = "force"
__slots__ = [
'items',
@@ -1525,6 +1528,7 @@ class Menu(Node):
'has_caption',
'arguments',
'item_arguments',
'rollback',
]
def __new__(cls, *args, **kwargs):
@@ -1532,6 +1536,7 @@ class Menu(Node):
self.has_caption = False
self.arguments = None
self.item_arguments = None
self.rollback = "force"
return self
def __init__(self, loc, items, set, with_, has_caption, arguments, item_arguments): # @ReservedAssignment
@@ -1853,6 +1858,7 @@ class UserStatement(Node):
'code_block',
'translation_relevant',
'rollback',
'subparses',
]
def __new__(cls, *args, **kwargs):
@@ -1862,33 +1868,34 @@ class UserStatement(Node):
self.translatable = False
self.translation_relevant = False
self.rollback = "normal"
self.subparses = [ ]
return self
def __init__(self, loc, line, block):
def __init__(self, loc, line, block, parsed):
super(UserStatement, self).__init__(loc)
self.code_block = None
self.parsed = parsed
self.line = line
self.block = block
self.code_block = None
self.parsed = None
self.subparses = [ ]
self.name = self.call("label")
self.rollback = renpy.statements.get("rollback", self.parsed) or "normal"
# Do not store the parse.
self.parsed = None
def __repr__(self):
return "<UserStatement {!r}>".format(self.line)
def get_children(self, f):
f(self)
if not self.code_block:
return
if self.code_block is not None:
for i in self.code_block:
i.get_children(f)
for i in self.code_block:
i.get_children(f)
for i in self.subparses:
for j in i.block:
j.get_children(f)
def chain(self, next): # @ReservedAssignment
self.next = next
@@ -1896,22 +1903,33 @@ class UserStatement(Node):
if self.code_block is not None:
chain_block(self.code_block, next)
for i in self.subparses:
chain_block(i.block, next)
def replace_next(self, old, new):
Node.replace_next(self, old, new)
if (self.code_block) and (self.code_block[0] is old):
self.code_block.insert(0, new)
for i in self.subparses:
if i.block[0] is old:
self.code_block.insert(0, new)
def restructure(self, callback):
if self.code_block:
callback(self.code_block)
for i in self.subparses:
callback(i.block)
def diff_info(self):
return (UserStatement, self.line)
def call(self, method, *args, **kwargs):
parsed = self.parsed
if parsed is None:
parsed = renpy.statements.parse(self, self.line, self.block)
self.parsed = parsed
@@ -1937,10 +1955,25 @@ class UserStatement(Node):
for i in predictions:
renpy.easy.predict(i)
return [ self.get_next() ]
if self.parsed and renpy.statements.get("predict_all", self.parsed):
return [ i.block[0] for i in self.subparses ] + [ self.next ]
if self.next:
next_label = self.next.name
else:
next_label = None
next_list = self.call("predict_next", next_label)
if next_list is not None:
nexts = [ renpy.game.script.lookup_or_none(i) for i in next_list if i is not None ]
return [ i for i in nexts if i is not None ]
return [ self.next ]
def get_name(self):
parsed = self.parsed
if parsed is None:
parsed = renpy.statements.parse(self, self.line, self.block)
self.parsed = parsed
@@ -1976,6 +2009,32 @@ class UserStatement(Node):
return False
class PostUserStatement(Node):
__slots__ = [
'parent',
]
def __init__(self, loc, parent):
super(PostUserStatement, self).__init__(loc)
self.parent = parent
self.name = self.parent.call("post_label")
def __repr__(self):
return "<PostUserStatement {!r}>".format(self.parent.line)
def diff_info(self):
return (PostUserStatement, self.parent.line)
def execute(self):
next_node(self.next)
statement_name("post " + self.parent.get_name())
self.parent.call("post_execute")
def create_store(name):
if name not in renpy.config.special_namespaces:
renpy.python.create_store(name)
+7 -1
View File
@@ -388,7 +388,12 @@ class ATLTransformBase(renpy.object.Object):
self.atl_st_offset = t.atl_st_offset
if self.child is renpy.display.motion.null:
self.child = t.child
if t.child and t.child._duplicatable:
self.child = t.child._duplicate(None)
else:
self.child = t.child
self.raw_child = t.raw_child
def __call__(self, *args, **kwargs):
@@ -1823,6 +1828,7 @@ def parse_atl(l):
if l.keyword('circles'):
expr = l.require(l.simple_expression)
rm.add_circles(expr)
continue
# Try to parse a property.
cp = l.checkpoint()
+54 -17
View File
@@ -36,6 +36,7 @@ import os
import re
import threading
import sys
import io
# Import the appropriate modules, or set them to None if we cannot.
@@ -73,6 +74,42 @@ def load(fn):
return rv
class AudioData(unicode):
"""
:doc: audio
This class wraps a bytes object containing audio data, so it can be
passed to the audio playback system. The audio data should be contained
in some format Ren'Py supports. (For examples RIFF WAV format headers,
not unadorned samples.)
`data`
A bytes object containing the audio file data.
`filename`
A synthetic filename associated with this data. It can be used to
suggest the format `data` is in, and is reported as part of
error messages.
Once created, this can be used wherever an audio filename is allowed. For
example::
define audio.easteregg = AudioData(b'...', 'sample.wav')
play sound easteregg
"""
def __new__(cls, data, filename):
rv = unicode.__new__(cls, filename)
rv.data = data
return rv
def __init__(self, data, filename):
pass
def __reduce__(self):
return(AudioData, (self.data, unicode(self)))
class QueueEntry(object):
"""
A queue entry object.
@@ -359,9 +396,6 @@ class Channel(object):
self.queue = [ ]
return
# Should we do the callback?
do_callback = False
topq = None
# This has been modified so we only queue a single sound file
@@ -417,7 +451,10 @@ class Channel(object):
if (end >= 0) and ((end - start) <= 0) and self.queue:
continue
topf = load(self.file_prefix + filename + self.file_suffix)
if isinstance(topq.filename, AudioData):
topf = io.BytesIO(topq.filename.data)
else:
topf = load(self.file_prefix + filename + self.file_suffix)
renpysound.set_video(self.number, self.movie)
@@ -442,20 +479,20 @@ class Channel(object):
break
if self.loop and not self.queue:
for i in self.loop:
if topq is not None:
newq = QueueEntry(i, 0, topq.tight, True)
else:
newq = QueueEntry(i, 0, False, True)
# Empty queue?
if not self.queue:
# Re-loop:
if self.loop:
for i in self.loop:
if topq is not None:
newq = QueueEntry(i, 0, topq.tight, True)
else:
newq = QueueEntry(i, 0, False, True)
self.queue.append(newq)
else:
do_callback = True
# Queue empty callback.
if do_callback and self.callback:
self.callback() # E1102
self.queue.append(newq)
# Try callback:
elif self.callback:
self.callback() # E1102
want_pause = self.context.pause or global_pause
+2
View File
@@ -87,6 +87,8 @@ def extra_imports():
import pstats; pstats
import _ssl; _ssl
import SimpleHTTPServer; SimpleHTTPServer
import wave; wave
import sunau; sunau
# Used by requests.
import cgi; cgi
+71 -57
View File
@@ -854,10 +854,10 @@ class ADVCharacter(object):
properties=self.properties,
**self.show_args)
def resolve_say_attributes(self, mode, predict, attrs, wanted=[], remove=[], skip_trans=False):
def resolve_say_attributes(self, predict, attrs, wanted=[], remove=[]):
"""
Deals with image attributes associated with the current say
statement.
statement. Returns True if an image is shown, None otherwise.
"""
if not (attrs or wanted or remove):
@@ -893,27 +893,10 @@ class ADVCharacter(object):
show_image = (self.image_tag,) + attrs + tuple(wanted) + tuple( "-" + i for i in remove)
if predict:
images.predict_show(show_image)
images.predict_show(layer, show_image)
else:
if renpy.config.say_attribute_transition_callback_attrs:
trans, layer = renpy.config.say_attribute_transition_callback(self.image_tag, new_image, mode)
else:
trans, layer = renpy.config.say_attribute_transition_callback(self.image_tag, mode)
if not skip_trans:
if (trans is not None) and (layer is not None):
renpy.exports.with_statement(None)
renpy.exports.show(show_image)
if not skip_trans:
if trans is not None:
if layer is None:
renpy.exports.with_statement(trans)
else:
renpy.exports.transition(trans, layer=layer)
return True
else:
@@ -952,22 +935,51 @@ class ADVCharacter(object):
if renpy.config.speaking_attribute is not None:
temporary_attrs.insert(0, renpy.config.speaking_attribute)
self.resolve_say_attributes("permanent", predicting, attrs, skip_trans=temporary_attrs)
images = renpy.game.context().images
before = images.get_attributes(None, self.image_tag)
mode = None
if self.resolve_say_attributes(predicting, attrs):
mode = 'permanent'
# This is so late to give resolve_say_attributes time to do some
# error handling.
if not self.image_tag:
return None
if not temporary_attrs:
return None
if temporary_attrs:
attrs = images.get_attributes(None, self.image_tag)
images = renpy.game.context().images
attrs = images.get_attributes(None, self.image_tag)
if self.resolve_say_attributes(predicting, temporary_attrs):
mode = 'both' if mode else 'temporary'
self.resolve_say_attributes("temporary", predicting, temporary_attrs)
if mode:
after = images.get_attributes(None, self.image_tag)
self.handle_say_transition(mode, before, after)
return (attrs, images)
if temporary_attrs:
return (attrs, images)
def handle_say_transition(self, mode, before, after):
before = set(before)
after = set(after)
if before == after:
return
if renpy.config.say_attribute_transition_callback_attrs:
delta = (before, after)
else:
delta = ()
trans, layer = renpy.config.say_attribute_transition_callback(
self.image_tag, mode, *delta)
if trans is not None:
if layer is None:
renpy.exports.with_statement(trans)
else:
renpy.exports.transition(trans, layer=layer)
def restore_say_attributes(self, predicting, state, interact):
@@ -993,26 +1005,8 @@ class ADVCharacter(object):
if images.showing(None, (self.image_tag,)):
if not predicting:
new_image = images.apply_attributes(None, self.image_tag, image_with_attrs)
if renpy.config.say_attribute_transition_callback_attrs:
trans, layer = renpy.config.say_attribute_transition_callback(self.image_tag, new_image, "restore")
else:
trans, layer = renpy.config.say_attribute_transition_callback(self.image_tag, "restore")
if interact:
if (trans is not None) and (layer is not None):
renpy.exports.with_statement(None)
renpy.exports.show(image_with_attrs)
if interact:
if trans is not None:
if layer is None:
renpy.exports.with_statement(trans)
else:
renpy.exports.transition(trans, layer=layer)
return True
else:
images.predict_show(None, image_with_attrs)
@@ -1046,8 +1040,11 @@ class ADVCharacter(object):
def __call__(self, what, interact=True, _call_done=True, multiple=None, **kwargs):
_mode = kwargs.pop("_mode", None)
_with_none = kwargs.pop("_with_none", None)
if kwargs:
return Character(kind=self, **kwargs)(what, interact=interact, _call_done=_call_done, multiple=multiple)
return Character(kind=self, **kwargs)(what, interact=interact, _call_done=_call_done, multiple=multiple, _mode=_mode, _with_none=_with_none)
# Check self.condition to see if we should show this line at all.
if not (self.condition is None or renpy.python.py_eval(self.condition)):
@@ -1093,7 +1090,10 @@ class ADVCharacter(object):
try:
if interact:
renpy.exports.mode(self.mode)
mode = _mode or self.mode
renpy.exports.mode(mode)
else:
renpy.game.context().deferred_translate_identifier = renpy.game.context().translate_identifier
# Figure out the arguments to display.
display_args = self.display_args.copy()
@@ -1102,11 +1102,17 @@ class ADVCharacter(object):
if multiple is not None:
display_args["multiple"] = multiple
if _with_none is not None:
display_args["with_none"] = _with_none
who = self.name
# If dynamic is set, evaluate the name expression.
if self.dynamic:
who = renpy.python.py_eval(who)
if callable(who):
who = who()
else:
who = renpy.python.py_eval(who)
def sub(s, scope=None, force=False, translate=True):
return renpy.substitutions.substitute(s, scope=scope, force=force, translate=translate)[0]
@@ -1154,15 +1160,19 @@ class ADVCharacter(object):
if (multiple is None) and interact:
renpy.store._side_image_attributes = old_side_image_attributes
self.restore_say_attributes(False, old_attr_state, interact)
if old_attr_state is not None:
_, images = old_attr_state
before = images.get_attributes(None, self.image_tag)
if self.restore_say_attributes(False, old_attr_state, interact):
after = images.get_attributes(None, self.image_tag)
self.handle_say_transition('restore', before, after)
def predict(self, what):
old_attr_state = self.handle_say_attributes(True, True)
if renpy.config.speaking_attribute is not None:
self.resolve_say_attributes(True, wanted=[ renpy.config.speaking_attribute ])
old_side_image_attributes = renpy.store._side_image_attributes
if self.image_tag:
@@ -1322,9 +1332,13 @@ def Character(name=NotSet, kind=None, **properties):
These options help to control the display of the name.
`dynamic`
If true, then `name` should be a string containing a Python
expression. That string will be evaluated before each line
of dialogue, and the result used as the name of the character.
If true, then `name` should either be a string containing a Python
expression, a function, or a callable object. If it's a string,
That string will be evaluated before each line of dialogue, and
the result used as the name of the character. Otherwise, the
function or callable object will be called with no arguments
before each line of dialogue, and the return value of the call will
be used as the name of the character.
**Controlling Interactions.**
These options control if the dialogue is displayed, if an
+53 -1
View File
@@ -19,10 +19,61 @@
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
init -1500 python:
##########################################################################
# Self-voicing
# Strings used internally in Ren'Py.
_("Self-voicing disabled.")
_("Clipboard voicing enabled. ")
_("Self-voicing enabled. ")
_("bar")
_("selected")
_("viewport")
_("horizontal scroll")
_("vertical scroll")
_("activate")
_("deactivate")
_("increase")
_("decrease")
# The character that's used for descriptive text.
config.descriptive_text_character = None
def alt(what, interact=True):
"""
Uses the narrator to speak `what` if self-voicing is enabled.
"""
if _preferences.self_voicing:
c = config.descriptive_text_character
if c is None:
c = narrator
return c(what, interact=interact)
# Old name for alt.
sv = alt
init -1500 python hide:
##########################################################################
# Font Transforms.
store.__opendyslexic = { }
def opendyslexic(f):
rv = store.__opendyslexic.get(f, None)
if rv is not None:
return rv
# Generated with fc-query --format=%{charset} OpenDyslexic3-Regular.ttf
charset = "20-7e a0-107 10a-113 116-11b 11e-123 126-12b 12e-133 136-137 139-148 14a-14d 150-15b 15e-16b 16e-17e 186 188-189 18e-192 194 197 19d 1a0-1a1 1a9 1ac 1af-1b4 1c0-1c3 1cd-1df 1e6-1e7 1fe-1ff 218-21b 228-22b 241-244 24b-24c 250-254 256-259 25b-25c 261-262 265 268 26a-26b 26f-270 272 274-276 279-27a 280-281 283 289-28a 28c-28f 294-295 298-299 29b-29c 29f 2a1-2a2 2c6-2c7 2d8-2dd 309 31b 323 326 32d 331 3b2 3b8 3c0 3c7 401 403 405-408 40c 40e 410 412 415 418 41c-41e 420-422 425 427 42f-430 432 435 437 439 43e 440-441 443 445 44f 451 453 455-458 45b-45c 45e 472 498-499 4ae 4b1 4c0 4d0 4d2-4df 4e2-4f5 4f8-4f9 1e04-1e05 1e0c-1e0f 1e12-1e13 1e24-1e25 1e2e-1e2f 1e36-1e37 1e3c-1e3f 1e44-1e47 1e4a-1e4d 1e50-1e53 1e62-1e63 1e6c-1e71 1e80-1e85 1e92-1e93 1ea0-1ef9 2013-2014 2018-201a 201c-201e 2020-2022 2026 2030 2039-203a 203d 2044 20ac 2122 2126 215b-215e 2202 2206 220f 2211-2212 2219-221a 221e 222b 2248 2260 2264-2265 25ca 2c64 2c6d 2c72-2c73 2e18 fb01-fb02"
@@ -37,6 +88,7 @@ init -1500 python hide:
rv.add(f, None, None)
store.__opendyslexic[f] = rv
return rv
config.font_transforms["opendyslexic"] = opendyslexic
@@ -136,7 +188,7 @@ screen _accessibility():
vbox:
text ("The options on this menu are intended to improve accessibility. They may not work with all games, and some combinations of options may render the game unplayable. This is not an issue with the game or engine. For the best results when changing fonts, try to keep the text size the same as it originally was.")
text _("The options on this menu are intended to improve accessibility. They may not work with all games, and some combinations of options may render the game unplayable. This is not an issue with the game or engine. For the best results when changing fonts, try to keep the text size the same as it originally was.")
hbox:
spacing gui._scale(25)
+33 -10
View File
@@ -74,19 +74,29 @@ init -1500 python:
"""
:doc: other_action
This allows an expression to control if a button should be marked
as selected. It should be used as part of a list with one or more
actions. For example::
This indicates that one action in a list of actions should be used
to determine if a button is selected. This only makes sense
when the button has a list of actions. For example::
# The button is selected if mars_flag is True
# The button is selected only if mars_flag is True
textbutton "Marsopolis":
action [ Jump("mars"), SelectedIf(mars_flag) ]
action [ SelectedIf(SetVariable("mars_flag", True)), SetVariable("on_mars", True) ]
The action inside SelectedIf is run normally when the button is clicked.
"""
# Note: This had been documented to take a boolean.
def __init__(self, expression):
self.expression = expression
if isinstance(expression, Action):
for i in [ "get_selected", "get_sensitive", "get_tooltip", "periodic", "unhovered", "unhovered" ]:
setattr(self, i, getattr(expression, i, None))
def __call__(self):
if isinstance(self.expression, Action):
return self.expression()
return None
def get_selected(self):
@@ -97,19 +107,29 @@ init -1500 python:
"""
:doc: other_action
This allows an expression to control if a button should be marked
as sensitive. It should be used as part of a list with one or more
actions. For example::
This indicates that one action in a list of actions should be used
to determine if a button is sensitive. This only makes sense
when the button has a list of actions. For example::
# The button is sensitive if mars_flag is True
# The button is sensitive only if mars_flag is True
textbutton "Marsopolis":
action [ Jump("mars"), SensitiveIf(mars_flag) ]
action [ SensitiveIf(SetVariable("mars_flag", True)), SetVariable("on_mars", True) ]
The action inside SensitiveIf is run normally when the button is clicked.
"""
# Note: This had been documented to take a boolean.
def __init__(self, expression):
self.expression = expression
if isinstance(expression, Action):
for i in [ "get_selected", "get_sensitive", "get_tooltip", "periodic", "unhovered", "unhovered" ]:
setattr(self, i, getattr(expression, i, None))
def __call__(self):
if isinstance(self.expression, Action):
return self.expression()
return None
def get_sensitive(self):
@@ -564,6 +584,9 @@ init -1500 python:
def get_selected(self):
return renpy.is_selected(self.yes)
def get_tooltip(self):
return renpy.display.behavior.get_tooltip(self.yes)
@renpy.pure
class Scroll(Action, DictEquality):
@@ -1,4 +1,4 @@
# Copyright 2004-2019 Tom Rothamel <pytom@bishoujo.us>
# Copyright 2004-2019 Tom Rothamel <pytom@bishoujo.us>
#
# Permission is hereby granted, free of charge, to any person
# obtaining a copy of this software and associated documentation files
@@ -19,30 +19,30 @@
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
init -1900 python:
config.audio_directory = 'audio'
# The blacklist of OpenGL cards. Fields are:
# - A substring of the Renderer.
# - A substring of the Version.
# - True to allow shader rendering.
# - True to allow fixed-function rendering.
def _scan_audio_directory():
# If both of the last two entries are false, GL refuses to
# start.
import os
from __future__ import print_function
if not config.audio_directory:
return
BLACKLIST = [
prefix = config.audio_directory.rstrip('/') + '/'
# Crashes for Mugenjohncel.
("S3 Graphics DeltaChrome", "1.4 20.00", False, False),
for fn in renpy.list_files():
if not fn.startswith(prefix):
continue
# A bug in Mesa 7.9 and 7.10 (before 7.10.3) causes the system to
# fail to initialize the GLSL compiler.
# https://bugs.freedesktop.org/show_bug.cgi?id=35603
("Mesa", "Mesa 7.9", False, True),
("Mesa", "Mesa 7.10.3", True, True),
("Mesa", "Mesa 7.10", False, True),
basename = os.path.basename(fn)
base, ext = os.path.splitext(basename)
# Default to allowing everything.
("", "", True, True),
]
if not ext.lower() in [ ".wav", ".mp2", ".mp3", ".ogg", ".opus" ]:
continue
base = base.lower()
audio.__dict__.setdefault(base, fn)
init python:
_scan_audio_directory()
+23 -11
View File
@@ -145,17 +145,19 @@ init -1500 python:
offset = 0
action = None
force_step = False
identity_fields = [ 'dict' ]
equality_fields = [ 'key', 'range', 'max_is_zero', 'style', 'offset', 'step', 'action']
equality_fields = [ 'key', 'range', 'max_is_zero', 'style', 'offset', 'step', 'action', 'force_step' ]
def __init__(self, dict, key, range, max_is_zero=False, style="bar", offset=0, step=None, action=None):
def __init__(self, dict, key, range, max_is_zero=False, style="bar", offset=0, step=None, action=None, force_step=False):
self.dict = dict
self.key = key
self.range = range
self.max_is_zero = max_is_zero
self.style = style
self.offset = offset
self.force_step = force_step
if step is None:
if isinstance(range, float):
@@ -197,7 +199,9 @@ init -1500 python:
range=self.range,
value=value,
changed=self.changed,
step=self.step)
step=self.step,
force_step=self.force_step,
)
def get_style(self):
return self.style, "v" + self.style
@@ -236,17 +240,19 @@ init -1500 python:
offset = 0
action = None
force_step = False
identity_fields = [ 'object', ]
equality_fields = [ 'range', 'max_is_zero', 'style', 'offset', 'step', 'action']
equality_fields = [ 'range', 'max_is_zero', 'style', 'offset', 'step', 'action', 'force_step' ]
def __init__(self, object, field, range, max_is_zero=False, style="bar", offset=0, step=None, action=None):
def __init__(self, object, field, range, max_is_zero=False, style="bar", offset=0, step=None, action=None, force_step=False):
self.object = object
self.field = field
self.range = range
self.max_is_zero = max_is_zero
self.style = style
self.offset = offset
self.force_step = force_step
if step is None:
if isinstance(range, float):
@@ -288,13 +294,15 @@ init -1500 python:
range=self.range,
value=value,
changed=self.changed,
step=self.step)
step=self.step,
force_step=self.force_step,
)
def get_style(self):
return self.style, "v" + self.style
@renpy.pure
def VariableValue(variable, range, max_is_zero=False, style="bar", offset=0, step=None, action=None):
def VariableValue(variable, range, max_is_zero=False, style="bar", offset=0, step=None, action=None, force_step=False):
"""
:doc: value
@@ -323,7 +331,7 @@ init -1500 python:
If not None, an action to call when the field has changed.
"""
return FieldValue(store, variable, range, max_is_zero=max_is_zero, style=style, offset=offset, step=step, action=action)
return FieldValue(store, variable, range, max_is_zero=max_is_zero, style=style, offset=offset, step=step, action=action, force_step=force_step)
@renpy.pure
class ScreenVariableValue(BarValue, FieldEquality):
@@ -356,16 +364,18 @@ init -1500 python:
action = None
offset = 0
force_step = False
identity_fields = [ ]
equality_fields = [ 'variable', 'max_is_zero', 'style', 'offset', 'step', 'action']
equality_fields = [ 'variable', 'max_is_zero', 'style', 'offset', 'step', 'action', 'force_step' ]
def __init__(self, variable, range, max_is_zero=False, style="bar", offset=0, step=None, action=None):
def __init__(self, variable, range, max_is_zero=False, style="bar", offset=0, step=None, action=None, force_step=False):
self.variable = variable
self.range = range
self.max_is_zero = max_is_zero
self.style = style
self.offset = offset
self.force_step = force_step
if step is None:
if isinstance(range, float):
@@ -414,7 +424,9 @@ init -1500 python:
range=self.range,
value=value,
changed=self.changed,
step=self.step)
step=self.step,
force_step=self.force_step,
)
def get_style(self):
return self.style, "v" + self.style
+7 -4
View File
@@ -69,7 +69,7 @@ init -1500 python in build:
( "**/*.pyc", None),
( "renpy.py", "renpy"),
( "renpy.py", "all"),
( "renpy/", "all"),
( "renpy/**.py", "renpy"),
@@ -149,12 +149,15 @@ init -1500 python in build:
(".android.json", "android"),
("android-*.png", "android"),
("android-*.jpg", "android"),
("ouya_icon.png", "android"),
("ouya_icon.png", None),
("ios-presplash.*", "ios"),
("ios-launchimage.png", None),
("ios-icon.png", None),
("web-presplash.png", "web"),
("web-presplash.jpg", "web"),
])
base_patterns = [ ]
@@ -386,13 +389,13 @@ init -1500 python in build:
mac_identity = None
# The command used for mac codesigning.
mac_codesign_command = [ "/usr/bin/codesign", "-s", "{identity}", "-f", "--deep", "--no-strict", "{app}" ]
mac_codesign_command = [ "/usr/bin/codesign", "--entitlements={entitlements}", "--options=runtime", "--timestamp", "-s", "{identity}", "-f", "--deep", "--no-strict", "{app}" ]
# The command used to build a dmg.
mac_create_dmg_command = [ "/usr/bin/hdiutil", "create", "-format", "UDBZ", "-volname", "{volname}", "-srcfolder", "{sourcedir}", "-ov", "{dmg}" ]
# The command used to sign a dmg.
mac_codesign_dmg_command = [ "/usr/bin/codesign", "-s", "{identity}", "-f", "{dmg}" ]
mac_codesign_dmg_command = [ "/usr/bin/codesign", "--timestamp", "-s", "{identity}", "-f", "{dmg}" ]
# Do we want to add the script_version file?
script_version = True
+9 -3
View File
@@ -185,6 +185,14 @@ init -1900 python:
if version <= (7, 2, 2):
config.say_attribute_transition_callback_attrs = False
config.keep_side_render_order = False
if version <= (7, 3, 0):
config.force_sound = False
if version <= (7, 3, 2):
config.audio_directory = None
config.early_start_store = True
# The version of Ren'Py this script is intended for, or
# None if it's intended for the current version.
@@ -228,7 +236,7 @@ init -1000 python hide:
except:
pass
init 1900 python hide::
init 1900 python hide:
# This returns true if the script_version is <= the
# script_version supplied. Give it the last script version
@@ -292,5 +300,3 @@ init 1900 python hide::
config.has_quicksave = False
config.quit_action = ui.gamemenus("_confirm_quit")
config.default_afm_enable = None
+4 -1
View File
@@ -668,7 +668,10 @@ init -1500 python in _console:
@command(_("jump <label>: jumps to label"))
def jump(l):
label = l.name()
label = l.label_name()
if label is None:
raise Exception("Could not parse label. (Unqualified local labels are not allowed.)")
if not console.can_renpy():
raise Exception("Ren'Py script not enabled. Not jumping.")
+5
View File
@@ -41,6 +41,9 @@ init -1500 python:
def check(self, all_prior):
for i in self.images:
print(i, renpy.seen_image(i))
if not renpy.seen_image(i):
return False
@@ -92,6 +95,8 @@ init -1500 python:
else:
d = config.default_transform(d)
d = renpy.display.layout.AdjustTimes(d, None, None)
displayables.append(d)
renpy.show_screen("_gallery", locked=locked, index=index + 1, count=count, displayables=displayables, gallery=self.gallery)
+4 -1
View File
@@ -388,8 +388,11 @@ init -1500 python:
renderer_info = renpy.get_renderer_info()
if config.gl2 and not renderer_info.get("models", False):
problem = "fixed"
# Software renderer check.
if config.renderer != "sw" and renderer_info["renderer"] == "sw":
elif config.renderer != "sw" and renderer_info["renderer"] == "sw":
problem = "sw"
# Speed check.
+3
View File
@@ -39,6 +39,9 @@ init -1100 python in gui:
The height of the default window.
"""
if (not renpy.is_init_phase()) and config.developer:
raise Exception("gui.init may only be called during the init phase.")
config.screen_width = width
config.screen_height = height
+3 -3
View File
@@ -182,7 +182,7 @@ init -1500 python in iap:
def init(self):
restore(False)
if renpy.ios:
if renpy.renpy.ios:
import pyobjus
IAPHelper = pyobjus.autoclass(b"IAPHelper")
NSMutableArray = pyobjus.autoclass(b"NSMutableArray")
@@ -583,9 +583,9 @@ init -1500 python in iap:
persistent._iap_purchases[p.identifier] = False
# Set up the back end.
if renpy.android:
if renpy.renpy.android:
backend = init_android()
elif renpy.ios:
elif renpy.renpy.ios:
backend = IOSBackend()
else:
backend = NoneBackend()

Some files were not shown because too many files have changed in this diff Show More