Commit graph

598 commits

Author SHA1 Message Date
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
3f3f5a5359 Merge remote-tracking branch 'origin/gles3' into gles3-on-master
Various merge conflicts have been fixed manually and some mistakes
might have been made - time will tell :)
2017-01-02 21:52:26 +01: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
0b2771bd65 Merge pull request #7271 from Faless/ipv6_cleanup
Fixes and improvementes for IPv6 implementation.
2017-01-02 15:51:45 +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
Fabio Alessandrelli
1aff508dd9 IP_Address now handle IPv4 and IPv6 transparently
IP_Address changes:
- Converts to and from String transparently while handling IPv4 as IPv6
  mapped (::ffff:[IP]) address internally.
- Completely remove AddrType enum.
- Setting/Getting of ip array is now only possible through dedicated functions
  (ie. set_ipv4, get_ipv4, set_ipv6, get_ipv6)
- Add function to know if the address is a valid IPv4 (for IP implementation and enet)
2016-12-09 18:24:59 +01:00
Błażej Szczygieł
86a2a42303 WebM: Fix compilation on Linux/X11 ARM platform 2016-12-08 01:38:14 +01:00
Rémi Verschelde
56195873b6 Remove incomplete Inverse Kinematic module
The plan is to implement IK properly in the core engine for version 3.1,
together with ragdolls in the Skeleton node to let them reuse the same
limits and constraints.

Therefore we remove this module as part of the API breakage in 3.0, so
that we are not limited by staying compatible with it in 3.1.
2016-12-04 11:53:59 +01:00
Błażej Szczygieł
a7f76e1b13 WebM: Fix iPhone x86 compilation 2016-11-16 14:06:02 +01:00
George Marques
fa327f886e
Add "Positive" operator to VisualScript 2016-11-11 23:46:32 -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
Rémi Verschelde
57cc953cff Merge pull request #7028 from bojidar-bg/gdscript-multiline-comment-fixup
Make GDScript parser ignore floating strings in class definition
2016-11-06 12:07:02 +01:00
Rémi Verschelde
be4eff1d8b Merge pull request #7019 from vnen/rename-winrt-uwp
Rename WinRT platform to UWP
2016-11-06 12:03:10 +01:00
Rémi Verschelde
611a94e3a6 opus: Move public headers to match system install 2016-11-03 21:18:23 +01:00
George Marques
411faaa6f4
Rename remaining WinRT references to UWP 2016-11-03 14:51:08 -02:00
George Marques
fb5a73a39f
Rename WinRT files to UWP 2016-11-03 14:51:08 -02: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
cc95d4448c scons: Reorder options for clarity
Also prefix all thirdparty-related toggles with `builtin`.
2016-11-03 07:45:08 +01:00
Pedro J. Estébanez
f935d7ab0e Make regex compilable with RTTI disabled 2016-11-01 19:16:46 +01:00
Rémi Verschelde
f34151ff0f style: Various other PEP8 fixes in Python files
Done with `autopep8 --select=E7`, fixes:

- E701 - Put colon-separated compound statement on separate lines.
- E702 - Put semicolon-separated compound statement on separate lines.
- E703 - Put semicolon-separated compound statement on separate lines.
- E711 - Fix comparison with None.
- E712 - Fix (trivial case of) comparison with boolean.
- E713 - Fix (trivial case of) non-membership check.
- E721 - Fix various deprecated code (via lib2to3).
2016-11-01 00:35:16 +01: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
d4c17700aa style: Fix PEP8 whitespace issues in Python files
Done with `autopep8 --select=E2,W2`, fixes:

- E201 - Remove extraneous whitespace.
- E202 - Remove extraneous whitespace.
- E203 - Remove extraneous whitespace.
- E211 - Remove extraneous whitespace.
- E221 - Fix extraneous whitespace around keywords.
- E222 - Fix extraneous whitespace around keywords.
- E223 - Fix extraneous whitespace around keywords.
- E224 - Remove extraneous whitespace around operator.
- E225 - Fix missing whitespace around operator.
- E226 - Fix missing whitespace around operator.
- E227 - Fix missing whitespace around operator.
- E228 - Fix missing whitespace around operator.
- E231 - Add missing whitespace.
- E231 - Fix various deprecated code (via lib2to3).
- E241 - Fix extraneous whitespace around keywords.
- E242 - Remove extraneous whitespace around operator.
- E251 - Remove whitespace around parameter '=' sign.
- E261 - Fix spacing after comment hash.
- E262 - Fix spacing after comment hash.
- E265 - Format block comments.
- E271 - Fix extraneous whitespace around keywords.
- E272 - Fix extraneous whitespace around keywords.
- E273 - Fix extraneous whitespace around keywords.
- E274 - Fix extraneous whitespace around keywords.
- W291 - Remove trailing whitespace.
- W293 - Remove trailing whitespace.
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
Rémi Verschelde
c6c13eb8fc Merge pull request #6490 from zaps166/webm-pr
Add WebM support
2016-10-30 18:12:00 +01:00
Rémi Verschelde
f1b89f1778 Merge pull request #6887 from leezh/regex_module
RegEx re-implemented as a module
2016-10-30 12:02:44 +01:00
Juan Linietsky
53d8f2b1ec PBR more or less working, still working on bringing gizmos back 2016-10-27 11:50:26 -03:00
Zher Huei Lee
9a5ce099f1 Changed RegEx to inherit Resource 2016-10-27 10:27:40 +01:00
Zher Huei Lee
c3b4686082 Added global sub and bounds checking to RegEx 2016-10-27 10:27:40 +01:00
Zher Huei Lee
439d439321 RegEx re-implemented as a module
Re-wrote nrex as a module using godot-specific parts and new
features:

 * Added string substitutions.
 * Named groups are now supported.
 * Removed use of mutable variables in RegEx. RegExMatch is returned
   instead.
2016-10-27 10:27:40 +01:00
yg2f
f7773d499d fix bug introduced by #6501
( @Akien : this PR is for current HEAD only, not to be cherry-picked for 2.1.1 )

this is manual revertion of #6501 which introduced a bug that prevented
scons from detecting Mingw under Windows when MSVC was installed.
(thanks to @vnen for finding this)

AND
it fixes the actual bug that prevented scons from detecting MSVC standalone
compiler ( a confusions between ``VSINSTALLDIR`` and ``VCINSTALLDIR`` )

The freeware Standalone MSVC C++ Build Tools are available here :
http://landinghub.visualstudio.com/visual-cpp-build-tools
2016-10-26 19:29:30 +02:00
Rémi Verschelde
c67e3a485d Merge pull request #6925 from godotengine/ipv6
Adding IPv6 support
2016-10-26 14:32:51 +02: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
Błażej Szczygieł
d710b265f8 Add WebM module
Use already existing libraries: libvorbis and libopus. Also use newly
added libraries: libvpx, libwebm, libsimplewebm.
2016-10-23 02:46:06 +02: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
Ariel Manzur
887a897c02 adding ipv6 2016-10-18 18:53:18 -03: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
Błażej Szczygieł
4ffa8f224d Theora: Don't compile unnecessary files, rename "x86_opt_*" 2016-10-16 22:31:27 +02:00
Rémi Verschelde
edbc0c0d0b freetype: Make it a module and split thirdparty library
Comment out the weird workaround for building on Windows at it might
not be needed anymore. Testing needed to confirm.
2016-10-15 18:10:17 +02:00
Rémi Verschelde
e6dc51a0f7 chibi: Move to a module 2016-10-15 12:20:53 +02:00
Rémi Verschelde
8311a78df5 squish: Move to a module and split thirdparty lib 2016-10-15 12:01:28 +02:00
Rémi Verschelde
5c12c9e69b mpc: Move to a module and split thirdparty libmpcdec 2016-10-15 11:50:42 +02:00
Rémi Verschelde
cfcc8a20e8 theora: Move to a module and split thirdparty lib
Same rationale as the previous commits.
2016-10-15 11:50:41 +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
422196759f openssl: Move to a module and split thirdparty lib
Same rationale as the previous commits.
2016-10-15 11:50:41 +02:00
Rémi Verschelde
d9a291f641 ogg/vorbis/opus: Make them modules and unbundle thirdparty libs
Took the opportunity to undo the Godot changed made to the
opus source. The opus module should eventually be built in its
own environment to avoid polluting others with too many include
dirs and defines.

TODO: Fix the platform/ stuff for opus.
2016-10-15 11:50:40 +02:00
Rémi Verschelde
ee3cf211c6 webp: Make it a module and unbundle libwebp thirdparty files
Note that there are two Godot-specific changes made to libwebp
for the javascript/HTML5 platform. They are documented in the
README.md.
2016-10-15 11:50:39 +02:00
Rémi Verschelde
b1e8889d96 dds/etc1/pbm/pvr: Make those modules and split thirdparty files
They are not particularly packaged in Linux distros so we do not
facilitate unbundling via SCons. There could be done if/when there
is interest.

Also s/pnm/pbm/, long-lived typo :)
2016-10-15 11:50:39 +02:00
Rémi Verschelde
c31ad71f10 enet: Split enet thirdparty files and allow unbundling
Building against shared libraries only implemented for Linux X11 so far.
TODO: Document Godot's modifications of upstream enet.
2016-10-15 11:50:39 +02:00
Rémi Verschelde
16ba665db6 jpg: Make it a module and split jpgd thirdparty files
Similar rationale as in previous commit.
2016-10-15 11:50:39 +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
20773733ca Merge pull request #6741 from Faless/network_no_spoof
Better checks for Multiplayer API, prevent packet source spoofing.
2016-10-09 14:52:35 +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
Rémi Verschelde
fda72354c9 Merge pull request #6702 from Faless/load_error_leading_slash
Add error when (pre)loading paths with leading / (#4280 - #3106)
2016-10-09 14:16:47 +02:00
Rémi Verschelde
c16c621c97 Merge pull request #6657 from Faless/multi_channel_rpc
Use 2 different ENet channels for reliable/unreliable packets
2016-10-09 14:05:40 +02:00
Fabio Alessandrelli
b80d72e662 Better checks for Multiplayer API, prevent packet source spoofing.
Fixes the following problems.

A malicious client was able to contact another peer faking its identity
(even looking like he was the server).

A malicious client was able to force other client disconnections by sending
bogus system packets to the server.
2016-10-07 16:48:55 +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
Juan Linietsky
22d83bc9f6 Begining of GLES3 renderer:
-Most 2D drawing is implemented
-Missing shaders
-Missing all 3D
-Editor needs to be set on update always to be used, otherwise it does not refresh
-Large parts of editor not working
2016-10-03 21:35:16 +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
Fabio Alessandrelli
c1dc71baee Fix possible buffer overflow in NetworkedMultiplayerENet
NetworkedMultiplayerENet::get_packet was reporting the wrong size for the packet buffer exposing a potential buffer overflow in case of malformed/malicious packets
2016-09-30 03:51:46 +02:00
Fabio Alessandrelli
8b9e5453a5 Use 2 different ENet channels for reliable/unreliable packets
This avoids stalling other sequenced but unreliable packets
(i.e. UNRELIABLE_ORDERED) when sending RELIABLE packets.
2016-09-30 02:48:25 +02: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
1bf684cea2 -Cleaned up find/replace bar for replace (made selection only default if selection exists), also made buttons look like buttons
-Fixed a bug related to theme propagation, may be able to solve #6443, #6302 and others. Please test.
2016-09-11 10:05:46 -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
7a27d5d9e7 Merge pull request #6363 from vnen/winrt
Fix the support for WinRT/UWP
2016-09-10 11:47:42 -03:00
Rémi Verschelde
8af99ef1c6 Merge pull request #6436 from djrm/icons
Tweaked some icons, including xform one
2016-09-09 07:46:42 +02:00
Daniel J. Ramirez
56f9adac3b Tweaked some icons, including xform one 2016-09-08 19:22:30 -05: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
Juan Linietsky
405f6af79c -Added diectly editable expressions on node to VSEditor, closes #6392
-Added ability for LineEdit to expand to fit text
2016-09-06 20:34:24 -03:00
Juan Linietsky
23ababdcd5 Changed Vector3.snap from fmod to stepify, which makes more sense, fixes #6399 2016-09-06 19:14:47 -03:00
ISylvox
4aab004674 Should Fix Compiling Export Templates
- Works on Windows, Linux x11, Linux Server, Android, HTML5
- Not tested on Mac/iOS (don't have Apple's devices yet)
2016-09-06 04:50:30 +07:00
Răzvan Cosmin Rădulescu
00e743b76a Clean up GDScript template 2016-09-05 19:58:04 +02:00
Juan Linietsky
24bd472a4a Removed script_variables/ prefix to VS properties, made them easier to access from GD and Expression nodes 2016-09-04 10:38:41 -03:00
Juan Linietsky
9167cd45bb Added expression nodes to visual script, please test. 2016-09-04 10:34:40 -03:00
George Marques
5f5db46e8d
Patch thirdy-party libraries to build for WinRT
- Patch enet code.
- Patch OpenSSL code and add shims for unavailable API.
- Add extra definition header for Freetype.
2016-09-03 19:46:26 -03:00
Juan Linietsky
77cb836fc4 small fix 2016-09-03 14:59:44 -03:00
Juan Linietsky
5028d7510d Connection hints when connecting to empty space. 2016-09-03 14:58:23 -03:00
Juan Linietsky
ee37c2f433 Made basic call nodes unsequenced, since they are like gdscript and most return const. 2016-09-03 00:31:39 -03:00
Juan Linietsky
89702d545b Basic type constants for visual script 2016-09-02 02:13:12 -03:00
Juan Linietsky
65ae4976eb made visual script switch more flexible 2016-09-01 20:04:17 -03:00
Juan Linietsky
5b96c3a552 -Modified Input and added is_action_just_pressed() as well as is_action_just_released() 2016-09-01 18:59:46 -03:00
Juan Linietsky
fc70824f7c More improvements to visual script..
fixed a bug of not saving when sub-nodes changed.
2016-08-31 17:58:51 -03:00
Juan Linietsky
5567350e1b -Reworked constant nodes better
-Added simple switch node, removed InputEventFilter
2016-08-31 12:50:46 -03:00
Juan Linietsky
fb4d6d1db0 More visual script improvements
-Added anti-aliasing on lines
-Improved draw performance enormously
-Removed sequence ports for most nodes, current visual scripts will likely be broken now. Sorry!
2016-08-30 23:46:41 -03:00
J08nY
a56e5c74f5
VisualScript: Fixed VariableGet vs VariableSet node names, fixes #6325 2016-08-30 16:42:39 +02:00
Daniel J. Ramirez
0d692e6a8c Fixed compilation 2016-08-29 12:26:53 -05:00
Rémi Verschelde
b06fd4cfda Merge pull request #6303 from Marqin/enet_bind_ip_rebased
add NetworkedMultiplayerENet::set_bind_ip
2016-08-29 19:05:45 +02:00
Rémi Verschelde
79068e348f Merge pull request #6223 from RandomShaper/improve-gridmap-edit
Improve/fix GridMap editor
2016-08-29 19:05:00 +02:00
Juan Linietsky
12dc7a2e6a Merge branch 'master' of https://github.com/godotengine/godot 2016-08-29 08:35:10 -03:00
Daniel J. Ramirez
9465ce46c6 Colors for VS sockets and icons 2016-08-28 19:57:16 -05:00
Juan Linietsky
748836e0b3 Several all around fixes to visual scripting (in the process of creating demos) 2016-08-28 20:59:01 -03:00
Rémi Verschelde
b6e206e995 Merge pull request #6108 from djrm/vs_type_icons_2
Icons for VScript types
2016-08-27 21:45:06 +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
Hubert Jarosz
8a4e636df6
add NetworkedMultiplayerENet::set_bind_ip
which allows ENet to bind on custom IP.
2016-08-27 13:41:34 +02:00
Juan Linietsky
ec49f41e19 Even more work on visual script editor:
-Added constructor nodes, specialized and conversion ones.
-Cleaned up how unconnected input default values are shown and edited (much cleaner)
-Dragging scene nodes into graph makes a call dialog appear by deault
-Dragging properties into graph is set by default, not get
-fixed dragging internal functions into graph
2016-08-26 17:38:25 -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
Daniel J. Ramirez
8151da15e1 Icons for VScript types 2016-08-23 22:54:21 -05: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
Rémi Verschelde
2cf781d3c6 enet: Fix build on android and iphone platforms
Fixes #6156.
2016-08-22 12:59:06 +02:00
Juan Linietsky
cbbcf72703 -High Level protocol optimization (should be smaller)
-Ability to set compression to ENet packets (check API)
-Fixed small bug in StringDB that lead to duplicate empty strings
-Added a new class, StreamPeerBuffer, useful to create your own tightly packed data
2016-08-22 01:19:24 -03:00
Pedro J. Estébanez
7d35973486 Improve/fix GridMap editor
Fix cursor/palette update on tile eyedropping
Fix editor not cleaning its state when becoming inactive, which leaves indicators behind among other issues
Fix/improve menu/keyboard shortcuts
Merge 'Gridmap Editor' and 'Grid Map' settings into the latter
2016-08-21 03:41:19 +02:00
Juan Linietsky
2b7aa98d2d Changed API to use sequenced packets for UDP (drop old) 2016-08-19 22:54:53 -03:00
Juan Linietsky
38338e90c0 ENet windows compilation fixes.
For reference, when you include a Windows header (be it directly windows.h or something that includes it)
put it at the end of the includes. it seems I forgot.
2016-08-20 01:05:57 -03:00
Juan Linietsky
2fa693273c Many fixes to networking, demo should work now 2016-08-19 18:44:09 -03:00
Juan Linietsky
1add52b55e Brand new networked multiplayer 2016-08-19 16:48:41 -03:00
vkbsb
91ba00b416 VisualScript: Adding TOOLS_ENABLED flag where needed (#6144)
Fixes #6022.
2016-08-15 09:54:02 +02:00
Juan Linietsky
3db36684b1 Added high level networked multiplayer to Godot.
It's complete, but absolutely and completely untested, undocumented and NSFW.
Have fun :-)
2016-08-14 18:49:50 -03:00
Juan Linietsky
01bdfe1ff6 Missing some bits, and added connection status. 2016-08-14 14:07:23 -03:00
Juan Linietsky
c21aae65b6 -Added an ENet implementation for NetworkedMultiplayerPeer for "a bit higher level" networking. 2016-08-14 14:07:23 -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
72748d1363 -Show proper node name in subcall
-Implemented Ctrl-F to focus script type search
2016-08-08 01:41:57 -03: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
cfbdeeffec Added ability to create custom nodes from script. 2016-08-07 21:22:14 -03:00
Juan Linietsky
0b8f0670c5 Automatically turn on process callbacks if relevant callbacks in node exists 2016-08-07 20:08:15 -03:00
Juan Linietsky
b77200728e -Added yield nodes to visual script
-Added input selection nodes to visual script
-Added script create icon for those who miss it, will only appear when it can be used.
2016-08-07 19:22:33 -03:00
Juan Linietsky
6671c6bdc7 Added yield() signal smart autocompletion. 2016-08-06 22:11:03 -03:00
Juan Linietsky
9714a36e65 Reverted printable null object, seems to cause bugs around and not sure why.
Will have to check better, likely for 3.0
2016-08-06 20:13:27 -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
6ed5d48d0c Concluded base visual scripting! can edit but not run though. 2016-08-04 00:05:35 -03:00
Juan Linietsky
cd25624667 More work on visual scripting.. 2016-08-03 22:07:03 -03:00
Juan Linietsky
d8af6330e5 More progress on visual script editing 2016-08-03 11:28:43 -03:00
Rémi Verschelde
e51f4725fe Fix translatable strings in VisualScript 2016-08-03 07:26:36 +02: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
George Marques
dc2ec3140a
Fix cscript module syntax errors for MSVC compiler 2016-06-26 14:19:46 -03:00
Juan Linietsky
f31a6d26f1 missing files 2016-06-26 11:02:15 -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
George Marques
7127f0943d Merge pull request #5139 from zaps166/init_navigation_pointer
GridMap: Initialize "navigation" pointer
2016-06-13 12:16:00 -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
4667f9e61e Changed how min/max icon size in ItemList works and replaced it by a fixed size. Fixes many issues, closes #4907 2016-06-12 16:52:22 -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
Błażej Szczygieł
3d931f3353 GridMap: Initialize "navigation" pointer 2016-06-10 12:47:38 +02: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
Rémi Verschelde
8259c46707 GridMap: Fix backwards rotate hotkeys (#4498)
Fixes #1237
2016-05-01 11:38:08 +02:00
Rémi Verschelde
c0ec7e933a Merge pull request #4302 from Anarchid/gridmap-navmesh
Navmesh support for GridMaps
2016-04-20 21:12:35 +02:00
Anarchid
b03a892f95 manually fix indent 2016-04-20 21:21:51 +03:00
Anarchid
73ca831848 Implement GridMap support for navigation meshes 2016-04-20 21:19:05 +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
2f12c2dd90 Merge pull request #4169 from slapin/ik
InverseKinematics node, basic features
2016-04-06 18:32:38 +02:00
Rémi Verschelde
0a5472e697 Remove trailing spaces 2016-04-02 20:26:12 +02:00
Sergey Lapin
eae5169dfd Now parameters can be changed real time 2016-03-31 12:44:35 +03:00
Sergey Lapin
e4fea5d5f9 Added speed setting 2016-03-31 12:44:25 +03:00
Sergey Lapin
8d7a94389a InverseKinematics node, basic features
I don't already know how the fuck it works, but it is.
A bit slow currently, but hope to improve it soon.

The current limitations:

1. No constraints. At all.
2. Used simplest CCD algorithm, I just can't believe
in jacobian construction from code.
3. Slow to get to target.
2016-03-31 12:43:00 +03: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