Commit Graph

1004 Commits

Author SHA1 Message Date
e32d232053 Merge pull request #35076 from vnen/gdscript-type-match-assign
Type match on assignment only if operators have type
2020-01-13 13:14:57 +01:00
e6060706ca GDScript: Type match on assignment only if operators have type
This ensures that a value without type won't be wrongly assigned to a
typed variable when the types mismatch.
2020-01-13 08:51:24 -03:00
d5e1890c85 Fix infinite loop error in document link parsing 2020-01-13 19:23:29 +08:00
e804eebfe5 Remove completion triggers for ',' and '(' which may conflict with signature helper 2020-01-11 23:51:25 +08:00
d901d5993b Allow enable/disable threading for LSP server
Restart LSP server when configurations change without restart the editor
2020-01-11 23:50:32 +08:00
4c20d9407d GDScript: Forbid using "script" as member name
Avoids the user breaking things by creating a "script" variable with
something else, effectively overwriting the "script" slot on Object.
2020-01-10 19:43:33 -03:00
0d2993659b Merge pull request #34978 from GodotExplorer/lsp-fix-bracket-completion
LSP: Fix bracket completion for functions with one argument
2020-01-10 07:58:26 +01:00
09aa12a0dd Merge pull request #34958 from vnen/gdscript-is-check-valid-instance
GDScript: Validate object instance on `is` operation
2020-01-10 07:40:56 +01:00
6190d42825 LSP: Fix bracket completion for functions with one argument 2020-01-10 14:23:01 +08:00
76678b2609 GDScript: Fix type name on error message for function parameters 2020-01-09 15:50:06 -03:00
1aef8bfeb1 GDScript: Fix resolution of default parameter values
Fix #26556
2020-01-09 15:42:31 -03:00
3718f8f592 GDScript: Validate object instance on is operation
Avoids crashes on debug mode. Instead it now breaks the execution and
show the error in-editor. Will still crash on release.

Also add a similar check to Marshalls to ensure the debugger doesn't
crash when trying to serialize the invalid instance.
2020-01-09 13:59:33 -03:00
cc9ca9eb34 GDScript: Don't re-evaluate index on assigment with operation
Pass the calculated index from the stack and use the same to get and set
the value. This avoids a function with side effects being evaluated
twice when using indexing in an assignment with operation statement
(e.g. a[function()] += 1).
2020-01-09 10:43:29 -03:00
e97e951741 Merge pull request #34948 from vnen/gdscript-copy-constructor
GDScript: Allow copy constructor for built-in types
2020-01-09 13:42:10 +01:00
41ed905c1a GDScript: Allow copy constructor for built-in types
Those are implicitly defined in Variant.
2020-01-09 09:03:09 -03:00
7d4fc79eb3 Add GDScript warning for standalone expression
This makes the error message clearer as it might be used to call
functions with side effects.
2020-01-09 08:30:14 -03:00
e7b7dc57fc GDScript: set assign operation on local var made by match
This is needed in a all local variables with assigment to properly set
the typed operation.

Fix #34928
2020-01-08 19:28:07 -03:00
5a8107f70a Merge pull request #34920 from GodotExplorer/lsp-signatureHelper
GDScript LSP: Implement signatureHelp
2020-01-08 18:29:39 +01:00
c456d87ee6 Merge pull request #34918 from vnen/gdscript-assign-op
GDScript: enable type checks on release mode
2020-01-08 18:22:38 +01:00
d35c018a7a GDScript LSP: Implement signatureHelp
Enable smart resolve default to true as it is required for script symbol lookup
2020-01-09 00:57:54 +08:00
d26414f9fe GDScript: enable type checks on release mode
Also make builtin GDScript functions report return type as Variant in
release so type is converted when needed.
2020-01-08 12:38:18 -03:00
899f7999b4 GDScript: properly set type of local variable initialization
Properly sets the type of the identifier for the local variable
that is stored in the assignment operation. This makes sure that the
compiler is aware of typing for local variables when they are
initialized with the declaration.
2020-01-08 11:36:50 -03:00
eb5861f9f1 GDScript LSP: Implement goto declaration 2020-01-04 20:02:26 +08:00
b93b7aca74 Allow the usage of newlines in export hints
Fixes #34689
2020-01-02 18:03:11 +02:00
a7f49ac9a1 Update copyright statements to 2020
Happy new year to the wonderful Godot community!

We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.

Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00
078c0d75f2 Cleans up headers included in editor_node.h 2019-12-24 21:46:05 +08:00
74977277fa Merge pull request #34280 from zaksnet/fix-yield-documentation
Fix documentation for yield
2019-12-16 08:49:32 +01:00
468fcd80bb Updates docs for GDScript built-in functions
* Adds description for `ord()`
* Adds relationship description between `char()` and `ord()`
* Describes the argument of `char()` as Unicode code point instead of ASCII code
* Fixes wrong interval notation in `randi()` description
2019-12-15 19:06:29 +08:00
cb887324e6 GDScript: Convert values when setting member variables
This allows doing: self.x = 1 even if self.x is declared as float.
2019-12-13 12:51:53 -03:00
475d7f0e52 GDScript: Fix type conversion in assignment with operation 2019-12-13 12:51:08 -03:00
Zak
0fd7186971 Fix documentation for yield
#33872 PR was misleading as i though inheritance from GDScriptFunctionState was optional.
2019-12-13 11:17:12 +02:00
f065b34e96 Merge pull request #34286 from bojidar-bg/31818-cast-autocomplete
Fix GDScript autocompletion with "as" or typed variables
2019-12-12 14:53:38 +01:00
a665b3878b Fix GDScript autocompletion with as or typed variables
Fixes #31818, fixes #33434
2019-12-12 01:16:23 +02:00
6cc3bb2d9b Add note in 'load()' docs that the path must be absolute 2019-12-11 17:14:58 -03:00
98c3990f7d Merge pull request #34271 from vnen/gdscript-unused-class-variable-disable
Disable GDScript warning for unused class variable by default
2019-12-11 16:27:42 +01:00
df2e3e3f7f Merge pull request #33018 from Xrayez/fix-inst2dict-getters
Fix `inst2dict` calling to getters to retrieve value
2019-12-11 15:06:38 +01:00
cbf5641a74 Disable GDScript warning for unused class variable by default 2019-12-11 11:02:07 -03:00
2845e6a21a Merge pull request #34040 from qarmin/unused_variable_more_precise_numbers
Removed unused variables, add some constants numbers
2019-12-10 08:25:31 +01:00
ed1c4bc77d Removed unused variables, add some constants numbers 2019-12-10 05:13:02 +01:00
4eff13d768 doc: Markup fixes for enums and constants 2019-12-06 23:09:20 +01:00
f326913f4d Merge pull request #34067 from bojidar-bg/32370-retype-message
Make error when accidentially redeclaring a variable's type clearer
2019-12-04 06:52:22 +01:00
1fcdeaee39 Mention that int() can be used as an alternative to floor() 2019-12-03 08:43:24 +01:00
79c26344e8 Make error when accidentially redeclaring a variable's type clearer
Fixes #32370
2019-12-02 22:26:05 +02:00
3231fca934 Add docs for is_equal_approx on structures 2019-11-30 16:52:27 -05:00
d747c61187 Fixed typo in docs for Script and GDScript classes ("exends" -> "extends") 2019-11-30 21:16:11 +03:00
247767eb89 Document how to bypass the unused argument/variable warning in message
Note that prefixing with an underscore only works with unused arguments
and local variables, not class variables and signals.

This closes #26056.
2019-11-27 22:52:43 +01:00
4f14a1f59c Remove type hint from the @GDScript class documentation
The current consensus in the Godot documentation is to avoid using
type hints unless they're relevant to the behavior explained.
2019-11-26 19:13:55 +01:00
5cfff77ca6 Added missing documentation for yield()
Added some missing documentation about yield() being able to wait for a function also. I cant believe something like that was missing from the docs, it would have saved me so much time (and others i assume).
2019-11-25 18:08:18 +02:00
ab3bccdb78 Fix typos with codespell
Using codespell 1.16.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2019-11-22 08:35:03 +01:00
7ecaff578b Make the script templates' blank lines conform with the official style guide 2019-11-17 08:54:43 -03:00