Skip to content

Commit 0fe1cef

Browse files
Merge pull request #3 from Sreyas-Sreelal/capi
New SDK using open.mp Capi
2 parents 0f4ce80 + b4cd433 commit 0fe1cef

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+5160
-2614
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ jobs:
4040
sudo apt update
4141
sudo apt install gcc-multilib libssl-dev:i386 zlib1g:i386 -y
4242
if: matrix.os == 'ubuntu-latest'
43-
- run: rustup update ${{ matrix.toolchain }} --no-self-update && rustup default ${{ matrix.toolchain }}
43+
- run: rustup update ${{ matrix.toolchain }} --no-self-update --force-non-host && rustup default ${{ matrix.toolchain }} --force-non-host
4444
- run: cargo build --verbose
4545

4646
rustfmt:

Cargo.lock

Lines changed: 18 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/grandlarc/src/lib.rs

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@ use std::{
99
};
1010

1111
use omp::{
12-
classes::CreateClass,
12+
classes,
1313
core::{
14-
DisableInteriorEnterExits, EnableStuntBonusForAll, SetGameModeText, SetNameTagDrawDistance,
15-
SetWeather, SetWorldTime, ShowNameTags, ShowPlayerMarkers,
14+
DisableInteriorEnterExits, EnableStuntBonusForAll, SetGameModeText,
15+
SetNameTagsDrawDistance, SetWeather, SetWorldTime, ShowNameTags, ShowPlayerMarkers,
1616
},
1717
events::Events,
1818
main,
@@ -43,7 +43,7 @@ struct PlayerData {
4343

4444
struct GrandLarc {
4545
colour_white: Colour,
46-
players_data: HashMap<usize, PlayerData>,
46+
players_data: HashMap<i32, PlayerData>,
4747
class_selection_helper_td: TextDraw,
4848
los_santos_td: TextDraw,
4949
san_fierro_td: TextDraw,
@@ -239,7 +239,7 @@ impl GrandLarc {
239239

240240
impl Events for GrandLarc {
241241
fn on_player_connect(&mut self, player: Player) {
242-
player.game_text("~w~Grand Larceny", 3000, 4);
242+
player.show_game_text("~w~Grand Larceny", 3000, 4);
243243
player.send_client_message(
244244
self.colour_white,
245245
"Welcome to {88AA88}G{FFFFFF}rand {88AA88}L{FFFFFF}arceny",
@@ -287,23 +287,23 @@ impl Events for GrandLarc {
287287
player.toggle_clock(false);
288288
}
289289

290-
fn on_player_death(&mut self, player: Player, killer: Option<Player>, _reason: isize) {
290+
fn on_player_death(&mut self, player: Player, killer: Option<Player>, _reason: i32) {
291291
self.players_data
292292
.get_mut(&player.get_id())
293293
.unwrap()
294294
.has_city_selected = false;
295-
if killer.is_none() {
296-
player.reset_money();
297-
} else {
295+
if let Some(killer) = killer {
298296
let playercash = player.get_money();
299297
if playercash > 0 {
300-
killer.unwrap().give_money(playercash);
298+
killer.give_money(playercash);
301299
player.reset_money();
302300
}
301+
} else {
302+
player.reset_money();
303303
}
304304
}
305305

306-
fn on_player_request_class(&mut self, player: Player, _class_id: usize) -> bool {
306+
fn on_player_request_class(&mut self, player: Player, _class_id: i32) -> bool {
307307
if player.is_npc() {
308308
return true;
309309
}
@@ -321,7 +321,7 @@ impl Events for GrandLarc {
321321
false
322322
}
323323

324-
fn on_player_update(&mut self, player: Player, _now: isize) -> bool {
324+
fn on_player_update(&mut self, player: Player) -> bool {
325325
if player.is_npc() {
326326
return true;
327327
}
@@ -349,7 +349,7 @@ fn create_all_class() {
349349
82, 83, 84, 85, 87, 88, 89, 91, 92, 93, 95, 96, 97, 98, 99,
350350
];
351351
for x in skins {
352-
CreateClass(
352+
classes::Class::add(
353353
255,
354354
x,
355355
Vector3::new(1759.0189, -1_898.126, 13.5622),
@@ -365,13 +365,13 @@ fn load_static_vehicles_from_file(path: &str) -> Result<isize, Box<dyn std::erro
365365
let mut count = 0;
366366
for line in lines.map_while(Result::ok) {
367367
let mut seperator = line.split(',');
368-
let modelid: isize = seperator.next().unwrap().parse()?;
368+
let modelid: i32 = seperator.next().unwrap().parse()?;
369369
let x: f32 = seperator.next().unwrap().parse()?;
370370
let y: f32 = seperator.next().unwrap().parse()?;
371371
let z: f32 = seperator.next().unwrap().parse()?;
372372
let rotation: f32 = seperator.next().unwrap().parse()?;
373-
let colour1: isize = seperator.next().unwrap().parse()?;
374-
let colour2: isize = seperator
373+
let colour1: i32 = seperator.next().unwrap().parse()?;
374+
let colour2: i32 = seperator
375375
.next()
376376
.unwrap()
377377
.split(' ')
@@ -425,7 +425,7 @@ pub fn game_entry() -> Result<(), Box<dyn std::error::Error>> {
425425
SetGameModeText("Grand Larceny");
426426
ShowPlayerMarkers(1);
427427
ShowNameTags(true);
428-
SetNameTagDrawDistance(40.0);
428+
SetNameTagsDrawDistance(40.0);
429429
EnableStuntBonusForAll(false);
430430
DisableInteriorEnterExits();
431431
SetWeather(2);
@@ -467,10 +467,11 @@ pub fn game_entry() -> Result<(), Box<dyn std::error::Error>> {
467467

468468
let mut total_vehicles = 0;
469469
for file in vehicle_file_list {
470-
total_vehicles += load_static_vehicles_from_file(&format!("vehicles/{file}.txt"))?;
470+
total_vehicles +=
471+
load_static_vehicles_from_file(&format!("scriptfiles/vehicles/{file}.txt"))?;
471472
}
472473

473-
omp::core::Print(&format!("Total vehicles from files: {total_vehicles}"));
474+
omp::core::Log(&format!("Total vehicles from files: {total_vehicles}"));
474475

475476
Ok(())
476477
}

examples/grandlarc/src/minigun.rs

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
use omp::{
2+
events::Events,
3+
players::{Player, PlayerBulletData, PlayerWeapon},
4+
terminate_event,
5+
};
6+
7+
pub struct MiniGunDetector {
8+
pub on_player_shot_minigun: fn(player: Player),
9+
}
10+
11+
impl Events for MiniGunDetector {
12+
fn on_player_shot_missed(&mut self, player: Player, bullet_data: PlayerBulletData) -> bool {
13+
if bullet_data.weapon == PlayerWeapon::Minigun {
14+
(self.on_player_shot_minigun)(player);
15+
terminate_event!(true);
16+
}
17+
true
18+
}
19+
}

omp-codegen/src/callbacks.rs

Lines changed: 0 additions & 136 deletions
This file was deleted.

0 commit comments

Comments
 (0)