Christoph Oelckers
12915b5f6e
- use an inventory flag to decide what items are slipped by DF_NO_HEALTH and DF_NO_ARMOR. With all the changes over the last 10 years this had become too spotty.
...
- use an enum type for ItemFlags, just like it was done for actor flags. Since the flag word is almost full it may soon be necessary to add a second one and then this kind of security check may become necessary.
2017-02-28 21:45:47 +01:00
Christoph Oelckers
314a642527
Merge branch 'meta'
2017-02-28 14:47:00 +01:00
nashmuhandes
bb1709228c
Changed FOV from a CCMD to a CVar, allowing players' FOV settings to persist. Also exported SetFOV to PlayerInfo for ZScript.
2017-02-28 14:46:30 +01:00
Christoph Oelckers
bc0ffc4185
- removed access to the PlayerPawn's DisplayName variable. This one has implicit semantics, so wherever a displayable name is needed GetPrintableDisplayName should be called instead to allow later refactoring of the internal handling.
2017-02-28 14:33:46 +01:00
Christoph Oelckers
fc125f7eaf
- reworked the obituary system to use scripted virtual overrides. Let's hope this solves the problems with the original code, now that any actor needing special treatment can override it.
2017-02-28 14:30:14 +01:00
Christoph Oelckers
851984efe0
- made GetDeathHeight a virtual scripted function.
...
- made GetGibHealth a virtual scripted function.
- removed a few more native meta properties.
2017-02-28 13:40:46 +01:00
Christoph Oelckers
d5250d6b9f
- made WoundHealth modifiable to allow more control over the wound state.
2017-02-28 12:56:35 +01:00
Christoph Oelckers
2a4a5e7a70
- refactored a few more native meta properties.
2017-02-28 12:47:44 +01:00
Christoph Oelckers
1311f08f47
- scriptified Actor.GetBloodType as a virtual function to allow mods more flexibility here.
...
- made CameraHeight a modifiable actor property - it was readonly before.
- allow accessing the type constants from ZScript, this required quite a bit of explicit coding because the type system has no capabilities to search for basic types by name.
2017-02-28 12:11:25 +01:00
Christoph Oelckers
b6a1fe7fc6
- scriptified the basic attack functions, its properties and the explosion properties to test the new metadata system.
2017-02-28 10:51:32 +01:00
Rachael Alexanderson
5aec906031
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/version.h
2017-02-28 04:46:23 -05:00
Christoph Oelckers
a93a7e1cac
- handle player meta properties.
...
Only two really make sense, the rest is never used from scripts and may just remain where it was.
2017-02-28 01:23:12 +01:00
Christoph Oelckers
78a66e001a
- properly handle all meta properties for inventory items.
2017-02-28 00:45:16 +01:00
Christoph Oelckers
ac4074a69a
- allow sprites and particles simultaneously for puffs.
2017-02-27 19:51:37 +01:00
Rachael Alexanderson
2a847ca570
Merge https://github.com/coelckers/gzdoom
2017-02-27 01:06:00 -05:00
Christoph Oelckers
51b5b327ef
- fixed constant names.
2017-02-26 21:38:08 +01:00
Christoph Oelckers
f6dd99d3aa
- added A_Morph function.
2017-02-26 21:20:47 +01:00
Christoph Oelckers
24a505ed36
- fixed: The internal and scripted morph flags did not match.
2017-02-26 21:10:53 +01:00
Christoph Oelckers
346ada76bc
- allow blocking controller input in the menu.
2017-02-26 20:59:24 +01:00
Rachael Alexanderson
7a5df2bc28
Merge commit 'b0eb19b'
2017-02-26 13:41:02 -05:00
Christoph Oelckers
fb3d4bd42a
- added A_SetMugshotState.
2017-02-26 18:46:06 +01:00
Christoph Oelckers
5fe04dfd20
- added A_SprayDecal function.
2017-02-26 18:37:12 +01:00
Christoph Oelckers
c4b546404a
- added a 'nocheck' parameter to A_Raise* and Thing_Raise.
2017-02-26 17:50:48 +01:00
Christoph Oelckers
e6b31dde27
- added some flexibility to some Skulltag powerups.
...
- handle these powerups by actual item checks instead of cheat flags. (The same should also be done for the Frightener and Buddha but those are a bit more complex because they are also real cheats.)
2017-02-26 16:23:22 +01:00
Christoph Oelckers
c7668952d9
- set sensible defaults for PowerReflection.
2017-02-26 15:50:03 +01:00
Christoph Oelckers
8b2a5c75a1
- added an old submission for PowerReflection, although it had to be seriously reworked and improved.
2017-02-26 15:47:37 +01:00
Christoph Oelckers
a6761463af
- added a new showtriggerlines mode that doesn't exclude doors.
...
- use lambdas for the AM checker functions.
2017-02-26 15:01:55 +01:00
Christoph Oelckers
6210a67f85
- fixed messagebox correctly.
2017-02-26 12:50:11 +01:00
Rachael Alexanderson
404b326812
Merge https://github.com/coelckers/gzdoom
2017-02-25 18:32:06 -05:00
Christoph Oelckers
35552ce0cb
- added a Death.Sky state for missiles that gets used when they hit a sky plane.
...
- fixed: The Alt HUD did not draw the crosshair in HUD off mode.
2017-02-25 20:45:28 +01:00
Christoph Oelckers
5ea8ad54a4
- added tags to all ammo types.
2017-02-25 19:56:22 +01:00
Christoph Oelckers
b2a1e03d7e
- fprgot to commit the script-side definition of STAT_STATIC.
2017-02-25 17:14:03 +01:00
Rachael Alexanderson
5c5b6a55d5
Merge https://github.com/coelckers/gzdoom
2017-02-24 13:24:44 -05:00
alexey.lysiuk
202c192e11
Added default value for amount argument of A_DropInventory()
...
https://mantis.zdoom.org/view.php?id=330
2017-02-24 10:15:46 +02:00
Rachael Alexanderson
e35be9c0a3
Merge https://github.com/coelckers/gzdoom
2017-02-23 22:07:40 -05:00
Christoph Oelckers
58be506a73
- made intermission screen more scripting friendly.
2017-02-24 00:28:33 +01:00
Christoph Oelckers
a1328b4c6e
- do not adjust the sprite offset for the WolfSS's attack and pain states.
...
This will cause problems with sprite clipping off.
2017-02-23 22:09:50 +01:00
Rachael Alexanderson
80d3fd58ff
Merge https://github.com/coelckers/gzdoom
2017-02-23 15:00:09 -05:00
Christoph Oelckers
73cceea994
- also added the 'amount' parameter to DropInventroy and A_DropInventory script functions.
2017-02-23 20:55:12 +01:00
Christoph Oelckers
e2d5a708f8
- added an amount parameter to the 'drop' CCMD.
2017-02-23 20:18:02 +01:00
Christoph Oelckers
fc101049c6
- exported gamestate variable and forced it to 32 bit internally.
...
- forced gameaction_t to 32 bit to avoid problems with undefined size issues.
2017-02-23 19:29:43 +01:00
Rachael Alexanderson
d94150f316
Revert "- Added menu option for clipmidtex compatflag"
...
This reverts commit 4a66621d9f
.
2017-02-23 05:57:34 -05:00
Rachael Alexanderson
4a66621d9f
- Added menu option for clipmidtex compatflag
2017-02-23 04:57:49 -05:00
Rachael Alexanderson
1a9b1de9a1
- Added "clipmidtex" compatflag and applied it to unloved.pk3
2017-02-23 03:39:04 -05:00
Rachael Alexanderson
271c75ab9b
Merge https://github.com/coelckers/gzdoom
2017-02-22 22:39:34 -05:00
Christoph Oelckers
47ff6ec33f
- converted the intermission stat screen into a class so that its contents can be better exposed to ZScript.
2017-02-22 23:52:25 +01:00
Rachael Alexanderson
7825c7b244
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/version.h
2017-02-19 17:42:00 -05:00
Rachael Alexanderson
84ca9fd63c
Merge remote-tracking branch 'origin/versionstr-change' into versionstr-change
2017-02-19 17:40:44 -05:00
Christoph Oelckers
26144340b8
- fixed: Hexen's poison cloud needs to call P_DamageMobj, even with a damage value of 0. Added a new flag to handle this case because normally this is not desirable.
2017-02-19 23:20:09 +01:00
Christoph Oelckers
165a980065
- fixed: The base MouseEvent method must return true, not false.
...
- fixed: It is a bad idea to start a save within an MKEY_Input event. At this time the window chain is not stable because the text input screen is in the middle of being taken down, so the save should be deferred until the next Ticker call of the SaveMenu.
2017-02-19 22:08:22 +01:00
Rachael Alexanderson
11d6f46e2d
Merge https://github.com/coelckers/gzdoom
2017-02-19 13:05:32 -05:00
Christoph Oelckers
65f2433ac7
- fixed: The text enter screen must be activated if it should be displayed.
2017-02-19 18:27:29 +01:00
Christoph Oelckers
fa0be4d4a9
- fixed keycodes for confirmation menu.
2017-02-19 17:30:02 +01:00
Christoph Oelckers
f3b6343e53
- use floats for menu item coordinates. This only has an effect in the ListMenu because the OptionMenu uses fixed offsets which work differently.
2017-02-19 17:24:30 +01:00
Christoph Oelckers
fb52b034b0
- added a GenericMenu class, so that all menus can be given a virtual Init method.
...
Doing this to Menu itself would not work because the different menus require different parameters.
This also means that all menus that are routed through menu items must inherit from either ListMenu, OptionMenu or GenericMenu.
All other types can only be used internally.
This should complete the menu scriptification.
2017-02-19 15:35:28 +01:00
Christoph Oelckers
9089beb110
- scriptified most of the remaining parts of DMenu. Only the engine interface remains native now.
2017-02-19 15:23:33 +01:00
Christoph Oelckers
e05242e44d
- scriptified the remaining parts of the conversationmenu.
...
- do not resolve the backdrop texture to a texture ID at load time. This will allow custom menu classes to use this info differently.
- added a new ZSDF userstring property to dialog pages to give mods more means for customization.
- allow overriding the conversation menu class both globally through MAPINFO and per conversation in ZSDF.
2017-02-19 14:21:49 +01:00
Christoph Oelckers
d85b9cdd71
- scriptified the input methods of DConversationMenu.
...
- fixed handling of DimAllowed.
2017-02-19 13:07:49 +01:00
Christoph Oelckers
3c8a5fdbe7
- scriptified the drawer functions of the conversation menu.
2017-02-19 12:28:05 +01:00
Rachael Alexanderson
75b81381f6
Merge https://github.com/coelckers/gzdoom
2017-02-19 05:26:51 -05:00
Christoph Oelckers
8db1646056
- fixed: Strife dialogues remembered the last menu's selection index, but with the possibility of changing sets of replies between calls of the same dialogue it should be the reply's index in the list of replies that gets remembered.
2017-02-19 10:34:47 +01:00
Magnus Norddahl
42a7dbe33a
Merge remote-tracking branch 'gzdoom/master' into qzdoom
...
# Conflicts:
# src/v_video.cpp
2017-02-19 03:49:13 +01:00
Christoph Oelckers
2440951811
-scriptified the ReadThis screen.
2017-02-19 00:08:30 +01:00
Christoph Oelckers
e46571c192
- DMessageBoxMenu is fully scriptified.
2017-02-18 23:39:02 +01:00
Christoph Oelckers
62b594a499
- DMessageBoxMenu::Drawer scriptified.
2017-02-18 23:18:55 +01:00
Christoph Oelckers
aabcc1f92e
- scriptified the input functions of DMessageBoxMenu.
2017-02-18 23:05:01 +01:00
Christoph Oelckers
de1e7661eb
- removed all native remnants of TextEnterMenu.
2017-02-18 21:25:19 +01:00
Christoph Oelckers
f5a0f6b3bf
- almost done with TextEnterMenu.
2017-02-18 21:18:23 +01:00
Christoph Oelckers
0c41a9dee7
- scriptified DTextEnterMenu::Drawer.
2017-02-18 20:12:06 +01:00
Christoph Oelckers
1b4c9e13b8
- cleaned out some cruft from the menu code, now that ListMenu is fully scripted.
2017-02-18 19:11:53 +01:00
Christoph Oelckers
b7a5437af6
- scriptified parts of ListMenu.
2017-02-18 18:35:44 +01:00
Christoph Oelckers
6a65f02257
- completed scriptification of LoadSaveMenu.
2017-02-18 18:01:24 +01:00
Christoph Oelckers
e46d378fb2
- sciptified DLoadSaveMenu::Drawer.
2017-02-18 17:51:40 +01:00
Christoph Oelckers
4a6d0f1fa5
- scriptified DLoadSaveMenu::MenuEvent.
2017-02-18 17:35:01 +01:00
Christoph Oelckers
ee6a90deec
- scriptified DLoadSaveMenu::Responder.
...
- scriptified DSaveMenu.
2017-02-18 16:40:32 +01:00
Christoph Oelckers
872969eb14
- scriptified the LoadMenu class and exported the entire interface to handle the LoadSaveMenu.
2017-02-18 14:08:16 +01:00
Christoph Oelckers
128dfdeee6
- made some of the load/save menu's data a bit more scripting friendly, this mostly means removal of static string buffers.
2017-02-18 12:36:31 +01:00
ZZYZX
fb9b8c8870
Re-enabled clearscope for methods; made isBlinking() clearscope
2017-02-18 07:51:41 +02:00
ZZYZX
dbc595f886
Marked DrawPowerup as ui, still compiles and somewhat works :D
2017-02-18 07:30:20 +02:00
Rachael Alexanderson
65122ed19e
Merge https://github.com/coelckers/gzdoom
2017-02-18 00:18:45 -05:00
ZZYZX
afc9050a43
Marked Thinker play. Marked OnDestroy and Destroy virtualscope. It compiles :D
2017-02-18 06:56:00 +02:00
ZZYZX
b5ab011bb9
Static virtualscope checking. This is possible, because virtualscope can't produce false positives (data readable for everyone), only false negatives (which are handled at runtime later)
2017-02-18 04:07:12 +02:00
Christoph Oelckers
5f1241a55c
- scriptified the rest of the player menu. This compiles and runs but doesn't work yet, it will be fixed in the next commit.
2017-02-18 01:20:07 +01:00
Christoph Oelckers
49a07180c0
- scriptified ClassChanged.
2017-02-17 23:56:22 +01:00
Christoph Oelckers
50d2846e40
- scriptified UpdateColorsets.
2017-02-17 23:16:07 +01:00
Christoph Oelckers
97eed1e6df
- scriptified UpdateSkins.
2017-02-17 22:12:56 +01:00
Christoph Oelckers
498da825a5
- made the Skins array scripting friendly and exported it.
2017-02-17 21:51:23 +01:00
Christoph Oelckers
6a2525b737
- scriptified PickPlayerClass.
2017-02-17 20:58:11 +01:00
Christoph Oelckers
b375657509
- scriptified DPlayerMenu::SkinChanged.
2017-02-17 20:49:04 +01:00
Christoph Oelckers
51493cde8c
- scriptified DPlayerMenu::MenuEvent.
2017-02-17 20:02:26 +01:00
ZZYZX
338e676e73
Allow calling const methods on readonly structs
2017-02-17 19:25:29 +02:00
Christoph Oelckers
f4e9cd0009
- scriptified DPlayerMenu::MouseEvent.
2017-02-17 18:21:59 +01:00
Christoph Oelckers
416911587e
- scriptified PlayerMenu.Drawer
2017-02-17 16:53:36 +01:00
Christoph Oelckers
74c4748593
- fixed the message switch for the controls menu.
2017-02-17 12:10:10 +01:00
Rachael Alexanderson
80f762f8a4
Merge https://github.com/coelckers/gzdoom
2017-02-16 20:40:07 -05:00
Christoph Oelckers
ccb083ed25
- fixed initialization of joystick menu with bogus MENUDEFS
2017-02-16 18:55:36 +01:00
Rachael Alexanderson
ef22d10756
Merge https://github.com/coelckers/gzdoom
2017-02-15 20:08:21 -05:00
Christoph Oelckers
4df2a221a8
- fixed: The special called by the InterpolationSpecial actor must have no activator.
...
This required splitting A_CallSpecial into a direct wrapper around P_ExecuteSpecial and implementing itself as a script function calling ExecuteSpecial so that this special case can use a version of the function that can be used without an activator.
2017-02-15 22:49:13 +01:00
Christoph Oelckers
b3d7980b90
- fixed: PowerProtection clamped its damage minimum to 1, but should do it to 0.
2017-02-15 21:20:11 +01:00
Rachael Alexanderson
5dad292c56
Merge remote-tracking branch 'remotes/gzdoom/master'
2017-02-15 05:43:15 -05:00
Rachael Alexanderson
2b8db72cef
Merge commit '2234d36c7ac531fd802803216f747f82b58be8c2'
...
# Conflicts:
# src/r_main.cpp
# src/r_plane.cpp
# src/r_things.cpp
2017-02-15 05:42:57 -05:00
Rachael Alexanderson
959ac8c65b
Merge commit '9caf5c641b374848c065059b5152339806fa7734'
2017-02-15 05:28:38 -05:00
Christoph Oelckers
6fef653aa1
- exported GetUDMF methods to scripting.
2017-02-15 01:03:47 +01:00
Christoph Oelckers
8d7a64bd17
- added a virtual 'used' method that gets called when the player presses use on an actor. This method will only be called if the actor does not have the USESPECIAL flag - that one will be handled as before.
2017-02-15 00:43:30 +01:00
Christoph Oelckers
c5204f34ca
- fixed: The code to play the mage lightning's attack sound was converted wrong, because it used the same structure as looping sounds normally so, but doesn't actually loop.
2017-02-14 22:51:53 +01:00
Christoph Oelckers
3170591e32
- restated some weird number manipulation in SBARINFO for powerup time. This appears to be needed to distinguish between non-expiring items and non-present items.
2017-02-14 22:04:52 +01:00
Christoph Oelckers
6e2b0bc961
- renamed the internal InpuEvent to deconflict from the version in the event system.
2017-02-14 19:32:44 +01:00
Christoph Oelckers
2234d36c7a
Merge branch 'thereisnospoon' of https://github.com/jewalky/gzdoom
...
# Conflicts:
# src/dobject.h
2017-02-14 19:10:02 +01:00
Christoph Oelckers
9caf5c641b
- don't let menu number widgets not lock up the menu if their associated CVAR does not exist.
2017-02-14 19:06:45 +01:00
Christoph Oelckers
7b1645d239
- fixed the item check in OptionMenuItemCommand.
...
This was calling the wrong GetItem function.
2017-02-14 16:50:10 +01:00
Rachael Alexanderson
2a71ec89de
Merge https://github.com/coelckers/gzdoom
2017-02-13 17:02:56 -05:00
Christoph Oelckers
ad178e16c5
- working again.
2017-02-13 20:03:29 +01:00
Christoph Oelckers
7b2ec1f737
- removed obsolete include for zscript.
2017-02-13 20:01:56 +01:00
Christoph Oelckers
6525e04118
- added restrictions to CVAR and CCMD access functions for the menus. CVAR changes are only allowed when the menu is open or for mod-CVARs. The CCMD execution function is now private to the control requiring it and heavily guarded against improper access from the outside so that abuse is mostly impossible.
...
This also means that the remaining scriptification of the menu is on hold. The player menu would require even more access to critical game data, which is a no-go, and the other remaining menus offer little benefit from getting scriptified.
2017-02-13 19:18:45 +01:00
Christoph Oelckers
c403fc5635
- renamed a file.
2017-02-13 18:30:03 +01:00
Christoph Oelckers
7877bcbdcb
- exported more parts of the joystick menus and also exported all strings for them to the string table.
...
- exported the skeleton definition for list menus.
2017-02-13 17:45:03 +01:00
Rachael Alexanderson
8c176575c8
Merge https://github.com/coelckers/gzdoom
2017-02-12 21:39:20 -05:00
Christoph Oelckers
46c0d27fe7
- scriptified the entire OptionMenu class and all still existing native subclasses.
2017-02-13 00:08:20 +01:00
Christoph Oelckers
12db190f41
- scriptified the CVar printers for the gameplay and compatibility menus.
2017-02-12 23:17:05 +01:00
Christoph Oelckers
2b977f70e6
- scriptified the video mode menu (only the part that extends the actual menu class, the entire thing is basically non-modifiable but this code would otherwise stand in the way of properly handling the rest of the menus.)
2017-02-12 23:05:39 +01:00
Christoph Oelckers
9ece757cb3
- OptionMenu.Init must be declared 'virtual'
2017-02-12 21:56:01 +01:00
Christoph Oelckers
b6ad14a614
- made adjustments to text input menu to work with scripts.
2017-02-12 21:45:37 +01:00
Christoph Oelckers
f0e925c5a7
- scripted color picker fully working.
2017-02-12 20:20:47 +01:00
Christoph Oelckers
dbf3530696
- the keybinding control works again, this time fully scripted.
2017-02-12 18:38:23 +01:00
Christoph Oelckers
2e9c1ec3f3
- fixed translation setup for player backdrop.
...
- fixed return value of GetAction method of menu controls.
2017-02-12 16:48:29 +01:00
Christoph Oelckers
03283de4e8
- fixed issues with option menu items.
...
- fixed the octal parser in strbin.
- remove 'new' token because it gets in the way.
2017-02-12 16:02:55 +01:00
Christoph Oelckers
4562695854
- fixed stringtable access in menus.
2017-02-12 14:28:38 +01:00
Christoph Oelckers
bb6def820f
- everything compiles and mostly works again.
2017-02-12 14:04:48 +01:00
Christoph Oelckers
ee1217c8c7
- everything compiles again, now to make it work again with all menu widgets 100% scripted.
2017-02-12 01:18:49 +01:00
Christoph Oelckers
2a5b26c27c
- removed native option menu controls. Note that this commit will not compile!
2017-02-11 21:28:48 +01:00
Christoph Oelckers
947b625c50
- all menu items scriptified, but not yet active.
2017-02-11 16:11:48 +01:00
Rachael Alexanderson
a52f79055d
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/menu/playerdisplay.cpp
2017-02-11 05:05:24 -05:00
Christoph Oelckers
f91d91d6e8
- all optionmenu items scriptified, but not integrated yet.
2017-02-11 00:36:53 +01:00
Christoph Oelckers
8c780ab7ff
- exported the drawer function of the colorpicker menu.
2017-02-10 13:21:35 +01:00
Christoph Oelckers
be9b2b38fc
- ColorpickerMenu.MouseEvent exported.
2017-02-10 11:44:46 +01:00
Rachael Alexanderson
ad1092c670
Merge https://github.com/coelckers/gzdoom
2017-02-10 00:16:25 -05:00
Christoph Oelckers
07ba75762b
- the first menu function has been scriptified.
2017-02-10 00:25:50 +01:00
Christoph Oelckers
7efa9cd70d
- made the menu descriptors garbage collectable and started exporting some fields as preparation for script work on the menu.
2017-02-09 20:18:53 +01:00
Rachael Alexanderson
6ed46921c8
Merge https://github.com/coelckers/gzdoom
2017-02-09 11:21:01 -05:00
Christoph Oelckers
4e1300ecbe
- added a script export for ACS's ReplaceTextures function.
2017-02-09 12:02:07 +01:00
Rachael Alexanderson
5948c7b0da
Merge https://github.com/coelckers/gzdoom
2017-02-08 18:42:24 -05:00
Christoph Oelckers
8277299135
- Turned DropItem into a plain struct again like it was before the scripting branch got merged.
...
Making this an object had little to no advantage, except being able to remove the deleter code. Now, with some of the class data already being allocated in a memory arena so that freeing it is easier, this can also be used for the drop item lists which makes it unnecessary to subject them to the GC. This also merges the memory arenas for VM functions and flat pointers because both get deleted at the same time so they can share the same one.
2017-02-08 20:37:22 +01:00
Major Cooke
dd102caf13
- Fixed: SetCamera didn't have the 'action' identifier, nor did it use the actual 'cam' actor provided, rendering it nonfunctional.
2017-02-08 18:17:09 +01:00
Christoph Oelckers
eebe09fb59
- moved the scalar class properties of PClassInventory into AInventory.
...
What's left is the non-scalars, they will need different treatment to get them out of the way.
2017-02-08 16:57:48 +01:00
Christoph Oelckers
2ca0e34785
- turned many of PClassPlayerPawn's strings into names and moved all scalar properties into APlayerPawn.
...
The goal is to get rid of PClassPlayerPawn and PClassInventory so that the old assumption that all actor class descriptors have the same size can be restored
This is important to remove some code that seriously blocks optimization of the type table because that can only be done if types do not need to be replaced.
2017-02-08 16:42:13 +01:00
Christoph Oelckers
a6785afddb
- optimized the FName versions of IsDescendantOf and IsKindOf. These can be done without first looking up the class type itself.
2017-02-08 15:47:22 +01:00
Rachael Alexanderson
c76c65d3f7
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/r_draw.cpp
2017-02-07 17:09:13 -05:00
Christoph Oelckers
7ed554158c
- got rid of PClassWeapon.
...
Still 5 subclasses of PClass left...
2017-02-07 19:02:27 +01:00
Rachael Alexanderson
d760b5070a
Merge https://github.com/coelckers/gzdoom
2017-02-07 02:23:48 -05:00
Christoph Oelckers
dae6230f76
- fixed: Since the FastProjectile does not perform a velocity underflow check it must use an approximate comparison when deciding whether to call the Effect method.
2017-02-07 00:39:46 +01:00
ZZYZX
77546ad5c2
Added non-playsim console-called event
2017-02-06 15:52:20 +02:00
ZZYZX
b7e64a2bc5
Merge remote-tracking branch 'gz/master' into thereisnospoon
2017-02-06 14:14:23 +02:00
ZZYZX
124d025131
More string methods
2017-02-06 12:35:21 +01:00
Rachael Alexanderson
942f90a759
Merge remote-tracking branch 'gzdoom/master'
2017-02-05 16:07:48 -05:00
ZZYZX
e4970189b6
Tactical merge
2017-02-05 19:14:56 +02:00
Christoph Oelckers
72810c969d
- added ChangeCamera script function.
2017-02-05 18:07:12 +01:00
Christoph Oelckers
9e038b75fa
- exported DrawChar and DrawText.
2017-02-05 16:47:33 +01:00
Christoph Oelckers
52bec33c0d
- exported BrokenLines to scripting as a new class.
...
- removed the hard limit of 128 lines for V_BreakLines.
2017-02-05 16:18:41 +01:00
Christoph Oelckers
d8a1ce88b0
- a few more exports from FFont.
2017-02-05 13:55:38 +01:00
Christoph Oelckers
b570d0819b
- streamlined font handling for scripts a bit.
...
- moved the two 'you raised the alarm' messages for Strife to the string table
2017-02-05 13:14:22 +01:00
Rachael Alexanderson
59f32d497d
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/r_things.cpp
# src/v_draw.cpp
2017-02-05 00:08:01 -05:00
Christoph Oelckers
d662cece15
- fixed calculations in AdjusrPlayerAngle.
2017-02-04 16:44:43 +01:00
Rachael Alexanderson
ebb8da563a
Merge https://github.com/coelckers/gzdoom
2017-02-04 02:56:18 -05:00
Christoph Oelckers
abac756289
- exported some stuff for fonts and screen size that will be needed for the menus.
2017-02-04 00:46:22 +01:00
Christoph Oelckers
d5b908186c
- some work on the base classes for menus. None of this is being used yet.
2017-02-04 00:19:25 +01:00
ZZYZX
f816537992
Setting Order directly (while the event handler is registered) will result in all sorts of broken behavior. Made readonly.
2017-02-03 20:44:27 +02:00
ZZYZX
03f7c39ea7
Fixed mouse input in event handlers. Added RequireMouse field in event handler to signify that native mouse should be turned on for certain handlers.
2017-02-03 20:34:34 +02:00
ZZYZX
b4565c3800
Exposed Shift/Ctrl/Alt to the scripts
2017-02-03 16:15:53 +02:00
ZZYZX
0d96517f5f
Implemented RenderOverlay hook that executes directly after level and statusbar
2017-02-03 13:29:34 +02:00
ZZYZX
6a0103a746
Merged p_setup conflict
2017-02-03 13:02:44 +02:00
ZZYZX
9bb4cf1c03
User input events first take
2017-02-03 12:28:40 +02:00
Christoph Oelckers
075cce98c4
- fixed: PlayerPawn.GetEffectTicsForItem read the duration from the wrong actor.
2017-02-03 10:41:38 +01:00
ZZYZX
7fa50c22e5
Added player events
2017-02-02 20:26:56 +02:00
ZZYZX
bc1194d03b
Added ordering for handlers - by int value returned by virtual function GetOrder(); Also, some handlers (WorldUnloaded and WorldThingDestroyed) are now executed in reverse order.
2017-02-02 19:57:00 +02:00
Rachael Alexanderson
226e5238fc
Merge https://github.com/coelckers/gzdoom
2017-02-01 21:57:37 -05:00
alexey.lysiuk
1fd37ff2ff
Removed unused input from fog boundary fragment program
...
This should fix https://mantis.zdoom.org/view.php?id=151
2017-02-01 10:05:38 +02:00
Rachael Alexanderson
4e45ea2300
Merge https://github.com/coelckers/gzdoom
2017-01-31 23:04:56 -05:00
Christoph Oelckers
ccacc23905
- fixed division by 0 in ActorMover code.
2017-02-01 00:21:30 +01:00
ZZYZX
89c475c2d1
Added WorldThingDamaged hook
2017-01-31 04:35:44 +02:00
ZZYZX
9942a59866
Almost forgot (x2): thing revived world event
2017-01-31 04:11:09 +02:00
ZZYZX
066b22af0a
Almost forgot: WorldTick hook, since ZScript doesn't have delays
2017-01-31 03:24:46 +02:00
ZZYZX
71f62af6db
Implemented WorldThingDied (calls at the same point as SCRIPT_Kill); Added Inflictor parameter for WorldThingDied.
2017-01-31 02:07:00 +02:00
ZZYZX
27c8140c46
Replaced specialized event handlers with Event structure passed to a method; returned the check for virtual implementation to make sure that we don't waste time initializing the event data.
2017-01-31 01:28:47 +02:00
ZZYZX
5751f84350
Moved empty virtual methods to script side
2017-01-30 11:56:03 +02:00
ZZYZX
2382a76be5
Made separate .Find in Static handlers for convenience.
2017-01-30 09:33:06 +02:00
ZZYZX
c7e3ff2356
Static event handlers can create/register/unregister other static event handlers.
2017-01-30 09:28:27 +02:00
ZZYZX
0598c18ad8
Added WorldEventHandler with WorldThingSpawned. WorldThingDestroyed is not implemented because you already can attach an object that would check master's state.
2017-01-30 08:47:15 +02:00
ZZYZX
09ca1f610d
Removed World*Unsafe handlers (merged with WorldLoaded/WorldUnloading); Removed the concept of 'map-local static' handlers, static handlers are now only those that run globally.
2017-01-30 07:50:09 +02:00
ZZYZX
9a54a5affe
Merge remote-tracking branch 'gz/master' into thereisnospoon
2017-01-29 01:01:28 +02:00
Rachael Alexanderson
0c101102dc
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/r_bsp.cpp
# src/r_main.cpp
# src/r_segs.cpp
# src/r_things.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.txt
2017-01-28 17:39:55 -05:00
Christoph Oelckers
ee22a9371b
- use Doom64 colors on sectors and linedefs.
2017-01-28 20:44:46 +01:00
Christoph Oelckers
12d073a27d
- objectcolor stuff.
...
# Conflicts:
# src/gl/renderer/gl_renderstate.cpp
2017-01-28 19:06:21 +01:00
Christoph Oelckers
1d2ae53ecb
Revert "- made r_fullbrightignoresectorcolor a MAPINFO option, so far only working on the software renderer. GL still needs a few changes to handle it correctly."
...
This reverts commit dd03bb1fcb
.
Turns out that making this work in GL will create a complete mess so better remove the option as it would only cause problems.
2017-01-28 18:26:52 +01:00
Rachael Alexanderson
d27a152d9b
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/r_bsp.cpp
# src/r_main.cpp
# src/r_segs.cpp
# src/r_things.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.txt
2017-01-28 09:38:10 -05:00
Christoph Oelckers
dd03bb1fcb
- made r_fullbrightignoresectorcolor a MAPINFO option, so far only working on the software renderer. GL still needs a few changes to handle it correctly.
2017-01-28 12:20:18 +01:00
ZZYZX
2c314f3f3f
Merge remote-tracking branch 'gz/master' into thereisnospoon
2017-01-28 05:23:16 +02:00
Magnus Norddahl
9c4b11b671
Add OpenGL ES support to Linux target and enable it for ARM devices
2017-01-25 07:18:26 +01:00
Rachael Alexanderson
a04699ec1c
Merge https://github.com/coelckers/gzdoom
2017-01-24 18:15:39 -05:00
Rachael Alexanderson
949862f78f
- fixed: PalTonemap Exponent slider didn't have a proper decimal place.
2017-01-24 22:24:53 +01:00
Rachael Alexanderson
3154652885
- fixed possible AMD compilation error.
2017-01-24 22:24:53 +01:00
Rachael Alexanderson
9a777f719b
- Added "gl_bandedswlight" to reduce the software light emulation gradient to 32 levels.
2017-01-24 22:24:53 +01:00
Rachael Alexanderson
84d2a89f49
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# wadsrc/static/language.enu
2017-01-24 12:03:57 -05:00
Rachael Alexanderson
6263704741
- Added menu options for pal tonemap tweaks.
...
# Conflicts:
# wadsrc/static/language.enu
2017-01-24 17:57:03 +01:00
ZZYZX
8c36a2a3df
Merge remote-tracking branch 'gz/master' into thereisnospoon
2017-01-24 11:05:14 +02:00
Rachael Alexanderson
3ea27cd996
Merge https://github.com/coelckers/gzdoom
2017-01-23 22:12:55 -05:00
Christoph Oelckers
17ed23bfcc
- don't read the full height of a player from the defaults, because that cannot be changed by A_SetHeight.
...
Instead a new member, FullHeight is used for this now.
2017-01-24 00:12:06 +01:00
ZZYZX
3e093a20ff
First take at serialization
2017-01-24 00:17:12 +02:00
alexey.lysiuk
6586877ac5
Merge branch 'master' of https://github.com/coelckers/gzdoom into master
2017-01-23 22:48:16 +02:00
ZZYZX
35ec14f465
Made the EventHandler class tree a bit more branchy. Now disallowing creation of Static* via EventHandler.Create.
2017-01-23 20:48:57 +02:00
ZZYZX
302af61686
Added per-thing render hooks
2017-01-23 20:48:57 +02:00
ZZYZX
2aadd1e13c
Forgot to add events.txt
2017-01-23 20:48:57 +02:00
ZZYZX
ce616f9c06
Added: prototype event system
2017-01-23 20:48:57 +02:00
Christoph Oelckers
b3aa7c61a9
- fixed: Class and struct name lookup was not context aware.
...
If a later module reused an existing name for a different class or struct type, this new name would completely shadow the old one, even in the base files.
Changed it so that each compilation unit (i.e. each ZScript and DECORATE lump) get their own symbol table and can only see the symbol tables that got defined in lower numbered resource files so that later definitions do not pollute the available list of symbols when running the compiler backend and code generator - which happens after everything has been parsed.
Another effect of this is that a mod that reuses the name of an internal global constant will only see its own constant, again reducing the risk of potential errors in case the internal definitions add some new values.
Global constants are still discouraged from being used because what this does not and can not handle is the case that a mod defines a global constant with the same name as a class variable. In such a case the class variable will always take precedence for code inside that class.
Note that the internal struct String had to be renamed for this because the stricter checks did not let the type String pass on the left side of a '.' anymore.
- made PEnum inherit from PInt and not from PNamedType.
The old inheritance broke nearly every check for integer compatibility in the compiler, so this hopefully leads to a working enum implementation.
2017-01-23 19:10:28 +01:00
alexey.lysiuk
db4c5e090d
Fixed incorrect armor given by cheats
...
See https://mantis.zdoom.org/view.php?id=106
2017-01-23 13:18:30 +02:00
Rachael Alexanderson
03226e5a0a
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/r_things.cpp
2017-01-23 00:17:25 -05:00
Christoph Oelckers
89d9a43b68
- fixed local variable having the same name as a member in Strife's inquisitor.
2017-01-22 12:28:09 +01:00
Rachael Alexanderson
53acc28f26
Merge https://github.com/coelckers/gzdoom
2017-01-21 17:47:18 -05:00
Christoph Oelckers
06ad2351d3
- fixed error in vertical velocity calculation for A_SkullAttack.
2017-01-21 19:56:54 +01:00
ZZYZX
df1a90fb1b
Apparently 'name = something' gets parsed as a Type. Fixed CustomSprite actor again.
2017-01-21 10:32:26 +01:00
ZZYZX
59472d6f63
Fixed CustomSprite actor
2017-01-21 10:32:26 +01:00
ZZYZX
6f5fff00a0
Implemented static methods in String struct. Implemented String.Format and String.AppendFormat. Implemented native vararg methods for the future.
2017-01-21 10:32:26 +01:00
Rachael Alexanderson
410a1aa24c
Merge https://github.com/coelckers/gzdoom
2017-01-20 20:56:02 -05:00
Christoph Oelckers
06898bf8fb
- copied A_ClearRefire to the proper place for good now.
2017-01-20 20:19:38 +01:00
Christoph Oelckers
314e49f791
- let A_SpawnProjectile, A_FireProjectile, A_SpawnItem(Ex) and A_ThrowGrenade return the spawned actors to the calling code.
...
- fixed the return type checks in CallStateChain. These made some bogus assumptions about what return prototypes to support and would have skipped any multi-return function whose first argument was actually usable.
2017-01-20 12:39:51 +01:00
Christoph Oelckers
02cfdbc29c
- fixed: A_ClearRefire was copied to the wrong script class.
2017-01-20 11:59:12 +01:00
Rachael Alexanderson
e52772745b
Merge https://github.com/coelckers/gzdoom
2017-01-19 23:07:14 -05:00
Christoph Oelckers
c880b26d98
- scriptified MorphProjectile and CustomSprite.
...
This should for now conclude actor class scriptification. The remaining ten classes with the exception of MorphedMonster are all too essential or too closely tied to engine feature so they should remain native.
2017-01-20 01:11:36 +01:00
Magnus Norddahl
545ae678e8
Merge remote-tracking branch 'gzdoom/master' into qzdoom
2017-01-20 00:22:29 +01:00
Christoph Oelckers
3c30b59bab
more inventory scriptification
...
* completely scriptified DehackedPickup and FakeInventory.
* scriptified all remaining virtual functions of Inventory, so that its inheritance is now 100% script-side.
* scriptified CallTryPickup and most of the code called by that.
- fixed: Passing local variables by reference did not work in the VM.
2017-01-19 23:42:12 +01:00
Rachael Alexanderson
7701a61830
Merge https://github.com/coelckers/gzdoom
2017-01-19 15:50:33 -05:00
Christoph Oelckers
1750ded7c4
- more exporting of AInventory.
2017-01-19 20:56:31 +01:00
Christoph Oelckers
7c6542e595
- partial scriptification of AInventory.
...
- scriptification of CustomInventory.
2017-01-19 19:14:22 +01:00
Rachael Alexanderson
8a198591f4
Merge https://github.com/coelckers/gzdoom
2017-01-19 11:58:53 -05:00
Christoph Oelckers
19b1c10ba8
- scriptified a large part of the weapon code.
2017-01-19 17:40:34 +01:00
Christoph Oelckers
6d3b26f94c
- scriptified the WeaponGiver.
2017-01-19 14:00:00 +01:00
Christoph Oelckers
42f3ccc602
- scriptified a few parts of p_pspr.cpp.
...
- added a speed parameter to A_Lower and A_Raise in the process.
2017-01-19 13:26:46 +01:00
Rachael Alexanderson
9333ce1888
Merge https://github.com/coelckers/gzdoom
2017-01-18 21:15:08 -05:00
Christoph Oelckers
8256f25a84
- no need to keep AArmor native, now that all child classes have been scriptified.
2017-01-18 23:46:19 +01:00
Christoph Oelckers
632a29e365
- scriptified HexenArmor.
2017-01-18 23:42:08 +01:00
Christoph Oelckers
2fcffd1fc1
- removed the remaining native parts of ABasicArmor.
...
- simplified some FindInventory calls using PClass::FindActor to call the variant taking a name directly.
2017-01-18 22:57:47 +01:00
Christoph Oelckers
3148496f57
- scriptified BasicArmor and fixed a few errors in the conversion.
2017-01-18 22:15:48 +01:00
Christoph Oelckers
2dd6fb9595
- scriptified BasicArmorBonus.
2017-01-18 20:23:13 +01:00
Christoph Oelckers
87b9b6111d
- scriptified the BeginPlay methods of the VavoomLight classes.
...
- moved m_Radius back to arg[3] and arg[4], so that scripts have access to light sizes again.
2017-01-18 19:10:25 +01:00
Christoph Oelckers
1ce7b80158
- scriptified the rest of the weapon pieces.
2017-01-18 18:46:24 +01:00
Christoph Oelckers
30a8541a15
- scriptified the weapon piece functions.
...
- fixed: ClearInventory did not process depleted items properly.
- changed HexenArmor from UNDROPPABLE to UNTOSSABLE because this allowed to remove some special handling in ClearInventory. The only other place which checks this flag also checks UNTOSSABLE.
2017-01-18 17:26:12 +01:00
Christoph Oelckers
d8acf774a6
- scriptified the remains of AKey.
...
- replaced Key.KeyNumber with special1. This is only for internal bookkeeping purposes so there's really no need to complicate this with a new variable when this one works just as well.
2017-01-18 15:17:12 +01:00
Christoph Oelckers
d9fd2d509f
- scriptified the remains of AAmmo.
2017-01-18 14:18:17 +01:00
Rachael Alexanderson
590781d4a6
Merge https://github.com/coelckers/gzdoom
2017-01-18 05:19:34 -05:00
Christoph Oelckers
534b2ebbfb
- scriptified the remains of APowerup.
...
- ensure that actor defaults contain a valid virtual table and class pointer so that they can actually use virtual and class-dependent method functions. This is needed for retrieving script variables from them.
2017-01-18 10:33:03 +01:00
Magnus Norddahl
53a79ca215
Merge remote-tracking branch 'gzdoom/master' into qzdoom
...
# Conflicts:
# src/r_things.cpp
2017-01-18 04:09:16 +01:00