From b4a64189b7fbf46f4acbd6b5c3fa6ab801abc5c3 Mon Sep 17 00:00:00 2001 From: Raphael Coeffic Date: Tue, 28 Dec 2021 09:51:59 +0100 Subject: [PATCH] Fixed custom functions "play sound" and trainer. --- .../firmwares/edgetx/yaml_customfunctiondata.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/companion/src/firmwares/edgetx/yaml_customfunctiondata.cpp b/companion/src/firmwares/edgetx/yaml_customfunctiondata.cpp index 010095551..8fcf1a113 100644 --- a/companion/src/firmwares/edgetx/yaml_customfunctiondata.cpp +++ b/companion/src/firmwares/edgetx/yaml_customfunctiondata.cpp @@ -153,7 +153,7 @@ Node convert::encode(const CustomFunctionData& rhs) def += LookupValue(trainerLut, p1); break; case FuncPlaySound: - def += std::to_string(rhs.param); + def += LookupValue(soundLut, rhs.param); break; case FuncPlayPrompt: case FuncPlayScript: @@ -252,13 +252,17 @@ bool convert::decode(const Node& node, def >> rhs.param; } break; case FuncTrainer: { + std::string value_str; + getline(def, value_str, ','); int value=0; - Node(def.str()) >> trainerLut >> value; + Node(value_str) >> trainerLut >> value; rhs.func = (AssignFunc)((int)rhs.func + value); } break; - case FuncPlaySound: - Node(def.str()) >> soundLut >> rhs.param; - break; + case FuncPlaySound: { + std::string snd; + getline(def, snd, ','); + Node(snd) >> soundLut >> rhs.param; + } break; case FuncPlayPrompt: case FuncPlayScript: case FuncBackgroundMusic: {