- Changed error throwing in FalukantService to use PreconditionError for better clarity. - Added translations for "too close" error in both German and English locales. - Improved user feedback in HealthView by displaying error messages in a dialog upon measure execution failure.
355 lines
14 KiB
JSON
355 lines
14 KiB
JSON
{
|
|
"falukant": {
|
|
"weather": {
|
|
"sunny": "Sunny",
|
|
"cloudy": "Cloudy",
|
|
"rainy": "Rainy",
|
|
"stormy": "Stormy",
|
|
"snowy": "Snowy",
|
|
"foggy": "Foggy",
|
|
"windy": "Windy",
|
|
"clear": "Clear"
|
|
},
|
|
"messages": {
|
|
"title": "Messages",
|
|
"tooltip": "Messages",
|
|
"empty": "No messages.",
|
|
"markAllRead": "Mark all as read"
|
|
},
|
|
"notifications": {
|
|
"notify_election_created": "A new election has been scheduled.",
|
|
"production": {
|
|
"overproduction": "Overproduction: your production is {value}% above demand."
|
|
},
|
|
"transport": {
|
|
"waiting": "Transport waiting"
|
|
,
|
|
"modes": {
|
|
"land": "Land",
|
|
"water": "Water",
|
|
"unknown": "Unknown"
|
|
},
|
|
"speed": {
|
|
"1": "Slow",
|
|
"2": "Medium",
|
|
"3": "Fast",
|
|
"4": "Very fast",
|
|
"unknown": "Unknown"
|
|
}
|
|
},
|
|
"random_event": {
|
|
"windfall": {
|
|
"title": "Unexpected Windfall",
|
|
"description": "You find a forgotten wallet on the street. You receive {amount}."
|
|
},
|
|
"theft": {
|
|
"title": "Theft",
|
|
"description": "A thief has stolen part of your money. Loss: {amount}."
|
|
},
|
|
"warehouse_fire": {
|
|
"title": "Warehouse Fire",
|
|
"description": "A fire has damaged parts of your warehouse.{damagePercent}{destructionPercent}"
|
|
},
|
|
"character_illness": {
|
|
"title": "Illness",
|
|
"description": "{characterName} has fallen ill and lost {healthChange} health."
|
|
},
|
|
"character_recovery": {
|
|
"title": "Recovery",
|
|
"description": "{characterName} has recovered from an illness and regained {healthChange} health."
|
|
},
|
|
"character_accident": {
|
|
"title": "Accident",
|
|
"description": "A serious accident has severely injured {characterName}. Health: {healthChange}."
|
|
},
|
|
"sudden_infant_death": {
|
|
"title": "Sudden Infant Death",
|
|
"description": "{characterName} has suddenly passed away."
|
|
},
|
|
"regional_storm": {
|
|
"title": "Storm in the Region",
|
|
"description": "A severe storm has hit the region {regionName}."
|
|
},
|
|
"regional_festival": {
|
|
"title": "Regional Festival",
|
|
"description": "A large festival is taking place in the region {regionName}."
|
|
},
|
|
"regional_epidemic": {
|
|
"title": "Epidemic",
|
|
"description": "A plague has struck the region {regionName}."
|
|
},
|
|
"earthquake": {
|
|
"title": "Earthquake",
|
|
"description": "An earthquake has shaken the region {regionName}."
|
|
}
|
|
}
|
|
},
|
|
"statusbar": {
|
|
"age": "Age",
|
|
"wealth": "Wealth",
|
|
"health": "Health",
|
|
"events": "Events",
|
|
"relationship": "Relationship",
|
|
"children": "Children",
|
|
"children_unbaptised": "Unbaptised children"
|
|
},
|
|
"health": {
|
|
"amazing": "Amazing",
|
|
"good": "Good",
|
|
"normal": "Normal",
|
|
"bad": "Bad",
|
|
"very_bad": "Very bad"
|
|
},
|
|
"healthview": {
|
|
"title": "Health",
|
|
"errors": {
|
|
"tooClose": "Actions too close together (max once per 24 hours)."
|
|
}
|
|
},
|
|
"moneyHistory": {
|
|
"title": "Money history",
|
|
"filter": "Filter",
|
|
"search": "Apply filter",
|
|
"activity": "Activity",
|
|
"moneyBefore": "Money before transaction",
|
|
"moneyAfter": "Money after transaction",
|
|
"changeValue": "Change in value",
|
|
"time": "Time",
|
|
"prev": "Previous",
|
|
"next": "Next",
|
|
"activities": {
|
|
"Product sale": "Product sale",
|
|
"Production cost": "Production cost",
|
|
"Sell all products": "Sell all products",
|
|
"sell products": "Sell products",
|
|
"taxFromSaleProduct": "Tax from product sale: {product}",
|
|
"director starts production": "Director starts production",
|
|
"director payed out": "Director salary paid out",
|
|
"Buy storage (type: field)": "Bought storage (type: field)",
|
|
"Buy storage (type: iron)": "Bought storage (type: iron)",
|
|
"Buy storage (type: stone)": "Bought storage (type: stone)",
|
|
"Buy storage (type: wood)": "Bought storage (type: wood)",
|
|
"create_branch": "Branch created",
|
|
"buy_vehicles": "Transport vehicles bought",
|
|
"build_vehicles": "Transport vehicles built",
|
|
"transport": "Transport",
|
|
"Marriage cost": "Marriage cost",
|
|
"Gift cost": "Gift cost",
|
|
"housebuy": "House purchase",
|
|
"Baptism": "Baptism",
|
|
"credit taken": "Credit taken",
|
|
"new nobility title": "New title of nobility",
|
|
"partyOrder": "Party ordered",
|
|
"renovation_all": "House fully renovated",
|
|
"health": {
|
|
"pill": "Health measure: pill",
|
|
"doctor": "Health measure: doctor",
|
|
"witch": "Health measure: witch",
|
|
"drunkOfLife": "Health measure: elixir of life",
|
|
"barber": "Health measure: barber"
|
|
}
|
|
}
|
|
},
|
|
"newdirector": {
|
|
"title": "New Director",
|
|
"age": "Age",
|
|
"salary": "Salary",
|
|
"skills": "Skills",
|
|
"product": "Product",
|
|
"knowledge": "Knowledge",
|
|
"hire": "Hire",
|
|
"noProposals": "No director candidates available."
|
|
},
|
|
"branch": {
|
|
"selection": {
|
|
"title": "Branch Selection",
|
|
"selected": "Selected Branch",
|
|
"placeholder": "No branch selected yet",
|
|
"selectedcity": "Selected City",
|
|
"weather": "Current Weather"
|
|
},
|
|
"director": {
|
|
"income": "Income",
|
|
"incomeUpdated": "Salary has been successfully updated.",
|
|
"repairVehicles": "May repair vehicles"
|
|
},
|
|
"vehicles": {
|
|
"cargo_cart": "Cargo cart",
|
|
"ox_cart": "Ox cart",
|
|
"small_carriage": "Small horse carriage",
|
|
"large_carriage": "Large horse carriage",
|
|
"four_horse_carriage": "Four-horse carriage",
|
|
"raft": "Raft",
|
|
"sailing_ship": "Sailing ship"
|
|
},
|
|
"tabs": {
|
|
"director": "Director",
|
|
"inventory": "Inventory",
|
|
"production": "Production",
|
|
"storage": "Storage",
|
|
"transport": "Transport",
|
|
"taxes": "Taxes"
|
|
}
|
|
,"taxes": {
|
|
"title": "Taxes",
|
|
"loading": "Loading tax data...",
|
|
"loadingError": "Failed to load tax data: {error}",
|
|
"retry": "Retry",
|
|
"noData": "No tax data available",
|
|
"total": "Total tax",
|
|
"table": {
|
|
"region": "Region",
|
|
"taxPercent": "Tax %"
|
|
}
|
|
}
|
|
},
|
|
"nobility": {
|
|
"cooldown": "You can only advance again on {date}."
|
|
},
|
|
"reputation": {
|
|
"title": "Reputation",
|
|
"overview": {
|
|
"title": "Overview",
|
|
"current": "Your current reputation"
|
|
},
|
|
"party": {
|
|
"title": "Parties"
|
|
},
|
|
"actions": {
|
|
"title": "Actions",
|
|
"description": "These actions let you gain reputation. The more often you repeat the same action, the less reputation it yields (independent of cost).",
|
|
"action": "Action",
|
|
"cost": "Cost",
|
|
"gain": "Reputation",
|
|
"timesUsed": "Times used",
|
|
"execute": "Execute",
|
|
"running": "Running...",
|
|
"none": "No actions available.",
|
|
"dailyLimit": "Available today: {remaining} / {cap} reputation (from actions).",
|
|
"cooldown": "Next social status action available in about {minutes} minutes.",
|
|
"success": "Action successful! Reputation +{gain}, cost {cost}.",
|
|
"successSimple": "Action successful!",
|
|
"type": {
|
|
"library_donation": "Donate to a library",
|
|
"orphanage_build": "Build an orphanage",
|
|
"statue_build": "Erect a statue",
|
|
"hospital_donation": "Found a hospital/infirmary",
|
|
"school_funding": "Fund a school/chair",
|
|
"well_build": "Build a well/waterworks",
|
|
"bridge_build": "Fund roads/bridges",
|
|
"soup_kitchen": "Organize a soup kitchen",
|
|
"patronage": "Arts & patronage",
|
|
"church_hospice": "Hospice/church donation",
|
|
"scholarships": "Fund scholarships"
|
|
}
|
|
}
|
|
},
|
|
"branchProduction": {
|
|
"storageAvailable": "Free storage"
|
|
},
|
|
"politics": {
|
|
"title": "Politics",
|
|
"tabs": {
|
|
"current": "Current Position",
|
|
"upcoming": "Upcoming Positions",
|
|
"elections": "Elections"
|
|
},
|
|
"current": {
|
|
"office": "Office",
|
|
"region": "Region",
|
|
"termEnds": "Term Ends",
|
|
"benefit": "Benefit",
|
|
"benefit_all": "All regions",
|
|
"income": "Income",
|
|
"none": "No current position available.",
|
|
"holder": "Holder"
|
|
},
|
|
"open": {
|
|
"office": "Office",
|
|
"region": "Region",
|
|
"date": "Date",
|
|
"candidacy": "Candidacy",
|
|
"none": "No open positions.",
|
|
"apply": "Apply for selected positions"
|
|
},
|
|
"upcoming": {
|
|
"office": "Office",
|
|
"region": "Region",
|
|
"postDate": "Date",
|
|
"none": "No upcoming positions."
|
|
},
|
|
"elections": {
|
|
"office": "Office",
|
|
"region": "Region",
|
|
"date": "Date",
|
|
"posts": "Posts to Fill",
|
|
"none": "No elections available.",
|
|
"choose": "Candidates",
|
|
"vote": "Vote",
|
|
"voteAll": "Vote All",
|
|
"candidates": "Candidates",
|
|
"action": "Action"
|
|
},
|
|
"offices": {
|
|
"chancellor": "Chancellor",
|
|
"minister": "Minister",
|
|
"ministry-helper": "Ministry Helper",
|
|
"governor": "Governor",
|
|
"super-state-administrator": "Super State Administrator",
|
|
"state-administrator": "State Administrator",
|
|
"consultant": "Consultant",
|
|
"ruler-consultant": "Ruler's Consultant",
|
|
"territorial-council-speaker": "Territorial Council Speaker",
|
|
"territorial-council": "Territorial Council",
|
|
"hangman": "Hangman",
|
|
"treasurer": "Treasurer",
|
|
"sheriff": "Sheriff",
|
|
"taxman": "Tax Collector",
|
|
"bailif": "Bailiff",
|
|
"judge": "Judge",
|
|
"village-major": "Village Major",
|
|
"master-builder": "Master Builder",
|
|
"mayor": "Mayor",
|
|
"town-clerk": "Town Clerk",
|
|
"beadle": "Beadle",
|
|
"council": "Council Member",
|
|
"councillor": "Councillor",
|
|
"assessor": "Assessor"
|
|
}
|
|
},
|
|
"family": {
|
|
"children": {
|
|
"title": "Children",
|
|
"name": "Name",
|
|
"age": "Age",
|
|
"gender": "Gender",
|
|
"heir": "Heir",
|
|
"isHeir": "Heir",
|
|
"notHeir": "Not Heir",
|
|
"setAsHeir": "Set as Heir",
|
|
"heirSetSuccess": "The child has been successfully set as heir.",
|
|
"heirSetError": "Error setting heir.",
|
|
"actions": "Actions",
|
|
"none": "No children available.",
|
|
"detailButton": "Show Details",
|
|
"addChild": "Add Child",
|
|
"baptism": "Baptize",
|
|
"notBaptized": "Not yet baptized",
|
|
"baptismNotice": "This child has not been baptized yet and therefore has no name.",
|
|
"details": {
|
|
"title": "Child Details"
|
|
}
|
|
,
|
|
"taxes": {
|
|
"title": "Taxes",
|
|
"loading": "Loading tax data...",
|
|
"total": "Total tax",
|
|
"table": {
|
|
"region": "Region",
|
|
"taxPercent": "Tax %"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |