feat(falukant): add character visual representation and settings

- Introduced FalukantCharacterVisual component to display character portraits and 3D figures based on user settings.
- Updated DirectorInfo, ChurchView, PoliticsView, and other components to utilize the new character visual component.
- Added visual settings management for users, allowing selection between portrait styles and display modes (portraits, 3D, or both).
- Implemented age rules for engagement and marriage in the backend, ensuring compliance with specified age limits.
- Created a new settings view for Falukant to manage visual preferences.
- Added new images for medieval character portraits.
- Updated translations for new settings and features in multiple languages.
This commit is contained in:
Torsten Schulz (local)
2026-07-24 10:55:19 +02:00
parent a3f90772a7
commit 5ebcc581f9
36 changed files with 811 additions and 49 deletions

View File

@@ -123,7 +123,9 @@ private:
ON fu1.id = c1.user_id
LEFT JOIN falukant_data.falukant_user fu2
ON fu2.id = c2.user_id
WHERE random()*100 < (
WHERE c1.birthdate <= CURRENT_DATE - INTERVAL '16 days'
AND c2.birthdate <= CURRENT_DATE - INTERVAL '16 days'
AND random()*100 < (
100.0 /
(1
+ EXP(

View File

@@ -118,6 +118,21 @@ private:
ON rt2.id = rel2.relationship_type_id
AND rt2.tr = 'engaged'
WHERE p.created_at <= NOW() - INTERVAL '1 day'
-- Ein realer Tag entspricht einem Spieljahr: Hochzeit ab 14.
AND c.birthdate <= CURRENT_DATE - INTERVAL '14 days'
AND (
(rel2.character1_id = c.id AND EXISTS (
SELECT 1 FROM falukant_data."character" partner
WHERE partner.id = rel2.character2_id
AND partner.birthdate <= CURRENT_DATE - INTERVAL '14 days'
))
OR
(rel2.character2_id = c.id AND EXISTS (
SELECT 1 FROM falukant_data."character" partner
WHERE partner.id = rel2.character1_id
AND partner.birthdate <= CURRENT_DATE - INTERVAL '14 days'
))
)
)
RETURNING character1_id, character2_id
)