Commit Graph
114 Commits
Author SHA1 Message Date
Simon Lübeß a5e767df01 Enabled nullable for ScriptCore 2024-01-05 14:33:50 +01:00
Simon Lübeß 3de861110e Custom Serializers
- Dictionary serializer
2024-01-05 13:37:58 +01:00
Simon Lübeß 16f4dd349b Serialize and Deserialize Lists and 1D-Arrays 2024-01-01 13:03:34 +01:00
Simon Lübeß c111fff32b ScriptCore: Added extension Type.IsAssignableTo 2024-01-01 13:02:50 +01:00
Simon Lübeß 19fb969718 ScriptCore: Added custom debug display for UUID 2024-01-01 13:02:34 +01:00
Simon Lübeß e5f2da66a9 ScriptCore Fixed CreateInstanceSafe(Type type, params object[] args) 2024-01-01 13:02:15 +01:00
Simon Lübeß 418aa71241 ScriptCore: Fixed adding element to arrays 2023-12-31 17:22:04 +01:00
Simon Lübeß beb696ee5d Added basic ArrayEditor 2023-12-31 17:10:17 +01:00
Simon Lübeß ed3884e30e ScriptCore: Made creation of class instance safer 2023-12-31 17:05:27 +01:00
Simon Lübeß bd72a67d29 Fixed List add/remove element buttons not working 2023-12-31 17:01:23 +01:00
Simon Lübeß 9e222daeb2 ScriptCore: Fixed deserialization of null values 2023-12-28 23:05:49 +01:00
Simon Lübeß 5051829753 Split up, clean up and internalize EntitySerializer 2023-12-28 22:50:24 +01:00
Simon Lübeß 2fc45a50e0 ScriptCore: Fixed component and entity reference serialization 2023-12-28 22:40:59 +01:00
Simon Lübeß a4c311c2e4 Implemented Entity and Component Drop-Targets and added Name property for entities
- Also fixed non generic GetComponent
- Use UUID as Drag-Drop value for entities
- Removed unused methods from ComponentEditWindow
- Started a marginally type-safe version of ImGui.Payload
2023-12-26 02:00:44 +01:00
Simon Lübeß 4fa6384544 Fixed ScriptCore post build script to enable hot reloading for ScriptCore 2023-12-26 00:42:09 +01:00
Simon Lübeß 2f86f751a4 Serialize Enums (and maybe Entitiy/Component refs) 2023-12-25 21:46:19 +01:00
Simon Lübeß 215e1f6500 Catch Activator exceptions 2023-12-25 20:25:55 +01:00
Simon Lübeß acefbb58bd Serialize/Deserialize simple classes 2023-12-25 20:08:48 +01:00
Simon Lübeß 7bd69c162f Fixed serialization of null-strings 2023-12-25 18:58:06 +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ß 424e995fae ScriptCore: Made trivial pointer stuff complicated to fix some warnings 2023-12-18 01:44:44 +01:00
Simon Lübeß 945a0e5603 Fixed Half 2023-12-17 19:23:19 +01:00
Simon Lübeß 3a3778651d ScriptCore: Moved Physics2D into Physics namespace 2023-12-17 18:47:29 +01:00
Simon Lübeß 6a87d1ac09 ScriptCore: Use engine implementation of half to no longer rely on Half-Package 2023-12-17 18:47:07 +01:00
Simon Lübeß 89e4e4ef17 Start of entity serialization 2023-12-15 14:53:31 +01:00
Simon Lübeß b884ee8303 Moved Components to their respective namespaces 2023-12-15 14:53:10 +01:00
Simon Lübeß a129156641 Documentation 2023-12-13 14:45:33 +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ß bedbc696c3 ScriptCore: Added UUID.CreateNew 2023-12-10 12:50:11 +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ß df6b522741 Improved postbuild script for ScriptCore: Automatically create target directory 2023-12-01 23:45:02 +01:00
Simon Lübeß 270e34b983 Fixed list of struct drag and drop, added context menu to remove list entries 2023-12-01 23:14:19 +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ß 0257b93c7b Move List elements via Drag and Drop 2023-11-22 19:28:02 +01:00
Simon Lübeß 872a400966 Scripts: More range attributes for fields
- Added Minimum- and Maximum attributes
- Documentation for Min, Max and Range
- EntityEditor: Refactoring + Range Attributes
2023-11-22 01:59:57 +01:00
Simon Lübeß ffe86a18cf Scripts: First implementation of Range- and Readonly-Attributes + added support for all primitive types 2023-11-22 00:57:18 +01:00
Simon Lübeß 8127884b50 Improved List editor and added Enum editor, fixed changed fields not updating 2023-11-18 18:06:13 +01:00
Simon Lübeß 849a8582f6 Scripting: Added Log functions to print objects 2023-11-18 18:02:37 +01:00
Simon Lübeß 060d1ae6fc Scripting: Implemented Equals and GetHashCode for UUID 2023-11-18 16:45:46 +01:00
Simon Lübeß 2a4eac814b ScriptGlue: Changed signature of Entity_GetScriptInstance 2023-11-18 01:59:10 +01:00
Simon Lübeß 02a2ccb6f9 Copy ScriptCore dependencies to output, EntityEditor: Start of lists 2023-11-16 18:32:13 +01:00
Simon Lübeß 6f1467046d Tried EntityEditor in C# 2023-11-10 12:41:58 +01: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ß 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ß 5af174ecee ScriptCore: atan2 2023-09-05 23:15:48 +02:00
Simon Lübeß 7bffd01401 Rigidbody2D Get/Set Linear and Angular Velocity 2023-09-05 23:15:33 +02:00
Simon Lübeß 2f58f0e142 Renamed RigidBody2D to Rigidbody2D
+ Math.normalize(Quaternion)
+ Position and Rotation properties for Rigidbody2D
+ use In, Out on beef side in ScriptGlue
2023-09-03 19:42:50 +02:00