File size: 1,655 Bytes
f4cb014
94ea94e
 
 
 
9d278f7
94ea94e
 
f3cbb8a
94ea94e
 
a0cd512
94ea94e
0706c93
f3cbb8a
c6d4e73
1d3de83
 
 
e98f3c6
c6d4e73
 
f3cbb8a
c6d4e73
 
f3cbb8a
c6d4e73
d43153a
a0cd512
c6d4e73
2a09823
94f0eda
 
 
af1e67a
94f0eda
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
pub mod arrow;
pub mod base;
pub mod cloud;
pub mod filter;
pub mod fire;
pub mod game_task;
pub mod mine_oil_drum;
pub mod missile;
mod overlays;
pub mod supply_crate;
pub mod team;
pub mod team_message;
pub mod turn_game;
pub mod worm;

pub use arrow::{CTaskArrow, CTaskArrowVTable};
pub use base::{
    CTask, CTaskBfsIter, CTaskVtable, SharedDataIter, SharedDataNode, SharedDataTable, Task, Vtable,
};
pub use cloud::{CTaskCloud, CTaskCloudVTable, CloudType};
pub use filter::{CTaskFilter, CTaskFilterVTable};
pub use fire::{CTaskFire, CTaskFireVTable};
pub use game_task::{CGameTask, SoundEmitter, SoundEmitterVTable};
pub use mine_oil_drum::{CTaskMine, CTaskMineVTable, CTaskOilDrum, CTaskOilDrumVTable};
pub use missile::{CTaskMissile, CTaskMissileVTable, MissileType};
pub use overlays::{BungeeTrailTask, WeaponAimTask};
pub use supply_crate::{CTaskCrate, CTaskCrateVTable};
pub use team::{CTaskTeam, CTaskTeamVTable};
pub use team_message::TeamMessage;
pub use turn_game::{CTaskTurnGame, CTaskTurnGameVTable, TurnGameCtx};
pub use worm::{CTaskWorm, CTaskWormVTable, WormState};

// Task trait impls — safe access to CTask base regardless of inheritance depth.
// CTask<V> impl is in base.rs (blanket impl).
unsafe impl<V: Vtable> Task for CGameTask<V> {}
unsafe impl Task for CTaskTeam {}
unsafe impl Task for CTaskTurnGame {}
unsafe impl Task for CTaskFilter {}
unsafe impl Task for CTaskCloud {}
unsafe impl Task for CTaskFire {}
unsafe impl Task for CTaskWorm {}
unsafe impl Task for CTaskMissile {}
unsafe impl Task for CTaskArrow {}
unsafe impl Task for CTaskMine {}
unsafe impl Task for CTaskOilDrum {}
unsafe impl Task for CTaskCrate {}