5 个版本 (3 个稳定版)
| 1.1.0 | 2024年6月9日 |
|---|---|
| 1.0.1 | 2024年6月6日 |
| 1.0.0 | 2024年6月1日 |
| 0.2.0 | 2024年5月20日 |
| 0.1.0 | 2024年5月6日 |
#3 in #modes
在 omp 中使用
230KB
5K SLoC
omprs
omprs 是一个用于在 Rust 中开发 open.mp 游戏模式的工具。
结构
| Crate | 描述 |
|---|---|
omp-codegen |
自动生成导出函数和 FFI 相关代码 |
omp-sdk |
GDK crate,执行核心功能,如加载函数地址、执行、提供必要类型等 |
omp |
主 crate,供玩家使用,优雅地暴露所有功能和 API。 |
用 Rust 编写我的第一个游戏模式
-
从这里下载 omprs 组件:这里
-
将
Rust.dll或Rust.so组件放入components文件夹 -
创建一个新的 Rust 项目
cargo new mygm --lib -
将
omp添加到依赖项cargo add omp -
将以下内容添加到您的
Cargo.toml[lib] crate-type = ["cdylib"] -
编写基本的代码如下
use omp::{events::Events, main, register, types::colour::Colour}; struct MyGM; impl Events for MyGM { fn on_player_connect(&mut self, player: omp::players::Player) { player.send_client_message(Colour::from_rgba(0xFFFFFFFF), "Welcome to my server!"); } } #[main] pub fn game_main() { register!(MyGM); } -
构建游戏模式
cargo+stable-i686 build -
将编译的
mygm.dll或mygm.so放入gamemodes文件夹 -
转到
config.json,并添加以下内容"rust":{ "gamemode":"mygm", } -
运行您的服务器
lib.rs:
GDK crate,执行核心功能,如加载函数地址、执行、提供必要类型等
依赖项
~0.2–36MB
~538K SLoC