Commit Graph
69 Commits
Author SHA1 Message Date
Simon Lübeß c94ffbef64 Made release buildable 2025-08-24 16:54:26 +02:00
Simon Lübeß b94b2afc55 Dev settings for using ScriptCore as either dll or csproj 2025-08-09 23:40:31 +02:00
Simon Lübeß ac0f4dade6 Updated Template for new dotnet runtime
- Added Submodule 'Xml-Beef'
- Use .slnx as solution-file
- Automatically set correct path to ScriptCore in Project files
2025-08-09 01:13:05 +02:00
Simon Lübeß 3f83c200f2 Secured struct layout 2025-08-08 19:09:59 +02:00
Simon Lübeß 74243cd285 Added Entity event OnCollisionEnter2D 2025-08-08 19:09:34 +02:00
Simon Lübeß d156618453 Fixed calling engine functions from scripts
- Removed mono references in generator
- Implemented StringView type in C#
2025-08-08 19:03:09 +02:00
Simon Lübeß ed644b5b41 Better engine exception for scripting 2025-07-30 18:58:26 +02:00
Simon Lübeß 566d39d928 Fixed memory leak 2025-07-27 16:43:34 +02:00
Simon Lübeß 28311165ad ScriptEngine work and cleanup 2025-07-18 12:40:44 +02:00
Simon Lübeß 271286fb7e Remove mono from Glue functions 2025-07-17 20:07:19 +02:00
Simon Lübeß edfcfd3b20 Start of using CoreCLR and automatic scriptglue generation 2025-07-14 22:14:41 +02:00
Simon Lübeß 0236130df1 Fixed crashes due to wrong use of append allocations 2025-02-24 23:00:09 +01:00
Simon Lübeß 2f0505241f Append allocation and generics fixes 2025-01-31 13:17:12 +01:00
Simon Lübeß b2806d9460 Reprocess, load and hot swap changed assets using new asset pipeline 2024-06-02 00:39:22 +02:00
Simon Lübeß 949ab4ebb0 ScriptEngine: Serialize static fields 2024-04-13 00:10:35 +02:00
Simon Lübeß d81471419d Refactored script instance serialization and now the refactoring is finally finished... 2024-04-10 14:42:07 +02:00
Simon Lübeß f05cf721e8 Almost done refactoring ScriptEngine 2024-04-10 13:50:12 +02:00
Simon Lübeß 777f52ab49 ScriptEngine refactoring 2024-03-31 12:36:22 +02:00
Simon Lübeß abcacc84a9 Refactored ScriptEngine 2024-03-31 11:55:39 +02:00
Simon Lübeß 525bb050ef ScriptEngine cleanup 2024-01-25 23:35:40 +01:00
Simon Lübeß c906fc9667 Properly destroy script instances
Now without memory leaks!
2024-01-18 21:29:11 +01:00
Simon Lübeß ceb4241216 ScriptGlue: Added Log.Exception
- Also pushed missing List Editor fix
2024-01-15 01:21:56 +01:00
Simon Lübeß 99a12a118c Fixed Script data for entity copying 2024-01-09 13:41:54 +01:00
Simon Lübeß a302a26f80 Moved SerializationType and Object to separate files 2024-01-06 13:27:24 +01:00
Simon Lübeß 2e82f24fd7 Initialize ScriptGlue whenever ScriptEngine loads assemblies 2023-12-26 02:01:14 +01:00
Simon Lübeß acefbb58bd Serialize/Deserialize simple classes 2023-12-25 20:08:48 +01:00
Simon Lübeß abb119589c Reload scripts in Play Mode!!!
- Dont serialize static fields
- Added some profiling to ScriptEngine
- Removed superseded ScriptFieldMaps
2023-12-24 01:33:48 +01:00
Simon Lübeß d0f0a34247 Start of Script Instance deserialization
- Also deserialize when stopping the game to restore pre play state
- Fixed ancient bug where ClearDictionaryAndDeleteKeys falsly deletes the dictionary
- Added ClearDictionaryAndDeleteValues helper mixin
2023-12-24 01:30:01 +01:00
Simon Lübeß c9116812b4 Serialize Data 2023-12-23 00:44:04 +01:00
Simon Lübeß a6f68a59d6 Moved basic ScriptEngine classes into separate object 2023-12-22 19:11:40 +01:00
Simon Lübeß b884ee8303 Moved Components to their respective namespaces 2023-12-15 14:53:10 +01:00
Simon Lübeß 4a2635a8c3 ScriptCore: Moved Component + Doc 2023-12-13 14:00:27 +01:00
Simon Lübeß e69e1b5526 Show Buttons in entity editor
- ScriptEngine: Added HasCustomAttribute- extension method
- ScriptEngine: Added Application class
2023-12-12 13:38:29 +01:00
Simon Lübeß 1238a43896 Start and Stop script runtime for editor scene 2023-12-03 14:06:40 +01:00
Simon Lübeß 5852e11ccb Start of edit mode scripts
- Initialize script instances in edit mode
- Run OnCreate and OnUpdate for Entities with RunInEditMode-Attribute
2023-12-02 00:28:04 +01:00
Simon Lübeß 48cdcee8a8 Fixed null pointer exception in ShowScriptEditor when script component has no instance 2023-12-01 23:14:51 +01:00
Simon Lübeß df446188b6 Add support for strings and BoolX in script engine, show strings as textfields in editor 2023-12-01 23:13:30 +01:00
Simon Lübeß 881bb8ee51 Scriptengine: Support char-type 2023-11-22 00:55:07 +01:00
Simon Lübeß f28eabf807 Fixed mono not finding assemblies like linq, etc. 2023-11-18 17:56:09 +01:00
Simon Lübeß 24365ec477 Call correct UUID constructor for Entities, fixed crash and weirdness when Scripts have fields that are classes
Let's not talk about the fact that this was a one line fix all along...
2023-11-18 02:05:55 +01:00
Simon Lübeß 6f1467046d Tried EntityEditor in C# 2023-11-10 12:41:58 +01:00
Simon Lübeß 38fc1f63b3 Small script engine improvements
- Fixed script class name not visible in Component Editor
- Retain user assembly file system watcher (fixed deletion while handling events)
- Fixed crash when a scritp constains a List or Array (by ignoring them for now)
- Fixed Typo in Genericinst
- Scene: Invoke OnCreate for copied entity scripts
2023-10-28 21:48:43 +02:00
Simon Lübeß 446dc2ca2a Scripting: Basic copying of entities during runtime + Reference Components using UUID 2023-09-21 14:23:00 +02:00
Simon Lübeß ba54d48dfe Fixed referencing entities and components that are not the script owners entity 2023-09-16 22:14:52 +02:00
Simon Lübeß 754c149493 Entity Creation and Destruction from scripts
- ScriptEngine: Allow destroying scripts during runtime
- Scripting:
    - Create new entities using Constructors
    - Added Destroy functions for Entities
    - Added SetScript/RemoveScript functions for Entities
    - Allow adding multiple components at once
    - Added Is-Method
- Mono Wrapper: Added Array-Functions
- WorldEnumerator: Fixed crash due to dangling list pointer after entity creation
- Scene:
    - Basic create Rigidbodies during runtime
    - Start of entity copying (For runtime use)
    - Added DestroyEntityDeferred
- SceneSerializer:
    - Added option to assign new IDs to entities
2023-09-15 23:22:27 +02:00
Simon Lübeß 4e5d3cfd64 Add OnCollisionLeave2D 2023-08-10 22:07:58 +02:00
Simon Lübeß 5d8c1b111a Project user settings, load recent scenes, properly cleanup ScriptEngine when switching scenes 2023-07-31 20:09:56 +02:00
Simon Lübeß df67f32399 Start of project system
+ added Directory.IsEmpty
2023-07-30 13:23:34 +02:00
Simon Lübeß 00dc3faa19 Failed to show and edit script sctruct
+ SizeInBytes for MonoFields
2023-07-28 11:48:01 +02:00
Simon Lübeß f39acdadb3 Show enum fields in Edit mode 2023-07-28 00:07:10 +02:00