I’m writing some editor extension to Asset Store, that will generate you pretty lava environment. This lava environment is scripted, so it will interact with objects. One of the scripts (normal, no-editor script written in javascript), called LavaTrigger.js have some static variables, so they can be used by other scripts:
static var PlayerInLava : boolean; // info if player is in lava
static var lavaDeath : boolean; // info if player died in lava
static var lavaHeight : float; // lava mesh height at player position
static var lavaTransform : Transform; // used to determine lava transform, for other scripts
But! Unity Assets require to put content in the main Assets folder. Referencing to this link Unity - Manual: Special folders and script compilation order scripts in Asset folder are compiled in phase 4. Scripts in Standard Assets are compiled in phase 1. Loot of users are creating their own scripts in Standard Assets, so any try to use those static variables (by script in Standard Assets) from script in Assets folder:
if (LavaTrigger.lavaDeath)
{
//do something
}
… will end with failure:
BCE0005: Unknown identifier: 'LavaTrigger'
So, my question is: Do i have to tell every user, that he have to move my LavaTrigger.js to Standard Assets, or there is nice solution to my problem?