Commit graph

13263 commits

Author SHA1 Message Date
ZZYZX
6af5c1fa2b Produce a warning if clearscope is used on non-inner structs. Also now checking for outer class presence correctly. 2017-03-05 09:49:31 +01:00
ZZYZX
86a494aacd Can use clearscope on struct to signify that it should be plain data even if defined inside a play/ui class 2017-03-05 09:49:31 +01:00
ZZYZX
6c90d05407 By default, inner struct in class should take the scope of it's outer class 2017-03-05 09:49:31 +01:00
ZZYZX
0a7aebae93 Fixed const method qualifier. Also, fixed: const is not clearscope, treat differently. 2017-03-05 09:49:31 +01:00
Rachael Alexanderson
2c27b74e34 Merge https://github.com/coelckers/gzdoom 2017-03-05 02:55:38 -05:00
Christoph Oelckers
f07bd5ec65 - fixed some mess by two nearly similarly named flags. 2017-03-05 00:36:32 +01:00
Christoph Oelckers
600f57405f - fixed typo in TexMan.GetSize. 2017-03-05 00:28:15 +01:00
Rachael Alexanderson
be8abba344 - started adding ARM support. incomplete. won't compile. don't try. 2017-03-04 16:50:42 -05:00
Rachael Alexanderson
09530e9496 - added unloved2 to compatibility list for clipmidtex 2017-03-04 08:03:42 -05:00
Rachael Alexanderson
b8b5360de1 Merge https://github.com/coelckers/gzdoom 2017-03-04 07:28:02 -05:00
Christoph Oelckers
cfafbfe4f2 - removed FStringNoInit.
This was development garbage.
2017-03-04 12:55:20 +01:00
Christoph Oelckers
7dbc6939c4 - declared most native getters in Actor as const.
- made the self pointer of const functions readonly.

This seems to work fine. Both calling a non-const function and trying to assign a value to a member fail with an error message.
2017-03-04 12:43:07 +01:00
Christoph Oelckers
4c5794b6d5 - made GetObituary non-constant.
This gets only called from within the play code and making it const would block potential use cases that involve changing some internal variables like counters.
2017-03-04 12:11:56 +01:00
Christoph Oelckers
b3ba5bfe2c - allow 'const' on class functions. This is preferable to 'clearscope' so that the UI code can call getter functions without having to declare things as 'clearscope'.
Clearscope is a dangerous context and should be limited to the minimum extent possible and preferably be blocked in user code.
This may still need some work on const functions but better have it in now.
2017-03-04 12:07:45 +01:00
Christoph Oelckers
5551f3a8c5 - declared the sectorplanes in Sector as read only and marked all relevant functions in the planes themselves const.
This is to block modification of the planes directly. For future-proofness with renderer changes everything that alters these values should go through he function interface.
2017-03-04 11:48:36 +01:00
Christoph Oelckers
3879e67cee - the #if was in the wrong place. 2017-03-04 11:34:53 +01:00
alexey.lysiuk
a5edd48996 Fixed remaining warning reported by Clang
src/scripting/zscript/zcc_compile.cpp:2456:54: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2017-03-04 12:23:15 +02:00
alexey.lysiuk
d8cee4d3a5 Fixed most of warnings reported by Clang
src/scripting/zscript/zcc_compile.cpp: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
src/p_acs.cpp: warning: format specifies type 'char *' but the argument has type 'PClass *' [-Wformat]
2017-03-04 12:17:53 +02:00
alexey.lysiuk
8a1e0ee4b5 Fixed compilation with GCC/Clang
src/menu/menu.cpp:806:20: error: cannot pass non-trivial object of type 'FString' to variadic function; expected type from format string was 'char *' [-Wnon-pod-varargs]
2017-03-04 12:03:31 +02:00
Christoph Oelckers
a7fdf4b90d - fixed: M_Init needs to catch VM exceptions from MENUDEF init to print out meaningful error messages in case something goes wrong. 2017-03-04 10:58:34 +01:00
Christoph Oelckers
fd4727e701 - did a bit of cleanup.
- disabled the runtime check in OP_CALL because as implemented it doesn't clean up properly and is not fully implemented.
2017-03-04 10:28:51 +01:00
Magnus Norddahl
8515f9720a 1D shadow maps are now working 2017-03-04 09:14:01 +01:00
ZZYZX
3338fb7f33 Added SendNetworkEvent static method to EventHandler; Fixed qualified static method call from own class (previously was 'shadowed' by qualified virtual method call) 2017-03-04 00:57:41 +02:00
ZZYZX
c9a994a885 Fixed: clearscope should also clear the inherited scope (through struct member access chain); Fixed: struct member access chain should ONLY work for structs (forgot that FxClassMember inherits FxStructMember) 2017-03-04 00:04:19 +02:00
ZZYZX
723f9770a4 Merge remote-tracking branch 'gz/master' into gz_master2 2017-03-03 23:33:02 +02:00
Rachael Alexanderson
21a8964bea Merge remote-tracking branch 'gzdoom/master'
# Conflicts:
#	src/v_video.cpp
2017-03-03 16:29:33 -05:00
ZZYZX
1433b78301 Assigned all map data to play 2017-03-03 23:26:06 +02:00
ZZYZX
a924564bf3 Implemented hard separation between playsim ConsoleEvent and networked ConsoleEvent (ConsoleProcess, NetworkProcess) 2017-03-03 23:21:12 +02:00
Rachael Alexanderson
4b63092c7a - disable size checking in windowed mode for vid_setmode, allowing it to set arbitrary sizes. 2017-03-03 22:19:58 +01:00
ZZYZX
43d3e3e5c3 Assigned barrier sides to Event structures, added clearscope to ConsoleProcess because it handles both sides 2017-03-03 23:17:21 +02:00
ZZYZX
f4a546aee6 Moved menus to ui side, moved AlterWeaponSprite to ui side, moved StaticEventHandler to play side (except ui virtuals) 2017-03-03 23:15:18 +02:00
ZZYZX
421f78c771 Fixed potential crash with new() in anonymous functions (is that even allowed?); Added compile-time check for disallowed new() 2017-03-03 22:52:35 +02:00
ZZYZX
3a57a9809f Removed nonew class modifier 2017-03-03 22:42:12 +02:00
ZZYZX
78533cc316 Fixed: the name of accessed field is now properly retrieved in FxStructMember::RequestAddress 2017-03-03 22:38:33 +02:00
Christoph Oelckers
fd20e1d78f - allow hooking custom serializers into PPointer so that serializable types can be handled without having to create new type classes which would be a bit unwieldy thanks to how the type system works. 2017-03-03 20:11:13 +01:00
Christoph Oelckers
c630b07011 - replaced SDWORD with int32_t globally.
This type wasn't used in the software rendering code so it could be removed already. The other homegrown types will have to be dealt with later.
2017-03-03 19:35:08 +01:00
Christoph Oelckers
f563a296c2 - added an ACS ScriptCall function. So far only superficially tested. 2017-03-03 19:23:27 +01:00
Christoph Oelckers
217bcb847d - fixed: When the savegame code errors out, some cleanup is required in G_DoSaveGame. 2017-03-03 19:19:19 +01:00
Christoph Oelckers
7736e42740 - fixed: The respawn event handler was not called for a regular in-game respawn, only for a cheat resurrection. 2017-03-03 18:53:11 +01:00
Magnus Norddahl
6055f136d8 Make sure SwapInterval is only ever called while the default frame buffer is bound to avoid problems with some drivers 2017-03-03 16:55:18 +01:00
Rachael Alexanderson
b3a69e1df8 Merge https://github.com/coelckers/gzdoom 2017-03-02 18:13:33 -05:00
Magnus Norddahl
0d1deddae5 Bind shadow map texture for main.fp and sample from the shadowmap texture 2017-03-02 19:10:57 +01:00
Christoph Oelckers
1761da6079 - fixed: AActor::Howl checked HowlSound for the wrong type. 2017-03-02 18:40:01 +01:00
Christoph Oelckers
8253b91d97 - fixed: The stair and donut builders did not initialize FFloor::m_Instant. 2017-03-02 18:18:34 +01:00
Magnus Norddahl
538d516c9a Upload shadow map index for each light to main.fp
Move storage buffer binding location
2017-03-02 18:07:47 +01:00
Magnus Norddahl
d450deee76 Generate shadow map for lights 2017-03-02 16:19:07 +01:00
Magnus Norddahl
62c285f7b3 Create a shadowmap texture and upload light list 2017-03-02 16:19:06 +01:00
Magnus Norddahl
7a4b01471d Add class updating and managing the shadow map texture 2017-03-02 16:19:06 +01:00
Magnus Norddahl
6363c6cf58 Add a shadowmap shader 2017-03-02 16:19:06 +01:00
Magnus Norddahl
58c7c3c902 Upload BSP tree to the GPU 2017-03-02 16:19:06 +01:00