This commit is contained in:
@@ -84,7 +84,7 @@ ffi_arc_getter!(Pokemon, coloring, u8);
|
||||
|
||||
/// Gets the held item of a Pokemon
|
||||
#[no_mangle]
|
||||
extern "C" fn pokemon_held_item(ptr: ExternPointer<Arc<Pokemon>>) -> IdentifiablePointer<Arc<Item>> {
|
||||
extern "C" fn pokemon_held_item(ptr: ExternPointer<Arc<Pokemon>>) -> IdentifiablePointer<Arc<dyn Item>> {
|
||||
if let Some(v) = ptr.as_ref().held_item().read().as_ref() {
|
||||
v.clone().into()
|
||||
} else {
|
||||
@@ -103,8 +103,8 @@ extern "C" fn pokemon_has_held_item(ptr: ExternPointer<Arc<Pokemon>>, name: *con
|
||||
#[no_mangle]
|
||||
extern "C" fn pokemon_set_held_item(
|
||||
ptr: ExternPointer<Arc<Pokemon>>,
|
||||
item: ExternPointer<Arc<Item>>,
|
||||
) -> IdentifiablePointer<Arc<Item>> {
|
||||
item: ExternPointer<Arc<dyn Item>>,
|
||||
) -> IdentifiablePointer<Arc<dyn Item>> {
|
||||
if let Some(v) = ptr.as_ref().set_held_item(item.as_ref()) {
|
||||
v.into()
|
||||
} else {
|
||||
@@ -114,7 +114,7 @@ extern "C" fn pokemon_set_held_item(
|
||||
|
||||
/// Removes the held item from the Pokemon. Returns the previously held item.
|
||||
#[no_mangle]
|
||||
extern "C" fn pokemon_remove_held_item(ptr: ExternPointer<Arc<Pokemon>>) -> IdentifiablePointer<Arc<Item>> {
|
||||
extern "C" fn pokemon_remove_held_item(ptr: ExternPointer<Arc<Pokemon>>) -> IdentifiablePointer<Arc<dyn Item>> {
|
||||
if let Some(v) = ptr.as_ref().remove_held_item() {
|
||||
v.into()
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user