bevy_diesel 0.1.0

A generic ability engine framework for Bevy
Documentation
pub mod ability_pool;
pub mod backend;
pub mod despawn;
pub mod dot;
pub mod effect;
pub mod events;
pub mod filters;
pub mod gauge;
pub mod gearbox;
pub mod invoke;
pub mod invoker;
pub mod pipeline;
pub mod print;
pub mod propagation;
pub mod spawn;
pub mod target;

// Re-export upstream dependencies
pub use bevy_gauge;
pub use bevy_gearbox;
pub use inventory;

pub mod prelude {
    pub use crate::backend::{SpatialBackend, DieselCorePlugin};
    pub use crate::target::{InvokerTarget, Target, TargetGenerator, TargetMutator, TargetType};
    pub use crate::effect::{GoOff, SubEffectOf, SubEffects};
    pub use crate::events::{StartInvoke, OnRepeat, CollidedEntity, CollidedPosition};
    pub use crate::invoker::{InvokedBy, Invokes, resolve_invoker, resolve_root};
    pub use crate::pipeline::{generate_targets, propagate_observer};
    pub use crate::print::PrintLn;
    pub use crate::spawn::{
        OnSpawnInvoker, OnSpawnOrigin, OnSpawnTarget,
        SpawnConfig, TemplateRegistry, spawn_observer,
        on_spawn_invoker, on_spawn_origin, on_spawn_target,
    };
    pub use crate::filters::{
        CollisionFilter, Collides, NumberType, limit_count, sort_by_distance,
    };
    pub use crate::gauge::prelude::*;
    pub use crate::go_off;
    pub use crate::gearbox::repeater::{OnComplete, Repeater, template_repeater};
    pub use crate::gearbox::templates::apply_sub_effect;
    pub use bevy_gearbox::{SimpleTransition, RegistrationAppExt};
    pub use bevy_gearbox::prelude::{
        AlwaysEdge, Delay, EnterState, EventEdge, ExitState,
        Guards, InitialState, Source, StateMachine, StateComponent, SubstateOf,
    };
    pub use bevy_gearbox::transitions::{NoEvent, TransitionEvent, EventValidator};
    pub use crate::propagation::{
        PropagationTargets, PropagationTargetOf, RegisterPropagationTargetRoot,
        RegisterPropagationTarget, PropagationRegistrar,
        register_propagation_for, propagate_event,
    };
    pub use crate::submit_propagation_for;
    pub use crate::despawn::{QueueDespawn, DelayedDespawn};
    pub use crate::invoke::{Ability, InvokeStatus, InvocationComplete, check_should_reinvoke_ability};
    pub use crate::ability_pool::{
        AvailableAbilities, AvailableAbility, RegisterAbility, UnregisterAbility,
        DieselAbilityPoolPlugin, emit_register_on_active, emit_unregister_on_inactive,
        collect_all_abilities,
    };
    pub use crate::dot::{
        PeriodicEffectTargets, PeriodicEffectTarget, PeriodicTick, periodic_tick_system,
    };
}