Commit Graph

1125 Commits

Author SHA1 Message Date
Andreas Haas
5ec0610c60
Add ClassDB binding for File.get_modified_time
Closes #7613
2017-01-23 22:33:58 +01:00
Fabio Alessandrelli
88a56ba783 Remove set_ip_type from network classes (no longer needed)
- TCP:
  - `listen` bind to wildcard "*" -> dual stack socket
  - `listen` bind to address -> socket from address type
  - `connect` -> resolve using best protocol (UNSPEC), socket from address type

- UDP:
  - `listen` bind to wildcard "*" -> dual stack socket
  - `listen` bind to address -> socket from address type
  - `put_packet`/`put_var` -> resolve using TYPE_ANY (UNSPEC), socket from address type
    (to change socket type you must first call `close` it)
2017-01-23 20:18:22 +01:00
Fabio Alessandrelli
2fe4ef6699 Implement UDP listen bind address 2017-01-23 20:18:18 +01:00
Fabio Alessandrelli
b2839343ca Implement TCP Server bind address 2017-01-23 20:15:20 +01:00
Fabio Alessandrelli
4198291cd4 IP_Address can now be a wildcard (not a valid IP, used for binding) 2017-01-23 20:15:20 +01:00
Fabio Alessandrelli
98a7e2b4e0 Convert validity checks of IP_Address to is_valid method. 2017-01-23 20:15:20 +01:00
Juan Linietsky
0aa7242624 WIP new AudioServer, with buses, effects, etc. 2017-01-21 19:01:00 -03:00
Juan Linietsky
ee0f53df52 Merge pull request #7528 from tagcup/real_t_float_fixes
Use real_t rather than float or double in generic functions (core/mat…
2017-01-20 19:24:49 -03:00
BastiaanOlij
d11a4c1120 Some changes in the header so Godot3 compiles again on Windows. 2017-01-18 21:55:47 +11:00
karroffel
fb16f09b15 updated method_ptrcall.h to use 3.0 naming 2017-01-17 11:36:17 +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
d13f2f9e25 Merge pull request #7560 from volzhs/issue-7555
Fix crash when creating new project
2017-01-16 20:10:34 +01: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
volzhs
57350faee4 Fix crash when creating new project 2017-01-17 03:50:42 +09:00
Pedro J. Estébanez
7dbb1c0571 Improve .tscn VCS
Serialize dictionaries adding newlines between key-value pairs
Serialize group lists also with newlines in between
Serialize string properties escaping only " and \ (needed for a good diff experience with built-in scripts and shaders)

Bonus:
Make AnimationPlayer serialize its blend times always sorted so their order is predictable in the .tscn file.

This PR is back-compat; won't break the load of existing files.
2017-01-16 18:03:51 +01:00
BastiaanOlij
cef0ae5d5d Fix compile errors related to audio on OSX 2017-01-16 20:32:44 +11: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
e2a3f06f3d Style: Keep long lines for now
clang-format does not play well with tab-aligned multiline statements...
Some more research will be needed if we want to set a column limit.
2017-01-16 08:48:24 +01:00
Rémi Verschelde
40323407df Style: No break before list brace
clang-format does not handle that well *at all*.

For the reference, found the relevant pieces of code with:
`ag "=[ "$'\t'"]?"$'\n'"[ "$'\t'"]?{" --ignore=thirdparty`
2017-01-16 08:48:24 +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
Juan Linietsky
b400c69cd4 Oops! Audio engine has vanished :D 2017-01-15 16:07:51 -03:00
Rémi Verschelde
e0faf8a51b Style: Cosmetic fixes to play nice with clang-format 2017-01-15 16:42:17 +01:00
Rémi Verschelde
5e13a762ec Add missing map.h include in color defs 2017-01-15 12:51:47 +01:00
Geequlim
c8e9937e21 Fix error while JSON::parse with empty string 2017-01-15 16:59:02 +08:00
Juan Linietsky
5dde810aa5 no more errors related to missing GlobalConfig::Get (or so I hope) 2017-01-14 21:57:22 -03:00
Rémi Verschelde
d4eb8ec884 Merge pull request #7127 from BastiaanOlij/ios_meters
Core motion implementation for iPhone (Accelerometer/Gyro/Magnetometer support)
2017-01-15 00:08:46 +01:00
Rémi Verschelde
8d3aedeefd MethodBind: Make sure header order is kept
When clang-format sorts includes alphabetically, MethodBind breaks.
Trying to move the object.h include upward in method_bind.h does
not seem to fix the problem, this needs investigation.
2017-01-14 22:07:28 +01:00
Rémi Verschelde
52666b88b3 Merge pull request #7525 from neikeq/pr-plus_file
String: plus_file(String) no longer adds a root
2017-01-14 19:53:35 +01:00
Wilhem Barbier
54b20874b6 Fix _Directory::get_current_drive error condition 2017-01-14 18:47:06 +01:00
Ignacio Etcheverry
95396067b7 String: plus_file(String) no longer adds a root 2017-01-14 18:18:44 +01:00
Rémi Verschelde
ce99286362 Merge pull request #7524 from neikeq/pr-dir-getcurdrive
Directory: Bind get_current_drive() method
2017-01-14 17:22:06 +01:00
Ignacio Etcheverry
0b2ae7313b Directory: Bind get_current_drive() method 2017-01-14 17:20:16 +01:00
Juan Linietsky
7c4167de64 Merge pull request #7010 from AlexHolly/format-string2
advanced string format
2017-01-14 11:56:24 -03:00
Juan Linietsky
dcb95ec147 removed duplicated functions in class hierarchy that were bound more than once
added a check to detect this case in the future
2017-01-14 11:10:42 -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
78e90ac60b Unexpose the video mode API, will be completely removed when multi-window support is implemented. 2017-01-14 10:06:15 -03:00
Juan Linietsky
da4170540c Fixed dir access return value, changed it to Error like all other funcs 2017-01-14 09:17:15 -03:00
Juan Linietsky
6c512b88c2 UDP.set_send_address to UDP.set_dest_address 2017-01-14 00:54:21 -03: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
6e88b1096a Vector2.get_aspect() renamed to Vector2.aspect() to keep consistent method naming 2017-01-13 20:00:43 -03:00
Juan Linietsky
a97551902e rename Input.get_mouse_speed() to Input.get_last_mouse_speed() 2017-01-13 19:24:28 -03:00
Rémi Verschelde
d2aae675e9 Replace Engine version API by preexisting OS one
It outputs a single Dictionary with all relevant information as
keys, that will less bloat the documentation and provide all details
in one function call.
2017-01-13 18:25:49 +01:00
Juan Linietsky
e53c247cb1 Created new Engine singleton, and moved engine related OS functions to it. 2017-01-13 12:51:14 -03:00
Juan Linietsky
ad224295c0 made math functions inlnie 2017-01-12 08:55:42 -03:00
BastiaanOlij
5e4dcb3b7f Added support for getting gravity vector from iOS 2017-01-12 16:37:27 +11:00
Juan Linietsky
c84d618b4e Made InputEvent use floating point coordinates. 2017-01-12 00:12:54 -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
Juan Linietsky
f698e2be4f Proper inheritance checking when requesting theem resources 2017-01-11 18:29:59 -03:00
Juan Linietsky
b7d69c2444 Added a BACK notification besides QUIT, so they go in separate channels. 2017-01-11 16:42:31 -03:00
Juan Linietsky
7bf4b592f8 using VariantParser to parse engine.cfg 2017-01-11 16:42:31 -03: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
Juan Linietsky
710692278d Merge pull request #7426 from m4nu3lf/bugfix/physics
Fixed inertia tensor computation and center of mass
2017-01-10 22:27:32 -03:00
Juan Linietsky
6671670e81 Merge pull request #7445 from tagcup/2d_math_fixes
Various corrections in 2D math.
2017-01-10 22:25:45 -03:00
Juan Linietsky
0acd4fccd5 Merge pull request #7438 from tagcup/matrix3_rotate_fix
Fix the order in which additional transformations are applied
2017-01-10 22:22:56 -03:00
Juan Linietsky
4338c90163 It is now possible to name layers of different kinds! 2017-01-10 22:20:57 -03:00
Ferenc Arn
f271591ac2 Various corrections in 2D math.
This is the follow up for the 2D changes mentioned in PR #6865. It fixes various mistakes regarding the order of matrix indices, order of transformation operations, usage of atan2 function and ensures that the sense of rotation is compatible with a left-handed coordinate system with Y-axis pointing down (which flips the sense of rotations along the z-axis). Also replaced float with real_t, and tried to make use of Matrix32 methods rather than accessing its elements directly.

Affected code in the Godot code base is also fixed in this commit.

The user code using functions involving angles such as atan2, angle_to, get_rotation, set_rotation will need to be updated to conform with the new behavior. Furthermore, the sign of the rotation angles in existing 2D scene files need to be flipped as well.
2017-01-10 10:14:20 -06:00
Rémi Verschelde
0507f87de9 Merge pull request #7491 from BastiaanOlij/tools-no-fixes
Few small fixes so tools=no and target=release compiles
2017-01-10 15:31:03 +01:00
Rémi Verschelde
82ea31e42a Merge pull request #7490 from touilleMan/issue-7481
Remove deprecated Vector2.floorf method
2017-01-10 15:30:41 +01:00
Rémi Verschelde
9856843717 Merge pull request #7462 from karroffel/error_code
expose OS.set_exit_code and OS.get_exit_code to ClassDB
2017-01-10 15:29:39 +01:00
BastiaanOlij
bf990b0822 Few small fixes so tools=no and target=release compiles 2017-01-10 21:42:14 +11:00
Emmanuel Leblond
0fbf3b990d Remove deprecated Vector2.floorf method 2017-01-10 09:11:36 +01:00
Juan Linietsky
a503f8aadc Groundbreaking!! Godot resources can now be flagged to be local to the scene being edited!
This means that each time this scene is instanced, the resource will be unique!
As such, thanks to this, the following features were implemented:
-ButtonGroup is no longer a control, it's now a resource local to the scene
-ViewportTexture can be created from the editor and set to any object, making ViewportSprite and other kind of nodes obsolete!
2017-01-10 01:07:03 -03:00
Juan Linietsky
1f8451001d -Translation text will change automatically for in-game buttons, labels, poups when translation is changed.
-Added a NOTIFICATION_TRANSLATION_CHANGED for controls that need custom code
-Sorry, editor will not update automatically because it uses a different translatio method.
2017-01-09 16:43:44 -03:00
Juan Linietsky
e9bb65db81 -All types have editable script now in properties
-Changed clip to a property in Control which can be set by the user
2017-01-09 15:50:59 -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
m4nu3lf
2e38b32e0f Fixed inertia tensor computation and center of mass 2017-01-09 00:13:54 +00:00
Juan Linietsky
fdc3380cf6 Remove XML format, as promised, for 3.0 2017-01-08 21:12:19 -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
Rémi Verschelde
8b7a86ec7b Move tests again from core to main
As advised by @reduz, as tests depend on other libs.
2017-01-08 21:33:37 +01:00
Juan Linietsky
10938e8bb9 Made Variant::NIL printable as "Null". Please everyone be on the lookout of bugs related to assigning an empty variant to a string, and expecting it to be not empty! 2017-01-08 17:23:04 -03:00
Juan Linietsky
547a57777b renamed joystick to joypad everywhere around source code! 2017-01-08 17:06:33 -03:00
Juan Linietsky
0a59c3c3a6 Dictionary keys are now sorted by insertion order 2017-01-08 14:17:04 -03:00
Ferenc Arn
6b1252cdfa Fix the order in which additional transformations are applied in Matrix3 and Transform.
This is a part of the breaking changes proposed in PR #6865, solving the issue regarding the order of affine transformations described in #2565. This PR also fixes the affected code within Godot codebase. Includes improvements to documentation too.

Another change is, Matrix3::get_scale() will now return negative scaling when the determinant of the matrix is negative. The rationale behind this is simple: when performing a polar decomposition on a basis matrix M = R.S, we have to ensure that the determinant of R is +1, such that it is a proper rotation matrix (with no reflections) which can be represented by Euler angles or a quaternion.

Also replaced the few instances of float with real_t in Matrix3 and Transform.

Furthermore, this PR fixes an issue introduced due to the API breakage in #6865. Namely Matrix3::get_euler() now only works with proper rotation matrices. As a result, the code that wants to get the rotation portion of a transform needs to use Matrix3::get_rotation() introduced in this commit, which complements Matrix3::get_scaled(), providing both parts of the polar decomposition.

Finally, it is now possible to construct a rotation matrix from Euler angles using the new constructor Matrix3::Matrix3(const Vector3 &p_euler).
2017-01-08 10:36:14 -06:00
Rémi Verschelde
ede36aca8d i18n: Add support for Scots (sco) language
Fixes #6931.
2017-01-08 16:48:30 +01:00
Rémi Verschelde
790f629e5e Move core engine tests to core/ 2017-01-08 14:08:18 +01: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
karroffel
fbfcc981d9 exposed OS.set_exit_code and OS.get_exit_code to ClassDB 2017-01-07 18:55:48 +01:00
Juan Linietsky
53ce643e52 -Changed memory functions, Memory::alloc_static*, simplified them, made them aligned to 16
-Changed Vector<> template to fit this.
2017-01-06 10:15:44 -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
76c2e8583e Merge branch 'master' of https://github.com/godotengine/godot 2017-01-04 01:17:41 -03:00
Juan Linietsky
b085c40edf -Conversion of most properties to a simpler syntax, easier to use by script
-Modified help to display properties

GDScript can still not make use of them, though.
2017-01-04 01:16:14 -03:00
Ferenc Arn
bd7ba0b664 Use right handed coordinate system for rotation matrices and quaternions. Also fixes Euler angles (XYZ convention, which is used as default by Blender).
Furthermore, functions which expect a rotation matrix will now give an error simply, rather than trying to orthonormalize such matrices. The documentation for such functions has be updated accordingly.

This commit breaks code using 3D rotations, and is a part of the breaking changes in 2.1 -> 3.0 transition. The code affected within Godot code base is fixed in this commit.
2017-01-03 17:41:04 -06:00
Juan Linietsky
3fae505128 Begin modifying properties to make them more friendly to script and doc. 2017-01-03 00:38:16 -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
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
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
Juan Linietsky
a62c99c4e4 Some fixes and clean ups 2016-12-31 10:53:29 -03:00
Juan Linietsky
37f558cd7b Some BRDF fixes 2016-12-21 14:22:17 -03:00
Bojidar Marinov
474eafbbf6
Remove extraneous line in .po reader, which caused it to disregard first line
Fixes #7337
2016-12-20 21:10:44 +02:00
Juan Linietsky
075fde7f26 work in progress global illumination 2016-12-20 00:21:07 -03: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
d194e1c48e Expose HTTP classes' set_ip_type to scripting 2016-12-13 11:09:37 +01:00
Juan Linietsky
22a90e8f2a DOF blur, near and far fields.. 2016-12-10 01:13:20 -03:00
Fabio Alessandrelli
c1c1ec690e Separate hostname resolve cache based on ip_type 2016-12-09 18:24:59 +01: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
Fabio Alessandrelli
a77a0118f6 Allow setting ip_type for TCP/UDP and HTTP classes 2016-12-09 18:24:59 +01:00
Fabio Alessandrelli
c18c5013f8 Migrate int.IP_TYPE_ constants to IP.TYPE_ 2016-12-09 18:24:59 +01:00
Fabio Alessandrelli
95bdd97768 Use an instance variable for ip_type in raw sockets
PacketPeerUDP/StreamPeerTCP/TCP_Server now uses an instance variable
to store the selected ip_type (IPv4/IPv6/ANY, where ANY = dual stack).
All calls to resolve addresses, sending/receving data, connecting/listening
will use that socket type.
2016-12-09 18:24:59 +01:00
Juan Linietsky
a299c3ebf1 Support for SSAO 2016-12-04 12:45:30 -03:00
George Marques
a692b7a1c1 Merge pull request #7149 from Kazuo256/array-last
Add Array.front() and Array.back()
2016-11-22 08:08:59 -02:00
Fabio Alessandrelli
cdc97ca453 Properly localize absolute path.
Calling localize_path will return a localized path in res:// if the
path starts with the resource file-system/folder, and will return
the unchanged absolute path otherwise.

Closes #6979 and #7161.
2016-11-22 09:09:39 +01:00
Ariel Manzur
159650fe6f memory ops implemented as OS functions by default
(cherry picked from commit 67f65f6639)
2016-11-18 21:55:30 +01:00
Kazuo256
bf4fda64fd Add Array.front() and Array.back() 2016-11-18 18:45:51 -02:00
Rémi Verschelde
ea87f0f9d9 Blimey! Ye Pirate locale be anchor' a'port! 2016-11-15 09:01:51 +01:00
Ignacio Etcheverry
c93c2a6be8 Merge pull request #6968 from neikeq/pr-register-trnglmesh
Core: Register TriangleMesh type
2016-11-12 14:01:59 +01: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
f0f04d5082 Merge pull request #6862 from Faless/fix_6388
Fix Keyboard Input Hangs when using modifiers
2016-11-11 10:47:10 +01:00
Juan Linietsky
cacf9ebb7f all light types and shadows are working, pending a lot of clean-up 2016-11-09 23:55:06 -03:00
Rémi Verschelde
2ba1b58374 Merge pull request #7039 from RandomShaper/fix-triangulation
Clean/fix triangulation internals
2016-11-09 15:46:13 +01:00
Rémi Verschelde
45f0903839 Merge pull request #7070 from ISylvox/vsnc-to-vsync
Renames vsnc to vsync
2016-11-09 12:03:04 +01:00
ISylvox
b5c383fd61 vsnc --> vsync 2016-11-08 21:06:57 +07:00
SPTelur
df737ebb46 Some missing License notice has been added 2016-11-07 06:16:18 +06:00
George Marques
88b00cb658 Merge pull request #7048 from neikeq/pr-marshals-singleton
Add singleton instance to _Marshalls
2016-11-06 13:34:18 -02:00
Ignacio Etcheverry
6d6d9bc7f9 Core: Add singleton instance to _Marshalls 2016-11-05 17:13:04 +01:00
Pedro J. Estébanez
0e1972aa51 Clean/fix triangulation internals
Drop unused variable
Remove commented-out code
Fix leak by using Vector instead of raw memory
2016-11-05 10:16:44 +01:00
volzhs
42f2380190 Fix wrong number for ERR_* on comment 2016-11-04 00:57:34 +09:00
AlexHolly
d8129719c2 advanced string format 2016-11-01 15:14:48 +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
Fabio Alessandrelli
7eef15b734 Set proper ip_type default for listen() and resolve_hostname() 2016-10-30 17:46:05 +01:00
Fabio Alessandrelli
2f1c859272 Add optional IP type param in TCP/UDP connect/set_send_address 2016-10-30 17:46:05 +01:00
Fabio Alessandrelli
ee69bd81cf TCPServer listen now default to IP type ANY (v6 socket with v4 support) 2016-10-30 17:46:05 +01:00
Rémi Verschelde
89001369e7 Merge pull request #6751 from SuperUserNameMan/new_PRNG_for_rand_from_seed
xorshift32 PRNG for Math::rand_from_seed()
2016-10-30 10:49:22 +01:00
Ignacio Etcheverry
313b7a50b6 Core: Register TriangleMesh type 2016-10-30 01:14:15 +02:00
Ignacio Etcheverry
33766a4935 Merge pull request #6901 from volzhs/fix-inputevent-compare
Fix comparison bug with InputEvent
2016-10-29 22:29:18 +02:00
Damon
1e7f078ce9 Fix locale for macOS-style locales 2016-10-27 07:29:00 -05:00
Damon Myers
470ead74db Change set_locale to fallback to the global language (#6910) 2016-10-27 10:36:32 +02:00
Rémi Verschelde
c67e3a485d Merge pull request #6925 from godotengine/ipv6
Adding IPv6 support
2016-10-26 14:32:51 +02:00
volzhs
b76a0ca40c Fix comparison bug with InputEvent 2016-10-23 05:47:36 +09:00
Henrique L. Alves
6a4b4c7db4 Added small modification on parser for '+' 2016-10-22 14:26:48 -02:00
Ariel Manzur
a3131a6b5b added implementation of is_valid_ip_address() 2016-10-20 09:58:00 -03:00
Ariel Manzur
672225b710 added windows support for ipv6, cleaned up unix code 2016-10-20 07:04:10 -03:00
Ariel Manzur
1c2ac490cf address type for http client 2016-10-19 18:49:41 -03:00
Ariel Manzur
1d45f35a4a fixed some byte order and parsing problems 2016-10-19 18:32:36 -03:00
Fabio Alessandrelli
17d7e6a142 Fix Keyboard Input Hangs when using modifiers
Main input parsing loop only update actions for keyboard if the state has changed.
`InputMap::event_is_action` now ignores keyboard modifiers if the event is not pressed.
Clarify difference between `InputMap::action_has_event` and `InputMap::event_is_action` in docs.

Fixes #6388.
2016-10-19 17:52:49 +02:00
Juan Linietsky
4428115916 Everything returning to normal in 3D, still a long way to go
-implemented the scene part of visual server and rasterizer, objects without lighting and material are rendererd only
2016-10-19 11:14:41 -03: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
c7ea842416 Merge pull request #6733 from Cruel/patch-1
Use int consistently instead of int32_t for Vectors
2016-10-17 09:53:06 +02:00
Rémi Verschelde
fb257f7f24 Merge pull request #6698 from razvanc-r/fix_hash_float
Fixes hash float negative 0 problem
2016-10-17 09:41:39 +02:00
Fabio Alessandrelli
2f2cea070e Properly handle absolute paths in Globals::localize_path
This give a proper fix for #4280 - #3106 , allowing absolute paths
that starts from the file system, not the resource folder
2016-10-13 11:51:38 +02:00
Răzvan Cosmin Rădulescu
9ad0850301 Fixes hash float negative 0 problem
Before this was giving an error:

var a = {Vector2(1, 0): 5, Vector2(-1, 0): 7}
    print(a)
    print(a[Vector2(1, 0)])
    print(a[-Vector2(1, 0)])

This simple commit fixes the issue.
2016-10-12 21:24:07 +02:00
Juan Linietsky
1527cf8c0d 2D Shaders are working again using the new syntax, though all is buggy in general 2016-10-10 18:31:01 -03:00
yg2f
a747c8ccee xorshift32 PRNG for Math::rand_from_seed()
should fixes #1043

PRNG adapted from : http://excamera.com/sphinx/article-xorshift.html
2016-10-10 20:41:36 +02:00
Rémi Verschelde
b9e010fb7f Merge pull request #6743 from mateka/issue-6296
Issue #6296: When searching for control, checking if matrix is inversible
2016-10-09 14:53:32 +02:00
Mateusz Adamczyk
8671836b76 Added simple check to viewport, if matrix32 is invesile (https://github.com/godotengine/godot/issues/6296). 2016-10-08 12:33:10 +02:00
Thomas Edvalson
6debabe57e
Use int instead of int32_t for Vectors 2016-10-06 16:51:19 -04:00
Răzvan Cosmin Rădulescu
f2af5ab949 fixes #6331, Variant::can_convert 2016-10-04 15:58:12 +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
Rémi Verschelde
917f5e9bbc Merge pull request #6675 from J08nY/issue-vector3-angle-to
Adds Vector.angle_to(Vector other), fixes #3912

[ci skip]
2016-10-03 13:53:46 +02:00
J08nY
deb36b44d1
Vector3: added angle_to(Vector3 other) 2016-10-03 13:41:59 +02:00
J08nY
f468cfc379
Vector3: format properly, fix indents 2016-10-03 13:41:45 +02:00
Rémi Verschelde
1d2743302f Merge pull request #6686 from Faless/inputevent_none_fix
Properly encode InputEvent of type NONE. Fix #5987
2016-10-03 12:11:53 +02:00
Rémi Verschelde
b675710b46 Merge pull request #6677 from J08nY/issue-pck-packer
PCKPacker: Move to core from tools, fixes #4129
2016-10-03 12:06:19 +02:00
Rémi Verschelde
bf89f43927 Merge pull request #6650 from volzhs/resource-path
Fix error when using 2 or more slashes on resource path
2016-10-03 12:00:22 +02:00
Rémi Verschelde
1dfa52ba59 Merge pull request #6608 from Hinsbart/signal_err
Throw error when trying to emit a non-existing signal.
2016-10-03 11:55:35 +02:00
Rémi Verschelde
90f4e76a46 Merge pull request #6479 from RandomShaper/improve-debug-focus
Improve debug focus behavior
2016-10-03 11:36:01 +02:00
Rémi Verschelde
cf4693cf18 Merge pull request #6304 from razvanc-r/master
(Array) .pop_front, .pop_back & .remove return values instead of void
2016-10-03 11:34:03 +02:00
Fabio Alessandrelli
941f460384 Properly encode InputEvent of type NONE. Fix #5987
In the editor settings you can disable default editor shortcuts.
When a default shortcut is disabled an InputEvent of type NONE must
be stored in the config file to allow the editor to remember that setting.
variant_parser.cpp was not properly encoding InputEvent of type NONE causing
the "corruption" of the editor settings file.
2016-10-03 02:40:53 +02:00
J08nY
b1fba2e013
PCKPacker: moved from tools into core, fixes #4129 2016-10-01 22:07:07 +02:00
volzhs
c333659ebc Fix typo for word_wrap 2016-09-30 03:28:05 +09:00
volzhs
0866f49f4e Fix error when using 2 or more slashes on resource path 2016-09-30 03:11:45 +09:00
Andreas Haas
5e7db2a5b4
Code completion for is_action_just_{pressed, released}
fixes #6621
2016-09-26 22:16:27 +02:00
Rémi Verschelde
73a7b91459 Merge pull request #6568 from Hinsbart/joy_names
Add functions to get readable names for joystick events
2016-09-26 12:45:31 +02:00
Andreas Haas
276087e92d
Throw error when trying to emit a non-existing signal.
closes #6017
2016-09-25 19:26:01 +02:00
Andreas Haas
e0fcd9331a
Add function to get readable names for joystick events
Closes #6476
2016-09-20 23:36:09 +02:00
Ignacio Etcheverry
1c50dfdf6c Merge pull request #6557 from anneomcl/master
Fix for #6158
2016-09-20 09:28:26 +02:00
anneomcl
aa5ade834c Fix for #6158. Converting Vector2 to Size2 for scaling functions. 2016-09-19 23:31:45 -07:00
Rémi Verschelde
82f5130cad Merge pull request #6552 from Hinsbart/vec2_clamped
Expose Vector2::clamped() to scripts
2016-09-20 06:33:55 +02:00
Andreas Haas
c21412fa7e
Expose Vector2::clamped() to scripts
Needed this and wondered that there's no built-in function for it.
So I wanted to implement it and saw that it's actually already there, just wasn't bound ^^
2016-09-19 23:10:30 +02:00
Rémi Verschelde
1830b80719 Merge pull request #6504 from Hinsbart/joy_axis
Fix input action pressed state not changing for quick joystick moveme…
2016-09-17 18:37:15 +02:00
Andreas Haas
84783fe77b
Fix input action pressed state not changing for quick joystick movements.
fixes #6488
Also removes a bunch of dead code related to checking if a joystick axis is pressed.
2016-09-15 19:30:35 +02:00
Juan Linietsky
a75f5f039e Added API version and hashing to ObjectTypeDB 2016-09-14 19:37:37 -03:00
Pedro J. Estébanez
66dac878ac Improve debug focus behavior
Fix focusing debugged game on Windows
Add re-focusing editor on continue
2016-09-14 04:02:18 +02:00
Juan Linietsky
827a9aa829 Added a generic AStar implementation to Godot.
It's pretty fast, use it for games where Navigation does not cut it.
2016-09-13 18:17:18 -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
Răzvan Cosmin Rădulescu
1a7aae7443 (Array) pop_front, pop_back return values
pop_front, pop_back now return values instead of `void`. Things
I didn't know how to properly implement:

1. pop_front & pop_back shows in the help menu Object as return value.
   I know this is incorrect but if not Object than what? Cause it
   can't be void. It needs to be a generic type that includes all the
   Array types
2016-09-11 17:37:21 +02:00
Juan Linietsky
6abd1437cd Merge pull request #5879 from gau-veldt/subarray_patch
Subarray patch
2016-09-10 12:22:31 -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
7a27d5d9e7 Merge pull request #6363 from vnen/winrt
Fix the support for WinRT/UWP
2016-09-10 11:47:42 -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
Juan Linietsky
23ababdcd5 Changed Vector3.snap from fmod to stepify, which makes more sense, fixes #6399 2016-09-06 19:14:47 -03:00
Rémi Verschelde
10de1799fb Merge pull request #6408 from supaiku-o/issue-6374
Show object string cast instead of object id in debugger
2016-09-06 07:51:15 +02:00
supaiku
0108e7c33a Show object string cast instead of object id in debugger 2016-09-06 00:39:56 +02:00
Rémi Verschelde
7d600caa16 Merge pull request #6352 from hurikhan/fix_release_build_II
Fix release build. (II)
2016-09-05 07:44:31 +02:00
George Marques
2eaad1cfd1
Fix root path resolution on PCK file 2016-09-03 19:35:42 -03:00
Rémi Verschelde
eff6519aaf InputEvent: Fix event comparisons when type is NONE
Was a regression from 2e5a4cb5ca.
Fixes #6376.
2016-09-02 20:31:28 +02:00
Rémi Verschelde
8216bec7d1 Merge pull request #6365 from akien-mga/pr-locales
i18n: Update list of supported locales based off glibc
2016-09-02 08:40:24 +02:00
Juan Linietsky
89702d545b Basic type constants for visual script 2016-09-02 02:13:12 -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
Rémi Verschelde
54e97e5ee6 i18n: Update list of supported locales based off glibc
Fixes #5733, fixes #6214.
2016-09-01 23:56:59 +02: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
Mario Schlack
588e124c53 Fix release build. (II) 2016-09-01 00:19:31 +08:00
Rémi Verschelde
e51d59ed98 Merge pull request #6188 from TheHX/undo-redo
Implemented UndoRedo mergeable modes
2016-08-29 19:04:42 +02: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
6c674375e5 Merge pull request #6249 from volzhs/issue-6121
Show last added action on Input Map
2016-08-28 12:02:08 +02:00
volzhs
2e5a4cb5ca Show last added action on Input Map and implement InputEvent "==" 2016-08-28 15:18:13 +09:00
Rémi Verschelde
3cc08ab1f1 Merge pull request #6270 from neikeq/pr-m32-ctor
Matrix32: Add a constructor which takes six real_t params
2016-08-27 22:32:20 +02:00
Rémi Verschelde
c29c70275e Merge pull request #6187 from TheHX/pr-pinfo-function
Added add_property_info function to Globals and EditorSettings classes
2016-08-27 22:04:50 +02:00
Ignacio Etcheverry
3b67643978 Merge pull request #6290 from caryoscelus/master
fix string iterator
2016-08-27 15:29:06 +02:00
George Marques
d015d93b8f Merge pull request #6239 from volzhs/fix-return-spb
Fix StreamPeerBuffer::duplicate() does not return value
2016-08-26 22:25:24 -03:00
caryoscelus
810fbb70ae fix string iterator
Since strings are null-terminated, size() returns incorrect length,
so use length() instead.

fixes #6287
2016-08-26 10:42:01 +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
Ignacio Etcheverry
3578800230 Matrix32: Add constructor that takes six real_t params 2016-08-24 18:54:23 +02: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
volzhs
79628b1351 Fix StreamPeerBuffer::duplicate() does not return value 2016-08-22 22:30:22 +09: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
Juan Linietsky
2b7aa98d2d Changed API to use sequenced packets for UDP (drop old) 2016-08-19 22:54:53 -03:00
Juan Linietsky
1add52b55e Brand new networked multiplayer 2016-08-19 16:48:41 -03:00
Franklin Sobrinho
debf574df3 Implemented UndoRedo mergeable modes 2016-08-17 17:14:51 -03:00
Franklin Sobrinho
9f242ed6e5 Added add_property_info function to Globals and EditorSettings classes 2016-08-16 17:10:53 -03: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
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
Johan Manuel
8c0a050d49 Fix some warnings about unhandled switch cases 2016-08-13 13:21:35 +02:00
Juan Linietsky
df6dbadc3e Fixed bug in make_dir_recursive, closes #6016 2016-08-08 18:21:06 -03: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
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
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
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
Juan Linietsky
d8af6330e5 More progress on visual script editing 2016-08-03 11:28:43 -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
Rémi Verschelde
37ce438787 Merge pull request #5976 from allkhor/master
Fix String::is_valid_integer() for single symbols + and -
2016-07-31 20:07:20 +02:00
eska
b80c42ef4e Document FuncRef, GDFunctionState, InstancePlaceholder, RID, World2D 2016-07-30 21:27:58 +02:00
allkhor
09c4d65b64 Fix String::is_valid_integer() for single symbols + and - 2016-07-31 00:18:30 +06:00
Ignacio Etcheverry
2d4c4b6ea9 Fix regression with str() improvements for math types 2016-07-28 14:58:12 +02:00
Rémi Verschelde
c6c9f29827 Merge pull request #5921 from neikeq/pr-issue-5919
Prettier str() for some math types
2016-07-27 17:23:17 +02:00
Ignacio Etcheverry
eefca1ada9 Prettier str() for some math types 2016-07-27 17:00:07 +02:00
Bojidar Marinov
2150855faf
Fix reading of empty StringArray-s in .tscn
Closes #5912
2016-07-27 17:59:42 +03: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
c9d0053754 Merge pull request #5524 from pkowal1982/master
Array has(var value) function
2016-07-24 12:21:29 -03:00
Rémi Verschelde
308d405c31 Turn some prints to error logs, remove others
Fixes #5876 in passing.
2016-07-24 00:02:19 +02:00
Gau o fthe Veldt
82d4cb5114 Added slicing operation to DVector via DVector.subarray(int start,int end) method.
Negative indices index from the end of the array.
Indices are range checked before attempting and return appropriate error when out of range.
Binding for RawArray in gdscript to access DVector.subarray() provided.
Documentation of RawArray.subarray() in classes.xml provided.
2016-07-23 12:52:41 -07:00