mirror of
https://github.com/0O0o0oOoO00/Alas.git
synced 2026-05-20 14:09:29 +08:00
add: webui of luahook
This commit is contained in:
@@ -590,6 +590,77 @@ void Cracker::hook_all_lua_functions() {
|
||||
};
|
||||
}
|
||||
|
||||
#define SET_SHIP_PROPERTIES_VALUE(f) v[#f]["value"] = m_globle_ship_properties.f
|
||||
|
||||
Json::Value Cracker::get_config_json() {
|
||||
Json::Value j;
|
||||
j["globalSpeedup"]["enabled"] = m_flag.GLOBAL_SPEEDUP.load();
|
||||
j["globalSpeedup"]["value"] = m_global_speedup_rate.load();
|
||||
|
||||
j["chapterFastMove"]["enabled"] = m_flag.FAST_STAGE_MOVE_CRACK.load();
|
||||
j["opsiFastMove"]["enabled"] = m_flag.OPSI_FAST_MOVE.load();
|
||||
j["noBBAnimation"]["enabled"] = m_flag.NO_BB_ANIMATION.load();
|
||||
j["noEmotionWarning"]["enabled"] = m_flag.NO_EMOTION_WARNING.load();
|
||||
j["removeHardModeShipPropertiesLimit"]["enabled"] = m_flag.REMOVE_HARD_MODE_SHIP_PROPERTIES_LIMIT.load();
|
||||
j["removeHardModeShipTypeLimit"]["enabled"] = m_flag.REMOVE_HARD_MODE_SHIP_TYPE_LIMIT.load();
|
||||
|
||||
j["globalShipProperties"]["enabled"] = m_flag.GLOBAL_SHIP_PROPERTIES_CRACK.load();
|
||||
j["globalShipProperties"]["value"] = [this] -> Json::Value {
|
||||
Json::Value v;
|
||||
SET_SHIP_PROPERTIES_VALUE(armor);
|
||||
SET_SHIP_PROPERTIES_VALUE(speed);
|
||||
SET_SHIP_PROPERTIES_VALUE(antiaircraft);
|
||||
SET_SHIP_PROPERTIES_VALUE(oxy_recovery_bench);
|
||||
SET_SHIP_PROPERTIES_VALUE(torpedo);
|
||||
SET_SHIP_PROPERTIES_VALUE(hit);
|
||||
SET_SHIP_PROPERTIES_VALUE(sonarRange);
|
||||
SET_SHIP_PROPERTIES_VALUE(attack_duration);
|
||||
SET_SHIP_PROPERTIES_VALUE(raid_distance);
|
||||
SET_SHIP_PROPERTIES_VALUE(oxy_recovery_surface);
|
||||
SET_SHIP_PROPERTIES_VALUE(oxy_recovery);
|
||||
SET_SHIP_PROPERTIES_VALUE(dodge);
|
||||
SET_SHIP_PROPERTIES_VALUE(luck);
|
||||
SET_SHIP_PROPERTIES_VALUE(reload);
|
||||
SET_SHIP_PROPERTIES_VALUE(oxy_cost);
|
||||
SET_SHIP_PROPERTIES_VALUE(durability);
|
||||
SET_SHIP_PROPERTIES_VALUE(air);
|
||||
SET_SHIP_PROPERTIES_VALUE(oxy_max);
|
||||
SET_SHIP_PROPERTIES_VALUE(cannon);
|
||||
SET_SHIP_PROPERTIES_VALUE(antisub);
|
||||
return v;
|
||||
}();
|
||||
|
||||
j["ggFactor"]["enabled"] = m_flag.GG_FACTOR.load();
|
||||
j["ggFactor"]["value"] = m_gg_factor;
|
||||
return j;
|
||||
}
|
||||
|
||||
#define APPLY_CONFIG(f) m_##f = config.f
|
||||
#define APPLY_ATOMIC_CONFIG(f) m_##f.store(config.f)
|
||||
|
||||
void Cracker::apply_config(Config& config) {
|
||||
APPLY_ATOMIC_CONFIG(flag.GLOBAL_SHIP_PROPERTIES_CRACK);
|
||||
APPLY_ATOMIC_CONFIG(flag.FAST_STAGE_MOVE_CRACK);
|
||||
APPLY_ATOMIC_CONFIG(flag.REMOVE_HARD_MODE_SHIP_PROPERTIES_LIMIT);
|
||||
APPLY_ATOMIC_CONFIG(flag.REMOVE_HARD_MODE_SHIP_TYPE_LIMIT);
|
||||
APPLY_ATOMIC_CONFIG(flag.NO_BB_ANIMATION);
|
||||
APPLY_ATOMIC_CONFIG(flag.NO_EMOTION_WARNING);
|
||||
APPLY_ATOMIC_CONFIG(flag.OPSI_FAST_MOVE);
|
||||
APPLY_ATOMIC_CONFIG(flag.GG_FACTOR);
|
||||
APPLY_ATOMIC_CONFIG(flag.GLOBAL_SPEEDUP);
|
||||
|
||||
APPLY_CONFIG(globle_ship_properties);
|
||||
APPLY_ATOMIC_CONFIG(global_speedup_rate);
|
||||
APPLY_CONFIG(gg_factor);
|
||||
|
||||
if (config.flag.GLOBAL_SPEEDUP) {
|
||||
update_global_speedup_rate(config.global_speedup_rate);
|
||||
enable_global_speedup();
|
||||
} else {
|
||||
disable_global_speedup();
|
||||
}
|
||||
}
|
||||
|
||||
#define MODIFY_PROPERTY(name) \
|
||||
if (new_properties.name != -1) { \
|
||||
properties[#name] = new_properties.name; \
|
||||
|
||||
Reference in New Issue
Block a user