diff --git a/csgo2/csgo2.vcxproj b/csgo2/csgo2.vcxproj
index 897f09f..98c197e 100644
--- a/csgo2/csgo2.vcxproj
+++ b/csgo2/csgo2.vcxproj
@@ -158,6 +158,7 @@
+
@@ -172,17 +173,10 @@
-
-
-
-
-
-
+
-
-
@@ -196,6 +190,7 @@
+
@@ -212,10 +207,7 @@
-
-
-
-
+
Create
@@ -223,12 +215,11 @@
Create
Create
-
-
-
+
+
diff --git a/csgo2/csgo2.vcxproj.filters b/csgo2/csgo2.vcxproj.filters
index 8544c47..a677b18 100644
--- a/csgo2/csgo2.vcxproj.filters
+++ b/csgo2/csgo2.vcxproj.filters
@@ -49,27 +49,9 @@
{c28f9f29-7571-4821-9cbd-11f27692566a}
-
- {e26bdf5e-ad8d-4ed2-965c-1fdb958a6098}
-
{c5938a38-9035-4f7a-952c-156a8549bb54}
-
- {ec02337e-1abc-42a9-b29c-355278bf4bf2}
-
-
- {6c9da4be-92c5-4504-8c46-ab0cc612bfe5}
-
-
- {f1101bd0-b17e-4c9e-87f1-e34d97979e77}
-
-
- {63beb427-0b96-4062-83e0-752efb2ed5f0}
-
-
- {68556c7c-97c0-4e1e-82f0-e4b45b9ad40d}
-
{befb97b4-a3ba-48a8-84a8-c36a74d2d48c}
@@ -168,33 +150,9 @@
头文件\sdk\interfaces
-
- 头文件\native_sdk\interfaces
-
-
- 头文件\native_sdk\interfaces
-
-
- 头文件\native_sdk\interfaces
-
-
- 头文件\native_sdk\entity
-
头文件\memory
-
- 头文件\native_sdk\entity
-
-
- 头文件\native_sdk\handle
-
-
- 头文件\native_sdk\entity
-
-
- 头文件\native_sdk\interfaces
-
头文件\sdk\convar
@@ -219,6 +177,15 @@
头文件\players
+
+ 头文件
+
+
+ 头文件\native_sdk
+
+
+ 头文件\native_sdk
+
@@ -260,24 +227,9 @@
源文件\events
-
- 源文件\native_sdk\interfaces
-
-
+
源文件\memory
-
- 源文件\native_sdk\interfaces
-
-
- 源文件\native_sdk\interfaces
-
-
- 源文件\native_sdk\entity
-
-
- 源文件\native_sdk\handle
-
头文件\sdk\convar
@@ -287,8 +239,11 @@
源文件\players
-
- 源文件\native_sdk\entity
+
+ 源文件\native_sdk
+
+
+ 源文件\native_sdk
diff --git a/csgo2/dllmain.cpp b/csgo2/dllmain.cpp
index 6751781..476bf36 100644
--- a/csgo2/dllmain.cpp
+++ b/csgo2/dllmain.cpp
@@ -1,5 +1,5 @@
// dllmain.cpp : 定义 DLL 应用程序的入口点。
-#include "pch.h"
+#include "head.h"
auto unload() -> void {
hooks::unload();
diff --git a/csgo2/events.cpp b/csgo2/events.cpp
index c1bef74..8b0a85e 100644
--- a/csgo2/events.cpp
+++ b/csgo2/events.cpp
@@ -1,7 +1,4 @@
#include "events.h"
-#include "native_sdk/entity/cbaseplayercontroller.h"
-#include "player.h"
-#include "player_manager.h"
namespace events {
auto OnPlayerDeathEvent(IGameEvent* event) -> void {
@@ -13,21 +10,18 @@ auto OnPlayerDeathEvent(IGameEvent* event) -> void {
const auto attacker = reinterpret_cast(
event->GetPlayerPawn(&attackerNameParams));
- CGameEntitySystem* pEntitySystem = CGameEntitySystem::GetInstance();
- if (!pEntitySystem) return;
-
- for (int i = 1; i <= 64; ++i) {
- CBaseEntity* pEntity = pEntitySystem->GetBaseEntity(i);
- if (!pEntity) continue;
- if (pEntity->IsBasePlayerController()) {
- const auto player = reinterpret_cast(pEntity);
- if (player->m_hPawn().Get() == victim) {
- printf("Found Pawn Player: %d %s \n", player->GetRefEHandle().GetEntryIndex(),&player->m_iszPlayerName());
- break;
- }
- }
- }
//printf("player[%p] %s kill[%p] %llu\n", attacker, &attacker->m_iszPlayerName(), victim, &victim->m_steamID());
}
-auto OnPlayerChat(IGameEvent* event) -> void {}
+auto OnPlayerChat(CCSPlayerController* player, std::string message) -> bool {
+ auto [procesChatSuccess, chatType, chatCtx] = SdkTools::ProcessChatString(message);
+ if (procesChatSuccess == false) {
+ return false;
+ }
+
+ LOG("player %s say[%d]: %s steamid: %llu\n", &player->m_iszPlayerName(), chatType ,chatCtx.c_str(), player->m_steamID());
+ if (chatCtx.at(0) == '/' || chatCtx.at(0) == '!') {
+ return true;
+ }
+ return false;
+}
} // namespace events
diff --git a/csgo2/events.h b/csgo2/events.h
index 50c2e13..56bcc37 100644
--- a/csgo2/events.h
+++ b/csgo2/events.h
@@ -1,8 +1,7 @@
#pragma once
-#include "pch.h"
-#include "sdk/gameevent/IGameEvent.h"
-
+#include "head.h"
+class CCSPlayerController;
namespace events {
auto OnPlayerDeathEvent(IGameEvent* event) -> void;
- auto OnPlayerChat(IGameEvent* event) -> void;
+ auto OnPlayerChat(CCSPlayerController* player, std::string message) -> bool;
}
diff --git a/csgo2/global.h b/csgo2/global.h
index a5cfaed..b6797cd 100644
--- a/csgo2/global.h
+++ b/csgo2/global.h
@@ -1,5 +1,5 @@
#pragma once
-#include "pch.h"
+#include "head.h"
namespace global {
extern bool Exit;
extern int MaxPlayers;
diff --git a/csgo2/head.h b/csgo2/head.h
new file mode 100644
index 0000000..4423a50
--- /dev/null
+++ b/csgo2/head.h
@@ -0,0 +1,62 @@
+#pragma once
+#include
+#include
+#include
+#include
+#include
+#include
+#include