MCPcopy Create free account
hub / github.com/DFHack/dfhack / translateName

Method translateName

library/modules/Translation.cpp:172–259  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

170}
171
172string Translation::translateName(const df::language_name * name, bool inEnglish, bool onlyLastPart)
173{
174 CHECK_NULL_POINTER(name);
175
176 string out;
177 string word;
178
179 if (!onlyLastPart) {
180 if (!name->first_name.empty())
181 addNameWord(out, name->first_name);
182
183 if (!name->nickname.empty())
184 {
185 word = "`" + name->nickname + "'";
186 switch ((d_init && gametype) ? d_init->display.nickname[*gametype] : d_init_nickname::CENTRALIZE)
187 {
188 case d_init_nickname::REPLACE_ALL:
189 out = word;
190 return out;
191 case d_init_nickname::REPLACE_FIRST:
192 out = "";
193 break;
194 case d_init_nickname::CENTRALIZE:
195 break;
196 }
197 addNameWord(out, word);
198 }
199 }
200
201 if (!inEnglish)
202 {
203 if (name->words[0] >= 0 || name->words[1] >= 0)
204 {
205 word.clear();
206 if (name->words[0] >= 0)
207 word.append(translate_word(name, name->words[0]));
208 if (name->words[1] >= 0)
209 word.append(translate_word(name, name->words[1]));
210 addNameWord(out, word);
211 }
212 word.clear();
213 for (int i = 2; i <= 5; i++)
214 if (name->words[i] >= 0)
215 word.append(translate_word(name, name->words[i]));
216 addNameWord(out, word);
217 if (name->words[6] >= 0)
218 {
219 word.clear();
220 word.append(translate_word(name, name->words[6]));
221 addNameWord(out, word);
222 }
223 }
224 else
225 {
226 if (name->words[0] >= 0 || name->words[1] >= 0)
227 {
228 word.clear();
229 if (name->words[0] >= 0)

Callers

nothing calls this directly

Calls 6

addNameWordFunction · 0.85
translate_wordFunction · 0.85
translate_english_wordFunction · 0.85
lengthMethod · 0.80
emptyMethod · 0.45
clearMethod · 0.45

Tested by

no test coverage detected