PDA

Просмотр полной версии : [Вопрос] Помогите исправить говнокод



h3ckphy
15.06.2020, 21:55
static const fmtInfo[] = "Номер дома: %d\n" \
"Район: %s\n" \
"Тип: %s\n" \
"Гараж: %s\n\n" \
"Цена: %d";


Эта строка должна отправиться в диалог игроку.
Возможно, вы поняли, что я хотел сделать: я хотел, чтобы значения после двоеточия сдвинулись к правому краю диалога. Пока вручную добавил пробелы. Пытался сделать что-то типо такого

"Номер дома: %20d\n"
Это работает, но не со строками. На вики написано что такая запись

%4s
будет добавлять пробелы ПОСЛЕ строки. https://imgur.com/YhIlVai
А мне нужно спереди. Пробовал ставить знак минус перед числом - не помогает. Может, есть идеи у кого-то?

execution
15.06.2020, 21:58
static const fmtInfo[] = "Номер дома: %d\n" \
"Район: %s\n" \
"Тип: %s\n" \
"Гараж: %s\n\n" \
"Цена: %d";


Воспользуйся
\t

Например:

Номер дома:\t%d\n

- - - Добавлено - - -


Пытался сделать что-то типо такого

"Номер дома: %20d\n"
Это работает, но не со строками. На вики написано что такая запись

%4s
будет добавлять пробелы ПОСЛЕ строки. А мне нужно спереди. Пробовал ставить знак минус перед числом - не помогает. Может, есть идеи у кого-то?

Не понятно, что именно ты хочешь и для чего?

h3ckphy
15.06.2020, 22:24
Воспользуйся
\t

Например:

Номер дома:\t%d\n

- - - Добавлено - - -



Не понятно, что именно ты хочешь и для чего?

Блин, как я про табы-то забыл :facepalm:. Спасибо.
Я хотел сделать выравнивание справа для значений после двоеточия. Не получалось через спецификаторы %d и %s, а про таб забыл

DeimoS
16.06.2020, 09:12
Блин, как я про табы-то забыл :facepalm:. Спасибо.
Я хотел сделать выравнивание справа для значений после двоеточия. Не получалось через спецификаторы %d и %s, а про таб забыл

Ты только не забывай, что игроки могут сидеть с большим/меньшим разрешением экрана и, соответственно, у них размер диалога будет другой (для игроков с маленьким разрешением экрана такой диалог вообще может крашнуть игру).

h3ckphy
16.06.2020, 17:57
Ты только не забывай, что игроки могут сидеть с большим/меньшим разрешением экрана и, соответственно, у них размер диалога будет другой (для игроков с маленьким разрешением экрана такой диалог вообще может крашнуть игру).

Океей. Учту. Спасибо:thank_you: