help to non-existing command + audio fix

This commit is contained in:
MihailRis 2024-05-17 17:50:10 +03:00
parent 56ab8c5c84
commit 2809cc9b86
2 changed files with 9 additions and 5 deletions

View File

@ -255,16 +255,17 @@ speakerid_t audio::play(
sound = sound->variants.at(index).get();
}
}
auto speaker = sound->newInstance(priority, channel);
if (speaker == nullptr) {
auto speaker_ptr = sound->newInstance(priority, channel);
if (speaker_ptr == nullptr) {
remove_lower_priority_speaker(priority);
speaker = sound->newInstance(priority, channel);
speaker_ptr = sound->newInstance(priority, channel);
}
if (speaker == nullptr) {
if (speaker_ptr == nullptr) {
return 0;
}
auto speaker = speaker_ptr.get();
speakerid_t id = nextId++;
speakers.emplace(id, std::move(speaker));
speakers.emplace(id, std::move(speaker_ptr));
speaker->setPosition(position);
speaker->setVolume(volume);
speaker->setPitch(pitch);

View File

@ -66,6 +66,9 @@ static int l_get_command_info(lua_State* L) {
auto interpreter = engine->getCommandsInterpreter();
auto repo = interpreter->getRepository();
auto command = repo->get(name);
if (command == nullptr) {
return 0;
}
const auto& args = command->getArgs();
const auto& kwargs = command->getKwArgs();