فهرست منبع

开发:支持audio

xlxin 2 سال پیش
والد
کامیت
937bcd8a26
6فایلهای تغییر یافته به همراه23 افزوده شده و 9 حذف شده
  1. 8 5
      datacpp/dataManager.cpp
  2. 8 1
      datacpp/elemPropertyData.cpp
  3. 1 0
      datahpp/elemPropertyData.h
  4. 1 1
      file/template.json
  5. 3 1
      pool.cpp
  6. 2 1
      pool.ui

+ 8 - 5
datacpp/dataManager.cpp

@@ -389,6 +389,7 @@ void DataManager::changeContainTable(QString elem, int index, int row, int colum
     else if(column == 4) table[row].effectTimeline = data;
     else if(column == 5) table[row].vanishTimeline = data;
     else if(column == 6) table[row].zOrder = data;
+    else if(column == 7) table[row].audio = data;
 }
 bool DataManager::existPool(QString elem, QString poolName)
 {
@@ -436,6 +437,7 @@ void DataManager::copyKey(QString elem, int poolIndex, QString keyName, int copy
     key.res = copyData.res;
     key.vanishTimeline = copyData.vanishTimeline;
     key.zOrder = copyData.zOrder;
+    key.audio = copyData.audio;
     elements[elem]->container[poolIndex].table.push_back(key);
 }
 
@@ -636,17 +638,18 @@ bool DataManager::exportIsValid()
             //触发动作暂不处理
 
             //事件配置
-            QVector<ElemPropertyData::EventConfig> eventVec = statusVec[j].eventConfig;
+            const QVector<ElemPropertyData::EventConfig>& eventVec = statusVec[j].eventConfig;
             for(int k=0;k<eventVec.size();k++)
             {
                 if(eventVec[k].name == "尚未选择"){
                     exportMessage = elemMessage+"\n状态"+statusVec[j].statusValue+"事件配置未选择事件名称";
                     return false;
                 }
-                if(eventVec[k].specialEffect == "尚未选择"){
-                    exportMessage = elemMessage+"\n状态"+statusVec[j].statusValue+"事件配置未选择特效";
-                    return false;
-                }
+                // 可以没有特效
+//                if(eventVec[k].specialEffect == "尚未选择"){
+//                    exportMessage = elemMessage+"\n状态"+statusVec[j].statusValue+"事件配置未选择特效";
+//                    return false;
+//                }
             }
         }
 

+ 8 - 1
datacpp/elemPropertyData.cpp

@@ -362,6 +362,7 @@ QVector<ElemPropertyData::ContainTable> ElemPropertyData::readContainerTable(con
         contain.effectTimeline = containObj["effectTimeline"].toString();
         contain.vanishTimeline = containObj["vanishTimeline"].toString();
         contain.zOrder = containObj["zOrder"].toString();
+        contain.audio = containObj["audio"].toString();
         table.append(contain);
     }
     return table;
@@ -392,6 +393,7 @@ QJsonArray ElemPropertyData::writeContainerTable(const QVector<ContainTable> &co
         tableObj["effectTimeline"] = table.effectTimeline;
         tableObj["vanishTimeline"] = table.vanishTimeline;
         tableObj["zOrder"] = table.zOrder;
+        tableObj["audio"] = table.audio;
         tableArray.append(tableObj);
     }
     return tableArray;
@@ -519,7 +521,11 @@ QJsonObject ElemPropertyData::exportAnim() const
             QJsonObject obj;
             obj["needColor"] = eventVec[j].consisColor;
             obj["dataDec"] = eventVec[j].changeMagnitude;
-            obj["efx"] = eventVec[j].specialEffect;
+            if (eventVec[j].specialEffect == "尚未选择") {
+                obj["efx"] = "";
+            } else {
+                obj["efx"] = eventVec[j].specialEffect;
+            }
             obj["isByGridCnt"] = eventVec[j].elimATLattices;
             eventObj.insert(DataManager::getInstance()->getTempId("eventTemp",eventVec[j].name),obj);
         }
@@ -547,6 +553,7 @@ QJsonObject ElemPropertyData::exportAnim() const
              keyObj["affect"] = table[j].effectTimeline;
              keyObj["beat"] = table[j].vanishTimeline;
              keyObj["localZOrder"] = table[j].zOrder.toInt();
+             keyObj["audio"] = table[j].audio;
              tableObj[table[j].key] = keyObj;
          }
          poolObj["candidates"] = tableObj;

+ 1 - 0
datahpp/elemPropertyData.h

@@ -78,6 +78,7 @@ public:
         QString effectTimeline;
         QString vanishTimeline;
         QString zOrder;
+        QString audio;
         ContainTable(QString keyName):key(keyName),res("双击添加资源文件"),initTimeline("尚未选择"),
             clickTimeline("尚未选择"),effectTimeline("尚未选择"),vanishTimeline("尚未选择"),zOrder("0"){}
     };

+ 1 - 1
file/template.json

@@ -61,7 +61,7 @@
                         "id":"spawn",
                         "fields":{
                                 "生成类型":{"id":"type","type":"input"},
-                                "生成数量":{"id":"num","type":"input"}
+                                "区域的宽度":{"id":"width","type":"input"}
                         }
                 },
                 {

+ 3 - 1
pool.cpp

@@ -11,7 +11,7 @@ Pool::Pool(QWidget *parent) :
     ui(new Ui::Pool)
 {
     ui->setupUi(this);
-    ui->tableWidget_containerPool->setHorizontalHeaderLabels({"键值","资源名","初始时间线","点击时间线","影响时间线","消失时间线","消失z-Order"});
+    ui->tableWidget_containerPool->setHorizontalHeaderLabels({"键值","资源名","初始时间线","点击时间线","影响时间线","消失时间线","消失z-Order","消失音效"});
     ui->tableWidget_childElem->setHorizontalHeaderLabels({"名称","使用的池子"});
     updateTempRelated();
 }
@@ -111,6 +111,7 @@ void Pool::setPoolUi()
         ui->tableWidget_containerPool->setCellWidget(rowNum,4,createTimelineBox(i.effectTimeline,i.res));
         ui->tableWidget_containerPool->setCellWidget(rowNum,5,createTimelineBox(i.vanishTimeline,i.res));
         ui->tableWidget_containerPool->setItem(rowNum,6,new QTableWidgetItem(i.zOrder));
+        ui->tableWidget_containerPool->setItem(rowNum,7,new QTableWidgetItem(i.audio));
     }
     isSetUi = false;
 }
@@ -441,6 +442,7 @@ void Pool::on_pushButton_copy_clicked()
     ui->tableWidget_containerPool->setCellWidget(rowNum,4,createTimelineBox(copyData.effectTimeline,copyData.res));
     ui->tableWidget_containerPool->setCellWidget(rowNum,5,createTimelineBox(copyData.vanishTimeline,copyData.res));
     ui->tableWidget_containerPool->setItem(rowNum,6,new QTableWidgetItem(copyData.zOrder));
+    ui->tableWidget_containerPool->setItem(rowNum,7,new QTableWidgetItem(copyData.audio));
     DataManager::getInstance()->copyKey(currentElem,poolIndex,keyName,keyIndex);
 }
 

+ 2 - 1
pool.ui

@@ -102,7 +102,7 @@
             <number>0</number>
            </property>
            <property name="columnCount">
-            <number>7</number>
+            <number>8</number>
            </property>
            <column/>
            <column/>
@@ -111,6 +111,7 @@
            <column/>
            <column/>
            <column/>
+           <column/>
           </widget>
          </item>
          <item>