111
This commit is contained in:
@@ -803,19 +803,6 @@ void processDirectory(const std::string &directoryPath, std::unordered_map<std::
|
||||
sq_call(v, 2, SQFalse, SQTrue); // calls the function
|
||||
}
|
||||
sq_settop(v, top); // restores the original stack size
|
||||
|
||||
// // 文件有变动,写入文件路径
|
||||
// std::ofstream outputFile("/dp_s/auto_reload.dat", std::ios_base::app);
|
||||
// if (outputFile.is_open())
|
||||
// {
|
||||
// std::string ins = "dofile(\"" + filePath + "\");";
|
||||
// outputFile << ins << std::endl;
|
||||
// outputFile.close();
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// std::cerr << "无法创建输出文件。" << std::endl;
|
||||
// }
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -1001,6 +988,68 @@ static SQInteger L_HookEquimentUseJewel(HSQUIRRELVM v)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static SQInteger LongLongOperation(HSQUIRRELVM v)
|
||||
{
|
||||
const SQChar *valuebuf1;
|
||||
sq_getstring(v, 2, &valuebuf1);
|
||||
long long value1 = std::atoll(valuebuf1);
|
||||
|
||||
const SQChar *valuebuf2;
|
||||
sq_getstring(v, 3, &valuebuf2);
|
||||
long long value2 = std::atoll(valuebuf2);
|
||||
|
||||
const SQChar *TypeBuf;
|
||||
sq_getstring(v, 4, &TypeBuf);
|
||||
std::string Type(TypeBuf);
|
||||
|
||||
std::string RetString = "";
|
||||
if (Type == "+")
|
||||
{
|
||||
RetString = std::to_string(value1 + value2);
|
||||
}
|
||||
else if (Type == "-")
|
||||
{
|
||||
RetString = std::to_string(value1 - value2);
|
||||
}
|
||||
else if (Type == "*")
|
||||
{
|
||||
RetString = std::to_string((static_cast<double>(value1) * static_cast<double>(value2)));
|
||||
}
|
||||
else if (Type == "/")
|
||||
{
|
||||
RetString = std::to_string((static_cast<double>(value1) / static_cast<double>(value2)));
|
||||
}
|
||||
else if (Type == "%")
|
||||
{
|
||||
RetString = std::to_string(value1 % value2);
|
||||
}
|
||||
else if (Type == "format")
|
||||
{
|
||||
if (value1 < 1000)
|
||||
{
|
||||
RetString = std::to_string(value1);
|
||||
}
|
||||
else if (value1 < 1000000)
|
||||
{
|
||||
RetString = std::to_string(value1 / 1000.0) + "k";
|
||||
}
|
||||
else if (value1 < 1000000000)
|
||||
{
|
||||
RetString = std::to_string(value1 / 1000000.0) + "M";
|
||||
}
|
||||
else if (value1 < 1000000000000LL)
|
||||
{
|
||||
RetString = std::to_string(value1 / 1000000000.0) + "G";
|
||||
}
|
||||
else
|
||||
{
|
||||
RetString = std::to_string(value1 / 1000000000000.0) + "T";
|
||||
}
|
||||
}
|
||||
sq_pushstring(v, RetString.c_str(), -1);
|
||||
return 1;
|
||||
}
|
||||
|
||||
static void RegisterGame(HSQUIRRELVM v)
|
||||
{
|
||||
getConfigPath(szGamePath, sizeof(szGamePath));
|
||||
@@ -1071,4 +1120,6 @@ static void RegisterGame(HSQUIRRELVM v)
|
||||
register_World_func(v, AutoReload, _SC("Sq_AutoReload"));
|
||||
// Hook装备镶嵌
|
||||
register_World_func(v, L_HookEquimentUseJewel, _SC("L_HookEquimentUseJewel"));
|
||||
//大数字计算
|
||||
register_World_func(v, LongLongOperation, _SC("Sq_LongLongOperation"));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user