Commit Graph

89 Commits

Author SHA1 Message Date
Adam Ramberg
f855767c8e Changelog + assembly fixes 2020-06-20 00:45:58 +02:00
Adam Ramberg
70f8130797
Debug events by displaying stack traces for events (#159)
* Add stack trace toggled via user prefs

* Add docs regarding preferences

* Rename color getter functions

* Fix minior order of execution bug

* Use GUID + improved styling of detailed stack view

* - Changed the AddStackTrace method to be conditional (from one of your initial suggestions).
- Removed the implicit conversion operator in StackTraceEntry and is instead using ToString explicitly when needed.
- Improved implementation of GetFirstLine
- Simplified Equals implementation of the StackTraceEntry class
2020-06-06 22:19:07 +02:00
Adam Ramberg
b2a838a18f
#132 - Add GetEvent and SetEvent functions to AtomReference (#158) 2020-05-12 18:19:45 +02:00
Adam Ramberg
634b42adcf
#131 - Added forceEvent parameter for SetValue function on AtomVariable (#157) 2020-05-12 17:56:01 +02:00
Moh Narimani
f3bf70b64c
Removed duplicate check before adding an item to AtomValueList (#145) 2020-05-03 22:44:07 +02:00
Oliver Biwer
4a802d0c27
Changes in GetEvent implementation to allow inheritance (#140) 2020-05-03 07:45:08 +02:00
Ignacio Ruiz
3666304b55
Added inspector toggle for triggering Changed and ChangedWithHistory on OnEnable (#126)
* Booleans to decide if OnChanged Events are triggered on Variable's OnEnable were added

* Variable's editor was updated to show both booleans

* Docs updated with new variables

* Changelog update

* Change variable visibility to private and add explicit default value

Co-authored-by: Ignacio Ruiz <iruizm@hiberus.com>
2020-04-26 19:57:55 +02:00
IceTrooper
bec125f86d
changed from Multiline to TextArea attribute (#128) 2020-04-24 06:40:54 +02:00
Enderlook
5a2816e3ae
Fix typos (#120) 2020-03-30 17:07:10 +02:00
Adam Ramberg
cb5f702df6 Fixes to issues in v4.0.1 2020-03-22 01:22:08 +01:00
Adam Ramberg
8c6abe18a3 Merge branch 'v4' into canary 2020-03-22 00:24:33 +01:00
Adam Ramberg
4ba6beee59 Added some more docs 2020-03-21 22:45:39 +01:00
Adam Ramberg
9fd64a12f3 Move AtomListAttribute to core 2020-03-21 21:58:41 +01:00
Adam Ramberg
24831f5927 Docs added 2020-03-21 21:48:05 +01:00
Adam Ramberg
698c18dbe7 Fix Variable with class type issues 2020-03-20 00:48:23 +01:00
Adam Ramberg
2eb4cedf80 Rename example scene 2020-03-19 22:42:34 +01:00
Adam Ramberg
fdfcf03150 Remove sync functionality in variable instancers 2020-03-19 08:39:43 +01:00
Adam Ramberg
20db73a43f Move sync variable instancer to collection to its own MB 2020-03-19 08:20:15 +01:00
Adam Ramberg
a90a336980 Finished example scene 2020-03-18 02:00:18 +01:00
Adam Ramberg
74bfaf7086 Example WIP + Variable ID 2020-03-18 00:17:33 +01:00
Adam Ramberg
f00c9be691 Demo scene wip 2020-03-16 23:26:23 +01:00
Adam Ramberg
c71fe4fa60 Tweak 2020-03-16 00:18:26 +01:00
Adam Ramberg
9a8f7495fa Fix timing issues 2020-03-16 00:11:18 +01:00
Adam Ramberg
90079f5873 Fix atomstag bug 2020-03-15 23:18:29 +01:00
Enderlook
c4d1f20399 Fix typo 2020-03-15 18:33:27 -03:00
Adam Ramberg
e6ac211e70 WIP 2020-03-12 01:30:25 +01:00
Adam Ramberg
616bca96b8 Fix transition data event reference 2020-03-11 21:42:59 +01:00
Adam Ramberg
e4c489c88e WIP 2020-03-11 21:11:27 +01:00
Adam Ramberg
42d97b840f More WIP 2020-03-09 23:51:14 +01:00
Adam Ramberg
17fd35a23d Clean up WIP 2020-03-09 00:37:52 +01:00
Adam Ramberg
5d6e94af63 WIP 2020-03-09 00:16:40 +01:00
Adam Ramberg
dbe95e97d1 WIP 2020-03-08 20:41:22 +01:00
Adam Ramberg
ba583f8995 WIP FSM 2020-03-08 13:24:46 +01:00
Adam Ramberg
769388c6e4 FSM pkg + Example WIP 2020-03-08 12:32:41 +01:00
Adam Ramberg
06d89697f3 Example WIP 2020-03-05 00:48:39 +01:00
Adam Ramberg
f8a73c143f Set default to avoid compiler warnings 2020-03-02 20:27:38 +01:00
Adam Ramberg
44c2413c56 Fix intro scene 2020-03-02 19:36:52 +01:00
Adam Ramberg
c3bc59259f More WIP 2020-03-02 02:26:06 +01:00
Adam Ramberg
5d9f8dca71 WIP 2020-03-01 21:32:52 +01:00
Adam Ramberg
85f72abf8a Add AddComponentMenu to Variable Instancers 2020-02-23 23:13:30 +01:00
Adam Ramberg
81e35f17fe
Add util actions to Variables (#115) 2020-02-23 23:07:49 +01:00
Adam Ramberg
6309943385
Replay subject (#114)
* Add constructor with value to Reference classes

* Implemented ReplayBehaviour for AtomEvents
2020-02-23 21:44:04 +01:00
Adam Ramberg
7c4f92ecd8
Add constructor with value to Reference classes (#113) 2020-02-23 03:17:05 +01:00
Adam Ramberg
8a6b8a97a6
Added Variable Instancer, Event Reference, Atom Collection and Atom List (old Atom List renamed to Atom Value List) (#110)
AtomVariableInstancer
- Added AtomVariableInstancer as an option to AtomReference.
- Added AtomVariableInstancer to generator.
- Added editor icon for AtomVariableInstancer.

AtomEventReference
- Added an AtomEventReference class (and AtomEventX2Reference). It’s similar to an AtomReference, but for Events. Let’s you pick between an Event, Variable (will select the Changed event) and a VariableInstancer (see above).
- Added AtomEventReference and AtomEventX2Reference to generator.
- Added a drawer for AtomEventReference.
- Listeners are now using AtomEventReference instead of AtomEvent.
- Refactoring of VoidHooks since Listeners are now using AtomEventReference.

AtomCollection
- Created an AtomCollection - a collection of Atoms associated with key strings (AtomReferences).
- Added new editor icon for collections.
- Created a SerializableDictionary class, which AtomCollection is using.
- Custom property drawer for SerializableDictionary.
- SerializableDictionary supports nested structures meaning that a AtomCollection can have a KVP that is pointing to another AtomCollection.
- AtomCollections have 3 events: Added, Removed, Cleared.
- Added an option to sync an InstanceVariable to collection - adding it to the collection when created (using gameObject’s instance id as key) and removing it from the collection when destroyed.

AtomList
- Renamed old AtomList to AtomValueList
- Added AtomList, like Collection, but a list
- Added new icon for AtomList
- Created a AtomBaseVariableList class, which AtomList is using.
- Custom property drawer for AtomBaseVariableList.
- AtomLists have 3 events: Added, Removed, Cleared.
- Added an option to sync an InstanceVariable to list - adding it to the list when created and removing it from the list when destroyed.
2020-02-23 02:39:43 +01:00
Adam Ramberg
0a1fea485d
Fix variable equality issues (#111) 2020-02-23 02:22:39 +01:00
Adam Ramberg
630d45bceb
IsUnityAtomsRepo should never be settable (#108) 2020-02-16 21:10:45 +01:00
Adam Ramberg
9b027e2308
Added pre change transformers to Variables + Clamp Int / Float (#93)
* Added pre change transformers to Variable + Clamp Value Function (first pre change transformer implementation)
- Added a list of pre change transformers to AtomVariable
- Added docs
- Added two AtomFunctions - ClampInt and ClampFloat
- Added custom editors for ClampInt and ClampFloat
- AtomFunction<T, T> is not part of the generator
- Regenerated all the Atoms

* - Created a base class for the editor for ClampFloat and ClampInt. Apparently it is not allowed to have multiple CustomEditor attributes defined for the same class. To implement this I also created an interface called `IIsValid` (for casting purposes in the editor).
- Initialize `PreChangeTransformers ` at declaration and removed initialization `OnEnable`
- Moved call to `RunPreChangeTransformers ` from `OnEnable` to `OnValidate`. Running it 2 times, once for initialValue and once for value since value can be changed at runtime via editor.
- Made the variable PreChangeTransformers private and created a property instead in order to make it impossible to overwrite the list with `null` from the outside.
- Moved `ClampInt` and `ClampFloat` in the `CreateAssetMenu` for `Unity Atoms/Functions/Transformers`
2020-02-16 12:44:46 +01:00
Oliver Biwer
1772b75ec5
Update AtomVariable.cs 2020-02-10 15:25:07 +01:00
AdamRamberg
b51de335e0 v2.1.0 🚀 2019-11-28 19:35:59 +01:00
IceTrooper
be6a479bc1 #84 parameterless atom listener (#86)
* added base class for AtomAction; modified VoidAction; added Register/UnregisterListener to non-generic AtomEvent; added parameterless AtomListener; small polishing

* removed EditorIcon from AtomAction; fixed misspelled word in AtomEvent
2019-11-26 20:12:54 +01:00