Level-based prerequisites

Issue #148 resolved
Nando Neck created an issue

We need a way to add different prerequisites for a level-based entity.

e.g. Verstümmelt (Eunuch) (Wege der Vereinigung)

"prerequisites": [
    {
        "type": "description",
        "description": "Person mit Penis (ehemals)"
    },
    {
        "type": "disadvantage",
        "disadvantage": "unfruchtbar",
        "musthave": false,
        "description": "kein Nachteil Unfruchtbar (dieser ist bei Eunuch I automatisch vorhanden)"
    },
    {
        "type": "disadvantage",
        "disadvantage": "impotent",
        "musthave": false,
        "description": "bei Eunuch II zusätzlich kein Nachteil Impotent (dieser ist bei Eunuch II automatisch vorhanden)",
        "onlevel": 2
    }
]

Comments (3)

  1. Bernhard Jung repo owner

    It’s implemented but different than suggested above. I added class SiPrLevel in commit d997074.

    I also added a disadvantages.json file for Wege der Vereinigung with Eunuch as an example. It also contains two disadvantages Unfruchtbar und Impotent, but with wrong values. They are just to test SIPrLevel. The JSON of SiPrByLevel for Eunuch looks like this

    "prerequisites": [
        {
            "type": "bylevel",
            "description": "bei Eunuch II zusätzlich kein Nachteil Impotent (dieser ist bei Eunuch II automatisch vorhanden)",
            "prerequisites": [
                {
                    "range": 2,
                    "prerequisite": {
                        "type": "disadvantage",
                        "disadvantage": "impotent",
                        "musthave": false
                    }
                }
            ]
        },
        {
            "type": "disadvantage",
            "disadvantage": "unfruchtbar",
            "musthave": false
        }
    ]
    

  2. Bernhard Jung repo owner

    I entered the correct values for the three disadvantges I entered as a test and had to fix the code of a prerquisite to make the checks work. No further work needs to be done on this particular point. So I'm resolving this ticket. There are now warnings though because the three disadvantages reference other dis-/advantages that are still missing.

  3. Log in to comment