Ich glaube, dass Referenzen auf Objekte das Spiel nicht gross belasten, aber Funktionen in Events, die alle paar Sekunden ablaufen eben schon.
Ich weiss nicht, ob dir das schon aufgefallen ist, aber es kann sein, dass mehrere Events des gleichen Scripts zeitgleich in verschiedenen Threads ablaufen. Wenn man das Intervall besonders klein hat und im OnUpdate Funktionen ablaufen, die Werte verändern, kann das problematisch werden.
Hier mein Event, das ich mit einer Variable isBusy versuche zu schützen, wobei UpdatePreset eine recht heftige Funktion ist, daüpr, dass sie alle paar Sekunden abläuft:
Code:
Event OnUpdate()
If(!isBusy && !updateLocked)
isBusy = true
If (DRWFxVersion.GetValueInt() == 0)
updateLocked = true
UnregisterForUpdate()
Debug.Notification("Mod uninstalled")
ElseIf (DRWFxVersion.GetValueInt() != 14) ; Not the same value as in OnInit() = not the same version
DRWFxVersion.SetValueInt(14)
Debug.Notification("Mod updatet")
Else
UpdatePreset(false)
isBusy = false
EndIf
EndIf
EndEvent