Small gsc fixes
This commit is contained in:
parent
57c04f4eb7
commit
1441efaa06
@ -344,8 +344,6 @@ namespace gsc
|
|||||||
utils::hook::inject(SELECT_VALUE(0x3BDC36_b, 0x504C66_b) + 3, &meth_table);
|
utils::hook::inject(SELECT_VALUE(0x3BDC36_b, 0x504C66_b) + 3, &meth_table);
|
||||||
utils::hook::set<uint32_t>(SELECT_VALUE(0x3BDC3F_b, 0x504C6F_b), sizeof(meth_table));
|
utils::hook::set<uint32_t>(SELECT_VALUE(0x3BDC3F_b, 0x504C6F_b), sizeof(meth_table));
|
||||||
|
|
||||||
developer_script = dvars::register_bool("developer_script", false, 0, "Enable developer script comments");
|
|
||||||
|
|
||||||
utils::hook::nop(SELECT_VALUE(0x3CB723_b, 0x512783_b), 8);
|
utils::hook::nop(SELECT_VALUE(0x3CB723_b, 0x512783_b), 8);
|
||||||
utils::hook::call(SELECT_VALUE(0x3CB723_b, 0x512783_b), vm_call_builtin_function_stub);
|
utils::hook::call(SELECT_VALUE(0x3CB723_b, 0x512783_b), vm_call_builtin_function_stub);
|
||||||
|
|
||||||
|
@ -430,6 +430,12 @@ namespace gsc
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void pre_destroy() override
|
||||||
|
{
|
||||||
|
scr_begin_load_scripts_hook.clear();
|
||||||
|
scr_end_load_scripts_hook.clear();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -63,7 +63,7 @@ namespace scripting
|
|||||||
const auto* string = game::SL_ConvertToString(string_value);
|
const auto* string = game::SL_ConvertToString(string_value);
|
||||||
if (string)
|
if (string)
|
||||||
{
|
{
|
||||||
event e;
|
event e{};
|
||||||
e.name = string;
|
e.name = string;
|
||||||
e.entity = notify_list_owner_id;
|
e.entity = notify_list_owner_id;
|
||||||
|
|
||||||
@ -159,6 +159,7 @@ namespace scripting
|
|||||||
if (file_id)
|
if (file_id)
|
||||||
{
|
{
|
||||||
current_file_id = static_cast<std::uint16_t>(file_id);
|
current_file_id = static_cast<std::uint16_t>(file_id);
|
||||||
|
current_file = scripting::get_token(current_file_id);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -172,10 +173,6 @@ namespace scripting
|
|||||||
void add_function_sort(unsigned int id, const char* pos)
|
void add_function_sort(unsigned int id, const char* pos)
|
||||||
{
|
{
|
||||||
std::string filename = current_file;
|
std::string filename = current_file;
|
||||||
if (current_file_id)
|
|
||||||
{
|
|
||||||
filename = scripting::get_token(current_file_id);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!script_function_table_sort.contains(filename))
|
if (!script_function_table_sort.contains(filename))
|
||||||
{
|
{
|
||||||
@ -203,15 +200,7 @@ namespace scripting
|
|||||||
{
|
{
|
||||||
add_function_sort(thread_name, code_pos);
|
add_function_sort(thread_name, code_pos);
|
||||||
|
|
||||||
if (current_file_id)
|
add_function(current_file, thread_name, code_pos);
|
||||||
{
|
|
||||||
const auto name = get_token(current_file_id);
|
|
||||||
add_function(name, thread_name, code_pos);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
add_function(current_file, thread_name, code_pos);
|
|
||||||
}
|
|
||||||
|
|
||||||
scr_set_thread_position_hook.invoke<void>(thread_name, code_pos);
|
scr_set_thread_position_hook.invoke<void>(thread_name, code_pos);
|
||||||
}
|
}
|
||||||
@ -252,12 +241,12 @@ namespace scripting
|
|||||||
|
|
||||||
std::optional<std::string> get_canonical_string(const unsigned int id)
|
std::optional<std::string> get_canonical_string(const unsigned int id)
|
||||||
{
|
{
|
||||||
if (const auto itr = canonical_string_table.find(id); itr != canonical_string_table.end())
|
if (canonical_string_table.find(id) == canonical_string_table.end())
|
||||||
{
|
{
|
||||||
return itr->second;
|
return {};
|
||||||
}
|
}
|
||||||
|
|
||||||
return {};
|
return {canonical_string_table[id]};
|
||||||
}
|
}
|
||||||
|
|
||||||
class component final : public component_interface
|
class component final : public component_interface
|
||||||
|
Loading…
Reference in New Issue
Block a user