diff --git a/CHARACTER_CARD_CUSTOMIZATION.md b/CHARACTER_CARD_CUSTOMIZATION.md new file mode 100644 index 0000000..29bf860 --- /dev/null +++ b/CHARACTER_CARD_CUSTOMIZATION.md @@ -0,0 +1,98 @@ +# Character Card Customization Guide + +## Overview +Character cards can now be customized to fit your server's needs. You can hide fields, rename them, and set default values. + +## Configuration Options + +### Field Visibility +Control which fields appear on character cards: + +```yaml +cardShowRace: true # Show/hide the race field +cardShowSubculture: true # Show/hide the subculture field +cardShowReligion: true # Show/hide the religion field +cardShowAge: true # Show/hide the age field +cardShowGender: true # Show/hide the gender field +``` + +### Field Labels +Customize the labels for each field: + +```yaml +cardLabelRace: "Race" # Label for race field +cardLabelSubculture: "Subculture" # Label for subculture field (e.g., "Faction", "Class") +cardLabelReligion: "Religion" # Label for religion field +cardLabelAge: "Age" # Label for age field +cardLabelGender: "Gender" # Label for gender field +``` + +### Default Values +Set default values for new character cards: + +```yaml +cardDefaultRace: "Human" # Default race for new cards +cardDefaultSubculture: "None" # Default subculture for new cards +cardDefaultReligion: "None" # Default religion for new cards +cardDefaultGender: "Unspecified" # Default gender for new cards +cardDefaultAge: 0 # Default age for new cards +``` + +## Example Configurations + +### Example 1: Human-only server without religion +For a server where everyone is human and religion is not emphasized: + +```yaml +cardShowRace: false # Hide race field +cardShowReligion: false # Hide religion field +cardShowSubculture: true +cardShowAge: true +cardShowGender: true +``` + +### Example 2: Replace subculture with "class" +For a server that uses character classes instead of subcultures: + +```yaml +cardShowSubculture: true +cardLabelSubculture: "Class" +cardDefaultSubculture: "Warrior" +``` + +### Example 3: Replace subculture with "faction" +For a server using factions: + +```yaml +cardShowSubculture: true +cardLabelSubculture: "Faction" +cardDefaultSubculture: "Unaffiliated" +``` + +## How It Works + +1. **Visibility**: When a field is hidden (set to `false`), it will: + - Not appear on character cards when viewed + - Not show in the `/card help` command list + - Still be stored internally (for backward compatibility) + +2. **Labels**: Custom labels appear: + - When viewing character cards + - In the `/card help` command + +3. **Defaults**: Default values are: + - Applied when a new character card is created + - Shown on character cards until players change them + +## Backward Compatibility + +All existing character cards will continue to work normally. Fields are still stored internally even if hidden, so you can re-enable fields later without losing data. + +## Related Commands + +- `/card` - View your character card +- `/card help` - View available character card commands +- `/card lookup ` - View another player's character card +- `/card ` - Update a field on your character card + +Note: Only fields that are visible will appear in the help command. diff --git a/FEATURE_SUMMARY.md b/FEATURE_SUMMARY.md new file mode 100644 index 0000000..ec5e7e5 --- /dev/null +++ b/FEATURE_SUMMARY.md @@ -0,0 +1,151 @@ +# Character Card Customization - Feature Summary + +## What Changed + +This feature adds the ability to customize character cards through the configuration file, allowing server administrators to: + +1. **Hide/Show Fields** - Control which fields appear on character cards +2. **Rename Fields** - Change the labels for fields (e.g., "Subculture" → "Class") +3. **Set Default Values** - Define default values for new character cards + +## Use Cases + +### Case 1: Human-Only Server (No Race/Religion) +**Problem:** Server owner runs a server where everyone is human and religion isn't emphasized, making those fields confusing on character cards. + +**Solution:** +```yaml +cardShowRace: false # Hide race field +cardShowReligion: false # Hide religion field +``` + +**Result:** +- Character cards no longer show race or religion +- Help command doesn't list `/card race` or `/card religion` +- Data is still preserved internally for backward compatibility + +### Case 2: Replace Subculture with Class +**Problem:** Server uses character classes (Warrior, Mage, etc.) instead of subcultures. + +**Solution:** +```yaml +cardLabelSubculture: "Class" +cardDefaultSubculture: "Peasant" +``` + +**Result:** +- Character cards show "Class: Warrior" instead of "Subculture: Warrior" +- Help command shows `/card subculture (class)` +- New cards default to "Peasant" + +### Case 3: Replace Subculture with Faction +**Problem:** Server uses faction names instead of subcultures. + +**Solution:** +```yaml +cardLabelSubculture: "Faction" +cardDefaultSubculture: "Unaffiliated" +``` + +**Result:** +- Character cards show "Faction: Red Legion" instead of "Subculture: Red Legion" +- New cards default to "Unaffiliated" + +## Before and After Examples + +### Default Configuration (Before) +``` +---------- +Character Card of Player123 +---------- +Name: John Smith +Race: Human +Subculture: European +Age: 25 +Gender: Male +Religion: Christian +``` + +### Human-Only Server (After) +Config: +```yaml +cardShowRace: false +cardShowReligion: false +``` + +Result: +``` +---------- +Character Card of Player123 +---------- +Name: John Smith +Subculture: European +Age: 25 +Gender: Male +``` + +### Class-Based Server (After) +Config: +```yaml +cardLabelSubculture: "Class" +cardDefaultSubculture: "Warrior" +``` + +Result: +``` +---------- +Character Card of Player123 +---------- +Name: John Smith +Race: Human +Class: Warrior +Age: 25 +Gender: Male +Religion: Christian +``` + +## Implementation Details + +### Files Modified +1. `ConfigService.java` - Added 17 new configuration options +2. `CharacterCard.java` - Constructor now uses default values from config +3. `Messenger.java` - Display logic respects visibility and label settings +4. `CardCommand.java` - Help command respects visibility settings + +### Configuration Options Added + +#### Visibility (Boolean) +- `cardShowRace` (default: true) +- `cardShowSubculture` (default: true) +- `cardShowReligion` (default: true) +- `cardShowAge` (default: true) +- `cardShowGender` (default: true) + +#### Labels (String) +- `cardLabelRace` (default: "Race") +- `cardLabelSubculture` (default: "Subculture") +- `cardLabelReligion` (default: "Religion") +- `cardLabelAge` (default: "Age") +- `cardLabelGender` (default: "Gender") + +#### Default Values +- `cardDefaultRace` (default: "Human") +- `cardDefaultSubculture` (default: "None") +- `cardDefaultReligion` (default: "None") +- `cardDefaultGender` (default: "Unspecified") +- `cardDefaultAge` (default: 0) + +### Backward Compatibility +- All existing character cards work without changes +- Hidden fields are still stored internally +- Re-enabling a field shows existing data +- Defaults only apply to new character cards + +## Testing Recommendations + +1. Test with all fields visible (default behavior) +2. Test hiding individual fields +3. Test custom labels +4. Test default values for new cards +5. Test that existing cards retain their data +6. Test `/card help` command with various configurations diff --git a/VISUAL_EXAMPLES.md b/VISUAL_EXAMPLES.md new file mode 100644 index 0000000..0ec74a0 --- /dev/null +++ b/VISUAL_EXAMPLES.md @@ -0,0 +1,186 @@ +# Visual Examples + +## Example 1: Default Behavior (All Fields Visible) + +### Configuration +```yaml +cardShowRace: true +cardShowSubculture: true +cardShowReligion: true +cardShowAge: true +cardShowGender: true +cardLabelRace: "Race" +cardLabelSubculture: "Subculture" +cardLabelReligion: "Religion" +cardLabelAge: "Age" +cardLabelGender: "Gender" +``` + +### Character Card Display +``` +---------- +Character Card of Player123 +---------- +Name: John Smith +Race: Human +Subculture: European +Age: 25 +Gender: Male +Religion: Christian +``` + +### Help Command Output +``` +== Character Card Commands == +/card - View your character card. +/card lookup (player) - View the character card of a specific player. +/card name (name) - Change your character's name. +/card race (race) - Change your character's race. +/card subculture (subculture) - Change your character's subculture. +/card age (age) - Change your character's age. +/card gender (gender) - Change your character's gender. +/card religion (religion) - Change your character's religion. +``` + +--- + +## Example 2: Human-Only Server (Race and Religion Hidden) + +### Configuration +```yaml +cardShowRace: false # HIDDEN +cardShowSubculture: true +cardShowReligion: false # HIDDEN +cardShowAge: true +cardShowGender: true +``` + +### Character Card Display +``` +---------- +Character Card of Player123 +---------- +Name: John Smith +Subculture: European +Age: 25 +Gender: Male +``` + +### Help Command Output +``` +== Character Card Commands == +/card - View your character card. +/card lookup (player) - View the character card of a specific player. +/card name (name) - Change your character's name. +/card subculture (subculture) - Change your character's subculture. +/card age (age) - Change your character's age. +/card gender (gender) - Change your character's gender. +``` + +**Note:** `/card race` and `/card religion` are NOT shown in the help + +--- + +## Example 3: Class-Based System (Subculture Renamed to Class) + +### Configuration +```yaml +cardShowRace: true +cardShowSubculture: true +cardShowReligion: true +cardShowAge: true +cardShowGender: true +cardLabelRace: "Race" +cardLabelSubculture: "Class" # RENAMED +cardLabelReligion: "Religion" +cardLabelAge: "Age" +cardLabelGender: "Gender" +cardDefaultSubculture: "Warrior" # NEW DEFAULT +``` + +### Character Card Display +``` +---------- +Character Card of Player123 +---------- +Name: John Smith +Race: Human +Class: Warrior ← Changed from "Subculture: Warrior" +Age: 25 +Gender: Male +Religion: Christian +``` + +### Help Command Output +``` +== Character Card Commands == +/card - View your character card. +/card lookup (player) - View the character card of a specific player. +/card name (name) - Change your character's name. +/card race (race) - Change your character's race. +/card subculture (class) - Change your character's class. ← Updated help text +/card age (age) - Change your character's age. +/card gender (gender) - Change your character's gender. +/card religion (religion) - Change your character's religion. +``` + +--- + +## Example 4: Faction-Based System (Subculture Renamed to Faction) + +### Configuration +```yaml +cardShowRace: false # HIDDEN +cardShowSubculture: true +cardShowReligion: false # HIDDEN +cardShowAge: true +cardShowGender: true +cardLabelSubculture: "Faction" # RENAMED +cardDefaultSubculture: "Unaffiliated" # NEW DEFAULT +``` + +### Character Card Display +``` +---------- +Character Card of Player123 +---------- +Name: John Smith +Faction: Red Legion ← Changed from "Subculture: Red Legion" +Age: 25 +Gender: Male +``` + +### Help Command Output +``` +== Character Card Commands == +/card - View your character card. +/card lookup (player) - View the character card of a specific player. +/card name (name) - Change your character's name. +/card subculture (faction) - Change your character's faction. ← Updated help text +/card age (age) - Change your character's age. +/card gender (gender) - Change your character's gender. +``` + +--- + +## Key Features Demonstrated + +1. **Field Visibility Control** + - Hidden fields don't appear on cards + - Hidden fields don't appear in help command + - Data is still stored internally + +2. **Custom Labels** + - Any field can be renamed + - Labels appear on cards and in help + - Command names stay the same (`/card subculture` not `/card class`) + +3. **Default Values** + - Applied to new character cards only + - Existing cards keep their values + - Can be changed per-player using commands + +4. **Backward Compatibility** + - All existing cards work without changes + - Re-enabling fields shows preserved data + - No migration needed diff --git a/config-example.yml b/config-example.yml new file mode 100644 index 0000000..d1bd0ea --- /dev/null +++ b/config-example.yml @@ -0,0 +1,48 @@ +# Example Configuration for Character Cards +# This shows how to customize character cards for a human-only server without religion emphasis + +# Character Card Field Visibility +# Set to false to hide a field from character cards +cardShowRace: false # Hidden - everyone is human +cardShowSubculture: true # Visible - keeping this +cardShowReligion: false # Hidden - no religion emphasis +cardShowAge: true # Visible +cardShowGender: true # Visible + +# Character Card Field Labels +# Customize what each field is called +cardLabelRace: "Race" +cardLabelSubculture: "Class" # Changed from "Subculture" to "Class" +cardLabelReligion: "Religion" +cardLabelAge: "Age" +cardLabelGender: "Gender" + +# Character Card Default Values +# These are used when a new character card is created +cardDefaultRace: "Human" +cardDefaultSubculture: "Peasant" +cardDefaultReligion: "None" +cardDefaultGender: "Unspecified" +cardDefaultAge: 20 + +# Other existing configuration options... +version: 1.13.0 +localChatRadius: 25 +whisperChatRadius: 2 +yellChatRadius: 50 +emoteRadius: 25 +changeNameCooldown: 300 +localChatColor: gray +whisperChatColor: blue +yellChatColor: red +emoteColor: yellow +rightClickToViewCard: true +localOOCChatRadius: 25 +localOOCChatColor: gray +positiveAlertColor: green +neutralAlertColor: aqua +negativeAlertColor: red +chatFeaturesEnabled: true +debugMode: false +birdSpeed: 20 +logChat: false diff --git a/src/main/java/dansplugins/rpsystem/cards/CharacterCard.java b/src/main/java/dansplugins/rpsystem/cards/CharacterCard.java index aab40a1..1ed068f 100644 --- a/src/main/java/dansplugins/rpsystem/cards/CharacterCard.java +++ b/src/main/java/dansplugins/rpsystem/cards/CharacterCard.java @@ -23,6 +23,13 @@ public class CharacterCard { public CharacterCard(MedievalRoleplayEngine medievalRoleplayEngine, UUID uuid) { this.medievalRoleplayEngine = medievalRoleplayEngine; playerUUID = uuid; + + // Set defaults from config + race = medievalRoleplayEngine.configService.getString("cardDefaultRace"); + subculture = medievalRoleplayEngine.configService.getString("cardDefaultSubculture"); + religion = medievalRoleplayEngine.configService.getString("cardDefaultReligion"); + gender = medievalRoleplayEngine.configService.getString("cardDefaultGender"); + age = medievalRoleplayEngine.configService.getInt("cardDefaultAge"); } // storage constructor diff --git a/src/main/java/dansplugins/rpsystem/commands/card/CardCommand.java b/src/main/java/dansplugins/rpsystem/commands/card/CardCommand.java index 8a23a03..8338c3d 100644 --- a/src/main/java/dansplugins/rpsystem/commands/card/CardCommand.java +++ b/src/main/java/dansplugins/rpsystem/commands/card/CardCommand.java @@ -42,11 +42,27 @@ public void showHelpMessage(CommandSender sender) { sender.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "/card - View your character card."); sender.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "/card lookup (player) - View the character card of a specific player."); sender.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "/card name (name) - Change your character's name."); - sender.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "/card race (race) - Change your character's race."); - sender.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "/card subculture (subculture) - Change your character's subculture."); - sender.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "/card age (age) - Change your character's age."); - sender.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "/card gender (gender) - Change your character's gender."); - sender.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "/card religion (religion) - Change your character's religion."); + + if (medievalRoleplayEngine.configService.getBoolean("cardShowRace")) { + sender.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "/card race (race) - Change your character's race."); + } + + if (medievalRoleplayEngine.configService.getBoolean("cardShowSubculture")) { + String subcultureLabel = medievalRoleplayEngine.configService.getString("cardLabelSubculture").toLowerCase(); + sender.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "/card subculture (" + subcultureLabel + ") - Change your character's " + subcultureLabel + "."); + } + + if (medievalRoleplayEngine.configService.getBoolean("cardShowAge")) { + sender.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "/card age (age) - Change your character's age."); + } + + if (medievalRoleplayEngine.configService.getBoolean("cardShowGender")) { + sender.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "/card gender (gender) - Change your character's gender."); + } + + if (medievalRoleplayEngine.configService.getBoolean("cardShowReligion")) { + sender.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "/card religion (religion) - Change your character's religion."); + } } else { player.sendMessage(medievalRoleplayEngine.colorChecker.getNegativeAlertColor() + "Sorry! In order to use this command, you need the following permission: 'rp.card.help'"); diff --git a/src/main/java/dansplugins/rpsystem/config/ConfigService.java b/src/main/java/dansplugins/rpsystem/config/ConfigService.java index cba3818..cd2a8f6 100644 --- a/src/main/java/dansplugins/rpsystem/config/ConfigService.java +++ b/src/main/java/dansplugins/rpsystem/config/ConfigService.java @@ -80,6 +80,51 @@ public void handleVersionMismatch() { if (!getConfig().isBoolean("logChat")) { getConfig().addDefault("logChat", false); } + if (!getConfig().isBoolean("cardShowRace")) { + getConfig().addDefault("cardShowRace", true); + } + if (!getConfig().isBoolean("cardShowSubculture")) { + getConfig().addDefault("cardShowSubculture", true); + } + if (!getConfig().isBoolean("cardShowReligion")) { + getConfig().addDefault("cardShowReligion", true); + } + if (!getConfig().isBoolean("cardShowAge")) { + getConfig().addDefault("cardShowAge", true); + } + if (!getConfig().isBoolean("cardShowGender")) { + getConfig().addDefault("cardShowGender", true); + } + if (!getConfig().isString("cardLabelRace")) { + getConfig().addDefault("cardLabelRace", "Race"); + } + if (!getConfig().isString("cardLabelSubculture")) { + getConfig().addDefault("cardLabelSubculture", "Subculture"); + } + if (!getConfig().isString("cardLabelReligion")) { + getConfig().addDefault("cardLabelReligion", "Religion"); + } + if (!getConfig().isString("cardLabelAge")) { + getConfig().addDefault("cardLabelAge", "Age"); + } + if (!getConfig().isString("cardLabelGender")) { + getConfig().addDefault("cardLabelGender", "Gender"); + } + if (!getConfig().isString("cardDefaultRace")) { + getConfig().addDefault("cardDefaultRace", "Human"); + } + if (!getConfig().isString("cardDefaultSubculture")) { + getConfig().addDefault("cardDefaultSubculture", "None"); + } + if (!getConfig().isString("cardDefaultReligion")) { + getConfig().addDefault("cardDefaultReligion", "None"); + } + if (!getConfig().isString("cardDefaultGender")) { + getConfig().addDefault("cardDefaultGender", "Unspecified"); + } + if (!getConfig().isInt("cardDefaultAge")) { + getConfig().addDefault("cardDefaultAge", 0); + } deleteOldConfigOptionsIfPresent(); @@ -109,14 +154,20 @@ else if (option.equalsIgnoreCase("localChatRadius") || option.equalsIgnoreCase("changeNameCooldown") || option.equalsIgnoreCase("emoteRadius") || option.equalsIgnoreCase("localOOCChatRadius") - || option.equalsIgnoreCase("birdSpeed")) { + || option.equalsIgnoreCase("birdSpeed") + || option.equalsIgnoreCase("cardDefaultAge")) { getConfig().set(option, Integer.parseInt(value)); player.sendMessage(medievalRoleplayEngine.colorChecker.getColorByName(getString("positiveAlertColor")) + "Integer set!"); } else if (option.equalsIgnoreCase("rightClickToViewCard") || option.equalsIgnoreCase("chatFeaturesEnabled") || option.equalsIgnoreCase("debugMode") - || option.equalsIgnoreCase("logChat")) { + || option.equalsIgnoreCase("logChat") + || option.equalsIgnoreCase("cardShowRace") + || option.equalsIgnoreCase("cardShowSubculture") + || option.equalsIgnoreCase("cardShowReligion") + || option.equalsIgnoreCase("cardShowAge") + || option.equalsIgnoreCase("cardShowGender")) { getConfig().set(option, Boolean.parseBoolean(value)); player.sendMessage(medievalRoleplayEngine.colorChecker.getColorByName(getString("positiveAlertColor")) + "Boolean set!"); } @@ -160,6 +211,21 @@ public void saveConfigDefaults() { getConfig().addDefault("debugMode", false); getConfig().addDefault("birdSpeed", 20); getConfig().addDefault("logChat", true); + getConfig().addDefault("cardShowRace", true); + getConfig().addDefault("cardShowSubculture", true); + getConfig().addDefault("cardShowReligion", true); + getConfig().addDefault("cardShowAge", true); + getConfig().addDefault("cardShowGender", true); + getConfig().addDefault("cardLabelRace", "Race"); + getConfig().addDefault("cardLabelSubculture", "Subculture"); + getConfig().addDefault("cardLabelReligion", "Religion"); + getConfig().addDefault("cardLabelAge", "Age"); + getConfig().addDefault("cardLabelGender", "Gender"); + getConfig().addDefault("cardDefaultRace", "Human"); + getConfig().addDefault("cardDefaultSubculture", "None"); + getConfig().addDefault("cardDefaultReligion", "None"); + getConfig().addDefault("cardDefaultGender", "Unspecified"); + getConfig().addDefault("cardDefaultAge", 0); getConfig().options().copyDefaults(true); medievalRoleplayEngine.saveConfig(); } @@ -185,6 +251,7 @@ public void sendPlayerConfigList(Player player) { + ", negativeAlertColor: " + getConfig().getString("negativeAlertColor") + ", birdSpeed: " + getConfig().getString("birdSpeed") + ", logChat:" + getConfig().getBoolean("logChat")); + player.sendMessage(medievalRoleplayEngine.colorChecker.getColorByName(getString("neutralAlertColor")) + "Note: Character card customization options (cardShow*, cardLabel*, cardDefault*) are also available. Check the config file for details."); } public boolean hasBeenAltered() { diff --git a/src/main/java/dansplugins/rpsystem/utils/Messenger.java b/src/main/java/dansplugins/rpsystem/utils/Messenger.java index ad20698..ce88f01 100644 --- a/src/main/java/dansplugins/rpsystem/utils/Messenger.java +++ b/src/main/java/dansplugins/rpsystem/utils/Messenger.java @@ -119,11 +119,31 @@ public int sendOOCMessageToPlayersWithinDistance(Player player, String message, public void sendCardInfoToPlayer(CharacterCard card, Player player) { player.sendMessage(ChatColor.BOLD + "" + medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "\n----------\n" + "Character Card of " + Bukkit.getOfflinePlayer(card.getPlayerUUID()).getName() + "\n----------\n"); player.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "Name: " + card.getName()); - player.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "Race: " + card.getRace()); - player.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "Subculture: " + card.getSubculture()); - player.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "Age: " + card.getAge()); - player.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "Gender: " + card.getGender()); - player.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + "Religion: " + card.getReligion()); + + if (medievalRoleplayEngine.configService.getBoolean("cardShowRace")) { + String raceLabel = medievalRoleplayEngine.configService.getString("cardLabelRace"); + player.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + raceLabel + ": " + card.getRace()); + } + + if (medievalRoleplayEngine.configService.getBoolean("cardShowSubculture")) { + String subcultureLabel = medievalRoleplayEngine.configService.getString("cardLabelSubculture"); + player.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + subcultureLabel + ": " + card.getSubculture()); + } + + if (medievalRoleplayEngine.configService.getBoolean("cardShowAge")) { + String ageLabel = medievalRoleplayEngine.configService.getString("cardLabelAge"); + player.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + ageLabel + ": " + card.getAge()); + } + + if (medievalRoleplayEngine.configService.getBoolean("cardShowGender")) { + String genderLabel = medievalRoleplayEngine.configService.getString("cardLabelGender"); + player.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + genderLabel + ": " + card.getGender()); + } + + if (medievalRoleplayEngine.configService.getBoolean("cardShowReligion")) { + String religionLabel = medievalRoleplayEngine.configService.getString("cardLabelReligion"); + player.sendMessage(medievalRoleplayEngine.colorChecker.getNeutralAlertColor() + religionLabel + ": " + card.getReligion()); + } } /**