Exemple #1
0
    def from_json(json_data: Dict) -> Union["Item", None]:
        if json_data is None:
            return None

        use_function = eval(
            json_data["use_function"]
        ) if json_data["use_function"] is not None else None
        targeting = json_data["targeting"]
        targeting_message = Message.from_json(json_data["targeting_message"])
        function_kwargs = json_data["function_kwargs"]

        item = Item(use_function=use_function,
                    targeting=targeting,
                    targeting_message=targeting_message,
                    **function_kwargs)

        return item
Exemple #2
0
    def from_json(cls, json_data: dict):
        use_function_name = json_data.get('use_function')
        targeting = json_data.get('targeting')
        targeting_message_json = json_data.get('targeting_message')
        function_kwargs = json_data.get('function_kwargs', {})

        if use_function_name:
            use_function = getattr(item_functions, use_function_name)
        else:
            use_function = None

        if targeting_message_json:
            targeting_message = Message.from_json(targeting_message_json)
        else:
            targeting_message = None

        return cls(use_function, targeting, targeting_message,
                   **function_kwargs)
Exemple #3
0
    def from_json(json_data):
        use_function_name = json_data.get('use_function')
        targeting = json_data.get('targeting')
        targeting_message_json = json_data.get('targeting_message')
        function_kwargs = json_data.get('function_kwargs', {})
        stackable_data = json_data.get('stackable')
        number_data = json_data.get('number')

        if use_function_name:
            use_function = getattr(item_functions, use_function_name)
        else:
            use_function = None

        if targeting_message_json:
            targeting_message = Message.from_json(targeting_message_json)
        else:
            targeting_message = None

        item = Item(use_function, targeting, targeting_message, stackable=stackable_data, number=number_data, **function_kwargs)

        return item
Exemple #4
0
    def from_json(cls, json_data) -> Item:
        use_function_name = json_data.get("use_function_name")
        targeting = json_data.get("targeting")
        targeting_message_data = json_data.get("targeting_message")
        function_kwargs = json_data.get("function_kwargs", {})

        if use_function_name:
            use_function = getattr(item_functions, use_function_name)
        else:
            use_function = None

        if targeting_message_data:
            targeting_message = Message.from_json(targeting_message_data)
        else:
            targeting_message = None

        item = cls(use_function=use_function,
                   targeting=targeting,
                   targeting_message=targeting_message,
                   **function_kwargs)

        return item