This library is based on a talk given by Ryan Hipple. In the talk Ryan goes over creative ways to use Scriptable Objects(SOs) to pass data and fire events between self contained systems. The advantage of using SOs is that they for the most part live in Project space rather than scene space so prefabs are able to reference them.
- Define events in the project i.e. PlayerDeath
- Place Handler scripts on object that listen to events
- Trigger events with a button click
- Define variables in project space that can be referenced and shared by prefabs
- Easily switch between SO value storage and hardcoded values
- Set whether SO variables should save in play mode or not
- Go to the release tab.
- Download the version you want.
- Unzip it into your
Assets
folder.
- Add this repo as a submodule.
git submodule add https://github.com/richardkopelow/ScriptableObjectFramework.git ./Assets/
- Init the submodules.
git submodule init
- Update the submodules.
git submodule update
- Make a
nuget.config
file in the Unity Project root
<configuration>
<config>
<add key="repositoryPath" value="./Assets/Packages" />
</config>
</configuration>
- Using your favorite NuGet Client, install ScriptableObjectFramework.
- Add the
Assets/Packages
folder to your git ignore.