wip: followup for bomb search algo
- Use 64 indicies for chunking batch reads - Remove unused function - Bump version to 0.2.4
This commit is contained in:
parent
8cf6664c4b
commit
2c7ba14ced
2
Cargo.lock
generated
2
Cargo.lock
generated
@ -1519,7 +1519,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "radarflow"
|
name = "radarflow"
|
||||||
version = "0.2.3"
|
version = "0.2.4"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"axum",
|
"axum",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "radarflow"
|
name = "radarflow"
|
||||||
version = "0.2.3"
|
version = "0.2.4"
|
||||||
authors = ["Janek S <development@superyu.xyz"]
|
authors = ["Janek S <development@superyu.xyz"]
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
|
|
||||||
|
@ -134,16 +134,6 @@ impl DmaCtx {
|
|||||||
Ok(ptr2)
|
Ok(ptr2)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Professionally engineered function to quickly check if the entity has class name "weapon_c4"
|
|
||||||
pub fn is_dropped_c4(&mut self, entity_ptr: Address) -> anyhow::Result<bool> {
|
|
||||||
let entity_identity_ptr = self.process.read_addr64(entity_ptr + cs2dumper::client::CEntityInstance::m_pEntity)?;
|
|
||||||
let class_name_ptr = self.process.read_addr64(entity_identity_ptr + cs2dumper::client::CEntityIdentity::m_designerName)?;
|
|
||||||
|
|
||||||
let data = self.process.read_raw(class_name_ptr + 7, 2)?;
|
|
||||||
let is_c4 = data == "c4".as_bytes();
|
|
||||||
Ok(is_c4)
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Professionally engineered function to quickly check if the entity has class name "cs_player_controller"
|
/// Professionally engineered function to quickly check if the entity has class name "cs_player_controller"
|
||||||
pub fn is_cs_player_controller(&mut self, entity_ptr: Address) -> anyhow::Result<bool> {
|
pub fn is_cs_player_controller(&mut self, entity_ptr: Address) -> anyhow::Result<bool> {
|
||||||
let entity_identity_ptr = self.process.read_addr64(entity_ptr + cs2dumper::client::CEntityInstance::m_pEntity)?;
|
let entity_identity_ptr = self.process.read_addr64(entity_ptr + cs2dumper::client::CEntityInstance::m_pEntity)?;
|
||||||
|
@ -42,8 +42,8 @@ impl CsData {
|
|||||||
if self.bomb_dropped {
|
if self.bomb_dropped {
|
||||||
// If the bomb is dropped, do a reverse entity list loop with early exit when we found the bomb.
|
// If the bomb is dropped, do a reverse entity list loop with early exit when we found the bomb.
|
||||||
|
|
||||||
// We search in chunks of 512 indexes
|
// We search in chunks of 64 indexes
|
||||||
for chunk in &(0..=self.highest_index).rev().into_iter().chunks(512) {
|
for chunk in &(0..=self.highest_index).rev().into_iter().chunks(64) {
|
||||||
// data vec: (address, index, entity_identity_ptr, designer_name_ptr, designer_name_buff)
|
// data vec: (address, index, entity_identity_ptr, designer_name_ptr, designer_name_buff)
|
||||||
let mut data_vec: Vec<(u64, i32, u64, u64, [u8; 2])> = chunk
|
let mut data_vec: Vec<(u64, i32, u64, u64, [u8; 2])> = chunk
|
||||||
.map(|idx| (0u64, idx, 0u64, 0u64, [0u8; 2]))
|
.map(|idx| (0u64, idx, 0u64, 0u64, [0u8; 2]))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user