"""
Adult Romance Events
Marriage and long-term romantic relationships (ages 18+)

Events:
- marriage: Marriage proposal
- wedding: Wedding ceremony
"""

import random
from events.base import messageFunction, questionFunction


def marriage(player, type='message', message=False, response=False):
    """Marriage proposal"""
    fname = 'marriage'
    check = fname not in player.askedQuestions and player.c.ageYears > 18 and 1 >= random.random()*1000
    if (type != 'answer' and check):
        if (player.c.partner):
            from functions import get_person
            partner = get_person(player,player.c.partner)
            if (partner.affinity > 80):
                message = "Would you like to marry "+partner.firstname+" "+partner.lastname+"?"
                return questionFunction(fname,message,player,check)
    elif (type == 'answer'):
        if (response['option'] == "Yes"):
            player.c.engaged = True
            player.messageQueue.append("You are now engaged to be married!")


def wedding(player, type='message', message=False, response=False):
    """Wedding ceremony"""
    fname = 'wedding'
    check = fname not in player.askedQuestions and getattr(player.c,'engaged',False)  and player.c.ageYears > 18 and 1 >= random.random()*1000
    if (type != 'answer' and check):
        if (player.c.partner):
            from functions import get_person
            partner = get_person(player,player.c.partner)
            if (partner.affinity > 80):
                message = "You have a beautiful wedding! Everyone is so happy for you!"
                from functions import update_relationship
                update_relationship(player,'Partner','Spouse','Spouse')
                return messageFunction(fname,message,player,check)


__all__ = [
    'marriage',
    'wedding',
]
