Ayiishi

Untitled

Jul 18th, 2024 (edited)
519
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Rust 1.82 KB | None | 0 0
  1.     pub fn update(&mut self, game_time: f64) {
  2.         self.game_time = game_time;
  3.  
  4.         if self.last_update.elapsed().as_millis() < 10 {
  5.             self.update_casts();
  6.             return;
  7.         }
  8.         self.last_update = Instant::now();
  9.  
  10.         if let Ok(base_address) = self
  11.             .process
  12.             .read_mem::<usize>(self.module_base_address + OFFSETS.object_manager)
  13.         {
  14.             self.units.clear();
  15.             if base_address == 0 {
  16.                 return;
  17.             }
  18.  
  19.             self.raid_targets.clear();
  20.             for i in 0..=7 {
  21.                 let guid = self.get_raid_target_guid(i);
  22.                 self.raid_targets.push(guid);
  23.             }
  24.  
  25.             let first_entity = base_address + VISIBLE_OBJECTS;
  26.             let mut ptr = self.process.read_mem::<usize>(first_entity).unwrap();
  27.             if ptr == first_entity {
  28.                 return;
  29.             }
  30.             loop {
  31.                 let entry = ptr - 0x28;
  32.                 let guid = self.process.read_mem::<i128>(entry + 0x8).unwrap();
  33.                 let object_type = self.process.read_mem::<u8>(entry + 0x1).unwrap();
  34.                 if let Some(mut unit) = self.get_entity(entry, object_type, guid) {
  35.                     unit.game_time = self.game_time;
  36.                     self.units.insert(guid, unit);
  37.                 }
  38.                 ptr = self.process.read_mem::<usize>(ptr).unwrap();
  39.  
  40.                 if ptr == first_entity || ptr == 0 {
  41.                     break;
  42.                 }
  43.             }
  44.  
  45.             let active_player_guid = self.get_active_player_guid();
  46.             for (_guid, unit) in self.units.iter_mut() {
  47.                 // if _guid == &active_player_guid {
  48.                 // unit.update();
  49.                 // }
  50.                 unit.update();
  51.             }
  52.         }
  53.     }
Advertisement
Add Comment
Please, Sign In to add comment