Commit Graph

445 Commits

Author SHA1 Message Date
Soraphis
64f6f785bb Added a script to generate atom-classes for other types 2019-04-08 17:25:32 +02:00
Soraphis
fa2d55fcf7 Refactored all type-related folders into an folder "Types" 2019-04-08 17:25:32 +02:00
Adam Ramberg
b54bf46bff Merge changes 2019-04-08 16:23:51 +02:00
Adam Ramberg
77cfaa1f24 Fixes to PR + assign null to remove warnings 2019-04-08 16:14:50 +02:00
Jeff Campbell
e65b69d8e9 Added code quality and style changes 2019-04-08 08:52:17 +02:00
Jeff Campbell
a9b6926d79 Updated readme to cover desired code style
* Updated readme to cover desired code style including class structure, formatting, and line settings.
2019-04-07 23:22:00 +02:00
Adam Ramberg
8a7216b79d Added new line before open braces to editorconfig 2019-04-07 17:59:10 +02:00
Adam Ramberg
4b10374850 Added every to ListExtensions 2019-04-07 17:57:57 +02:00
Jeff Campbell
943451b3d5 Cleaned up code readability, naming style to be consistent
* Add abstract modifier to all generic classes meant not to be instantiated directly as the intent is to specify a pattern for a closed type that can be serialized.
* Added sealed keyword to all closed types. This is an incidental performance improvement for mobile and desktop platforms utilizing il2cpp due to the way unsealed vs sealed virtual methods are handled in generated C++ code.
* Also sealed all inspectors to mark them as closed types.
* Dropped all where constraints to the next line as most of these class declarations break 120-130 characters. This should help improve readability and make this style consistent as it has been in use for the most-complex generic types already, but not for others.
* Dropped all generic type parameters (generally) numbering three or more to the next line to improve readability.
* Where found, added empty lines between property/field declarations in classes to improve readability.
* Extracted several 2x event classes into their own files to match convention established by other event classes.
* Removed unecessary meta files for C# solution.
* Added compiler options file (csc.rsp) file for the Unity project and added global warning ignore for 0649 (Field 'field' is never assigned to, and will always have its default value 'value'). This is necessary since 2018.3 switched the compiler to Roslyn and by design they have decided to not suppress this warning for monobehavior fields that are private, but serialized. This is very widely contested as most developers will not make every field needed to be assigned in the Editor as public (breaks encapsulation, opens surface area for bugs) and this can in some cases generate hundreds if not thousands of warnings. Adding the compiler options file suppresses this warning which also may hide legitimate warnings, but is far the lesser of two evils.
* Moved example scripts not in a namespace to UnityAtoms.Examples.
* Reordered public/private fields and properties to be consistent. Order is as follows; public and private properties followed by public/private fields.
* Renamed private fields to use '_' prefix and marked public fields as private where only used internally. Marked these fields with FormerlySerializedAs attribute to preserve older serialized values already in use.
* Removed redundant initialization of null to reference types as this is their default value.
* Marked implicitly private methods and members without an access modifier as explicitly private.
* Updated unit tests to use new private name field when getting private member field info.
2019-04-07 17:57:52 +02:00
Jeff Campbell
82fe803d48 Replaced foreach with for loop usage
* Replaced foreach with for loop usage in AtomicTags. Also renamed local variable tag to atomicTag to avoid hiding existing member.
* Previously in AtomicTags a #if UNITY_EDITOR was used around a portion of the code in OnValidate for editor-only code, but in truth this method is called only from the editor when selected in the inspector. I have moved this #if to surround the whole method.
2019-04-07 14:24:01 +02:00
Jeff Campbell
2c726a3c35 Added code cleanup work 2019-04-07 12:06:03 +02:00
Jeff Campbell
ab5131b416 Added .gitattributes file
* Added .gitattributes file to force line-endings to Mac/Linux style (LF). This should help prevent files created across multiple platforms from being committed with the wrong EOL character.
2019-04-07 11:56:55 +02:00
Jeff Campbell
7f3b08e887 Renamed new parameters hiding existing members
* Renamed new parameters on methods in AtomicTags and ScriptableObjectVariable that hide existing members.
2019-04-07 11:56:55 +02:00
Jeff Campbell
7763f81ede Unified line endings
* Unified all line endings in project to align with .editorconfig; all end-of-line characters have been set to LF and new-lines placed at the end of every file if not present.
2019-04-07 11:56:54 +02:00
Jeff Campbell
e5f6659eda Removed unused namepaces
* Removed unused namespaces across all files in Unity.Atoms assembly.
* Removed unused namspaces in runtime and Test assembly code.
2019-04-07 11:15:23 +02:00
Adam Ramberg
e976823647 Updated README 2019-04-05 15:29:55 +02:00
Adam Ramberg
4c09d78e88 Updated README 2019-04-05 15:22:33 +02:00
Adam Ramberg
f65d303e97 Example scene changes 2019-04-05 14:39:38 +02:00
Adam Ramberg
c97e541641 OnButtonClickHook should require Button 2019-04-05 14:37:48 +02:00
Adam Ramberg
ab02061f12 Housekeeping 2019-04-05 14:37:01 +02:00
Adam Ramberg
3c35adae82 Added a debug logger 2019-04-05 14:36:20 +02:00
Adam Ramberg
7f1a44a090 Added QuitApplication action 2019-04-05 14:33:59 +02:00
Adam Ramberg
0e6c5c6800 Return false if value was not changed in Variable 2019-04-05 13:40:26 +02:00
Adam Ramberg
16ab2263b3 #24 - Remove IGameEvent.cs 2019-04-05 10:47:38 +02:00
Adam Ramberg
3ee29b983b Reducer with args 2019-03-29 13:49:43 +01:00
Adam Ramberg
4d37afff63 Add Chainable add 2019-03-29 13:23:17 +01:00
Adam Ramberg
03e02ea0f5 Added Some and First to ScriptableObjectList 2019-03-29 10:38:00 +01:00
Adam Ramberg
2a8cafa1ae Fix README - install master branch using UPM 2019-03-18 00:05:35 +01:00
Adam Ramberg
bdf81a5e9c Squashed commit of the following:
commit 847eff037204d841546c0da772d2f341f9cf1e25
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Sun Mar 17 22:09:38 2019 +0100

    #17 - Serializable not needed for ScriptableObject

commit 593b275e6394b9d589de8a7a20375145dfc4aa84
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Sun Mar 17 21:59:33 2019 +0100

    18 - IGameEvent<T1, T2> RegisterListener

commit 40443ce9bd4b1c339aaf19cfcb119f2336608dae
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Mar 8 16:35:04 2019 +0100

    Remove some more warnings

commit bd453110ac51a6ebe3d54368fcb039bdbe52e278
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Mar 8 16:33:30 2019 +0100

    Update README

commit 90977b853a047c84efb5311768a09f4e8a1165b2
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Mar 8 16:31:45 2019 +0100

    Initialize to null to get rid off warnings

commit 38b7f5c4ede195aa7198f567801c9cbeedc9b6f6
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Mar 8 16:15:53 2019 +0100

    More fixes to enable local unity project

commit 404e1cbf88ed4431c61d3ece074e838e74ac5141
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Mar 8 16:12:37 2019 +0100

    Remove duplicated asmdef

commit 5734300684e8a16553f213157cad1b4722b7cb7f
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Mar 8 16:09:46 2019 +0100

    Change files to include

commit d1e42b119a6bc1577b1792459fa298e063652337
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Mar 8 16:05:56 2019 +0100

    Added root package json

commit 1709a0347147d74460f653182bbaf8d15eb6154e
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Mar 8 15:30:44 2019 +0100

    #16 - Add test and examples Unity project

commit a3ea1a133bf6727e011ba85c64569db45302e487
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Mar 8 13:12:02 2019 +0100

    #13 - Make usage of UPM (package manager)

commit 492a30e905f6cf3f5899cb7080ef2bda73110f00
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Mar 8 11:28:56 2019 +0100

    Added extensions + code formatting fixes

commit 709949a1016c236cfd363cf25392fedfd8d083ca
Author: Oliver Biwer <soraphis@users.noreply.github.com>
Date:   Fri Mar 8 10:16:45 2019 +0100

    More AtomicTags changes (#15)

    * - added assembly defintions, and unit tests
    - improved AtomicTags in regards of #8, #9 and #10

    * Fixes #11
    - Added Equality Members (inclusive HashCode) for ScriptableObjectVariableBase

    * removed Rider Plugins from git

    * Further AtomicTag optimization

commit ae6584c879f182e727fe0a8d0aff4b0715829914
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Mar 8 10:08:36 2019 +0100

    Editor config

commit 197d7067608600e4e2d13dc42db909ee8f8c75df
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Mar 8 09:23:12 2019 +0100

    Added editor config file

commit 53d6adc07b
Author: Oliver Biwer <soraphis@users.noreply.github.com>
Date:   Tue Mar 5 22:57:47 2019 +0100

    More efficient AtomicTags (#12)

    * - added assembly defintions, and unit tests
    - improved AtomicTags in regards of #8, #9 and #10

    * Fixes #11
    - Added Equality Members (inclusive HashCode) for ScriptableObjectVariableBase

    * removed Rider Plugins from git

commit 81209d83b5
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Wed Dec 12 20:54:17 2018 +0100

    Added MonoHooks + ColliderType + bug fixes

commit c6b240cebb
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Sat Dec 1 00:23:10 2018 +0100

    Experimenting with adding UI state management

commit dfd70a8944
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Nov 30 23:10:21 2018 +0100

    Issue #6 - AtomicTags

commit 8907763227
Author: Adam Ramberg <andersson.adam.89@gmail.com>
Date:   Fri Nov 30 22:42:29 2018 +0100

    First commit of v1.0.0
2019-03-17 23:43:20 +01:00
Adam Ramberg
c5733ca7b6 Merge branch 'btsslawa-master' 2018-11-27 19:34:26 +01:00
Slawa Deisling
181426f3e1 [CHANGE] fileName and order of CreateAssetMenu for better usability 2018-11-26 00:53:46 +01:00
Adam Ramberg
c6ead5c623 Added license 2018-11-18 15:56:29 +01:00
Adam Ramberg
dc98c369be Issue #1 - No boxing conversion from Color/Vector2/Vector3 2018-11-16 18:22:17 +01:00
Adam Ramberg
caa7d483e4 Add link to Medium article in README 2018-11-16 12:49:57 +01:00
Adam Ramberg
404ffa82b9 Added MonoHooks and SetVariableValue Game Actions 2018-11-13 20:12:04 +01:00
Adam Ramberg
8c53e4f6a7 UnityAtoms -> Unity Atoms 2018-11-13 19:48:17 +01:00
Adam Ramberg
107d1da251 First example 2018-11-12 22:19:12 +01:00
Adam Ramberg
fbf7c3c392 Add to README 2018-11-05 20:22:02 +01:00
Adam Ramberg
203fc1e032 New mono hooks, general game functions and refactoring of lists 2018-11-04 10:00:06 +01:00
Adam Ramberg
82c3bbc2a7 Bump unity version 2018-11-02 16:48:50 +01:00
Adam Ramberg
5008f7e10c Add int function 2018-11-02 16:48:23 +01:00
Adam Ramberg
f41b63ae2f Updated README 2018-10-30 21:23:40 +01:00
Adam Ramberg
7612d090f7 Added more documentation 2018-10-30 20:55:37 +01:00
Adam Ramberg
2be4b17490 Add to influences, motivation and introduction to README 2018-10-30 20:19:10 +01:00
Adam Ramberg
63b4bf99e7 First commit 2018-10-30 20:05:06 +01:00