|
@@ -1310,8 +1310,16 @@ void RecipeContext::executeNextStep()
|
|
|
if (retcommand[i].Param[0] == '\0') continue; // 跳过空元素
|
|
|
CommandMapST* rc = retcommand + i;
|
|
|
//LOG->Log(tlInfo, FLEAVEA"Command = %s,Param = %s", retcommand[i].Command, retcommand[i].Param);
|
|
|
-
|
|
|
- auto retnode = OP->select(rc->Command);
|
|
|
+ static char opName[MAX_NAME_LEN];
|
|
|
+ opName[0] = '\0';
|
|
|
+ if (strcmp(rc->Command, "SetBoatMotion") == 0) {
|
|
|
+ //TODO:boat运动,第一个参数拼到命令中
|
|
|
+ sprintf(opName, "SetBoatMotion.%s", SC->getBaseName(rc->Param, ';'));
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ strcpy(opName, rc->Command);
|
|
|
+ }
|
|
|
+ auto retnode = OP->select(opName);
|
|
|
retnode->setParams(rc->Param);
|
|
|
retnode->Do();
|
|
|
|