12131
This commit is contained in:
@@ -335,7 +335,7 @@ int Controller::hook_PacketDispatcher_doDispatch(PacketDispatcher *a1, CUser *us
|
||||
|
||||
return Ret;
|
||||
}
|
||||
// 组队
|
||||
// 组队 创建和加入
|
||||
else if (packet_id == 10)
|
||||
{
|
||||
std::lock_guard<std::recursive_mutex> lock(SqMtx);
|
||||
@@ -355,6 +355,79 @@ int Controller::hook_PacketDispatcher_doDispatch(PacketDispatcher *a1, CUser *us
|
||||
if (!R)
|
||||
return 0;
|
||||
}
|
||||
// 组队 同意组队和同意加入
|
||||
else if (packet_id == 11)
|
||||
{
|
||||
int Ret = Get()->old_PacketDispatcher_doDispatch(a1, user, packet_class, packet_id, packet_src, packet_len, a7, a8);
|
||||
std::lock_guard<std::recursive_mutex> lock(SqMtx);
|
||||
// 执行虚拟机Main函数
|
||||
SQInteger top = sq_gettop(v); // saves the stack size before the call
|
||||
sq_pushroottable(v); // pushes the global table
|
||||
sq_pushstring(v, _SC("Cb_userpartyagree"), -1);
|
||||
if (SQ_SUCCEEDED(sq_get(v, -2)))
|
||||
{ // gets the fie123oo' from the global table
|
||||
sq_pushroottable(v); // push the 'this' (in this case is the global table)
|
||||
sq_pushuserpointer(v, user);
|
||||
sq_call(v, 2, SQTrue, SQFalse); // calls the function
|
||||
}
|
||||
sq_settop(v, top); // restores the original stack size
|
||||
return Ret;
|
||||
}
|
||||
// 组队 退出队伍
|
||||
else if (packet_id == 13)
|
||||
{
|
||||
int Ret = Get()->old_PacketDispatcher_doDispatch(a1, user, packet_class, packet_id, packet_src, packet_len, a7, a8);
|
||||
std::lock_guard<std::recursive_mutex> lock(SqMtx);
|
||||
// 执行虚拟机Main函数
|
||||
SQInteger top = sq_gettop(v); // saves the stack size before the call
|
||||
sq_pushroottable(v); // pushes the global table
|
||||
sq_pushstring(v, _SC("Cb_userpartyexit"), -1);
|
||||
if (SQ_SUCCEEDED(sq_get(v, -2)))
|
||||
{ // gets the fie123oo' from the global table
|
||||
sq_pushroottable(v); // push the 'this' (in this case is the global table)
|
||||
sq_pushuserpointer(v, user);
|
||||
sq_call(v, 2, SQTrue, SQFalse); // calls the function
|
||||
}
|
||||
sq_settop(v, top); // restores the original stack size
|
||||
return Ret;
|
||||
}
|
||||
// 组队 踢出队伍
|
||||
else if (packet_id == 14)
|
||||
{
|
||||
int Ret = Get()->old_PacketDispatcher_doDispatch(a1, user, packet_class, packet_id, packet_src, packet_len, a7, a8);
|
||||
std::lock_guard<std::recursive_mutex> lock(SqMtx);
|
||||
// 执行虚拟机Main函数
|
||||
SQInteger top = sq_gettop(v); // saves the stack size before the call
|
||||
sq_pushroottable(v); // pushes the global table
|
||||
sq_pushstring(v, _SC("Cb_userpartykick"), -1);
|
||||
if (SQ_SUCCEEDED(sq_get(v, -2)))
|
||||
{ // gets the fie123oo' from the global table
|
||||
sq_pushroottable(v); // push the 'this' (in this case is the global table)
|
||||
sq_pushuserpointer(v, user);
|
||||
sq_call(v, 2, SQTrue, SQFalse); // calls the function
|
||||
}
|
||||
sq_settop(v, top); // restores the original stack size
|
||||
return Ret;
|
||||
}
|
||||
// 组队 委任队长
|
||||
else if (packet_id == 124)
|
||||
{
|
||||
int Ret = Get()->old_PacketDispatcher_doDispatch(a1, user, packet_class, packet_id, packet_src, packet_len, a7, a8);
|
||||
std::lock_guard<std::recursive_mutex> lock(SqMtx);
|
||||
// 执行虚拟机Main函数
|
||||
SQInteger top = sq_gettop(v); // saves the stack size before the call
|
||||
sq_pushroottable(v); // pushes the global table
|
||||
sq_pushstring(v, _SC("Cb_userpartygivemaster"), -1);
|
||||
if (SQ_SUCCEEDED(sq_get(v, -2)))
|
||||
{ // gets the fie123oo' from the global table
|
||||
sq_pushroottable(v); // push the 'this' (in this case is the global table)
|
||||
sq_pushuserpointer(v, user);
|
||||
sq_call(v, 2, SQTrue, SQFalse); // calls the function
|
||||
}
|
||||
sq_settop(v, top); // restores the original stack size
|
||||
return Ret;
|
||||
}
|
||||
|
||||
// 下线
|
||||
else if (packet_id == 3)
|
||||
{
|
||||
|
||||
@@ -778,11 +778,11 @@ void Lenheart()
|
||||
if (!checkGame("df_game_r"))
|
||||
{
|
||||
|
||||
// int a = 1;
|
||||
// void *buf = malloc(4);
|
||||
// CMem::WriteBytes(buf, &a, 4);
|
||||
// unsigned int nMaxGrade = 100;
|
||||
// bGMMode = 1;
|
||||
int a = 1;
|
||||
void *buf = malloc(4);
|
||||
CMem::WriteBytes(buf, &a, 4);
|
||||
unsigned int nMaxGrade = 90;
|
||||
bGMMode = 1;
|
||||
|
||||
// max_level = nMaxGrade;
|
||||
|
||||
@@ -803,21 +803,21 @@ void Lenheart()
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x31C128), 0x7E);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x31C129), 0x06);
|
||||
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x547005), nMaxGrade);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x61AF55), nMaxGrade);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x61B0F3), nMaxGrade);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x61DD28), nMaxGrade - 1);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x61E86A), nMaxGrade);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x61EE9C), nMaxGrade - 1);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x6224A8), nMaxGrade - 1);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x622929), nMaxGrade);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x641D4B), nMaxGrade - 1);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x647ECE), nMaxGrade);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x647EDA), nMaxGrade);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x647F82), nMaxGrade);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x647F88), nMaxGrade);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x66521D), nMaxGrade);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x665223), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x547005), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x61AF55), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x61B0F3), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x61DD28), nMaxGrade - 1);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x61E86A), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x61EE9C), nMaxGrade - 1);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x6224A8), nMaxGrade - 1);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x622929), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x641D4B), nMaxGrade - 1);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x647ECE), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x647EDA), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x647F82), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x647F88), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x66521D), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x665223), nMaxGrade);
|
||||
// SUBHOOK_SETUP(addServerHackCnt);
|
||||
// SUBHOOK_SETUP(put_header);
|
||||
// SUBHOOK_SETUP(IsCurCharacVisible);
|
||||
@@ -869,23 +869,23 @@ void Lenheart()
|
||||
->init();
|
||||
// SUBHOOK_SETUP(isSocketAvatar);
|
||||
|
||||
// if (nMaxGrade > 70)
|
||||
// {
|
||||
// // 以下需要扩充类大小, 修改偏移
|
||||
// CMem::WriteUInt(MAIN_OFFSET(0x87162 + 3), 0xB678 + nMaxGrade * 4 + nMaxGrade * 12);
|
||||
// // CDataManager::set_reward_sp
|
||||
// CMem::WriteUInt(MAIN_OFFSET(0x318C26 + 2), 10836 + 840);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x318C3B), nMaxGrade);
|
||||
// CMem::WriteUInt(MAIN_OFFSET(0x318C68 + 2), 10836 + 840);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x318C79), nMaxGrade);
|
||||
// // CDataManager::GetSpAtLevelUp
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x318CC4), nMaxGrade);
|
||||
// CMem::WriteUInt(MAIN_OFFSET(0x318CD4 + 2), 10836 + 840);
|
||||
// }
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x61B8F6), nMaxGrade);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x622659), nMaxGrade);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x622941), nMaxGrade);
|
||||
// CMem::WriteUChar(MAIN_OFFSET(0x622941), nMaxGrade);
|
||||
if (nMaxGrade > 70)
|
||||
{
|
||||
// 以下需要扩充类大小, 修改偏移
|
||||
CMem::WriteUInt(MAIN_OFFSET(0x87162 + 3), 0xB678 + nMaxGrade * 4 + nMaxGrade * 12);
|
||||
// CDataManager::set_reward_sp
|
||||
CMem::WriteUInt(MAIN_OFFSET(0x318C26 + 2), 10836 + 840);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x318C3B), nMaxGrade);
|
||||
CMem::WriteUInt(MAIN_OFFSET(0x318C68 + 2), 10836 + 840);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x318C79), nMaxGrade);
|
||||
// CDataManager::GetSpAtLevelUp
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x318CC4), nMaxGrade);
|
||||
CMem::WriteUInt(MAIN_OFFSET(0x318CD4 + 2), 10836 + 840);
|
||||
}
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x61B8F6), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x622659), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x622941), nMaxGrade);
|
||||
CMem::WriteUChar(MAIN_OFFSET(0x622941), nMaxGrade);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
#include <chrono>
|
||||
#include "SqrReqScript.hpp"
|
||||
|
||||
#define WEBSCRIPT true;
|
||||
// #define WEBSCRIPT true;
|
||||
|
||||
using asio::ip::tcp;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user