Fixes for interop with host

This commit is contained in:
2022-09-16 11:01:17 +02:00
parent 3c8bd5f7c5
commit f3f5b2acb0
9 changed files with 29 additions and 36 deletions

View File

@@ -49,7 +49,7 @@ impl BattleSide {
pub fn has_volatile(&self, script_name: &str) -> bool {
unsafe {
let script_name = CString::new(script_name).unwrap();
battleside_has_volatile(self.inner.reference, script_name.into_raw())
battleside_has_volatile(self.inner.reference, script_name.as_ptr())
}
}
@@ -66,7 +66,7 @@ impl BattleSide {
pub fn remove_volatile(&self, script: &dyn Script) {
unsafe {
let name = CString::new(script.get_name()).unwrap();
battleside_remove_volatile(self.inner.reference, name.into_raw());
battleside_remove_volatile(self.inner.reference, name.as_ptr());
}
}
@@ -77,7 +77,7 @@ impl BattleSide {
{
unsafe {
let script_name = CString::new(script_name).unwrap();
let s = battleside_get_volatile(self.inner.reference, script_name.into_raw()).val();
let s = battleside_get_volatile(self.inner.reference, script_name.as_ptr()).val();
if let Some(s) = s {
Some(s.as_any().downcast_ref().unwrap())
} else {

View File

@@ -207,7 +207,7 @@ impl Pokemon {
pub fn add_volatile_by_name(&self, script_name: &str) -> &dyn Script {
unsafe {
let ptr = CString::new(script_name).unwrap();
pokemon_add_volatile_by_name(self.inner.reference, ptr.into_raw())
pokemon_add_volatile_by_name(self.inner.reference, ptr.as_ptr())
.val()
.unwrap()
}
@@ -217,7 +217,7 @@ impl Pokemon {
pub fn remove_volatile(&self, script: &dyn Script) {
unsafe {
let name = CString::new(script.get_name()).unwrap();
pokemon_remove_volatile(self.inner.reference, name.into_raw());
pokemon_remove_volatile(self.inner.reference, name.as_ptr());
}
}
@@ -228,7 +228,7 @@ impl Pokemon {
{
unsafe {
let script_name = CString::new(script_name).unwrap();
let s = pokemon_get_volatile(self.inner.reference, script_name.into_raw()).val();
let s = pokemon_get_volatile(self.inner.reference, script_name.as_ptr()).val();
if let Some(s) = s {
Some(s.as_any().downcast_ref().unwrap())
} else {