-
Автор темы
- #1
цель в том что-бы получать позиции ентити, и писать их в консоль
делал по вот этому видео:
но не работает, скриншот:
полагаю всё дело в 0x08 т.к видео 4 недельной давности
код:
помогите как исправить это, ну или чем заменить 0x08 (если дело в нём)
делал по вот этому видео:
Пожалуйста, авторизуйтесь для просмотра ссылки.
полагаю всё дело в 0x08 т.к видео 4 недельной давности
код:
код:
using ClickableTransparentOverlay;
using cs2_external;
using Swed64;
using System.Numerics;
using ImGuiNET;
namespace CS2MULTI
{
class Program: Overlay
{
Swed swed = new Swed("cs2");
Offsets offsets = new Offsets();
Entity localPlayer = new Entity();
List<Entity> entities = new List<Entity>();
IntPtr client;
protected override void Render()
{
ImGui.Begin("suck | cs2");
}
void MainLogic()
{
client = swed.GetModuleBase("client.dll");
while (true) // always run
{
entities.Clear();
localPlayer.address = swed.ReadPointer(client, offsets.localPlayer);
UpdateEntity(localPlayer);
UpdateEntites();
foreach (var entity in entities)
{
Console.WriteLine($"Entity heatlh: {entity.health}, Entity position: {entity.origin}");
}
Thread.Sleep(100);
Console.Clear();
}
}
void UpdateEntites()
{
for (int i = 0; i < 64; i++)
{
IntPtr tempEntityAddress = swed.ReadPointer(client, offsets.entityList + i * 0x08);
if (tempEntityAddress == IntPtr.Zero)
{
continue;
}
Entity entity = new Entity();
entity.address = tempEntityAddress;
UpdateEntity(entity);
if (entity.health < 1 || entity.health > 100)
continue;
if (!entities.Any(element => element.origin.X == entity.origin.X))
{
entities.Add(entity);
}
}
}
void UpdateEntity(Entity entity)
{
entity.health = swed.ReadInt(entity.address, offsets.health);
entity.origin = swed.ReadVec(entity.address, offsets.origin);
}
static void Main(string[] args)
{
// run logic methods and more
Program program = new Program();
program.Start().Wait();
Thread mainLogicThread = new Thread(program.MainLogic) { IsBackground = true }; // logic thread
mainLogicThread.Start();
}
}
}