George Marques
a62f4af7ba
GDScript: Enable built-in function introspection in non-tools
...
Only for debug builds. Fix problems in non-tools targets.
2018-07-25 20:50:12 -03:00
George Marques
3d6609303b
GDScript: Fix bogus error when a cursor token is found on class
2018-07-25 20:50:12 -03:00
George Marques
1ac9c0fe3a
GDScript: Allow strict conversion when assigning typed variables
2018-07-25 20:50:12 -03:00
George Marques
96ee93e8c7
GDScript: Fix mismatching between export hint and type hint
2018-07-25 20:50:12 -03:00
George Marques
4cb17191b8
GDScript: Allow inherited method to add optional arguments
...
Also show the parent method signature in the error message.
2018-07-25 20:50:11 -03:00
George Marques
cd6ad5462c
GDScript: Fix returned value of get_default_argument_count()
2018-07-25 20:50:11 -03:00
George Marques
65c069c8d9
GDScript: Fix main script detection
2018-07-25 20:50:11 -03:00
George Marques
b7bd85e70c
GDScript: Look up local scope first for detecting type
2018-07-25 20:50:11 -03:00
Hein-Pieter van Braam
0e29f7974b
Reduce unnecessary COW on Vector by make writing explicit
...
This commit makes operator[] on Vector const and adds a write proxy to it. From
now on writes to Vectors need to happen through the .write proxy. So for
instance:
Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;
Failing to use the .write proxy will cause a compilation error.
In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.
_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
2018-07-26 00:54:16 +02:00
George Marques
3e87ad5187
Rewrite code completion
...
- Use data type struct from the parser.
- Avail from type hints when type can't be guessed.
- Consider inner classes and other scripts when looking for candidates.
2018-07-20 21:55:18 -03:00
George Marques
3445dca01d
Add ability to infer variable type from assigned value
...
Syntax: var x : = 42
Infers the type of "x" to be an integer.
2018-07-20 21:55:18 -03:00
George Marques
03746da73f
Add editor highlight for type-safe lines
...
The line number is hightlighted to indicate that the line contains only
type-safe code.
2018-07-20 21:55:18 -03:00
George Marques
a2305cd8b2
Fix line number detection in some parser nodes
2018-07-20 21:55:17 -03:00
George Marques
75f395c2a0
Use type hints to improve completion
...
- Allow type hints to be completed.
- Use type information to infer completion candidates.
- Show typed function signature in tooltip.
- Add type hints when completing declaration from virtual functions
(optional).
2018-07-20 21:55:17 -03:00
George Marques
95351ac867
Add syntax highlighting to type hints
2018-07-20 21:55:17 -03:00
George Marques
e3d72d14ff
Use type information to enable GDScript introspection
...
This makes the Script API provide accurate information when requesting
property or method info.
2018-07-20 21:55:17 -03:00
George Marques
4b18c4e448
Add typed instructions to GDScript
...
- Typed assignment (built-in, native, and script).
- Cast (built-in conversion; native and script checks).
- Check type of functions arguments on call.
- Check type of members on set.
2018-07-20 21:55:17 -03:00
George Marques
743053734f
Add static type checks in the parser
...
- Resolve types for all identifiers.
- Error when identifier is not found.
- Match return type and error when not returning a value when it should.
- Check unreachable code (code after sure return).
- Match argument count and types for function calls.
- Determine if return type of function call matches the assignment.
- Do static type check with match statement when possible.
- Use type hints to determine export type.
- Check compatibility between type hint and explicit export type.
2018-07-20 21:55:16 -03:00
George Marques
f7793fc5c9
Store type hint of declared identifiers
2018-07-20 21:55:16 -03:00
George Marques
b7a00aead0
Move inheritance resolution to the parser
2018-07-20 21:55:16 -03:00
George Marques
8aab9a06d4
Add typing syntax
2018-07-20 21:55:16 -03:00
Rémi Verschelde
7c9f7452f4
Style: Format code with clang-format 6.0.1
2018-07-18 16:27:03 +02:00
Juan Linietsky
a3f1ee5c57
Global class names (and GDScript support for it)
2018-07-15 19:29:00 -03:00
Max Hilbrunner
3f272c6ae6
Merge pull request #19637 from dragmz/19548
...
Fix onready vars / vars accessing class members if _ready / _init not present
2018-07-05 04:15:47 +02:00
Max Hilbrunner
d988d188ad
Merge pull request #18966 from chanon/new-debug-print
...
Add new debug print method that shows line number where the print came from
2018-07-04 23:50:45 +02:00
Max Hilbrunner
aad475937b
Merge pull request #19828 from jjay/fix_yield_leak
...
Fix memory leak in GDScript during infinnity loops with yields
2018-07-03 18:51:13 +02:00
Max Hilbrunner
5885e1c6dd
Merge pull request #18976 from chanon/new-get-stack
...
Add new get_stack function to get GDScript stack trace as array
2018-07-03 17:50:05 +02:00
Max Hilbrunner
0705eb904a
Merge pull request #19251 from YeldhamDev/script_templates_changes
...
Small changes to the comments in the script templates
2018-07-03 16:48:03 +02:00
Yasha Borevich
30317296af
Fix memory leak in GDScript during infinnity loops with yields
2018-06-28 23:55:30 +03:00
Marcin Zawiejski
317dcb084b
Fix onready vars / vars accessing class members if _ready / _init not present
2018-06-18 23:31:48 +02:00
Bojidar Marinov
8ecef3496c
Add proper type information to array property
...
Part of #19158
2018-06-18 22:24:31 +03:00
Paulb23
08c036b706
Removed duplicate default colours and removed GDScriptHighligher colours from main editor.
2018-06-13 18:25:02 +01:00
Rémi Verschelde
f0fa590210
Merge pull request #19526 from robojumper/fix_tutorials
...
Add support for tutorial links to makerst.py
2018-06-13 14:29:45 +02:00
robojumper
98b59cf2a3
Add support for tutorial links to makerst.py
...
Also change the <tutorials> structure to make use of individual <link> tags
2018-06-12 17:40:24 +02:00
Jairo Honorio
afcac41d31
Inner classes' functions now appear in the editor's functions panel
...
Fixes #19386
2018-06-12 10:43:37 -03:00
Michael Alexsander Silva Dias
fd17b960e9
Small changes to the comments in the script templates.
2018-06-11 02:04:51 -03:00
Rémi Verschelde
3334209a73
SCons: Pass env to modules can_build method
...
This allows to disable modules based on the environment,
in particular `env[tools]` which tells us if we are
building the editor or not.
2018-05-30 19:11:36 +02:00
Fabio Alessandrelli
8e35d937a9
New sync keywords in GDScript, NativeScript, Mono
2018-05-29 20:26:41 +02:00
Fabio Alessandrelli
1400f6fdc4
Refactor RPCMode enum and checks
2018-05-29 20:26:41 +02:00
Max Hilbrunner
4c69a495c9
Revert "RPCMode refactor, more sync modes"
2018-05-29 11:47:52 +02:00
Max Hilbrunner
d0b62ce155
Merge pull request #19021 from Faless/rpc_sync_fix
...
RPCMode refactor, more sync modes
2018-05-29 09:44:03 +02:00
George Marques
38284bc6da
Enable singletons to be recognized as constant expressions
...
Fix #14681
2018-05-28 13:40:16 -03:00
chanon
3ea6d9f37d
add new print_debug method which shows source and line number
2018-05-28 18:37:07 +07:00
Fabio Alessandrelli
a5e8a3be5e
New sync keywords in GDScript, NativeScript, Mono
2018-05-26 10:49:33 +02:00
Fabio Alessandrelli
9de4ffde61
Refactor RPCMode enum and checks
2018-05-26 10:43:43 +02:00
Max Hilbrunner
aee8d26252
Merge pull request #19131 from YeldhamDev/connection_comment_capitalize
...
Capitalized comments of methods created by the Connect Signal dialog
2018-05-24 01:21:17 +02:00
Michael Alexsander Silva Dias
4e257293d9
Capitalized comments of methods created by the Connect Signal dialog.
2018-05-23 18:11:00 -03:00
George Marques
3cec24baa8
Fix positive operator in GDScript compiler
2018-05-23 17:43:56 -03:00
chanon
a56d6ff35f
add new get_stack function to get GDScript stack trace as array
2018-05-17 21:06:30 +07:00
Rémi Verschelde
b0649d2718
Merge pull request #18405 from flashyincceo/gdscript-constants-help
...
Fix Ctrl+click on @GDScript constants
2018-05-17 09:36:55 +02:00
Juan Linietsky
47d4a011d8
Merge pull request #18545 from vnen/editor-autoload
...
Enable autoload in editor
2018-05-14 17:59:34 -03:00
Rémi Verschelde
919d802e66
Merge pull request #18183 from Paulb23/gdscript_highlighter_inital_changes
...
GDScript function definition and get_node shortcut syntax highlighting
2018-05-10 01:25:51 +02:00
Juan Linietsky
299d8a80ba
Merge pull request #16106 from poke1024/gdscript-lerp
...
GDScript: generalize lerp
2018-05-07 20:36:31 -03:00
Juan Linietsky
ff1e7cfbf4
Add is_instance_valid() method to GDScript, ending more than a decade of pain.
2018-05-07 17:30:03 -03:00
Max Hilbrunner
ffb6f8f1ca
Merge pull request #18406 from YeldhamDev/script_templates_period
...
Changed periods in the script templates
2018-05-04 11:20:16 +02:00
Rémi Verschelde
460e551ddf
Merge pull request #16418 from bojidar-bg/15961-gdscript-array-export
...
Allow exporting arrays of resources in GDScript
2018-05-03 21:19:15 +02:00
Michael Alexsander Silva Dias
093b069bf6
Changed periods in the script templates.
2018-05-02 11:42:09 -03:00
Rémi Verschelde
d33308921d
Merge pull request #18553 from bzztbomb/fix/stack_underflow_when_debuggin_in_release
...
Fix a crash when trying to run Godot debugger on a release build.
2018-05-02 10:48:45 +02:00
Rémi Verschelde
b0cf3628aa
Merge pull request #18452 from flashyincceo/enum-no-class
...
Fix enums without class name not opening docs page
2018-05-02 10:32:19 +02:00
Rémi Verschelde
fb917b5568
Merge pull request #18531 from KidRigger/issue5972
...
Adds keywords to autocomplete predictions.
2018-05-02 10:22:08 +02:00
Brian Richardson
9149b11973
Fix a crash when trying to run Godot debugger on a release build.
...
The GDScriptLanguage::enter_function is wrapped in #ifdef DEBUG but the exit_function is not, resulting in a stack underflow error.
2018-05-01 15:40:30 -07:00
Rémi Verschelde
de97339a2d
Merge pull request #18291 from akien-mga/coverity-uninitialized-scalar-var
...
Fix Coverity reports of uninitialized scalar variable
2018-05-01 19:14:07 +02:00
George Marques
decf178033
Enable autoload in editor
...
- Tool scripts will be executed and can be accessed by plugins.
- Other script languages can implement add/remove_named_global_constant
to make use of this functionality.
2018-05-01 11:44:08 -03:00
Peter Folkins
ccd986f53e
Fix enums without class name not opening docs page
2018-05-01 07:57:53 -05:00
Anish
6e32157a65
Adds keywords to autocomplete predictions.
...
Adds keywords to the autocomplete prediction in GDScript so
they are not replaced by irrelevant predictions.
Fixes : #5972
2018-05-01 11:48:16 +05:30
Peter Folkins
825d49dfe2
Fix Ctrl+click on @GDScript constants
2018-04-24 20:50:21 -05:00
Hugo Locurcio
1c419531a0
Change ".." punctuation for "..." in editor strings ( #16507 )
2018-04-22 19:36:01 +02:00
Paulb23
adeed58477
Added GDScript NodePath highlighting
2018-04-20 21:00:07 +01:00
Paulb23
4cd16f6ba9
Added GDScript function definition highlighting
2018-04-20 20:54:31 +01:00
Paulb23
28dfc7f915
GDScript highlighter now remembers previous state
2018-04-20 20:46:08 +01:00
Paulb23
c3d93edf3d
Exclude GDScriptSyntaxHighlighter from non-tool builds
2018-04-20 20:45:57 +01:00
Rémi Verschelde
bf7ca623a6
Fix Coverity reports of uninitialized scalar variable
...
Fixes most current reports on Coverity Scan of uninitialized scalar
variable (CWE-457): https://cwe.mitre.org/data/definitions/457.html
These happen most of the time (in our code) when instanciating structs
without a constructor (or with an incomplete one), and later returning
the instance. This is sometimes intended though, as some parameters are
only used in some situations and should not be double-initialized for
performance reasons (e.g. `constant` in ShaderLanguage::Token).
2018-04-19 15:20:45 +02:00
Rémi Verschelde
36552c2c90
Merge pull request #18040 from Paulb23/color_region_cache
...
Fixed colour regions and added local colour region cache
2018-04-09 16:05:26 +02:00
Juan Linietsky
34e367597d
Merge pull request #16556 from aragar/master
...
For-in loop variable added to autocompletion
2018-04-08 17:25:01 -03:00
Paulb23
b571a29df5
Fixed color regions and added local color region cache
2018-04-07 14:14:19 +01:00
Paulb23
63c8d0f455
Renamed GDSyntaxHighlighter to GDScriptSyntaxHighlighter
2018-04-04 20:02:42 +01:00
Rémi Verschelde
5ede505f14
Merge pull request #17923 from Paulb23/add_abstract_syntax_highlighter
...
Abstracted the syntax highlighter from text edit.
2018-04-04 09:50:51 +02:00
Felix Yang
7d5a40c3e6
Ctrl+Clicking a enum now scrolls down to it in the docs.
2018-04-03 21:56:54 +02:00
Paulb23
f7c727e6c3
Abstracted the syntax highlighter from text edit
2018-04-02 12:41:44 +01:00
Hein-Pieter van Braam
aed2fedd16
Merge pull request #17291 from Warlaan/master
...
completed-signal for coroutines with more than one yield
2018-03-15 23:11:37 +01:00
Poommetee Ketson
01ec06d9ae
Fix script template on _ready
behavior
2018-03-15 18:38:53 +07:00
Lars Kokemohr
3dfef37628
completed-signal is emitted by all GDScriptFunctionStates of a coroutine now, allowing to yield for completion of a function with more than one yield inside.
2018-03-14 16:42:13 +01:00
x1212
d2dc8fd423
fix enum from preloaded script in export
...
without triggering unnecessary reloads and parsing.
2018-03-04 18:01:15 +01:00
Rémi Verschelde
3fa77b3172
doc: Remove status from hardcoded version string
...
It has no practical use case and just generates noise for each alpha, beta, etc.
2018-02-27 13:40:49 +01:00
anakimluke
bd3b958a25
Removed whitespaces around arguments of functions.
...
Functions automatically generated by conneting
signals via GUI put whitespaces around the
arguments of the generated function. This is
inconsistent with the style guide.
This commit fixes that.
(cherry picked from commit 370f84f41c
)
2018-02-24 01:34:26 +01:00
luz.paz
612ab4bbc6
Fix typos with codespell
...
Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt`
Whitelist consists of:
```
ang
doubleclick
lod
nd
que
te
unselect
```
2018-02-21 19:46:06 +01:00
Rémi Verschelde
7455244866
Merge pull request #15852 from poke1024/color_hsv
...
Add Color.from_hsv()
2018-02-19 21:51:04 +01:00
Rémi Verschelde
43de4eb4d2
Merge pull request #15933 from x1212/fix_preload_in_exports
...
fix spurious error messages during autocomplete and validate
2018-02-19 21:46:26 +01:00
Rémi Verschelde
aeed774fef
Merge pull request #16173 from vnen/gdscript-arguments
...
Add argument count check for some GDScript functions
2018-02-19 21:35:53 +01:00
Rémi Verschelde
3c7a39b40c
doc: Update version string in header
2018-02-19 10:46:33 +01:00
x1212
48c9ed4545
fix spurious error messages during autocomplete and validate
...
_parse() caused resets on members like validating and
for_completion by calling clear().
2018-02-14 18:13:00 +01:00
Rémi Verschelde
11441e1556
Merge pull request #16176 from vnen/gdscript-default-args
...
Show default values in docs for GDScript built-in functions
2018-02-14 15:48:48 +01:00
Rado'sPC\aRaGaR
f97ebdcab3
For-in loop variable added to autocompletion
...
Fix for #16494
2018-02-11 11:29:30 +02:00
Bojidar Marinov
d855fdb451
Allow exporting arrays of resources in GDScript
...
Fixes #15961
2018-02-05 16:41:13 +02:00
Andreas Haas
95cfa9bf74
GDScriptParser: Remove debug prints.
2018-02-02 20:37:59 +01:00
George Marques
dca2ae78dd
Show default values in docs for GDScript built-in functions
2018-01-30 02:08:12 -02:00
George Marques
802d5c4c6c
Add argument count check for some GDScript functions
...
- Print functions have no check.
- Also remove extra apostrophe from the error report.
2018-01-30 01:32:08 -02:00
Bernhard Liebl
05a16549ef
GDScript: generalize lerp
2018-01-27 08:14:13 +01:00
Rémi Verschelde
f2e3825616
doc: Fix references to online tutorials after godotengine/godot-docs#1015
2018-01-25 09:03:59 +01:00
Rémi Verschelde
d516aab8fa
doc: Sync with current source
...
Also enhance RigidBody docs as per https://github.com/godotengine/godot-docs/pull/1018
and fix the version tag in all files (not really stable yet, but it makes no sense
to hardcode rc3 at this stage).
2018-01-25 08:50:56 +01:00
Bernhard Liebl
ec98e0b715
GDScript: always call ResourceLoader::load() in non-completion mode
2018-01-21 09:32:52 +01:00
Juan Linietsky
c58891ff4c
Allow shadowing class members with local variables in GDScript, closes #15896
2018-01-20 17:45:19 -03:00
Rémi Verschelde
0359fed313
Merge pull request #15849 from poke1024/preload-completion
...
GDScript: fix autocompletion for preload() (issue 15766)
2018-01-18 23:21:41 +01:00
Bernhard Liebl
67ae443c56
Suppress errors on autocompletion for preload()
2018-01-18 22:29:45 +01:00
Bernhard Liebl
be55171231
Add Color.from_hsv()
2018-01-18 22:13:00 +01:00
Rémi Verschelde
9f479f096c
Fix typos in code and docs with codespell
...
Using v1.11.0 from https://github.com/lucasdemarchi/codespell
2018-01-18 22:01:42 +01:00
Bernhard Liebl
ae4cd5b6da
GDScript: fix autocompletion for preload() (issue 15766)
2018-01-18 19:37:21 +01:00
Rémi Verschelde
6c46787749
doc: Replace some more "val" with "value" + sync
2018-01-17 10:43:23 +01:00
Chaosus
0c9312c6b8
Fixes for parameter names of builtin functions in visual scripts/core
2018-01-16 19:49:45 +03:00
Juan Linietsky
03475ba197
Filled tutorial field in most relevent classes.
...
Added tutorial display in doc.
2018-01-15 18:41:13 -03:00
Rémi Verschelde
e28cdc4654
doc: Update version string in XML
2018-01-13 11:43:42 +01:00
Bojidar Marinov
9b8e8b2220
Bind many more properties to scripts
...
Notable potentially breaking changes:
- PROPERTY_USAGE_NOEDITOR is now PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_NETWORK, without PROPERTY_USAGE_INTERNAL
- Some properties were renamed, and sometimes even shadowed by new ones
- New getter methods (some virtual) were added
2018-01-12 00:58:14 +02:00
Ignacio Etcheverry
5be356b72f
Mono: Implement stack info for errors and exceptions
2018-01-09 17:19:03 +01:00
Rémi Verschelde
e4213e66b2
Add missing copyright headers and fix formatting
...
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Rémi Verschelde
3db1c6a6f5
Merge pull request #15089 from poke1024/funcref-warn
...
Warn about funcref creation
2018-01-03 11:03:03 +01:00
Rémi Verschelde
b50a9114b1
Update copyright statements to 2018
...
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
Bernhard Liebl
29f7f48c42
Warn about funcref creation
2017-12-26 23:16:41 +01:00
Rémi Verschelde
8f25a2dc11
Cleanup some #if 0'd code
2017-12-17 15:40:24 +01:00
Rémi Verschelde
1b9c8daf7b
Merge pull request #12845 from remorse107/Array-Dictionary-Fix
...
Fix issue #11400 . Fixes issue with arrays and dictionary acting as static objects between different instances of objects.
2017-12-16 15:49:07 +01:00
Juan Linietsky
93a63a5e1a
GDScript files are converted to binary on export now.
2017-12-14 15:34:47 -03:00
Andreas Haas
0e624234da
Scons: Build modules in seperate env.
2017-12-13 15:46:35 +01:00
Bojidar Marinov
2c190b975e
Properly support nested ternary expressions
...
Fixes 14324.
2017-12-11 15:36:32 +02:00
Rémi Verschelde
a845411454
Style: Re-apply clang-format over recent invalid additions
2017-12-10 01:27:02 +01:00
George Marques
3d8dd7b327
Make GDScript parser raise error when exporting Object
2017-12-09 15:35:02 -02:00
Juan Linietsky
dcab01618a
Fixed is_playing funtion (was reporting wrong), closes #13928
...
Made error reporting to opcode_set in gdscript a bit clearer
2017-12-07 18:14:39 -03:00
Rémi Verschelde
13c2ff9320
Style: Apply new clang-format 5.0 style to all files
2017-12-07 08:02:00 +01:00
Rémi Verschelde
d5ca9e2f6f
Style: Apply clang-format again on all files
...
Fixes issues introduced by newer clang-format versions or commits
pushed directly without using the clang-format pre-commit hook.
2017-12-07 08:02:00 +01:00
Juan Linietsky
bc2e8d99e5
Made Vector::ptrw explicit for writing, compiler was sometimes using the wrong function,
...
leading to unnecesary copy on writes and reduced performance.
2017-11-25 00:09:40 -03:00
Rémi Verschelde
bc75fae579
doc: Update header version for 3.0-beta
2017-11-24 09:16:52 +01:00
pablotato
054a2ac579
Add cartesian to polar conversion functions
2017-11-20 23:34:40 +01:00
sanikoyes
fb801d4964
Allow to extends constant variable
2017-11-20 23:24:52 +01:00
Rémi Verschelde
6065b2d177
Merge pull request #11940 from GodotExplorer/debugger
...
Enhanced debugger for godot 3.0
2017-11-20 22:55:49 +01:00
Rémi Verschelde
7b5c447301
Merge pull request #12952 from bojidar-bg/12392-export-enums
...
Allow exporting enums from GDScript
2017-11-20 09:11:46 +01:00
Robert Morse
74872fd23e
Fix issue #11400 . Fixes issue with arrays and dictionary acting as static objects between different instances of objects.
2017-11-17 17:49:52 -06:00
Juan Linietsky
ebbe2bd572
Merge pull request #12930 from vnen/gdscrit-output-print
...
Make tool scripts print on the editor Output panel
2017-11-17 16:05:44 -03:00
Ferenc Arn
d28763a4c1
Rename Rect3 to AABB.
...
Fixes #12973 .
2017-11-17 11:01:41 -05:00
Bojidar Marinov
e4a36d0eda
Allow exporting enums from GDScript
...
Use as `export(E) ...`
Closes #12392
2017-11-17 14:33:36 +02:00
Geequlim
fab66af7e9
Move the remote scene tree to the scene tree dock.
...
Ignore all script constants in the global section of the breakpoint stack.
Check property size before send to avoid too large of data be sent.
Fix crash while clear the remote objects from the debugger.
2017-11-17 12:01:54 +08:00
geequlim
475cee9c0f
Abstract some method for script system
2017-11-17 09:20:32 +08:00
George Marques
1d12470a78
Add print_error function, akin to print_line
2017-11-16 21:56:57 -02:00
Rémi Verschelde
4cfc29611e
GDScript: Refactor "GD" class prefix to "GDScript"
2017-11-16 18:54:56 +01:00
Rémi Verschelde
3002130a6d
Merge pull request #12957 from bojidar-bg/12928-numeric-underscores
...
Allow underscores in GDScript numeric literals
2017-11-16 09:04:31 +01:00
Bojidar Marinov
443ce6fef2
Allow underscores in GDScript numeric literals
...
Closes #12928
2017-11-15 22:53:08 +02:00
Rémi Verschelde
677e95d8d1
doc: Make all module docs self-contained
2017-11-15 21:29:33 +01:00
Rémi Verschelde
e7701bb2de
doc: Rename "@Global Scope" to "@GlobalScope"
...
Spaces in filenames are evil.
2017-11-15 20:41:16 +01:00
Juan Linietsky
a5c3e3084a
When script changes, defer tree updating. Fixes #9704
2017-11-15 10:41:31 -03:00
Rémi Verschelde
61a693cf78
Merge pull request #12922 from eska014/engine-singletons
...
Singleton management changes
2017-11-14 20:44:55 +01:00
Leon Krause
9b7b46143d
Move singleton management from ProjectSettings to Engine
2017-11-14 15:15:13 +01:00
Michael Alexsander Silva Dias
3fac4ef336
Fixed signal connection dialog ignoring indentation settings when creating a function.
2017-11-13 17:45:13 -02:00
Rémi Verschelde
51ffd45202
Merge pull request #12627 from Goutte/feat-support-tau
...
Add support for TAU constant.
2017-11-12 21:11:39 +01:00
Goutte
91ca725f9b
Add support for the TAU constant. Fixes #12094 .
2017-11-12 13:32:35 +01:00
Paulb23
b835aec87b
Fixed help lookup not finding classes, issue 11867
2017-11-11 23:50:56 +00:00
Hein-Pieter van Braam
38ae49e574
Make sure we don't leak when an opcode is followed by itself
...
When compiling with GCC it is now possible for an opcode followed by
itself to never leave the scope it is currently in. This leads to a
situation where the dtor of a scope local variable isn't called which in
turn can lead to a memory leak.
By moving the goto outside of the scope of each opcode we guarantee that
all dtors have been called before the next opcode gets dispatched.
this fixes #12401
2017-11-09 17:57:43 +01:00
Bojidar Marinov
b7fd065f5c
Fix crash when guessing type of variable declared to itself
...
Fixes #10972
2017-11-08 22:17:08 +02:00
Rémi Verschelde
ea0e942617
Merge pull request #12035 from Chaosus/wrapfunc
...
Added new Wrap functions for numbers
2017-10-31 23:30:50 +01:00
Unknown
7683ff3e42
Fix get_node() and $ autocompletion when using single quotes
2017-10-30 21:58:32 +01:00
Jerome67000
2609cc9ef4
Removes Script::get_node_type()
...
used before GDScript, with squirrel apparently
2017-10-25 20:11:30 +02:00
Rémi Verschelde
847c55bcb1
Merge pull request #12365 from neikeq/p
...
Add ScriptLanguage::supports_builtin_mode and improve ScriptCreateDialog
2017-10-24 18:59:26 +02:00
Ignacio Etcheverry
e218a13a64
Add ScriptLanguage::supports_builtin_mode and improve ScriptCreateDialog
...
- Make ScriptCreateDialog disable the built-in script checked button if the language does not support it.
- ScriptLanguage's get_template and make_template now receive the script path as class name if the the script language does not have named classes.
2017-10-24 15:48:58 +02:00
jagt
822af935e3
fix editor crash when missing variable in pattern match dispatch
2017-10-24 13:07:21 +08:00
mhilbrunner
ba779c1c0c
Add _process(delta) to new script templates. Closes #11994 .
2017-10-22 21:07:34 +02:00
Chaosus
216a8aa643
Added new wrap functions
2017-10-13 11:10:45 +03:00
Ruslan Mustakov
61ddf52983
Add NIL_IS_VARIANT usage to few definitions
...
The missing usage flag led to GDNative API descriptions containting
arguments with "void" type.
2017-10-05 18:51:22 +07:00
Hein-Pieter van Braam
6c15c23889
Replace a OPCODE_BREAK with break in opcode 31
...
This was a mistake made in 520d84e
. There are no more other looping
structures left in this function.
2017-10-01 16:51:05 +02:00
Juan Linietsky
0a5799fb43
Properly allow completion on variable initializer arguments, closes #9359
2017-09-29 19:43:31 -03:00
Scayze
0722df4829
Fixed wrong break statement in GDFunction::call
2017-09-27 03:23:39 +02:00
Hein-Pieter van Braam
0a338a28d9
Remove several checks on DEBUG_RELEASE
...
These errors shouldn't be possible on a tested game. Remove the checks
on release. Shaves about 10% off of tight loops.
2017-09-25 18:29:18 +02:00
Hein-Pieter van Braam
520d84e042
Use computed goto to dispatch next opcode
...
On compulers that define __GNUC__ use computed goto to directly dispatch
the next instruction rather than going through another switch statement.
This saves a jump and some comparisons.
In tight loops this is is roughly 10% faster than the switch() method.
2017-09-25 18:29:13 +02:00
Hein-Pieter van Braam
22358babda
Implement Linux-style likely()/unlikely() macros
...
This implement branch prediction macros likely() and unlikely() like in
Linux. When using these macros please ensure that when you use them the
condition in the branch really is very, very likely or unlikely. Think
90+% of the time. Primarily useful for error checking. (And I implement
these macros for all our error checking macros now)
See this article for more information:
https://kernelnewbies.org/FAQ/LikelyUnlikely
There are more places where these macros may make sense in renderer and
physics engine. Placing them will come in another commit down the line.
2017-09-21 18:28:28 +02:00
Hein-Pieter van Braam
833c3917b2
Allow booleanization of all types
...
We now allow booleanization of all types. This means that empty versions
of all types now evaluate to false. So a Vector2(0,0), Dictionary(),
etc.
This allows you to write GDScript like:
if not Dictionary():
print("Empty dict")
Booleanization can now also no longer fail. There is no more valid flag,
this changes Variant and GDNative API.
2017-09-19 18:55:31 +02:00
Hein-Pieter van Braam
60790c8c5a
Remove more GDScript runtime checks on release
...
As a preparation for other performance enhancements to GDScript:call()
start by removing more of the GDScript runtime checks on release.
This code has been tested with 2d/platformer, 3d/platformer,
3d/materials_test, and goltorus. No regressions were found.
2017-09-19 02:06:47 +02:00
Hein-Pieter van Braam
137f8a58a8
Move Variant::evaluate() switch to computed goto
...
In an effort to make GDScript a little faster replace the double
switch() with a computed goto on compilers that set __GNUC__. For
compilers that don't support computed goto it will fall back to regular
switch/case statements.
In addition disable using boolean values in a mathematical context. Now
boolean values can only be compared with other booleans. Booleans will
also no longer be coerced to integers.
This PR replaces #11308 and fixes #11291
2017-09-17 22:49:23 +02:00
William Taylor
8632408dbd
Changed/Added descriptions in @GDScript. Added examples. Fixed return types of two … ( #11146 )
...
Doc: Improved descriptions in GDScript docs
Added examples and fixed return types of two methods.
2017-09-12 15:00:29 +02:00
Rémi Verschelde
2b50dc5d4f
Merge pull request #11057 from hpvb/fix-various-warnings
...
Fix various assorted warnings
2017-09-12 11:39:47 +02:00
Poommetee Ketson
dccb37417c
Implement String len()
2017-09-11 08:43:25 +07:00
Hein-Pieter van Braam
67a706fc1b
Fix various assorted warnings
...
Fix various warnings that don't have enough instances to merit
individual commits. Also fixes a potential bug in audio_server.cpp.
2017-09-08 14:57:48 +02:00
Ignacio Etcheverry
52a7be4eef
Fixes language overridden external editors
2017-09-03 21:23:36 +02:00
Poommetee Ketson
459f526119
Fix typos 'a' and 'an'
2017-09-02 21:19:06 +07:00
Hein-Pieter van Braam
9c63ab99f0
Fix use of unitialized variables
...
The second in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-02 01:59:26 +02:00
Juan Linietsky
9c3bddfac2
Merge pull request #10745 from neikeq/fix-docdata-and-stuff
...
DocData and virtual method type hints fixes
2017-08-29 20:11:07 -03:00
Ignacio Etcheverry
8bd92a96a4
Makes built-in vararg methods actual vararg methods
...
- Removes hardcoded parameters from built-in vararg methods and adds METHOD_FLAG_VARARG to them.
- Makes EditorHelp display built-in vararg methods correctly.
2017-08-29 19:40:28 +02:00
Ignacio Etcheverry
c16d00591b
DocData and type hints fixes
...
- Makes vararg methods automatically use PROPERTY_USAGE_NIL_IS_VARIANT on return types
- Completely removes the ":type" suffix for method names. Virtual methods must use the MethodInfo constructors that takes Variant::Type or PropertyHint as the first parameter for the return type (with CLASS_INFO as a helper to get the PropertyInfo). Parameters must use PROPERTY_HINT_RESOURCE_TYPE and hint string.
- PROPERTY_USAGE_NIL_IS_VARIANT is no longer needed for parameters, because parameters cannot be void.
- Adds missing PROPERTY_USAGE_NIL_IS_VARIANT to virtual and built-in methods that return Variant.
2017-08-29 19:40:21 +02:00
Juan Linietsky
8fce79aaee
-Some fixes to code completion.
...
-Fix getter in code completion being displayed when it shouldn't
-Clean up preview generation for editors and exposed it as editor plugin
2017-08-28 00:04:24 -03:00
Juan Linietsky
d23f323cde
-Moved script run to editor, removed from project
...
-fixed to code completion
-fix shader crash bug reported by tagcup
2017-08-27 19:04:19 -03:00
Hein-Pieter van Braam
8064fbb174
Fix a crash in gdscript callbacks
...
This fixes a crash running the 'goltorus' project.
2017-08-27 23:49:13 +02:00
Rémi Verschelde
7ad14e7a3e
Dead code tells no tales
2017-08-27 22:13:45 +02:00
Rémi Verschelde
bd282ff43f
Use HTTPS URL for Godot's website in the headers
2017-08-27 14:16:55 +02:00
Hein-Pieter van Braam
3e25cf9e05
Add two missing Null checks
...
These Null checks were removed in #10581 but actually changed the
logic of the functions in this case.
This fixes #10654
2017-08-26 23:40:45 +02:00
Rémi Verschelde
490aef9369
Merge pull request #10581 from hpvb/fix-gcc6+
...
Make cast_to a static member of Object.
2017-08-25 08:37:38 +02:00
Juan Linietsky
b1c0e45b03
Implemented, The Amazing Zylann Hack (tm), fixes #10603
2017-08-25 00:34:32 -03:00
Hein-Pieter van Braam
cacced7e50
Convert Object::cast_to() to the static version
...
Currently we rely on some undefined behavior when Object->cast_to() gets
called with a Null pointer. This used to work fine with GCC < 6 but
newer versions of GCC remove all codepaths in which the this pointer is
Null. However, the non-static cast_to() was supposed to be null safe.
This patch makes cast_to() Null safe and removes the now redundant Null
checks where they existed.
It is explained in this article: https://www.viva64.com/en/b/0226/
2017-08-24 23:08:24 +02:00
Andreas Haas
f61e8695c9
GDScript: More reliable check if loading a template.
...
Prevents showing some useless parse errors in the console.
2017-08-24 22:08:23 +02:00
Rémi Verschelde
3ea0943f64
Fix mismatched signatures for GDScriptLanguage::complete_code
2017-08-24 12:44:51 +02:00
Juan Linietsky
36e0a72c77
-Code completion for enumerations
...
-Disabled GDNative and GDNativeScript so build compiles again
2017-08-24 00:06:56 -03:00
Juan Linietsky
3d1c031871
Changed MethodBind API to request information from methods. It's much claner now.
...
Also changed PropertyInfo to include informatino about class names.
2017-08-23 19:11:11 -03:00
Rémi Verschelde
1ad68c946e
Merge pull request #10542 from karroffel/gdscript-match-index
...
support enums and nested constants in match statement
2017-08-23 08:05:52 +02:00
Wilson E. Alvarez
baa94a3758
Removed unnecessary returns and break statements
2017-08-22 13:01:57 -04:00
Karroffel
57654d4b95
support enums and nested constants in match statement
...
The initial version of the pattern matcher in GDScript does not
allow matching on nested identifiers, only one identifiers available
in the current scope.
With the introduction of enums to GDScript that's a huge missing
feature. This commit makes the parser accept indexed constants and
variables to properly support enums.
2017-08-22 17:45:05 +02:00
Rémi Verschelde
df590fc2d3
Merge pull request #10340 from Rubonnek/remove-unnecessary-assignments
...
Removed unnecessary assignments
2017-08-22 00:58:12 +02:00
Rémi Verschelde
135027a2f6
Merge pull request #10225 from Noshyaar/map
...
GDScript Built-in: add inverse_lerp & range_lerp
2017-08-22 00:31:46 +02:00
Wilson E. Alvarez
738d2ab969
Removed unnecessary assignments
2017-08-21 15:15:55 -04:00
Juan Linietsky
541fdffc0a
Merge pull request #10319 from neikeq/pr-engine-editor-hint
...
Adds Engine::is_editor_hint() method
2017-08-20 12:55:46 -03:00
Ignacio Etcheverry
90b8a5b71e
Removes editor_hint from SceneTree
2017-08-19 01:29:45 +02:00
Poommetee Ketson
d28da86f9f
GDScript Built-in: add inverse_lerp & range_lerp
2017-08-18 21:49:03 +07:00
Marcelo Fernandez
eab850524e
Add closest_power_of_2 func and implement mix_rate/latency on OS X
2017-08-17 19:51:13 -03:00
Rémi Verschelde
b1ecaaa22b
Merge pull request #10307 from Rubonnek/update-argument-names
...
Updated function argument names
2017-08-16 17:17:56 +02:00
Pedro J. Estébanez
ae2d449047
Revive inspector property evaluation
...
GDScript was restricted to parse only scripts beginning with __res://__ or __user://__ to avoid templates from being parsed. I've made that a bit less inclusive by allowing scripts with an empty path to be parsed too, which doesn't conflict and is needed for this to work.
Also I've removed the `this` variable of the generated script and made the relevant object to be the one the script instance refers to, so you can use `self` instead.
Now, with the shorter 3.0-style syntax, you can write things like: `self.position.x + 10`
Closes #9500 .
2017-08-16 03:01:41 +02:00
Wilson E. Alvarez
428f03cf06
Updated function argument names
2017-08-12 15:12:49 -04:00
Ignacio Etcheverry
2f290038d6
Removes type information from method binds
2017-08-10 07:17:50 +02:00
Juan Linietsky
95f10c620d
push variable later when created, to avoid self-referencing as a valid case, closes #6111
2017-08-08 11:44:49 -03:00
Juan Linietsky
c6120e77a8
Implement len() gdscript built-in function for python users, closes #1960
2017-08-07 18:38:47 -03:00
Indah Sylvia
5ae78fdf6a
Makes all Godot API's methods Lower Case
2017-08-07 18:24:35 +07:00
Bojidar Marinov
a5fb82c28c
Fix $a/b being parsed as division
2017-07-26 18:51:03 +03:00
Rémi Verschelde
a931052c79
Merge pull request #9731 from Xrayez/gdscript-completion
...
Update GDScript completion names for Pool*Arrays
2017-07-25 21:05:42 +02:00
Karroffel
5319098aef
fix a regression (GDScript) from e00630b
...
This removes `not` from the variable safe list of
keywords.
Before that this was a valid expression:
self.!(some_arg)
The other fix is just a forgotten boolean negation.
2017-07-25 20:01:19 +02:00
Andrii Doroshenko (Xrayez)
72436956dd
Update GDScript completion names for Pool*Arrays
...
Notice: GDScript tokenizer used the old PoolFloatArray name.
Renamed PoolFloatArray to PoolRealArray.
Moved "project_settings.h" down one line to comply with the clang-format rules.
Fixes #9638
Closed pull request #9714 because I messed up with commits, sorry!
2017-07-25 12:14:40 +03:00
Rémi Verschelde
e00630bfca
Merge pull request #8217 from bojidar-bg/gdscript-fix-keyword-call
...
Make GDScript allow some keywords as identifiers
2017-07-25 08:18:10 +02:00
Bojidar Marinov
1936e1d2be
Make GDScript allow some keywords as identifiers
...
Fixes #8085
Added some comments around the use of is_token_literal, as discussed.
2017-07-23 23:34:31 +03:00
Poommetee Ketson
c7c65ca6ba
Clang-formatting *.cpp and *.h (some files excluded)
2017-07-22 18:14:08 +07:00
Juan Linietsky
25678b1876
-Renamed GlobalConfig to ProjectSettings, makes more sense.
...
-Added system for feature overrides, it's pretty cool :)
2017-07-19 17:06:03 -03:00
Poommetee Ketson
49c7620326
Add object type hint for docs
2017-07-19 02:03:34 +07:00
Juan Linietsky
bbada82f80
-Reorganized all properties of project settings (Sorry, Again).
...
(Lot's of bloat accumulated, so it was time for clean up.)
-Made EditorSettings and ProjectSettings search more useful (search in sections too)
2017-07-17 22:18:58 -03:00
Rémi Verschelde
a5d500f023
Merge pull request #8573 from neikeq/gdfs-completed
...
Adds "completed" signal to GDFunctionState
2017-07-11 11:14:22 +02:00
geequlim
6687484958
Better user expirence with external text editors.
...
Implements open_in_external_editor for subclasses of ScriptLanguage.
Add option 'Debug with external editor' to debug menu to control the behavoir of script opened by editor.
2017-06-27 12:55:16 +08:00
Rémi Verschelde
9c186a754f
Merge pull request #8783 from bojidar-bg/fix-range-loop-type
...
Fix for..in range() resulting in floats instead of ints
2017-06-24 23:39:55 +02:00
Juan Linietsky
00e5ba3143
Remove methods from code completion which are already exposed by properties, makes completion cleaner and more close to the documentation.
2017-06-23 15:10:46 -03:00
Mariano Suligoy
7fe750583e
GdScript: Add signal autocompletion to emit_signal function
2017-06-23 07:51:49 -03:00
Ignacio Etcheverry
07fe7d99ea
Adds completed signal to GDFunctionState
2017-06-23 02:29:23 +02:00
Bojidar Marinov
26a51c3c0b
Reimplement for..in range() so that it always results in ints
...
Fixes #8278 , fixup of bfef8de1bc
2017-06-22 20:41:52 +03:00
Andreas Haas
8361b1ce07
Add ability to use custom script templates.
...
Templates will be loaded from .godot/script_templates
For now they're disabled for GDNative.
Ideas for further improvements:
- Add a "Save as Template" option to the script editor, as it can normally only save to res://
- Support more placeholders / custom placeholders
2017-06-13 20:03:08 +00:00
Andreas Haas
015d36d18b
GDScript: Use "is" keyword for type checking.
...
Replaces the `extends` keyword with `is` in the context of testing for type compatibility.
`extends` is still used for declaring class inheritance.
Example:
```gdscript
extends Node2D
func _input(ev):
if ev is InputEventKey:
print("yay, key event")
```
2017-05-27 10:59:59 +02:00
Juan Linietsky
5b3709d309
Removal of InputEvent as built-in Variant type..
...
this might cause bugs I haven't found yet..
2017-05-20 17:05:38 -03:00
Rémi Verschelde
dcc44f05b7
Merge pull request #8798 from RandomShaper/gdfs-ext-check
...
Add extended check option to GDFunctionState::is_valid()
2017-05-18 12:51:29 +02:00
Pedro J. Estébanez
b69d4ebff4
Add extended check option to GDFunctionState::is_valid()
2017-05-17 14:55:59 +02:00
Juan Linietsky
98a3296702
Removal of Image from Variant, converted to a Resource.
2017-05-17 07:37:45 -03:00
Bojidar Marinov
837a667225
Fix #8674 , and rename a few things for clarity
2017-05-08 22:39:27 +03:00
Paulb23
c4ffe89204
Changed indent type settings
2017-04-26 12:14:03 +01:00
Ramesh Ravone
924bccdbd1
Honoring the Indent setting for gdscript
2017-04-25 06:57:49 +05:30
Karroffel
67886bab1e
fixed a bug where saving a GDScript file crashed the editor
...
I changed the loop in #8502 , turns out it fixed the error I was facing but introduced a new one. This fixes both
2017-04-24 19:26:32 +02:00
Rémi Verschelde
9acfb0782c
Merge pull request #8444 from magyar123/pr-complete-paths
...
Script editor now automatically completes file paths in GDScript
2017-04-24 11:37:57 +02:00
Rémi Verschelde
68870af214
Merge pull request #8420 from magyar123/pr-script-files-as-base
...
Added the ability to select files as base when creating scripts
2017-04-24 11:28:36 +02:00
Karroffel
885239fb09
re-added MultiScript
...
The very first Godot version (when it was open sourced) had "MultiScript" which lets you use multiple scripts on one object.
With the addition of mulitple new scripting languages (VisualScript, soon C# and GDNative) it can be of use to combine scripts rather than delegating (with huge maintainance cost) or creating child nodes
which could impact performance.
I used the code from 0b806ee
as the base and made it work with the current master.
2017-04-24 01:49:40 +02:00
mbalint12
71978685f9
Added autocomplete for file paths in the script editor
2017-04-18 17:22:01 +02:00
Paulb23
84bca4e72f
Added support for space indentation
2017-04-18 12:30:46 +01:00
mbalint12
a3afec588c
Added the ability to select files as base when creating scripts
2017-04-15 23:29:09 +02:00
Bojidar Marinov
7cc561fe0e
Fixup #8123 , seems like I forgot a few things
...
Should close #8315
Please test, I'm still unsure I did it correctly...
2017-04-08 19:42:37 +03:00
Rémi Verschelde
df61dc4b2b
Add "Godot Engine contributors" copyright line
2017-04-08 00:11:42 +02:00
curtisxk38
d35fab7382
Fix typo in Parser Error message
2017-04-05 23:11:05 -04:00
Saggi Mizrahi
c464609bda
Add '$' to token names
...
It was missing from this array and would cause godot to crash or report
bad errors.
Signed-off-by: Saggi Mizrahi <saggi@mizrahi.cc>
2017-04-01 03:20:23 +03:00
Rémi Verschelde
495710c3d6
Merge pull request #8123 from bojidar-bg/gdscript-inline-block-indent
...
Make inline blocks in GDScript more (or less) pythonic
2017-03-24 22:52:09 +01:00
Rémi Verschelde
debeee56f7
Fix typos in source code using codespell
...
From https://github.com/lucasdemarchi/codespell
2017-03-24 21:45:31 +01:00
Bojidar Marinov
18ab88b3f1
Make inline blocks in GDScript more pythonic
...
Fixes #8001
2017-03-23 20:07:02 +02:00
Rémi Verschelde
33a2c5def0
Merge pull request #8095 from RandomShaper/fix-yield-crash
...
Fix random crashes when using yield()
2017-03-21 11:07:07 +01:00
Pedro J. Estébanez
0664a9ef8e
Fix random crashes when using yield()
2017-03-21 02:53:06 +01:00
mbalint12
edaf77abd6
Fixed typo in gdscript autocompletion.
...
There was a missing '!' sign, but autocompletion shows parent script members too.
2017-03-17 23:27:44 +01:00
Pedro J. Estébanez
31af5a31fb
Skip asserts on non-debug builds at compiler level
2017-03-13 00:25:29 +01:00
Rémi Verschelde
5dbf1809c6
A Whole New World (clang-format edition)
...
I can show you the code
Pretty, with proper whitespace
Tell me, coder, now when did
You last write readable code?
I can open your eyes
Make you see your bad indent
Force you to respect the style
The core devs agreed upon
A whole new world
A new fantastic code format
A de facto standard
With some sugar
Enforced with clang-format
A whole new world
A dazzling style we all dreamed of
And when we read it through
It's crystal clear
That now we're in a whole new world of code
2017-03-05 16:44:50 +01:00
Rémi Verschelde
e1c1d7d1d7
Add a bunch of missing Godot headers in own files
2017-03-05 15:47:28 +01:00
Rémi Verschelde
49c065d29c
Refactoring: rename tools/editor/ to editor/
...
The other subfolders of tools/ had already been moved to either
editor/, misc/ or thirdparty/, so the hiding the editor code that
deep was no longer meaningful.
2017-03-05 14:21:25 +01:00
Rémi Verschelde
a1cbe8e22b
Merge pull request #7878 from RebelliousX/else
...
Bunch of missing `else` statements and general logic
2017-02-28 23:03:10 +01:00
Saracen
5e938f0001
Inf and NaN support added to GDScript.
2017-02-28 21:52:33 +00:00
Thaer Razeq
f50488a361
Various fixes detected using PVS-Studio static analyzer.
...
- Add FIXME tags comments to some unfixed potential bugs
- Remove some checks (always false: unsigned never < 0)
- Fix some if statements based on reviews.
- Bunch of missing `else` statements
2017-02-28 07:52:02 -06:00
Rémi Verschelde
1ec8b9fb7d
Merge pull request #7851 from shlomif/fix-some-compilation-warnings
...
Get rid of some compilation warnings.
2017-02-26 20:22:48 +01:00
Rémi Verschelde
a78c314b0e
Merge pull request #7809 from hpvb/fix-6798
...
Allow preload to accept a const string.
2017-02-26 20:12:36 +01:00
Shlomi Fish
0a2c387d5c
Fix some compilation warnings.
...
Redone the commit based on the input in
https://github.com/godotengine/godot/pull/7851 . Not all warnings were
fixed but it's a start.
2017-02-21 11:59:19 +02:00
Juan Linietsky
de0045cf1b
-renamed globals.h to global_config.cpp (this seems to have caused a few modified files)
...
-.pck and .zip exporting redone, seems to be working..
2017-02-21 00:06:30 -03:00
Hein-Pieter van Braam
b696beea65
Correct hash behavior for floating point numbers
...
This fixes HashMap where a key or part of a key is a floating point
number. To fix this the following has been done:
* HashMap now takes an extra template argument Comparator. This class
gets used to compare keys. The default Comperator now works correctly
for common types and floating point numbets.
* Variant implements ::hash_compare() now. This function implements
nan-safe comparison for all types with components that contain floating
point numbers.
* Variant now has a VariantComparator which uses Variant::hash_compare()
safely compare floating point components of variant's types.
* The hash functions for floating point numbers will now normalize NaN
values so that all floating point numbers that are NaN hash to the same
value.
C++ module writers that want to use HashMap internally in their modules
can now also safeguard against this crash by defining their on
Comperator class that safely compares their types.
GDScript users, or writers of modules that don't use HashMap internally
in their modules don't need to do anything.
This fixes #7354 and fixes #6947 .
2017-02-16 18:44:29 +01:00
Hein-Pieter van Braam
3e5743ca36
Allow preload to accept a const string.
...
In preload() parsing this code will lookup the identifier in the local
constant database. If the identifier corresponds to a string constant
it is used as the path for preload().
Currently this does not work for global constants, only constants
declared in the same class as the preload is happening. We can implement
a full fix too. Maybe we can use this PR to discuss the possibilities.
This (partially) fixes #6798
2017-02-16 14:29:18 +01:00
Juan Linietsky
d7fd86d51a
-begin of export work, not done yet
...
-fixes to make scenes exported from godot 2.x work
2017-02-15 08:30:32 -03:00
Hein-Pieter van Braam
e8611966de
Remove bounds check when resuming from yield.
...
The code would get a pointer to the beginning of the call_args by using
operator[] at the stack Vector. This does bound checking. When there are
no call_args this bound check fails and the error mentioned in #7796
gets triggered.
This bound check is actually not necessary as call_args just gets set to
NULL and never dereferenced. This new code will just unconditionally set
the pointer to the place where the call_args are if there are any. There
is no NULL check for call_args anywhere so this is safe.
Fixes #7796
2017-02-13 21:59:05 +01:00
Hein-Pieter van Braam
411ee71b4d
Rename the _MD macro to D_METHOD
...
This new name also makes its purpose a little clearer
This is a step towards fixing #56
2017-02-13 12:50:02 +01:00
lonesurvivor
c71a6c6d71
Fix parsing bug which causes range(variable) to crash the engine
...
problem was a segmentation fault caused by trying to access Vector constants[0] which isn't there if op->arguments.size() is not bigger than one.
- the changed OR condition didn't make sense (always true), should be AND
- changes the "constant" variable to be false per default and gets set to true when there is actually something pushed to "constants"
2017-02-04 20:57:39 +01:00
Juan Linietsky
96de0141cc
Removed import/export system, will start new one from scratch.
2017-01-25 21:57:08 -03:00
Rémi Verschelde
5027799c13
Merge pull request #7583 from karroffel/wildcard
...
made _ a special token in GDScript
2017-01-23 07:55:11 +01:00
karroffel
c24c739da5
made _ a special token in GDScript
2017-01-20 09:26:55 +01:00
Ferenc Arn
6f4f9aa6de
Overloaded basic math funcs (double and float variants). Use real_t rather than float or double in generic functions (core/math) whenever possible.
...
Also inlined some more math functions.
2017-01-16 13:36:33 -06:00
Rémi Verschelde
bf05dab74f
Merge pull request #7532 from tagcup/pcg_prng
...
Replace the existing PRNG (Xorshift31) with (minimal) PCG-32.
2017-01-16 20:06:54 +01:00
Rémi Verschelde
2a0ddc1e89
Style: Various fixes to play nice with clang-format
2017-01-16 08:49:52 +01:00
Rémi Verschelde
f44ee891be
Style: Fix statements ending with ';;'
2017-01-16 08:49:52 +01:00
Rémi Verschelde
3890256fc5
Style: Cleanups, added headers, renamed files
...
Made sure files in core/ and tools/ have a proper Godot license header
when written by us. Also renamed aabb.{cpp,h} and object_type_db.{cpp,h}
to rect3.{cpp,h} and class_db.{cpp,h} respectively.
Also added a proper header to core/io/base64.{c,h} after clarifying
the licensing with the original author (public domain).
2017-01-16 08:04:23 +01:00
Ferenc Arn
4c9004671a
Replace the existing PRNG (Xorshift31) with (minimal) PCG (XSH-RR variant with 32-bit output, 64-bit state).
...
PCG is better than many alternatives by many metrics (see www.pcg-random.org) including statistical quality with good speed.
2017-01-15 19:15:16 -06:00
Rémi Verschelde
e0faf8a51b
Style: Cosmetic fixes to play nice with clang-format
2017-01-15 16:42:17 +01:00
James Mintram
dab73c701a
Compile error when duplicate key in dictionery literal #7034
2017-01-14 22:08:49 +01:00
Juan Linietsky
4261880c94
Merge pull request #6845 from karroffel/master
...
Adds pattern matching to GDScript
2017-01-14 17:08:10 -03:00
Juan Linietsky
7924f08a6a
Merge pull request #4918 from jjay/f/error_on_redefine
...
Redefine var results in an error
2017-01-14 17:07:08 -03:00
Rémi Verschelde
93ab45b6b5
Style: Fix whole-line commented code
...
They do not play well with clang-format which aligns the `//` part
with the rest of the code block, thus producing badly indented commented code.
2017-01-14 14:52:23 +01:00
Juan Linietsky
d9d77291bc
rename String.extension() -> String.get_extension() / String.basename() -> String.get_basename()
2017-01-14 00:51:09 -03:00
Juan Linietsky
6dd7d2c1f7
Implicit inheritance now defaults to Resource, will error for node scripts if extends not used.
2017-01-12 16:00:57 -03:00
Juan Linietsky
bfef8de1bc
More efficient iteration syntax, and range() is converted behind the scenes to it.
2017-01-11 20:10:23 -03:00
Rémi Verschelde
42802ab9dc
Merge pull request #6930 from bojidar-bg/gdscript-export-array-hint
...
Allow typing hints for Array class (in GDScript and Inspector)
2017-01-11 14:46:38 +01:00
Juan Linietsky
e6583117df
Both Array and Dictionary are always in shared mode (removed copy on write).
2017-01-11 08:54:17 -03:00
Rémi Verschelde
57166cd292
Merge pull request #7093 from bojidar-bg/named-colors
...
Add named colors to GDScript/Visual Script/core.
2017-01-11 10:36:15 +01:00
Juan Linietsky
bc26f90581
Type renames:
...
Matrix32 -> Transform2D
Matrix3 -> Basis
AABB -> Rect3
RawArray -> PoolByteArray
IntArray -> PoolIntArray
FloatArray -> PoolFloatArray
Vector2Array -> PoolVector2Array
Vector3Array -> PoolVector3Array
ColorArray -> PoolColorArray
2017-01-11 00:52:51 -03:00
Karroffel
e781a7e07e
pattern matcher: Implemented backend
...
changed comments
2017-01-11 04:40:28 +01:00
Karroffel
d445f0639f
pattern matcher: Implemented transformations
2017-01-11 04:40:11 +01:00
Karroffel
f8a7c46273
pattern matching: implemented parser
2017-01-11 04:39:55 +01:00
Juan Linietsky
4338c90163
It is now possible to name layers of different kinds!
2017-01-10 22:20:57 -03:00
Juan Linietsky
80b733a33a
uses the global thread to protect the instacnes map in GDScript, closes #4615
2017-01-10 19:02:52 -03:00
Juan Linietsky
62273e51a2
Moved JSON functions to built-in to_json, parse_json, validate_json
2017-01-08 22:40:00 -03:00
Juan Linietsky
13cdccf23b
Variant INT and REAL are now 64 bits (other types remain at 32)
2017-01-08 20:58:39 -03:00
Juan Linietsky
547a57777b
renamed joystick to joypad everywhere around source code!
2017-01-08 17:06:33 -03:00
Juan Linietsky
8963ca3d17
Fix code completion for new getnode syntax
2017-01-08 03:01:52 -03:00
Juan Linietsky
8b912d1115
-Fix bugs related to PoolVector crashes
...
-Added ability to request nodes using $Name in GDScript :)
2017-01-08 02:04:53 -03:00
Juan Linietsky
2ab83e1abb
Memory pool vectors (DVector) have been enormously simplified in code, and renamed to PoolVector
2017-01-07 18:26:38 -03:00
Juan Linietsky
0f7af4ea51
-Changed most project settings in the engine, so they have major and minor categories.
...
-Changed SectionedPropertyEditor to support this
-Renamed Globals singleton to GlobalConfig, makes more sense.
-Changed the logic behind persisten global settings, instead of the persist checkbox, a revert button is now available
2017-01-05 09:16:00 -03:00
Juan Linietsky
9e477babb3
-GDScript support for accessing properties directly
...
-Added code lookup and code completion support for properties too
2017-01-04 17:37:45 -03:00
Juan Linietsky
118eed485e
ObjectTypeDB was renamed to ClassDB. Types are meant to be more generic to Variant.
...
All usages of "type" to refer to classes were renamed to "class"
ClassDB has been exposed to GDScript.
OBJ_TYPE() macro is now GDCLASS()
2017-01-02 23:03:46 -03:00
Rémi Verschelde
dcc4ee21c1
Revert expression reduction from #7390
...
Fixes #7412 .
2017-01-02 20:01:27 +01:00
Rémi Verschelde
caddbbe174
Merge pull request #7390 from bojidar-bg/gdscript-assign-error
...
Disallow assignment to constants and expressions
2017-01-02 15:54:43 +01:00
Rémi Verschelde
c7bc44d5ad
Welcome in 2017, dear changelog reader!
...
That year should bring the long-awaited OpenGL ES 3.0 compatible renderer
with state-of-the-art rendering techniques tuned to work as low as middle
end handheld devices - without compromising with the possibilities given
for higher end desktop games of course. Great times ahead for the Godot
community and the gamers that will play our games!
2017-01-01 22:03:33 +01:00
Bojidar Marinov
0b077162a3
Disallow assignment to constants and expressions
...
Fixes #6221 , fixes #6824
2016-12-29 12:31:19 +02:00
Bojidar Marinov
23381a530b
Add named colors to GDScript/Visual Script/core.
...
Names and values taken from https://en.wikipedia.org/wiki/X11_color_names
2016-12-17 11:14:53 +02:00
Rémi Verschelde
7751a933a9
Merge pull request #6802 from henriquelalves/master
...
Added small modification on gdscript parser to allow users insert '+' before variables
2016-11-11 10:55:26 +01:00
Bojidar Marinov
074bcb2a7b
Make GDScript parser ignore floating strings in class definition
...
Fixes #1320
2016-11-03 12:26:38 +02:00
Rémi Verschelde
817dd7ccbb
style: Fix PEP8 blank lines issues in Python files
...
Done with `autopep8 --select=E3,W3`, fixes:
- E301 - Add missing blank line.
- E302 - Add missing 2 blank lines.
- E303 - Remove extra blank lines.
- E304 - Remove blank line following function decorator.
- E309 - Add missing blank line.
- W391 - Remove trailing blank lines.
2016-11-01 00:35:16 +01:00
Rémi Verschelde
97c8508f5e
style: Start applying PEP8 to Python files, indentation issues
...
Done with `autopep8 --select=E1`, fixes:
- E101 - Reindent all lines.
- E112 - Fix under-indented comments.
- E113 - Fix over-indented comments.
- E115 - Fix under-indented comments.
- E116 - Fix over-indented comments.
- E121 - Fix a badly indented line.
- E122 - Fix a badly indented line.
- E123 - Fix a badly indented line.
- E124 - Fix a badly indented line.
- E125 - Fix indentation undistinguish from the next logical line.
- E126 - Fix a badly indented line.
- E127 - Fix a badly indented line.
- E128 - Fix a badly indented line.
- E129 - Fix a badly indented line.
2016-11-01 00:33:51 +01:00
Bojidar Marinov
713f1451b9
Allow typing hints for Array class (in GDScript and Inspector/ArrayPropertyEdit)
...
Closes #3586 , by implementing the `1b` variation mentioned there.
2016-10-26 14:38:41 +03:00
Henrique L. Alves
6a4b4c7db4
Added small modification on parser for '+'
2016-10-22 14:26:48 -02:00
Rémi Verschelde
cf3ba3379f
Merge pull request #6564 from SuperUserNameMan/gdscript_opcode_line_opcode_breakpoint
...
fixes #6487 , GDscript compiler ignores OPCODE_LINE and OPCODE_BREAKPOINT in Release mode
2016-10-22 12:45:46 +02:00
Rémi Verschelde
e96c49f849
Merge pull request #6850 from akien-mga/pr-scsub-shebang
...
SCsub: Add python shebang as a hint for syntax highlighting
2016-10-17 20:13:18 +02:00
Rémi Verschelde
fc8ccd5b8c
SCsub: Add python shebang as a hint for syntax highlighting
...
Also switch existing shebangs to "better" /usr/bin/env python.
2016-10-17 20:10:46 +02:00
Rémi Verschelde
31e0e95362
Merge pull request #6692 from bojidar-bg/add-char-to-gd-vs-script
...
Add `String char(int ascii)` function to GDScript and Visual Script
2016-10-17 09:40:39 +02:00
Rémi Verschelde
da09c6131b
modules: Clone env in each module
...
This allows to pass include paths and flags only to a given thirdparty
library, thus preventing conflicts between their files (e.g. between
opus and openssl which both provide modes.h.
This also has the nice effect of making the compilation command smaller
for each module as it no longer related to all other modules, only the
final linking brings them together.
This however requires adding manually the ogg include path in opus
and vorbis when building against the builtin ogg, since it is no longer
in the global env.
Also simplified template 'thirdparty_<module>_sources' to
'thirdparty_sources'.
"Core" modules like cscript, gdscript, gridmap, ik and virtual_script
still use the main env_modules, but it could be changed if need be.
2016-10-15 11:50:41 +02:00
Rémi Verschelde
5e373c2a69
Merge pull request #6813 from Faless/fix_6801_bis
...
Re-Allow absolute paths, make them behave correctly
2016-10-14 18:14:05 +02:00
Pedro J. Estébanez
1b3dcac281
Adapt overlooked instances of zero-based column numbers
2016-10-13 12:57:14 +02:00
Fabio Alessandrelli
11349a786b
Revert "Add warning when (pre)loading paths with leading / ( #4280 - #3106 )"
...
Also closes : #6801
This reverts commit e59820ac94
.
2016-10-13 11:49:22 +02:00
Rémi Verschelde
f3106cddb3
Merge pull request #6775 from RandomShaper/one-based-col-numbers
...
Make text column numbers one-based
2016-10-11 09:09:49 +02:00
Rémi Verschelde
3df507d696
Merge pull request #6694 from bojidar-bg/gdscript-newline-functions
...
Allow for linebreaks in function calls and definitions and yeild/signal.
2016-10-11 09:06:14 +02:00
Pedro J. Estébanez
2f80965845
Make text column numbers one-based
...
Make one-based the column number on the code editor
Make one-based the column number for GDScript error messages
Make one-based the column number for shader code error messages
2016-10-10 11:56:45 +02:00
Rémi Verschelde
2fb5a00305
i18n: Fix string that broke msgmerge
2016-10-09 18:11:55 +02:00
Rémi Verschelde
5f7f73c6ae
Merge pull request #6730 from Faless/fix_export_crash_error
...
Throw an error when exporting a resource class
2016-10-09 14:44:10 +02:00
Fabio Alessandrelli
ee7df2c89a
Throw an error when exporting a resource class
...
"export var tex = Texture"
will now throw an error to avoid crashing the editor:
"Exported constant not a type or resource"
Fixes #6719 . Closes #6729
2016-10-06 20:24:32 +02:00
Fabio Alessandrelli
e59820ac94
Add warning when (pre)loading paths with leading / ( #4280 - #3106 )
2016-10-04 16:07:45 +02:00
Bojidar Marinov
16a0e4b235
Allow for linebreaks in function calls and definitions and yeild/signal.
...
(Plus maybe a few other things)
2016-10-03 21:40:18 +03:00
Bojidar Marinov
513c0265c4
Add String char(int ascii)
function to GDScript and Visual Script
...
Just hope it doesn't crashes with that much pointer math... 😄
2016-10-03 19:17:54 +03:00
yg2f
217e09c79d
Fixes #6487 , GDscript compiler ignores OPCODE_LINE and OPCODE_BREAKPOINT in Release mode
...
When godot is in release mode, GDscript compiler does not generate
bytecodes for OPCODE_LINE and OPCODE_BREAKPOINT anymore.
This optimizes GDscript execution speed when the script contains a lot
of comments in blocs executed in loops.
Fixes #6487
2016-09-20 13:54:17 +02:00
George Marques
5ef64aae58
Fix build for templates
2016-09-12 22:40:46 -03:00
Juan Linietsky
37f1e86108
Do ctrl-click on any code identifier to go to definiton or help page.
2016-09-12 10:53:31 -03:00
Juan Linietsky
78f92dbcb9
Merge pull request #6281 from bojidar-bg/gdscript-ternary-operator
...
Ternary operator in GDScript (a if x else b)
2016-09-11 18:40:46 -03:00
Juan Linietsky
b83350f4b2
Added constants from types in code completion, somehow this was never added.
...
Stuff like Label.ALIGN_CENTER or Mesh.PRIMITIVE_TRIANGLES did not complete..
2016-09-11 12:20:28 -03:00
Juan Linietsky
fc61eb37ce
Merge pull request #5920 from 29jm/fix-warnings
...
Fix some more warnings
2016-09-10 12:21:02 -03:00
Juan Linietsky
e6dc95e499
Merge pull request #6292 from bojidar-bg/gdscript-add-enums
...
Adds enums to GDScript
2016-09-10 11:59:51 -03:00
Juan Linietsky
828e1c092f
Renamed the bind_native functions to bind_vararg, should make it show the documentation more clearly and also make it easier to bind to C#
2016-09-07 19:39:57 -03:00
Răzvan Cosmin Rădulescu
00e743b76a
Clean up GDScript template
2016-09-05 19:58:04 +02:00
Bojidar Marinov
88430f0962
Add enum naming, by assinging a given enum's values to a Dict
2016-08-27 15:56:51 +03:00
Bojidar Marinov
4ee82a2c38
Adds enums to GDScript
...
Fixes #2966
2016-08-27 15:27:02 +03:00
Juan Linietsky
9c6175db11
More visual script work
...
-Block switches to 2d/3d editor if editing visual script
-Added cast node in flow control
-Added ability to do RPC in visual script
-Comment nodes
-Fix bug with inverted cable in connecting backwards
-Copy and paste nodes, including from different scripts
2016-08-25 17:45:20 -03:00
Bojidar Marinov
9f66f59477
Ternary operator in GDScript (a if x else b)
...
Fixes #1961
2016-08-25 21:23:03 +03:00
Juan Linietsky
ad8f208bdb
Proper function/property selection in visual script editing for property.
...
This one has an ordered list, built-in description, search, etc.
2016-08-23 19:29:07 -03:00
Juan Linietsky
1add52b55e
Brand new networked multiplayer
2016-08-19 16:48:41 -03:00
Johan Manuel
a4674bda47
Fix some comparisons between signed and unsigned integers
2016-08-13 13:21:35 +02:00
Johan Manuel
67b29e3b9e
Fix some warnings about misleading indentation
2016-08-13 13:21:35 +02:00
Johan Manuel
046f94d3ac
Remove some unused variables
2016-08-13 13:21:35 +02:00
Rémi Verschelde
5d9967ef00
Merge pull request #6055 from eska014/native-bind-rettype
...
Allow documenting unexposed return types in bind_native_method
2016-08-08 18:23:36 +02:00
Rémi Verschelde
38cbf69e24
Merge pull request #6045 from bojidar-bg/extends-on-placeholders
...
Fix #5891 by not expecting the script instance to be a GDInstance
2016-08-08 10:22:13 +02:00
Juan Linietsky
9865650b43
Added a simpler way to do sub-functions in both visual and gdscript with the subcall node.
...
With this, visual script is almost done (missing registering custom nodes from addon).
All this is probably pretty broken, too and needs a lot of testing.
2016-08-08 01:21:22 -03:00
Juan Linietsky
6671c6bdc7
Added yield() signal smart autocompletion.
2016-08-06 22:11:03 -03:00
Juan Linietsky
9890c1d2ca
Likely with bugs and with some features are missing, as well as profiler support, but VisualScript should be more or less done!
2016-08-06 19:00:54 -03:00
Juan Linietsky
259418f827
VisualScript can now execute visual scripts, but there is no debugger or profiler yet.
2016-08-05 22:48:00 -03:00
eska
4cd246898e
Allow documenting unexposed return types in bind_native_method
...
Document return type of `Object.call` and `GDScript.new`
2016-08-06 02:21:29 +02:00
Bojidar Marinov
76ea995228
Fix #5891 by not expecting the script instance to be a GDInstance
...
It could be a placeholder instance as well
2016-08-05 13:44:12 +03:00
Juan Linietsky
3d1d190dcd
Merge branch 'master' of https://github.com/godotengine/godot
2016-08-02 19:11:47 -03:00
Juan Linietsky
ad313097eb
WIP visual scripting, not working yet but you can check out stuff
2016-08-02 19:11:05 -03:00
eska
b80c42ef4e
Document FuncRef, GDFunctionState, InstancePlaceholder, RID, World2D
2016-07-30 21:27:58 +02:00
Juan Linietsky
9151eb591d
Changed the way the step decimals are computed to a safer way, fixes many issues.
2016-07-26 17:25:10 -03:00
Juan Linietsky
f51a816253
Set proper line into operators when parsing GDScript, fixes #5822
2016-07-22 09:23:26 -03:00
Juan Linietsky
33cc480350
Fixed reloading of tool scripts within editor, they should work much better now, closes #3194
2016-07-20 22:37:48 -03:00
Juan Linietsky
5218f35b7f
Forgot to clear signals on recompile, closes #5729
2016-07-17 13:49:59 -03:00
George Marques
8113ba8bef
Allow semicolon after 'pass' keyword
2016-07-10 12:20:53 -03:00
George Marques
4bf31b3f3d
Revert removing of function call in gd_parser
...
The function call was removed in #5538 because of the unused return value,
but the function itself has side effects and the absence of the call was
causing crashes.
2016-07-08 22:12:59 -03:00
Rémi Verschelde
b6ac91c0e6
Removed unused variables (first pass)
...
Fixes various gcc 5.4.0 warnings for -Wunused-variable and -Wunused-but-set-variable
2016-07-07 23:15:03 +02:00
Juan Linietsky
48959f0590
Merge pull request #5407 from RandomShaper/opt-self-indexing
...
Optimize member access with self
2016-07-01 12:25:26 -03:00
Juan Linietsky
e49b73e93a
Only check for constants when parsing constants, should close #5497
2016-06-30 10:40:13 -03:00
Juan Linietsky
cf0fbe493f
Ability to put constants in constant expressions, closes #5264
2016-06-29 22:17:55 -03:00
Juan Linietsky
36e754457f
Warn instad of crashing when class instance is gone after yield. Closes #5247 , probably closes other yield related crashes
2016-06-29 21:06:16 -03:00
Juan Linietsky
3754f6cd75
Properly show the source:line even in inner clases, closes #3766
2016-06-28 11:49:57 -03:00
Juan Linietsky
cf6450043d
Fix bug in inner class reference, closes #1411
2016-06-28 11:15:55 -03:00
Juan Linietsky
f4c6640827
Fixed bug related to resolving constants in a class, closes #1110
2016-06-28 11:02:53 -03:00
Juan Linietsky
565bb3afcc
Fix extends issue, closes #4026
2016-06-28 10:44:38 -03:00
Juan Linietsky
3813160ea0
-Fix crashes with thread_exit()
...
-Added draft of C script API (still disabled and unused)
2016-06-26 10:54:45 -03:00
Pedro J. Estébanez
d306b9bea5
Optimize member access with self
...
Let the compiler take the fast path when a member is superfluously accessed with `self.`.
2016-06-25 15:59:39 +02:00
Andreas Haas
c871cf6801
Add "bool" to GDScript reserverd keywords
...
Noticed that "bool" wasn't highlighted when used like `export(bool) var is_xy = false`
2016-06-24 17:47:19 +02:00
Juan Linietsky
95e3279d34
Properly report a valid error instead of reporting as a bug, closes #3841
2016-06-24 10:30:36 -03:00
Juan Linietsky
5e816fd8c8
Property reporty base type when a function fails, fixes #4581 probably also closes other issues
2016-06-20 01:15:02 -03:00
Rémi Verschelde
e76f744c36
Merge pull request #5283 from djrm/remove_prints
...
Removed lots of prints
2016-06-19 13:10:23 +02:00
Rémi Verschelde
1923733ec8
Merge pull request #5268 from brakhane/fix-floating-bug
...
correctly parse floats in scientific notation (Fix #5267 )
2016-06-19 13:05:00 +02:00
Daniel J. Ramirez
422fac5066
Removed lots of prints
2016-06-18 18:01:06 -05:00
Rémi Verschelde
b7dbf9207a
Drop empty files that are not used anywhere
...
Part of #5272
2016-06-18 19:46:30 +02:00
Rémi Verschelde
a7fc04626a
Add missing license headers in our source files ( #5255 )
...
Also removes a couple wrong Godot headers from third-party source files.
2016-06-18 14:46:12 +02:00
Dennis Brakhane
c246931f03
correctly parse floats in scientific notation
...
GDScript incorrectly parsed float values in scientific notation
when no decimal point was given. "1e-5" was parsed as "15".
Fix this by not requiring a decimal point when we found an exponent
for the number to be considered a float.
Fixes #5267
2016-06-18 13:20:45 +02:00
Geequlim
71245995a4
Add @GDScript.type_exists
2016-06-18 15:07:51 +08:00
Juan Linietsky
57c67fb0f7
reverted to ==, if a line is missing a statement, we'll have to make sure to add it
2016-06-17 21:57:46 -03:00
Juan Linietsky
dcd50f8838
changed == for >= since some statements may not store a line (if line is empty)
...
this is added to #5204
2016-06-17 21:19:09 -03:00
Juan Linietsky
3ddce309f4
Merge pull request #5204 from vnen/fix-completion-crash
...
Fix crash in code completion
2016-06-17 21:09:18 -03:00
Rémi Verschelde
7723579237
Fix type hint for the seed argument
...
Closes #5260 .
2016-06-18 01:18:06 +02:00
George Marques
17b6cebcfe
Fix crash in code completion
...
Fix #4641
2016-06-13 22:19:39 -03:00
Juan Linietsky
45443a1651
Changed reload logic to auto-hard-reload scripts on save. It's simpler to use and also fixes #4756
2016-06-13 10:58:32 -03:00
Juan Linietsky
ceeb5453a8
gdscript tokenizer will dislike use of case, closes #4991
2016-06-11 21:45:37 -03:00
Juan Linietsky
fea9511bc6
remove unnecesary found bug? print, closes #5028
2016-06-11 20:36:28 -03:00
Juan Linietsky
f860915ae0
Made many built-in gdscript functions return more descriptive errors, closes #5150
2016-06-11 19:43:38 -03:00
Juan Linietsky
9ddc13a5cc
-All variables from script are visible through get_property_list(), not just those with export()
...
-Added PROPERTY_USAGE_SCRIPT_VARIABLE to identify what comes from script
-closes #5146
2016-06-11 18:34:49 -03:00
Juan Linietsky
f8f30662d9
-Ability to reload (and soft reload) tool scripts. Please test!
2016-06-08 20:00:52 -03:00
punto-
86253cbdfe
Revert "Fix implicit GDScript Reference inheritance"
2016-06-06 23:40:50 -03:00
eska
3acbf8e71f
Fix implicit GDScript Reference inheritance
2016-06-05 19:17:33 +02:00
George Marques
43dad78209
Fix Color8 constructor using wrong value range
...
Fix #5015
2016-06-03 14:59:40 -03:00
Juan Linietsky
cc0a7b24e7
missed ifdef that broke android build
2016-06-01 20:44:34 -03:00
Juan Linietsky
9e745b920f
Ability to reload scripts on running game
2016-06-01 20:31:42 -03:00
Juan Linietsky
df139f57b3
Some cleanup to GDScript
...
separated GDFunction (VM) from GDScript in two different files
2016-05-31 22:33:43 -03:00
Yakov Borevich
9e86b2714f
[GDScript] Redefine var results in an error
...
Error rised if redefine
- function argument
- for-loop argument
- local-scope var
Affects #3730
2016-05-30 18:22:34 +03:00
Juan Linietsky
3e8eb396d7
Finalized DynamicFont implementation
...
-DynamicFont uses Freetype by default
-Editor fonts are now scalable thanks to this
-Cleaned up documentation browser and added fonts for this
2016-05-29 11:37:52 -03:00
Ignacio Armenteros
7caabd9398
Fix #4748 : proper call to base class function
2016-05-23 11:49:51 +02:00
Juan Linietsky
a75f896338
First version of Profiler
...
It is now possible to profile GDScript as well as some parts of Godot
internals.
2016-05-21 21:18:16 -03:00
Rémi Verschelde
b58e261d41
GDScript: Fix method info for is_nan and is_inf
...
As reported on https://godotengine.org/qa/4114/why-isnan-and-isinf-arent-implemented
2016-05-17 14:59:48 +02:00
Juan Linietsky
0c57a58056
ability to drag scenes from filesystem to tree for instancing
2016-05-11 20:57:52 -03:00
Saracen
d643a40f95
Subclasses can now extend from other subclasses contained in scripts derived from relative paths.
2016-04-09 03:23:33 +01:00
Rémi Verschelde
0a5472e697
Remove trailing spaces
2016-04-02 20:26:12 +02:00
Hubert Jarosz
4a4f247914
remove trailing whitespace
2016-03-09 00:00:52 +01:00
Rémi Verschelde
002ff3cc9a
Revert "Merge pull request #3814 from est31/iterators_for_for"
...
This reverts commit adf5056889
, reversing
changes made to ee2bc87c0e
.
2016-03-01 18:09:48 +01:00
Juan Linietsky
210d332def
-wip on addon editor
...
-fixes instantiable subclasses not working, as reported in #3871
2016-02-29 09:57:38 -03:00
est31
5f66692395
Use xrange for common "for i in range(...)" use case
...
Make the parser eliminate a wasteful allocation and initialisation
of a possibly large array.
2016-02-28 22:47:48 +01:00
est31
f81153eb69
Add xrange builtin function
...
Also update classes.xml in order to document xrange
2016-02-28 22:47:48 +01:00
Juan Linietsky
6fc1c3a4d1
Completed the support for plugins! It is not possible to add plugins.
...
Not all APIs are provided yet, please request whathever you are missing.
Some example plugins are provided in demos/plugins. Just copy them to a folder in your project named addons/ and then enable them from the project settings.
Have fun!
2016-02-27 23:12:27 -03:00
Rémi Verschelde
c8071dfce8
Merge pull request #3812 from est31/master
...
Fix typo in error
2016-02-24 00:15:53 +01:00
est31
cea8e97c11
Fix typo in error
2016-02-24 00:08:53 +01:00
Juan Linietsky
70cdfa681a
-Change link to new documentation
...
-fixed bug in tilemap collision debug
2016-02-20 10:02:14 -03:00
Rémi Verschelde
285c400288
Merge pull request #3658 from Hinsbart/doc_joyevent
...
doc: use correct identifiers for InputEventJoystick{Motion, Button}
2016-02-11 07:17:43 +01:00
hondres
6de2b9d864
doc: use correct identifier for InputEventJoystick{Motion, Button}
2016-02-10 23:37:25 +01:00
Juan Linietsky
61f03c98c8
-Added missing functions to the doc, fixes #3583
2016-02-09 16:58:03 -03:00
Rémi Verschelde
6ea0863ed3
Merge pull request #3587 from akien-mga/pr-reserved-keyords
...
Fix missing comma
2016-02-04 18:57:25 +01:00
Rémi Verschelde
ade7329625
Fix missing comma
2016-02-04 18:56:41 +01:00
George Marques
0f41a18344
Merge pull request #3582 from akien-mga/pr-reserved-keyords
...
Add preload and PI to GDScript reserved keywords
2016-02-04 14:52:44 -02:00
Rémi Verschelde
99d9188da8
Add preload and PI to GDScript reserved keywords
...
I've noticed that gd_tokenizer also has keywords for `switch' and `do', but they seem not to be supported actually (only used in commented code for the shader language), so I don't add them.
2016-02-04 10:26:10 +01:00
Rémi Verschelde
8151110002
Reorder reserved words by categories
...
They were previously kind of sorted with a mix between alphabetical and logical ordering, which made it hard to spot duplicates or missing words.
2016-02-04 10:17:23 +01:00
Juan Linietsky
817fd1ab71
-Added method flags to global constants for script
...
-Added a new flag METHOD_FLAG_FROM_SCRIPT to get_method_list() flag property. Closes #3489
2016-01-31 15:40:51 -03:00
Rémi Verschelde
7af864f467
Merge pull request #3445 from akien-mga/master
...
Add missing return for typeof() MethodInfo
2016-01-26 00:03:33 +01:00
Rémi Verschelde
e38b797c97
Add missing return for typeof() MethodInfo
2016-01-25 10:55:50 +01:00
hondres
56ce58d57c
can preload constants
2016-01-24 23:45:11 +01:00
Juan Linietsky
de7fe2fced
-remove unnecesary error report, fixes #3361
2016-01-23 15:36:03 -03:00
Franklin Sobrinho
0426806ebf
Removed GDScript "function" keyword
2016-01-13 17:59:39 -03:00
Juan Linietsky
5fca2bd4bc
Reworked how autoloads are load to make sure identifiers always exist, please check if this resolves bug #3156
2016-01-13 08:27:14 -03:00
Juan Linietsky
1a9c3a134d
-Make Akien happy, fixes #3068
...
(seems I wrote all the code, then forgot to use the enum...)
2016-01-10 23:13:02 -03:00
Ignacio Etcheverry
d50e8d2bad
Added missing onready token name
2016-01-07 18:59:37 +01:00
Juan Linietsky
cb39db0b02
Fixed bug with default arguments in gdscript, closes #2024
2016-01-03 21:11:11 -03:00
Juan Linietsky
23441ec867
Added var2bytes and bytes2var to convet any variable to bytes and back. Closes #2075
2016-01-02 21:07:03 -03:00
Juan Linietsky
1597082c85
-Ability to roll-back script-exported properties to their default value on the script, closes #2128
2016-01-02 20:17:31 -03:00
Juan Linietsky
61745855d0
PI is now a built-in constant, fixes #2134
2016-01-02 17:56:45 -03:00
Juan Linietsky
0e0a7c9494
-properly handle newline in \ (line continuation) in gdscript, fixes #2112
...
-also fix a small crash in export detection with scripts that include themselves
2016-01-02 13:56:58 -03:00
George Marques
5be9ff7b67
Update copyright to 2016 in headers
2016-01-01 11:50:53 -02:00
Juan Linietsky
64872ca811
small fixes to color8
2015-12-31 18:32:56 -03:00
Juan Linietsky
37f2222dd7
-Added Color8(r8,g8,b8,a8) function as well as .r8,.g8,.b8,.a8 members to Color, to deal with colors in the 0-255 range. Closes #2345
2015-12-31 18:26:49 -03:00
Juan Linietsky
ec3d17b4e2
force thread model to single-safe when running editor, fixes #2387
2015-12-31 16:24:27 -03:00
Juan Linietsky
b60a3e7202
-Changed var2str and str2var in GDScript to use VariantWriter and VariantParser
...
-It is now finally possible to parse back a variant from text!
2015-12-31 00:54:00 -03:00
Zher Huei Lee
61a1f596cc
added missing null check
...
for p_func inside _parse_function
2015-12-30 01:02:31 +00:00
Zher Huei Lee
821351be04
added missing onready allocation for subclasses
...
Fixes #3158
2015-12-30 00:23:26 +00:00
reduz
7d2d1442f8
-add breakpoint statement to ease with debugging, closes #3165
2015-12-29 12:11:21 -03:00
reduz
99736e63e4
-fixed bug with some indent blocks not properly checked, fixes #2570
...
-added ability to do one-line blocks, such as: if something: print("hello") , to be more python-like
2015-12-29 11:41:37 -03:00
reduz
f7b64a62d1
-renamed function get_relative_transform() to get_relative_transform_to_parent(), makes more sense
...
-fixed newly introduced bug in onready keyword, fixes #3155
2015-12-28 21:05:57 -03:00
reduz
30c12297dc
- added 'onready' keyword to gdscript. Defers initialization of member variables until _ready() is run.
2015-12-28 19:32:51 -03:00
reduz
110de2ccac
-Added proper code completion for singletons
2015-12-28 16:36:29 -03:00
reduz
e0d21d2158
Ability to set autoloads as singleton global variables
2015-12-28 15:59:20 -03:00
Rémi Verschelde
9e9e4f96a2
Merge pull request #3051 from eska014/add-export-hints
...
Add GDScript export hints for named bit flags, exponential ranges and global filesystem
2015-12-14 17:40:57 +01:00
eska
897cf2140c
Add GDScript export hint for named bit flags
...
Syntax: `export( int, FLAGS, "A Flag", "Another Flag" ) var flags`
2015-12-14 17:32:31 +01:00
Juan Linietsky
f2183a5e09
replaced :var by :Variant in documentation, fixes #2897
2015-12-14 08:28:01 -03:00
eska
ef0c05430c
Add GDScript export hints for global filesystem and exponential ranges
...
- File in global filesystem: `String, FILE, GLOBAL, "*.png"`, tool scripts only
- Directory in global filesystem: `String, DIR, GLOBAL`, tool scripts only
- Exponential range: `float, EXP, 50, 150, 2`
2015-12-11 06:45:03 +01:00
Juan Linietsky
17927cb705
Merge pull request #2877 from eska014/remove-builtin-aliases
...
Remove unexpected GDScript aliases for built-in types
2015-12-08 17:09:22 -03:00
Juan Linietsky
200b7bb87c
-Display on animation editor which keys are invalid and which tracks are unresolved
...
-Added a tool to clean up unresolved tracks and unused keys
2015-12-05 14:18:22 -03:00
Rémi Verschelde
3aa0d0e9fd
Merge pull request #2938 from koalefant/master
...
Break into GDScript debugger when new() fails
2015-11-30 07:50:22 +01:00
koalefant
e52d211b61
GDScript: fixed highlighting of the next line when colon is missing
2015-11-29 23:45:28 +01:00
admix
b2508ca879
Break into GDScript debugger when new() fails
2015-11-29 17:02:52 +01:00
Franklin Sobrinho
69a6524adf
Add script auto-completion for function parameters
2015-11-26 09:40:13 -03:00
eska
d1a75a6757
Remove unexpected GDScript built-in type aliases
2015-11-23 02:09:19 +01:00
Juan Linietsky
0c3386b2ed
Merge pull request #2707 from akien-mga/master
...
Cosmetic fixes to SCons buildsystem
2015-11-18 19:43:28 -03:00
Juan Linietsky
e8435cc721
Merge pull request #2632 from firefly2442/duplicate-inherited-vars
...
remove child variable that is duplicated from parent class
2015-11-18 19:16:35 -03:00
eska
bbc42a159c
Allow extending from Object in GDScript
2015-11-12 15:50:20 +01:00
Rémi Verschelde
399b1b0474
Cosmetic fixes to SCons buildsystem
...
- Removed trailing spaces
- Made sure all indentation is done using tabs (fixes #39 )
- Potentially fixed an identation issue for openssl check
2015-11-01 20:53:26 +01:00
firefly2442
bb68dc5210
remove child variable that is duplicated from parent class
2015-10-18 21:45:27 -05:00
Juan Linietsky
e1e04c1dd5
Merge pull request #2497 from vnen/fix-2490
...
Make dict2inst set internal members of instance
2015-10-17 10:11:11 -03:00
eska
eb9621624f
Add GDScript export hint for real numbers with easing export(float, EASE)
2015-10-16 20:37:13 +02:00
eska
57b2c4b0c6
Add multiline string GDScript export hint export(String, MULTILINE)
2015-10-16 18:48:54 +02:00
eska
e18c1ba05b
Revert "add flag and multiline hits in GDScript"
...
This reverts commit 7843ec6633
.
2015-10-16 16:18:46 +02:00
George Marques
1d45c9a04c
Make dict2inst set internal members of instance
...
Fix #2490
2015-09-20 16:17:30 -03:00
crr0004
f34c3e249b
Fixes editor freeze
2015-09-02 13:56:51 +10:00
Juan Linietsky
319cc7e3ae
detect node and variable assignments in _ready, _init, etc for further code completion
2015-08-30 11:50:10 -03:00
Juan Linietsky
04cb3c9eb1
Ability to edit all kinds of arrays from the property editor.
...
Yes, I'm trying to convince you to test the alpha release by adding all these now :)
2015-08-25 20:45:51 -03:00
Juan Linietsky
4b40f9228b
Merge branch 'master' of https://github.com/okamstudio/godot
2015-08-23 20:22:08 -03:00
Juan Linietsky
07e9741425
**WARNING BEFORE PULLING**
...
This push changes the binary and XML formats and bumps the major version to 2.0. As such, files saved in this version WILL NO LONGER WORK IN PREVIOUS VERSIONS. This compatibility breakage with older versions was required in order to properly provide project refactoring tools.
If I were you, unless you are brave, I would wait a week or two before pulling, in case of bugs :)
Summary of Changes
-New Filesystem dock, with filesystem & tree view modes.
-New refactoring tools, to change or fix dependencies.
-Quick search dialog, to quickly search any file
2015-08-23 20:15:56 -03:00
Juan Linietsky
c2e2f2e0ae
Merge pull request #2282 from Ovnuniarchos/master
...
Bitmask editor and some CanvasItem documentation.
2015-08-08 11:18:08 -03:00
Juan Linietsky
71b14f9822
Merge pull request #2323 from dbsGen/patch-2
...
add flag and multiline hints in GDScript
2015-08-08 11:05:35 -03:00
neikeq
6c5b031ba9
Add missing token name for signal. closes #2201
2015-08-07 22:20:52 +02:00
Juan Linietsky
8280bb0de0
more debugger fixes
...
-setting/clearing breakpoints during run-time now works
-multi-line strings resulted in wrong line numbers in bytecode, fixed
2015-08-04 20:17:39 -03:00
Juan Linietsky
d1da2c2995
error debugger
...
shows the list of errors that happened during running the game, traces
can be analyzed
2015-08-04 09:47:32 -03:00
Gen
7843ec6633
add flag and multiline hits in GDScript
...
`export (flag) var test` for PROPERTY_HINT_ALL_FLAGS
`export (multiline) var test` for PROPERTY_HINT_MULTILINE_TEXT
2015-08-01 14:02:10 +08:00
Ovnuniarchos
dd09ae50e1
Added FLAGS to int hint to make an int a bitmask on the editor.
2015-07-20 20:02:46 +02:00
Juan Linietsky
55b34e05b3
-some changes by okam
2015-06-30 11:28:43 -03:00
Juan Linietsky
95047562d7
Several performance improvements, mainly in loading and instancing scenes and resources.
...
A general speedup should be apparent, with even more peformance increase when compiling optimized.
WARNING: Tested and it seems to work, but if something breaks, please report.
2015-06-29 00:29:49 -03:00
Juan Linietsky
2b64f73b04
more code completion improvements
...
-calltip dissapears with more types of keypresses or when pressing ')'
-properly looks into autoloaded scripts or nodes with another script for
script functions/variables/etc.
2015-06-27 15:52:39 -03:00
Juan Linietsky
a67486a39e
improved get_node(), connect(), etc code completion.
...
-properly completes text arguments
-includes the "/root" autoloads
2015-06-26 01:14:49 -03:00
Juan Linietsky
48f1d02da4
added ability to define signals in script
...
closes #2175
2015-06-24 13:29:45 -03:00
Juan Linietsky
68443a649d
Merge pull request #2088 from KillerJaguar/setter-fix
...
Fixed variables being set before calling the setter method
2015-06-22 23:55:55 -03:00
Juan Linietsky
e9bbb97acc
Multiple scene editing *POTENTIALLY UNSTABLE*
...
-ability to edit multiple scenes at the same time
-resource internal IDs are now persistent, this makes multiple scene
editing possible but maaaaay result in file corruption bugs (tested and
could not find anything but possibility exists because core code
changed, report immediately if you find this).
-properly save settings, layout, etc when edited
-script editing is independent from scene editing now
-show a yellow box when a script belongs to the scene
2015-06-22 00:04:15 -03:00
Jaguar
7c0051beac
Fixed variables being set before calling the setter method
2015-06-13 14:10:06 -04:00
Juan Linietsky
e323cc0505
-Rename unexisting by nonexistant, closes #1940
...
-Added function to retrieve list of actions fron InputMap
2015-05-18 10:20:54 -03:00
Juan Linietsky
e72717e373
properly save external resources, fixes #1924
...
added API to get scancode names to OS
2015-05-17 13:15:23 -03:00
Juan Linietsky
27cb75112e
-bit slower execution in debug, but proper error reporting for get index and operators, fixes #1911
2015-05-16 16:32:46 -03:00
Juan Linietsky
65d48d6d39
-Added prints() function, fixes #1132 , #1859
...
-Tabs work inside built-in log window, fixes #1867
2015-05-09 18:09:58 -03:00
Juan Linietsky
f54ad9e086
made parser accept EOF after "pass", fixes #1488
2015-04-26 20:28:41 -03:00
Juan Linietsky
701335e845
-Throw error if setter and getter reference their member variable with self. , fixes #1685
2015-04-18 17:55:04 -03:00
Juan Linietsky
170a9349d2
Merge branch 'master' of https://github.com/okamstudio/godot
2015-04-18 16:18:59 -03:00
Juan Linietsky
4661a6e126
-try to avoid errors when path using ".." is present in script include, fixes #1703
2015-04-18 16:17:33 -03:00
Juan Linietsky
e388d551b7
Merge pull request #1667 from TheHX/fix_multiline_strings
...
Now the script editor highlight all lines of a multiline string
2015-04-18 14:45:15 -03:00
Juan Linietsky
fdaa2920eb
Updated copyright year in all headers
2015-04-18 14:38:54 -03:00
Juan Linietsky
be46be7801
-renamed function to get object from instance id
...
-added function to get list of tiles used
2015-04-18 14:00:15 -03:00
Franklin Sobrinho
562bc22dd4
Now the script editor highlight all lines of a multiline string
2015-04-09 18:24:38 -03:00
Juan Linietsky
963845eea9
Merge branch 'master' of https://github.com/okamstudio/godot
2015-04-07 21:21:06 -03:00
Juan Linietsky
22997294fa
-Concatenating arrays keeps the shared property if any of the arrays is shared. Fixes #1646
2015-04-07 21:18:46 -03:00
Juan Linietsky
8619cb64ba
Merge pull request #1567 from sanikoyes/Pr-GDScript-seed-get-inst
...
Pr-GDScript-seed-get-inst
2015-04-07 20:19:07 -03:00
Juan Linietsky
b1bf4fcef2
Merge pull request #1591 from MostafaHassan/pr_FixCrashInVisualShader
...
(Fix crash) in visual shader for curve remap node
2015-04-07 20:14:10 -03:00
yg2f
fcbf473d0d
fix printraw to make it actually print raw
2015-04-06 13:57:31 +02:00
mostafahassan
73ff3ac218
(Fix) script will not be able to extend itself
2015-03-31 21:34:50 +02:00
sanikoyes
97f34a1dd6
Add seed/get_inst function for GDScript
...
seed -> Math::seed
get_inst -> ObjectDB::get_instance
2015-03-25 11:01:12 +08:00
Juan Linietsky
0302ea5b82
Merge pull request #1396 from Spooner/fix_sprintf_errors
...
Fix sprintf errors
2015-03-22 15:03:32 -03:00
Juan Linietsky
da7698073f
Merge pull request #1407 from NateWardawg/documentation
...
Updated the internal documention for the GDScript class.
2015-03-22 15:02:00 -03:00
Juan Linietsky
a1f715a4da
support for 2D shadow casters
...
Added support for 2D shadow casters.
*DANGER* Shaders in CanvasItem CHANGED, if you are using shader in a
CanvasItem and pull this, you will lose them. Shaders now work through a
2D material system similar to 3D. If you don't want to lose the 2D
shader code, save the shader as a .shd, then create a material in
CanvasItem and re-assign the shader.
2015-03-02 00:54:43 -03:00
Nathan Warden
bfad392387
Updated the variable in the lerp function to be weight instead of percent.
2015-02-20 16:28:48 -05:00
Juan Linietsky
daeac73c54
restored @ for nodepaths/stringnames
2015-02-19 18:12:45 -03:00
Bil Bas (Spooner)
748311ec42
Added info about operator after bespoke error message.
2015-02-19 16:59:37 +00:00
Bil Bas (Spooner)
db2381de7a
Correctly halt on error in sprintf parsing ( fixes #1393 )
2015-02-19 15:45:49 +00:00
Juan Linietsky
2185c018f6
begin new serialization framework
...
also got rid of STL dependency on triangulator
2015-02-15 01:21:26 -03:00
Hinsbart
cbade4daf6
fix typo in script template
2015-02-10 19:39:52 +01:00
Wim Vander Schelden
3d3b1937dd
Cleaned up formating in gd_compiler.h
2015-01-14 16:37:24 +01:00
Juan Linietsky
7c7ab30c4e
fixes
2015-01-13 11:22:56 -03:00
Juan Linietsky
bd03562076
-Resolved bug that made yield() not work in some situations, fixes #884
2015-01-06 00:39:35 -03:00
Juan Linietsky
ddf7457894
Merge branch 'master' of https://github.com/okamstudio/godot
2015-01-03 16:53:39 -03:00
Juan Linietsky
fbdd925d9b
-Work in progress visual shader editor *DOES NOT WORK YET*
2015-01-03 16:52:37 -03:00
Juan Linietsky
6b5b95bb4e
-added new code completion guess locations, closes #1032
...
-moved commandline fix to mingw-only, should fix #1064
2015-01-03 13:03:13 -03:00
Juan Linietsky
60afd79a6e
-added a check for setget while running the game , closes #1009
...
-fixed issues in tilemap editor (swap arrows not showing/hiding properly)
2015-01-03 00:57:02 -03:00
Juan Linietsky
78e7777cf5
Merge branch 'master' of https://github.com/okamstudio/godot
...
Conflicts:
modules/gdscript/gd_editor.cpp
Improved code completion for InputEvent (shows members by type)
2014-12-21 11:46:28 -03:00
Juan Linietsky
a36a774897
Fixes
...
-=-=-=
-Added missing quaternion constructor
-code completion fixes
-winrt fixes
2014-12-20 15:30:06 -03:00
Juan Linietsky
9783f6fc96
Merge branch 'master' of https://github.com/okamstudio/godot
2014-12-20 12:32:32 -03:00
sanikoyes
4ccdbde845
Fix crash when gd-script _init fail
2014-12-18 12:50:47 +08:00
Juan Linietsky
9f5bbfc322
-improved completion options for InputEvent, shows all event types now
2014-12-18 00:56:33 -03:00
Juan Linietsky
92f28a5028
oops, C++11 makes me screw up
2014-12-17 10:45:02 -03:00
Juan Linietsky
fd4648c081
-fixed crash reported by n-pigeon
2014-12-16 23:46:55 -03:00
Juan Linietsky
2dd302ff90
-fix compilation issue
...
-fix missing built-ins in completion
-fix parse error
2014-12-16 23:17:35 -03:00
Juan Linietsky
bcf27feb98
New Code Completion
...
-=-=-=-=-=-=-=-=-=-
-Massive improvement to code completion
-Argument hinting for functions
If you manage to out-smart the code-completion in a situation where completion
should be possible to guess, let me know.
Please enter the commit message for your changes. Lines starting
2014-12-16 22:31:57 -03:00
Juan Linietsky
be4e40e90a
compilation fix
2014-12-08 16:09:29 -03:00
Juan Linietsky
6851f9bfae
Small Fixes
...
-=-=-=-=-=-
-Bug in navmesh demo fixed
-Bug in variant
-Better Collada Exporter supports proper names of exported shapekeys
2014-12-08 15:47:45 -03:00
Juan Linietsky
c940212b89
more bugfixes
2014-12-07 02:39:51 -03:00
Juan Linietsky
c79be979d4
Batch of Bugfixes
...
-=-=-=-=-=-=-=-=-
-Fixed Export UV XForm (should work now). #923
-Fixed enforcement of limits in property editor. #919
-Fixed long-standing bug of export editings in script inheritance. #914 , #859 , #756
-Fixed horrible error reporting in shader language. #912
-Added kinematic collision with plane (please test well). #911
-Fixed double animation track insert when using 2D rigs. #904
-VKey updates offset parameter in sprite edition. #901
-Do not allow anymore a script to preload itself. (does not fix #899 , but narrows it down)
-Avoid connection editor from overriding selected text. #897
-Fixed timer autostart. #876
-Fixed collision layers in 3D physics. #872
-Improved operators in shader #857
-Fixed ambient lighting bug #834
-Avoid editor from processing gamepad input #813
-Added not keyword #752
Please test!
2014-12-07 02:04:20 -03:00
Juan Linietsky
e709468bb1
missing navmesh demo and small fixes
2014-11-19 11:33:15 -03:00
Juan Linietsky
abbea4d945
UDP Fixes
...
-=-=-=-=-
Curse the day I decided to port UDP code, as it ended up
being two nights of work. At least It's done now (I hope).
-Fixed UDP Support, API seems stable
-Added UDP Chat demo (chat that can lose your packets, heh)
-Added helpers to areas and bodies to get list of collided bodies and contained bodies.
-Sped up screen/viewport capture code.
-Added code to save an image as PNG
-Small fix so scripts register their singletons after modules did.
2014-11-13 00:53:12 -03:00
Juan Linietsky
0dbedd18fc
SceneMainLoop -> SceneTree
...
-=-=-=-=-=-=-=-=-=-=-=-=-=-
*YOUR SOURCE MIGHT NOT WORK*
For mor information on fix:
https://github.com/okamstudio/godot/wiki/devel_scene_tree
Other stuff:
-Shower of bullets demo
-Fixes all around
2014-11-05 21:20:42 -03:00
Juan Linietsky
d85b67be53
Bug Fixes
...
-=-=-=-=-
-Fixed problem with scaling shapes (#827 ), related to not taking scale in consideration for calculating the moment of inertia
-Added support for multiline strings (or comments) using """
-Save subscene bug, properties not being saved in root node (#806 )
-Fix Crash in CollisionPolygon2DEditor (#814 )
-Restored Ability to compile without 3D (#795 )
-Fix InterpolatedCamera (#803 )
-Fix UV Import for OBJ Meshes (#771 )
-Fixed issue with modifier gizmos (#794 )
-Fixed CapsuleShape gizmo handle (#50 )
-Fixed Import Button (not properly working in 3D) (#733 )
-Many misc fixes (though no new features)
2014-11-02 11:31:01 -03:00
Juan Linietsky
e82dc40205
-Much improvement to baked light baker
...
-Fixed many bugs in stretch mode
-Fixes to camera project and unproject as consequence of the above
-added setget to script (documented in script doc)
-more fixes to collada exporter for blender
2014-10-27 22:54:32 -03:00
Juan Linietsky
9608d4255e
Merge pull request #823 from grabiller/#821
...
Fix issue #821 : GDScript now accepts single quoted as well as double quoted strings.
2014-10-27 22:44:53 -03:00
Guy Rabiller
1317d20740
- Fix issue #391 : GDScript now reduce constant expressions to constant and forbids constant assignment after being defined.
2014-10-27 22:26:31 +01:00
Guy Rabiller
f1744c8c31
Fix issue #821 : GDScript now accepts single quoted as well as double quoted strings.
2014-10-26 10:33:35 +01:00
Juan Linietsky
948fd83cdd
Little Bits
...
-=-=-=-=-=-
-fix duplicate function bug when creating script callback in editor
-fix bug where hiding lights does not work
-fix 2D audio listener bug (romulox_x reported)
-fix exported properties with inheritance bug
-fix timer autostart (make it not work on editor)
-reactivate first camara found if viewport runs out of active camera
-option to hide gizmos in viewport
-changed skeleton gizmo because it sucks
-Make convex shapes using CollisionShape visible (use quickhull class)
-fix up menu when editing a mesh, to export collision, navmesh, convex, etc. from it.
-make a menu option to show SRGB in 3D editor views by default
-make option to edit default light direction in viewport settings
-make option to edit default ambient light in viewport settings
-make software conversion of linear->RGB if hardware support not found
2014-10-12 02:13:22 -03:00
Juan Linietsky
0fa94a9690
Build System Changes
...
-=-=-=-=-=-=-=-=-=-=
Build System:
-Big clean up of SCons, changed how builds are done to a much cleaner method (check the Github Wiki for instructions).
-Deactivated BlackBerry10 (sorry), if no mantainer found (or BlackBerry does not send us a Passort ;), platform will be removed as we have no longer devices to test.
Engine:
-Removed deprecated object and scene format (was in there just for compatibility, not in use since a long time).
-Added ability to open scenes even if a node type was removed (will try to guess the closest type).
-Removed deprecated node types.
2014-10-07 01:31:49 -03:00
Juan Linietsky
048fdc8aea
-variables with export in script are now IMMEDIATELY AND ALWAYS visible in properties ( #718 )
...
-WorldEnvironment cleanup issues fixed (#563 )
-Text Editor improvement to shift-mouse selection (#648 )
-(Hopefully) fixed rare (but horrible) indexing bug in GDScript compiler (#652 )
-Some changes to PhysicsBody API, renamed property "active" to "sleeping", which makes more sense
-Added add_collision_exception() API in PhysicsBody (more accessible)
-ability to select and copy in the output messages panel
2014-09-22 00:50:48 -03:00
Juan Linietsky
11a5ed508b
Fixed too many little issues, check the issues closed today.
2014-09-21 01:43:42 -03:00
Juan Linietsky
0a557f3bf5
- more fixes on #672 on windows
...
- added #660 , but need help on osx, help please I don't have a mac!
- fixed #667 and #668 (eol detection in comments)
- added #670 (hint when using method without () )
2014-09-19 21:01:41 -03:00
Juan Linietsky
549d344f0f
Fixing Issues...
...
- #672 (default user:// in $HOME/.godot/app_userdata (linux/osx) and $APPDATA/Godot/app_userdata (Windows)
- #676 (draw both tiles and octants in order from top to bottom, left to right )
- #686 (unicode escape sequences work now)
- #702 (was not a bug, but a test was added to see if bodies went too far away)
2014-09-19 18:39:50 -03:00
Juan Linietsky
8cab401d08
3D Physics Rework, Other Stuff
...
-=-=-=-=-=-=-=-=-=-=-=-=-=-
3D Physics:
-Fixed "Bounce" parameter in 3D
-Fixed bug affecting Area (sometims it would not detect properly)
-Vehicle Body has seen heavy work
-Added Query API for doing space queries in 3D. Needs some docs though.
-Added JOINTS! Adapted Bullet Joints: and created easy gizmos for setting them up:
-PinJoint
-HingeJoint (with motor)
-SliderJoint
-ConeTwistJoint
-Generic6DOFJoint
-Added OBJECT PICKING! based on the new query API. Any physics object now (Area or Body) has the following signals and virtual functions:
-input_event (mouse or multitouch input over the body)
-mouse_enter (mouse entered the body area)
-mouse_exit (mouse exited body area)
For Area it needs to be activated manually, as it isn't by default (ray goes thru).
Other:
-Begun working on Windows 8 (RT) port. Compiles but does not work yet.
-Added TheoraPlayer library for improved to-texture and portable video support.
-Fixed a few bugs in the renderer, collada importer, collada exporter, etc.
2014-09-15 11:33:30 -03:00
Juan Linietsky
2ee4ac183b
Little Bits
...
-=-=-=-=-=-
-Fixed small bugs all around
-Added ability to show/hide entire sections of the spatial (3D) tree
-WIP new vehicle (not ready yet) based on Bullet
2014-08-14 10:31:38 -03:00
Juan Linietsky
2af2a84a03
Misc Fixes
...
==========
-NOTIFICATION_WM_QUIT fixed on android (seems tha way this is reported changed in newer sdk)
-WIP implementation of APK Expansion APIs for publishing games larger than 50mb in Play Store
-Feaures in the new tutorials are all present in the sourcecode
-This (hopefully) should get rid of the animation list order getting corrupted
-Improved 3D Scene Importer (Skeletons, Animations and other stuff were not being merged). Anything missing?
-In code editor, the automatic syntax checker will only use file_exists() to check preload() else it might freeze the editor too much while typing if the preload is a big resource
-Fixed bugs in PolygonPathFinder, stil pending to do a node and a demo
2014-06-27 23:21:45 -03:00
Juan Linietsky
703004f830
More 3D Work
...
-=-=-=-=-=-
-ESM Shadow Mapping for softer and less glitchy shadows
-HDR Pipeline (convert to Linear on texture import, convert to SRGB at the end)
-Fix to xml parse bug
2014-06-16 10:22:26 -03:00
Juan Linietsky
9b8696d3dd
Light Baker!
...
-=-=-=-=-=-=
-Support for lightmap baker, have fun figuring out how it works before tutorial is published.
2014-06-11 10:41:03 -03:00
Juan Linietsky
71355aaab7
-Fixed bug in "extends"
2014-05-24 13:25:56 -03:00
Juan Linietsky
1cad087969
Making Godot Easier to Use..
...
-=-=-=-=-=-=-=-=-=-=-=-=-=-=
-Auto indenter in code editor, this makes it much easier to paste external code.
-Zoom in 2D viewport now uses the mouse pointer as reference.
-Obscure hack to see where code/line of GDScript in C++ backtrace.
-Fixed a bug where keys would get stuck on X11 if pressed simultaneously
-Added Api on IP singleton to request local IPs.
-Premultiplied alpha support when importing texture, editing PNGs and as a blend mode.
2014-05-24 01:35:47 -03:00
Juan Linietsky
b324ff7ea5
A bit of everything:
...
-IMA-ADPCM support for samples, this means that sound effects can be compressed and use 4 timess less RAM.
-New 3D import workflow based on Wavefront OBJ. Import single objects as mesh resources instead of full scenes. Many people prefers to work this way. Just like the rest of the imported resources, these are updated in realtime if modified externally.
-Mesh resources now support naming surfaces. This helps reimporting to identify which user-created materials must be kept.
-Several fixes and improvements to SurfaceTool.
-Anti Aliasing added to WorldEnvironment effects (using FXAA)
-2D Physics bodies (RigidBody, KinematicBody, etc), Raycasts, Tilemap, etc support collision layers. This makes easy to group which objects collide against which.
-2D Trigger shapes can now also trigger collision reporting in other 2D bodies (it used to be in Area2D before)
-Viewport render target textures can now be filtered.
-Few fixes in GDscript make it easier to work with static functions and class members.
-Several and many bugfixes.
2014-05-14 01:22:15 -03:00
Juan Linietsky
f1d3b30a45
Fixes to constants in scope
2014-05-02 12:40:34 -03:00
Juan Linietsky
6572d51288
-Fixes to OpenSSL compilation (more)
...
-Fix bug in GDScript, now static functions can call static functions.
2014-05-01 11:34:10 -03:00
Juan Linietsky
b4969373b3
-HttpClient: ’Content-Length’ is added to httprequest if not provided in the headers and a body exists
...
-expressions in GDScript can take multiple lines if inside parenthesis (python-like)
-Added \ to force linebreaks to GDscript (python-like)
-added exclude objects from raycast
-fixed crashes
2014-04-05 18:50:09 -03:00
Juan Linietsky
9f33134c93
-Support for changing fonts
...
-Detect when free() might crash the project and throw error
-fixed 2D Bounce in physics (3d still broken)
-renamed “on_top” property to “behind_parent”, which makes more sense, old on_top remains there for compatibility but is invisible.
-large amount of fixes
2014-04-05 12:39:30 -03:00
Juan Linietsky
0a717ffee2
Merge branch 'master' of https://github.com/okamstudio/godot
...
Conflicts:
modules/multiscript/register_types.cpp
platform/android/java/src/com/android/godot/GodotLib.java
2014-03-13 23:14:35 -03:00
Juan Linietsky
31ce3c5fd0
-fix bug in cache for atlas import/export
...
-fix some menus
-fixed bug in out transition curves
-detect and remove file:/// in collada
-remove multiscript for now
-remove dependencies on mouse in OS, moved to Input
-avoid fscache from screwing up (fix might make it slower, but it works)
-funcref was missing, it's there now
2014-03-13 22:57:24 -03:00
sanikoyes
cde48d0c9c
fix gdscript path parse error
2014-03-11 13:30:33 +08:00
Juan Linietsky
b2ce682f6e
-scripts are converted to bytecode on export
...
-fix bug in doc where touchscreen events were not documented
2014-02-25 09:31:47 -03:00
Juan Linietsky
4b07eb8deb
-moved script to modules
2014-02-24 09:53:33 -03:00