Enhance school creation and staffing management with native language support
- Updated protocol documentation to include `nativeLanguages` in `nameSets` and added `nativeLanguage` to school creation options. - Enhanced the UI for school creation to allow selection of native languages, improving user experience. - Revised API interfaces to accommodate new native language features, ensuring proper data handling. - Improved localization strings to support new native language functionalities in both English and Russian. - Updated tests to validate the new native language features and ensure robust functionality in staffing scenarios.
This commit is contained in:
@@ -3,6 +3,11 @@
|
||||
"patronymicRule": "slavic",
|
||||
"defaultGivenDeclension": "hard",
|
||||
"defaultSurnameDeclension": "ov",
|
||||
"nativeLanguages": ["RussianLanguage", "BelarusianLanguage", "UkrainianLanguage"],
|
||||
"relatedLanguageChance": 0.6,
|
||||
"relatedLanguageMean": 22,
|
||||
"relatedLanguageStdDev": 8,
|
||||
"relatedLanguageMax": 40,
|
||||
"maleGiven": [
|
||||
{ "form": "Александр" },
|
||||
{ "form": "Алексей" },
|
||||
|
||||
@@ -61,9 +61,4 @@
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 48, "stdDev": 16 },
|
||||
},
|
||||
{
|
||||
"defName": "ForeignLanguage",
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 50, "stdDev": 15 },
|
||||
},
|
||||
]
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
[
|
||||
{
|
||||
"defName": "English",
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 48, "stdDev": 15 },
|
||||
"adultChance": 0.4,
|
||||
"ageMeans": [
|
||||
{ "age": 11, "mean": 28 },
|
||||
{ "age": 17, "mean": 50 },
|
||||
],
|
||||
},
|
||||
{
|
||||
"defName": "German",
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 42, "stdDev": 14 },
|
||||
"adultChance": 0.08,
|
||||
"ageMeans": [
|
||||
{ "age": 14, "mean": 24 },
|
||||
{ "age": 17, "mean": 42 },
|
||||
],
|
||||
},
|
||||
{
|
||||
"defName": "BelarusianLanguage",
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 52, "stdDev": 13 },
|
||||
"ageMeans": [
|
||||
{ "age": 7, "mean": 32 },
|
||||
{ "age": 17, "mean": 56 },
|
||||
],
|
||||
},
|
||||
{
|
||||
"defName": "UkrainianLanguage",
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 52, "stdDev": 13 },
|
||||
"ageMeans": [
|
||||
{ "age": 7, "mean": 32 },
|
||||
{ "age": 17, "mean": 56 },
|
||||
],
|
||||
},
|
||||
]
|
||||
@@ -1,6 +1,7 @@
|
||||
[
|
||||
{
|
||||
"defName": "Agility",
|
||||
"always": true,
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 50, "stdDev": 14 },
|
||||
"bodyLimits": [
|
||||
@@ -11,6 +12,7 @@
|
||||
},
|
||||
{
|
||||
"defName": "Strength",
|
||||
"always": true,
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 50, "stdDev": 14 },
|
||||
"bodyLimits": [
|
||||
@@ -20,6 +22,7 @@
|
||||
},
|
||||
{
|
||||
"defName": "Endurance",
|
||||
"always": true,
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 50, "stdDev": 13 },
|
||||
"bodyLimits": [
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
[
|
||||
{
|
||||
"defName": "Communication",
|
||||
"always": true,
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 52, "stdDev": 12 },
|
||||
"ageMeans": [
|
||||
{ "age": 7, "mean": 32 },
|
||||
{ "age": 17, "mean": 52 },
|
||||
{ "age": 40, "mean": 58 },
|
||||
],
|
||||
},
|
||||
]
|
||||
@@ -0,0 +1,52 @@
|
||||
[
|
||||
{
|
||||
"defName": "Pedagogy",
|
||||
"work": true,
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 48, "stdDev": 14 },
|
||||
"ageMeans": [
|
||||
{ "age": 22, "mean": 40 },
|
||||
{ "age": 45, "mean": 58 },
|
||||
],
|
||||
},
|
||||
{
|
||||
"defName": "Medicine",
|
||||
"work": true,
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 46, "stdDev": 15 },
|
||||
"ageMeans": [
|
||||
{ "age": 22, "mean": 38 },
|
||||
{ "age": 45, "mean": 56 },
|
||||
],
|
||||
},
|
||||
{
|
||||
"defName": "Cooking",
|
||||
"work": true,
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 50, "stdDev": 14 },
|
||||
"ageMeans": [
|
||||
{ "age": 20, "mean": 42 },
|
||||
{ "age": 45, "mean": 58 },
|
||||
],
|
||||
},
|
||||
{
|
||||
"defName": "Administration",
|
||||
"work": true,
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 48, "stdDev": 13 },
|
||||
"ageMeans": [
|
||||
{ "age": 22, "mean": 40 },
|
||||
{ "age": 45, "mean": 57 },
|
||||
],
|
||||
},
|
||||
{
|
||||
"defName": "Librarianship",
|
||||
"work": true,
|
||||
"range": { "min": 0, "max": 100 },
|
||||
"distribution": { "mean": 46, "stdDev": 13 },
|
||||
"ageMeans": [
|
||||
{ "age": 22, "mean": 38 },
|
||||
{ "age": 45, "mean": 55 },
|
||||
],
|
||||
},
|
||||
]
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"defName": "Staffing",
|
||||
"poolSize": 12,
|
||||
"poolSize": 32,
|
||||
"stayChance": 0.65,
|
||||
"parentChance": 0.35,
|
||||
"hourlyWageBase": 30,
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
"defName": "ForeignLanguage",
|
||||
"grades": { "min": 5, "max": 11 },
|
||||
"hoursPerWeek": 3,
|
||||
"skills": [{ "skill": "ForeignLanguage", "share": 1 }],
|
||||
"skills": [{ "skill": "English", "share": 1 }],
|
||||
},
|
||||
{
|
||||
"defName": "History",
|
||||
|
||||
Reference in New Issue
Block a user