The script is briefly below:
let relic = #{
on_player_die: |evt, cnt| {
...
player.set(3); // crashed with datarace error!!
...
};
fn fight() {
player.adjust(-15);
1
}
================
player var is a rust var registered into script. Player will broadcast an event into script by relic.on_player_die().
I just want to know why rhai prevents above code pattern at all? If it‘s for infinite recursion, Engine.set_max_call_levels(16) is enough!
The script is briefly below:
};
================
player var is a rust var registered into script. Player will broadcast an event into script by relic.on_player_die().
I just want to know why rhai prevents above code pattern at all? If it‘s for infinite recursion, Engine.set_max_call_levels(16) is enough!