Good Lord...I have no idea what that post says. Float property? Boolean?....SpawnNode?
Don't panic...it's a script...you'll get used to them.
It's written in computerese. I'll explain it a bit at a time:
The first line starts with "ScriptName" - this means that it's definining a script named "LightningSpoke" that does everything an ObjectReference script can do.
Next, I define some Properties of various types..these allow you to set a bunch of options from outside the script (in the object itself's Script area) to determine how it behaves.
The First three are of type "Float" which is shorthand for "Floating Point Number" (A number that can have a decimal point in it) which will determine how far from the object the Node we'll be spawning will be on the X, Y, and Z axes.
The fourth Float property is the number of seconds the object will wait between "Zaps"
Next we have an Activator property "TargetType" which we will assign to the second object type we create (I like activators, because you can assign the types without picking from a render window)
The next property is an ObjectReference called "CurrentTarget" which will be assigned to whatever we're zapping.
The next property is of Boolean type (bool for short) which simply means that it is either "True" or "False" - I added this because you may want to have a lightning zapper that will zap the player, or some other thing nearby instead of making an invisible target. For now, just set this to "True" in the properties window for the script.
Next we have a "Spell" property called "Zap" which will be assigned to the spell "Sparks" in the properties window for the script. You can pick any spell you want to change what spell the emitter shoots.
Finally, there is a FormList property called 'TargetTypeList' which can be built in the Creation Kit to make a list of potential targets (Actors, etc) that the node will look for to zap if it's not using a spawned node.
That's all for the properties. Next we have two events the script will respond to.
Event OnInit: when the emitter is loaded, it will check to see if it's supposed to spawn an invisible target. If it is, it does so. Then it RegistersForUpdate using the assigned PulseRate defined up above.
Event OnUpdate: This is called evry "PulseRate" seconds, since the OnInit event told it to.
The first thing OnUpdate does is check to see if it's supposed to shoot at a predefined target. If it's not, it looks around for a target from the Formlist property. If it is, it moves the target to the correct position (in case the zapper object has been moved)
Then it shoots the spell at the target. It does this repeatedly, so long as it still exists.