bevy_scripting_rune 0.2.1

Script bevy games using rune.
Documentation
<div align="center">

[![stable pipeline](https://gitlab.com/cyloncore/bevy_scripting_rune/badges/stable/pipeline.svg?key_text=stable)](https://gitlab.com/cyloncore/bevy_scripting_rune/-/pipelines?ref=stable)
[![dev/1 pipeline](https://gitlab.com/cyloncore/bevy_scripting_rune/badges/dev/1/pipeline.svg?key_text=dev/1)](https://gitlab.com/cyloncore/bevy_scripting_rune/-/pipelines?ref=dev/1)
[![docs](https://docs.rs/bevy_scripting_rune/badge.svg)](https://docs.rs/bevy_scripting_rune)
[![crates.io](https://img.shields.io/crates/v/bevy_scripting_rune.svg)](https://crates.io/crates/bevy_scripting_rune)
</div>

bevy_scripting_rune
===================

Simple integration of [rune](https://rune-rs.github.io/) for bevy.

Compatibility
-------------

| bevy | bevy_scripting_rune |
|------|---------------------|
| 0.16 | 0.2                 |
| 0.15 | 0.1                 |

Example
=======

```rust
use bevy::prelude::*;
use bevy_scripting_rune::ScriptingRunePlugin;

fn setup(
    asset_server: Res<AssetServer>,
    script_assets: Res<Assets<bevy_scripting_rune::Script>>,
    mut executor: ResMut<bevy_scripting_rune::Executor>,
)
{
    let handle = asset_server.load("test.rn");
    let script = script_assets.get(&handle).unwrap();
    executor.load_script(script);
    executor.build().unwrap();
}

fn run(executor: Res<bevy_scripting_rune::Executor>)
{
    let r = executor.call::<i32>("plus", (38, 4)).unwrap();
    println!("r = {}", r);
}

fn main()
{
    App::new()
        .add_plugins((
            DefaultPlugins,
            ScriptingRunePlugin,
        ))
        .add_systems(Startup, setup)
        .add_systems(Update, run);

}

```

A more complex example is available in [example/example.rs](https://gitlab.com/cyloncore/bevy_scripting_rune/-/blob/stable/example/example.rs).