inigmatus / GAP

Giving Aircraft a Purpose (GAP) - Air Flights, Tours, Coast Guard, STS
http://forum.kerbalspaceprogram.com/index.php?/topic/129208-contract-pack-giving-aircraft-a-purpose-gap-10-beta-air-flights-tours-coast-guard-sts-105jan-4-2016/
MIT License
8 stars 5 forks source link

GAP - Fixup KerbalDeaths to prevent unintended Kerbals from tripping contract failure #182

Closed inigmatus closed 8 years ago

inigmatus commented 8 years ago

Pairing with #177 to also include limiting KerbalDeaths only to contracted Kerbals, and not the player's own Kerbals. A player's own Kerbal death is painful enough. This will also prevent Kerbals dying on the other side of the universe to fail active GAP contracts. Slating this for 1.2.

However, depending on release, nightigale has offered to take on as an enhancement to CC 1.9.7 https://github.com/jrossignol/ContractConfigurator/issues/478 to restrict KerbalDeaths to Kerbals in a vessel at its definition point (allowing for EVAs to be checked for untimely demises too). This will allow me to also check for the player's own crew. Could slate this for 1.2 if ready by then or 1.3.

inigmatus commented 8 years ago

vessel = Vessel Key is out in CC 1.9.7

need to test command chair passenger deaths. Tested ok!

will replace all countMax = 1 with vessel = Vessel Key in all KerbalDeaths params in all contracts.

inigmatus commented 8 years ago

Completed: Milestones Charters and Airlines BDArmory (not needed) Coast Guard Economy (not needed) Mining Road Trips Seacraft Skydiving Space Shuttle Missions Stunts

Done!

inigmatus commented 8 years ago

Need to include passenger iterator for rescue contracts, and passenger exchange contracts.

Currently too tired to implement. I have to come up with an iterator solution, but for now I don't see it being an issue as the contract just won't be compleatable, so that's enough for me.

inigmatus commented 8 years ago

This works:

    PARAMETER
    {
        name = All
        type = All
        title = or killing anyone

        PARAMETER
        {
            name = KerbalDeaths
            type = KerbalDeaths
            title = or killing anyone outbound

            vessel = @/craft

            hideChildren = true
            hidden = true

        }

        PARAMETER
        {
            name = KerbalDeaths
            type = KerbalDeaths
            title = or killing anyone inbound

            kerbal = @/kerbalsInbound

            hideChildren = true
            hidden = true

        }

        disableOnStateChange = false
        hideChildren = true

    }

DONE!