Indeterminate Soul

Hmm, it looks like I couldn’t quite see how much determination you have to open that webpage.

enum DeterminationError: Error {
    case paisError
    case fusedSoulRefusal
    case soulTypeMismatch(type: String)
}

func diagnoseSoul(det: DeterminationError) {
    switch det {
    case .paisError:
        if (!window.incomingSoulRequest.soul.id !== 177435) {
            return "Soul is considered PaIS (partial and indeterminate)."
        }
        else {
            return "Soul has invalid quality 'HYPERDEATH'."
        }
    case .fusedSoulRefusal:
        return "Soul is already fused or has reached its max fuses."
    case .soulTypeMismatch(let type):
        return "Operation cannot be used with a \(type) soul."
    default:
        return err
    }
}

diagnoseSoul(det: window.incomingSoulRequestError)