Commit graph

237 commits

Author SHA1 Message Date
AzaezelX f57bc015a9 set default hdr postfx keyvalue to baseline 2025-12-10 16:29:09 -06:00
AzaezelX 2b95634a6b extra testcase
add a placeable, scrollable, glowing, decal arrow
2025-12-09 12:31:08 -06:00
AzaezelX d822ebb178 clean up polluted placeholder slots 2025-12-04 20:51:37 -06:00
AzaezelX abe1bc6e1e use modal = false profiles for overlay guis not intended to capture clicks
minor layout adjustments
2025-12-04 10:35:00 -06:00
AzaezelX dc41f1f4d7 add missing profiles 2025-12-04 10:33:27 -06:00
AzaezelX 886a782e40 fix $pref::SFX::channelVolume0 default
should be 1
2025-10-16 15:28:13 -05:00
JeffR 9c654d7932 - Fixes the display of the preview in the MaterialAsset fields
- Hides the special-case direct filepath field for ShapeAsset persist fields macro
- Shifts the handling of TSStatics so the shape instance will load materials on the server as well as the client. This opens gameplay options as well as allowing rebaking of meshes functionality more easily
- Expands AssetBase's isValidAsset utility function to actually check validity instead of just returning true
- Adds isValid utility function to AssetPtr
- Added new field flag that makes the field not write out to file
- Removed legacy iconBitmap field from GuiIconButtonCtrl because it was causing errors
- Fixed group filtering check of guiInspector to ignore case
- Removed unneeded isFile checks for common datablock script files in Prototyping module script
- Removed test datablocks from Prototyping module
- Removed unnecessary container control from AssetBrowser
- Adjusted preview regen logic of AssetBrowser so it doesn't trip if you're simply resizing the window
- Fixed issue where row-vs-column layout logic for AssetBrowser when resizing window was fiddly
- Added handling for when Dragging and Dropping datablock from AssetBrowser to spawn, it'll prompt if it spawns the actual object, or a spawnsphere that spawns said object. In the event of an PlayerData will also prompt if it should spawn an AIPlayer
- Added ability to take a TSStatic that uses a baked down mesh and are able to restore it to the cache prefab, or trigger and in-place rebake to refresh it if something has changed in the original contents via RMB menu on the scene tree
- Added ability to explode prefab to RMB menu on scene tree
- Added ability to convert selection to prefab or bake to mesh in RMB menu on scene tree
- Tweaked sizing of the DatablockEditorCreatePrompt window to not have cut off elements and easier to see/work with
- Added sanity check to datablock editor creation
- Fixed preview display of material in Decal Editor
- Made compositeTextureEditor use the cached preview of images
- Fixed sizing/spacing of gui selection dropdown as well as resolution dropdown of GuiEditor
- Fixes MaterialEditor to properly save the group collapse state when editing
- Adds ability to in-flow edit and create datablocks in the NavMesh Editor for the testing panel, and makes the datablock dropdown searchable
- Fixed issue where opening the ShapeEditor via the edit button on a ShapeAsset field would cause the action buttons on the top bar to not show
- Fixed error in shape editor where when exiting it was erroneously checking for a clear value of -1 rather than 0
- Removed unneeded top tabbook and tab page for main editor panel
- Fixed issue where reset button of TerrainBrush Softness Curve editor didn't actually reset
- Resized Object Builder window to not cut off elements and have enough width to show more data
- Added a TypeCommand field type to Object Builder and changed spawnscript field of SpawnSphere to use it rather than a simple text edit field
- Allow SpawnSphere in ObjectBuilder to be passed in spawn class and spawn datablock default info
- Injects button to controllable objects when Inspecting them to make it easy to toggle if you're in control of it or not
-
2025-08-25 23:35:28 -05:00
JeffR 970aba9766 Fixes design oversight where the general game menu keybind was being overridden due to order of operations issues with an offscreen canvas demoing the options menu
Fixed via several solutions to prevent issue from cropping up again.
Firstly, Adjusted behavior script-side so game menu keybind is pushed with the PlayGUI since almost every single game will use the game menu
Secondly, added logic so that the guiInputCtrl, when going to push an ActionMap(if it has one) will check if it's root canvas is active.
Thirdly, to allow guiInputCtrls to respond to a canvas becoming active, such as a GUi-on-Material surface displaying a menu and it's activated, an offscreen canvas becoming active now trips a signal that guiInputCtrl listens for.
2025-08-11 00:06:42 -05:00
marauder2k7 c2b347af7c ai test classes
protoplayer protocar
2025-08-01 19:42:02 +01:00
marauder2k7 26e18cdfe8 feedback from az
scripts changed to reflect a better standard of loading offscreencanvas on client and not on the server
2025-06-18 21:17:13 +01:00
marauder2k7 6f9c4158d8 gui offscreen material test
added interaction static guioffscreencanvas to capture mouse events
added test shape
2025-06-18 17:05:35 +01:00
marauder2k7 a276ad2505 Update cursors.tscript
missed UI cursors
2025-06-18 09:29:12 +01:00
AzaezelX 14c8ea28c8 offload spawnControlObject on controllable death to gameplay modules 2025-06-09 17:13:57 -05:00
AzaezelX 26d0e427de shift prototyping UI into tools proper
was prototyped in the prototyping module. now properly resides in tools
2025-05-17 16:25:07 -05:00
marauder2k7 e1c01cd49a Merge remote-tracking branch 'upstream/development' into imageAsset_refactor_rev3 2025-05-12 14:45:41 +01:00
AzaezelX 860ac41181 handle enabled->disabled->destroyed filters properly 2025-04-10 13:08:43 -05:00
AzaezelX 9007aa9532 basic vehicle eject onDestroyed code
leverages Parent to also call the rest of the deletions
also fix setdamagedirection for players driving vehicles instead of either on thier own
2025-04-08 19:50:47 -05:00
AzaezelX 5cf54580e6 Generic Damagemodel
included in root/data/ as a module so theres a generic folks can riff off of
additionally, includes a physcs based damage option inspector exposed augment for velicity based collisions, as well as utilities for applying damage to the object a given thing is mounted to
further. also fixes a lack of vehicles being able to use thier mvTriggerCount4 and 5 for the additional 2 mountpoints allowed
2025-04-06 16:09:14 -05:00
marauder2k7 0da0903599
Merge branch 'development' into imageAsset_refactor_rev3 2025-03-24 20:07:06 +00:00
AzaezelX 5f1eec0e00 expand playgui callbacks to also allow game modes to inject element layers 2025-02-27 14:41:21 -06:00
AzaezelX 3797038664 Don't report keybinds unless asked
Do report where you're saving prefs
2025-01-30 17:29:31 -06:00
marauder2k7 f519cff6ff gui types using image_asset 2025-01-23 22:12:57 +00:00
JeffR c5ae9af0ae Core now spawns a ControlObject directly, with callbacks allowing overriding of values to control what spawns (and what occurs afterwards) to tie several tracking variables to a given client connection.
By default this list of variables would be:
%this.spawnClass = "Camera";
%this.spawnDBType = "CameraData";
%this.spawnDataBlock = "Observer";
%this.playerSpawnGroups = "PlayerSpawnPoints PlayerDropPoints";
%this.spawnPoint = "";
%this.spawnLocation = "0 0 0";

Also adds several callbacks so that these values can be overridden by modules and gamemodes, kicked off from the %client.spawnControlObject(); command :
callOnModules("setSpawnObjectType", "Game", %this);
callGamemodeFunction("setSpawnObjectType", %this);

callOnModules("setSpawnPoint", "Game", %this);
callGamemodeFunction("setSpawnPoint", %this);

callOnModules("onPostSpawn", "Game", %this);
callGamemodeFunction("onPostSpawn", %this);

This is to ensure that a game mode can supersede modules, but even modules can dictate spawn behaviors for minimalist implementations and drop-in interop support
2024-12-21 02:11:35 -06:00
JeffR bf9692a451 Updates DecalRoad, MeshRoad and River to be able to write out via persistManager using specialityField functions, similar to ConvexShape
Fixes behavior with gamemode selection in ChooseLevelMenu so if there is only one gamemode, it is auto-selected and advances to the level selection
Update ExampleLevel in ExampleModule to have updated gamemodes field name
2024-12-15 23:48:16 -06:00
JeffR 020bd03cf9 Adds logic so levels without a gamemode defined at all are treated as wildcarded to any given gamemode selected 2024-10-04 00:22:12 -05:00
JeffR e4d07c7e8d Adds utility function and method to be able to enact a load of subscenes at a specific world position
Adds loadIf conditional logic to evaluate if a subscene is 'allowed' to load when tested
Adds isAlwaysActive to GameMode to be able to flag a gamemode as being defaulted to on and used automatically
Updated GetGameModesList function to return an arrayObject of the gamemodes found
Overhauled CallGameModeFunction to utilize the gamemodes list with active/alwaysActive modes being called against, rather than level-scanning
Updated ChooseLevelMenu to be able to toggle on/off multiple gamemodes with an image indicator if it's active or not
2024-10-04 00:10:26 -05:00
Areloch 4bb26bf96c Reorganized the exec's for datablocks in module template file to be within the start/stop blocks
Tweaked example module script file to comply
Moved ExampleGameMode script file to scripts/shared since client and server need access to the gamemode for logic to work
2024-09-01 23:26:10 -05:00
Areloch d7335a73e4 Removed dummy placeholder function stub 2024-09-01 17:59:24 -05:00
Areloch ae8eca48e1 Implementation of Subscenes, SceneGroups and Gamemodes
Standardizes Gamemodes to be an actual class with data and utility functions that can be parsed
Adds inspector field handling for selecting gamemodes
Updated Scene class to work with Gamemodes for the gamemode field
Updates editor suite elements to be able to create SubScenes, SceneGroups and Gamemodes
Adds ability to convert SimGroup to SubScene
Updates BaseUI's chooselevel menu to have gamemode selection and filters shown levels based on selected gamemode
2024-09-01 16:39:00 -05:00
Areloch 8ce6fb96ad Ensures there's a regular fallback actionmap for toggling the game menu 2024-07-24 10:48:55 -05:00
Areloch c9a1955b47 Removes old remaining refs to PauseMenu
Updates and moves the escape keybind to be an actionMap that is activated/deactivated in the UI module when a client connection is processed to keep it within the module's functionality
2024-06-28 20:47:42 -05:00
AzaezelX fdbc55b733 fix arrowPrimative badfilereference 2024-04-13 16:28:56 -05:00
Areloch b1f71bab74 Adds handling for the keyboard remap page of the options menu to be able to present a bind with a modifier key 2024-03-19 23:05:03 -05:00
marauder2k7 6355da5df6 various fixes
STB probably shouldn't fail on failed info, just continue.
Assimp only add sequences if there are any.
Update kork chan asset.
2024-03-01 15:01:47 +00:00
marauder2k7 7fb14e17b5 Create jelly-fish.ies 2024-02-21 10:16:07 +00:00
marauder2k7 973d2792ed Delete A23D-Pathway-&-Accent-Light.ies 2024-02-21 10:15:44 +00:00
marauder2k7 3b4a15d7aa Some test ies profiles
IES profiles to my knowledge are not only free to download, but also free to distribute. you can get packs with thousands of these, i am uploading 3 test ones for now.
2024-02-21 10:14:29 +00:00
Brian Roberts 1ee85334b0
Merge pull request #1197 from Areloch/UpdateBaseUILoadingScreen
Updates the loadingGUI to utilize the same panels for the background coloration that the other new menus use, rather than a bitmap.
2024-02-04 00:12:01 -06:00
Areloch 1bdaef9f82 * Ensures the HDRBloom pref is properly set as part of the default settings
* Adds a few input names to the bitmap button lookup for the BaseUI logic
* Properly defaults the current menu index for the GameMenu gui
* Ensures that all editing actions for forest editor flag the editor/map as dirty for saving
* Ensures editor messageBoxes are properly focused on popping up
* Returns the newly created camera bookmark objects from their create functions
2024-02-03 23:15:35 -06:00
Areloch 303a107c29 Updates the loadingGUI to utilize the same panels for the background coloration that the other new menus use, rather than a bitmap. 2024-02-03 18:03:55 -06:00
Brian Roberts cf7e9f7a00
Merge pull request #1172 from Areloch/BaseUIUpdate_Wipwork
BaseUI Update
2024-01-05 14:30:00 -06:00
Areloch 833d17ccfc - Cleaned up elements in ChooseLevelMenu and ensured onscreen button had correct command
- Ensured there's always a level selected by default on the chooseLevelMenu
- Added a small delay to try and ensure the level/server config tab key hints align properly
- Added logic so you can't swap to server config page on chooseLevelMenu if in single player mode
- Added server description to server details line on JoinServerMenu
- Ensured programmatically added elements aren't saved out if GUIs are edited
- Fixed back-out prompt in OptionsMenu properly backs out so it doesn't break menu nav
2024-01-04 20:30:11 -06:00
AzaezelX f4491f8202 typofix. also, repopulate pref GuiTextEditCtrl each onWake just to be sure 2024-01-04 13:10:17 -06:00
AzaezelX e4342079f1 function ChooseLevelMenu::fillPrefEntries( %this ) utility method to set gui elements to prefs 2024-01-04 12:55:07 -06:00
AzaezelX 2fee2902f6 don't automatically set the server password 2024-01-04 12:07:57 -06:00
AzaezelX 5e334eb196 don't save map population elements when editing
track addOption entry/slider/group position in the overall list, and use that found key to hook in the "<" and ">" subelements for selection purposes
2024-01-04 11:54:28 -06:00
Areloch c809dbb4be - Ensures if there is a $pref::server::password set and you're creating a localConnection game, you can connect even if you don't have a client password set
- Changed ChooseLevelMenu layout to have a vertical list for levels with a static preview set, as well as a separate tab for server configs if trying to create a server
- Added field to set password for connecting to passworded servers on the JoinServerMenu
- Added sanity check so you can't try and activate a menuList that has no children(caused error spam)
2024-01-03 23:45:36 -06:00
Areloch 150684a47d - Complied the SystemMenu buttons to the groupNum highlighting implementation as they're simple buttons
- Fixed issue of Query Server on-screen button tripping a join action
- Added playername textEdit field to Join Server menu
- Fixed issue of messageBox on-screen buttons not making the input events properly after adding the make/break check from prior commit
- Added MenuTextEditProfile for editable text fields in menu
- Fixed issue of not getting the correct shift key bitmap if the button name was l/rshift
2024-01-01 14:11:43 -06:00
Areloch e71880b898 - Added a companion global var array for $AudioChannelsName[x] as well as utilizing $AudioChannelCount for keeping better tabs on the active defined audio channels. This allows modules to establish new channels more easily
- Updated the handling of the option slider entries to utilize temp vars and properly complied the audio channel options to the new setup
- Fixed issue where behavior of slider was erratic because of improperly defined tick count
- Added logic to check if audio sliders were changed for the 'check unchanged settings' logic
- Made the keybind remap inputCtrl ignore axis events
- Made the MessageBoxDlg input commands properly check for key makes, to prevent messages boxes from catching key breaks and blowing past follow-up messageboxes accidentally
- Fixed forward/backward iteration of options entries, especially on dpad, and added handling for gamepad stick to do the same
- Added logic so option sliders can also be manipulated by the forward/backward to make it standard for all
- Fixed erroneous marking of "restart required" message as true if any settings change, and not just settings expressly flagged as requiring a restart
2024-01-01 01:42:53 -06:00
Areloch 67ac556ecd - Added ability to explicitly execute a guiControl's console and altConsole command
- Fixed formatting of resolution strings for the internal values, allowing them to be properly parsed and applied by the options menu/canvas
- Fixed display of Display Device on option's menu
- Fixed Issue of it not displaying any keybinds in keyboard/gamepad options if there's only a single actionmap
- Added 'hold to scroll' action to optionsMenu
- Added apply button to options menu
- Added remap button to options menu when on keyboard/gamepad keybinds categories
- Fixed up the remap logic so remapping a key only unbinds the matched device being bound, so binds for different devices are untouched
- Made keybinds options properly refresh when keybinds are changed
- Shifted keyboard "go" keybind for menu nav from Enter to Space for easier use
- Removed stick keybinds from gamepad
2023-12-31 12:46:48 -06:00