Skip to content

Commit

Permalink
Merge pull request #116 from Carifio24/cantrips-ritual-conc
Browse files Browse the repository at this point in the history
Fix issue where ritual/concentration string was not added to cantrips
  • Loading branch information
Carifio24 authored Dec 16, 2024
2 parents 3d7496d + ed12b6f commit d8a255d
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 24 deletions.
40 changes: 16 additions & 24 deletions app/src/main/java/dnd/jon/spellbook/BindingAdapterUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,20 +17,22 @@ public static void promptFormat(TextView tv, String promptText, String otherText
tv.setText(ssb);
}

@BindingAdapter({"context", "level", "schoolName", "ritual"})
public static void schoolLevelText(TextView tv, Context context, int level, String schoolName, boolean ritual) {

// Handle cantrips
public static String schoolLevelText(Context context, int level, String schoolName) {
String text;
if (level == 0) {
String text = context.getString(R.string.school_cantrip, schoolName);
text = context.getString(R.string.school_cantrip, schoolName);
text = text.substring(0, 1).toUpperCase() + text.substring(1).toLowerCase();
tv.setText(text);
return;
} else {
final String ordinal = level + DisplayUtils.ordinalString(context, level);
text = context.getString(R.string.ordinal_school, ordinal, schoolName.toLowerCase());
}
return text;
}

@BindingAdapter({"context", "level", "schoolName", "ritual"})
public static void schoolLevelRitualText(TextView tv, Context context, int level, String schoolName, boolean ritual) {

// Handle higher-level spells
String ordinal = level + DisplayUtils.ordinalString(context, level);
String text = context.getString(R.string.ordinal_school, ordinal, schoolName.toLowerCase());
String text = schoolLevelText(context, level, schoolName);
if (ritual) {
final String ritualString = context.getString(R.string.ritual).toLowerCase();
text += String.format(" (%s)", ritualString);
Expand All @@ -39,31 +41,21 @@ public static void schoolLevelText(TextView tv, Context context, int level, Stri
}

@BindingAdapter({"context", "level", "schoolName", "ritual", "concentration"})
public static void schoolLevelConcentrationText(TextView tv, Context context, int level, String schoolName, boolean ritual, boolean concentration) {

// Handle cantrips
if (level == 0) {
String text = context.getString(R.string.school_cantrip, schoolName);
text = text.substring(0, 1).toUpperCase() + text.substring(1).toLowerCase();
tv.setText(text);
return;
}
public static void schoolLevelRitualConcentrationText(TextView tv, Context context, int level, String schoolName, boolean ritual, boolean concentration) {

// Handle higher-level spells
String ordinal = level + DisplayUtils.ordinalString(context, level);
String text = context.getString(R.string.ordinal_school, ordinal, schoolName.toLowerCase());
String text = schoolLevelText(context, level, schoolName);

if (ritual || concentration) {
final StringBuilder builder = new StringBuilder(text);
builder.append(" (");
if (ritual) {
builder.append("ritual");
builder.append(context.getString(R.string.ritual));
}
if (ritual && concentration) {
builder.append(", ");
}
if (concentration) {
builder.append("conc.");
builder.append(context.getString(R.string.concentration_abbr));
}
builder.append(")");
text = builder.toString();
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values-pt/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@
<string name="locations">Localizações</string>
<string name="ritual">Ritual</string>
<string name="concentration">Concentração</string>
<string name="concentration_abbr">conc.</string>
<string name="duration">Duração</string>
<string name="casting_time">Tempo de Conjuração</string>
<string name="components">Componentes</string>
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@
<string name="locations">Locations</string>
<string name="ritual">Ritual</string>
<string name="concentration">Concentration</string>
<string name="concentration_abbr">conc.</string>
<string name="duration">Duration</string>
<string name="casting_time">Casting Time</string>
<string name="components">Components</string>
Expand Down

0 comments on commit d8a255d

Please sign in to comment.