26 } |
28 } |
27 |
29 |
28 editor::~editor() |
30 editor::~editor() |
29 { |
31 { |
30 delete ui; |
32 delete ui; |
|
33 } |
|
34 |
|
35 void editor::reset() |
|
36 { |
|
37 for(int i = 0; i < 6; ++i) |
|
38 { |
|
39 ui->twTeams->setTabEnabled(i, false); |
|
40 ui->twTeams->widget(i)->setEnabled(false); |
|
41 } |
31 } |
42 } |
32 |
43 |
33 void editor::on_actionLoad_triggered() |
44 void editor::on_actionLoad_triggered() |
34 { |
45 { |
35 QString fileName = QFileDialog::getOpenFileName(this, QString(), QString(), "Missions (*.txt)"); |
46 QString fileName = QFileDialog::getOpenFileName(this, QString(), QString(), "Missions (*.txt)"); |
84 } |
95 } |
85 else |
96 else |
86 if (line.startsWith("addteam") && (currTeam < 5)) |
97 if (line.startsWith("addteam") && (currTeam < 5)) |
87 { |
98 { |
88 ++currTeam; |
99 ++currTeam; |
|
100 ui->twTeams->setTabEnabled(currTeam, true); |
|
101 ui->twTeams->widget(currTeam)->setEnabled(true); |
|
102 |
89 line = line.mid(8); |
103 line = line.mid(8); |
90 int spacePos = line.indexOf('\x20'); |
104 int spacePos = line.indexOf('\x20'); |
91 quint32 teamColor = line.left(spacePos).toUInt(); |
105 quint32 teamColor = line.left(spacePos).toUInt(); |
92 QString teamName = line.mid(spacePos + 1); |
106 QString teamName = line.mid(spacePos + 1); |
93 |
107 |
94 TeamEdit * te = qobject_cast<TeamEdit *>(ui->twTeams->widget(currTeam)); |
108 TeamEdit * te = qobject_cast<TeamEdit *>(ui->twTeams->widget(currTeam)); |
95 te->addTeam(teamName, teamColor); |
109 te->setTeam(teamName, teamColor); |
|
110 } |
|
111 else |
|
112 if (line.startsWith("addhh") && (currTeam >= 0)) |
|
113 { |
|
114 line = line.mid(6); |
|
115 quint32 level = line.left(1).toUInt(); |
|
116 line = line.mid(2); |
|
117 int spacePos = line.indexOf('\x20'); |
|
118 quint32 health = line.left(spacePos).toUInt(); |
|
119 QString hhName = line.mid(spacePos + 1); |
|
120 |
|
121 TeamEdit * te = qobject_cast<TeamEdit *>(ui->twTeams->widget(currTeam)); |
|
122 te->addHedgehog(level, health, hhName); |
96 } |
123 } |
97 else |
124 else |
98 if (line.startsWith("fort") && (currTeam >= 0)) |
125 if (line.startsWith("fort") && (currTeam >= 0)) |
99 { |
126 { |
100 TeamEdit * te = qobject_cast<TeamEdit *>(ui->twTeams->widget(currTeam)); |
127 TeamEdit * te = qobject_cast<TeamEdit *>(ui->twTeams->widget(currTeam)); |
101 te->setFort(line.mid(5)); |
128 te->setFort(line.mid(5)); |
|
129 } |
|
130 else |
|
131 if (line.startsWith("hat") && (currTeam >= 0)) |
|
132 { |
|
133 TeamEdit * te = qobject_cast<TeamEdit *>(ui->twTeams->widget(currTeam)); |
|
134 te->setLastHHHat(line.mid(4)); |
|
135 } |
|
136 else |
|
137 if (line.startsWith("hhcoords") && (currTeam >= 0)) |
|
138 { |
|
139 line = line.mid(9); |
|
140 int spacePos = line.indexOf('\x20'); |
|
141 int x = line.left(spacePos).toUInt(); |
|
142 int y = line.mid(spacePos + 1).toInt(); |
|
143 |
|
144 TeamEdit * te = qobject_cast<TeamEdit *>(ui->twTeams->widget(currTeam)); |
|
145 te->setLastHHCoords(x, y); |
102 } |
146 } |
103 else |
147 else |
104 if (line.startsWith("grave") && (currTeam >= 0)) |
148 if (line.startsWith("grave") && (currTeam >= 0)) |
105 { |
149 { |
106 TeamEdit * te = qobject_cast<TeamEdit *>(ui->twTeams->widget(currTeam)); |
150 TeamEdit * te = qobject_cast<TeamEdit *>(ui->twTeams->widget(currTeam)); |