You cannot do this directly. However, you can get similar functionality with the introduction of an internal set of "variables":
Dictionary<string, object> _scriptVariables = new Dictionary<string, object>();
// "", :
public void CreateVariable<T> ( string name, T defaultValue );
public void Set<T> (string name, T value );
public T Get<T> ( string name );
etc...
, :
public void Initialize()
{
player.CreateVariable<int>("HP");
player.CreateVariable<bool>("StartedKill5RatsQuest");
player.Set("HP", 10);
player.Set("StartedKill5RatsQuest", true);
}
public void Update()
{
...
if(player.Get<bool>("StartedKill5RatsQuest"))
{
...
}
}
, , , .