a
    ŽiMN  ã                   @   sê   d Z ddlZddlmZmZmZ d-dd„Zd.dd„Zd/d	d
„Zd0dd„Z	d1dd„Z
d2dd„Zd3dd„Zd4dd„Zd5dd„Zd6dd„Zd7dd„Zd8dd„Zd9dd„Zd:d d!„Zd;d"d#„Zd<d$d%„Zd=d&d'„Zd>d(d)„Zd?d*d+„Zg d,¢ZdS )@aõ  
Annual Holiday Events
Date-specific holiday celebrations

Events from dayEvents.py:
- christmas: Christmas celebration (12-25)
- newYear: New Year celebration (01-01)
- thanksgiving: Thanksgiving celebration (11-23)
- blackfriday: Black Friday (11-24)
- independenceday: Independence Day (07-04)
- birthday: Player's birthday
- immunizations: Childhood immunizations
- vacation: Family vacation
- newFood: Trying new foods

New holiday events:
- halloween: Halloween costume and trick-or-treating (10-31)
- valentinesDay: Valentine's Day celebration (02-14)
- easterEggHunt: Easter egg hunting (04-10)
- backToSchoolShopping: Back-to-school shopping (08-20 to 08-31)
- springCleaning: Spring cleaning task (03-15 to 04-15)
- mothersDayForgot: Forgetting Mother's Day (05-08 to 05-14)
- summerFirstDayPool: First day at pool/beach (06-01 to 06-07)
- snowDay: School/work cancelled due to snow (12-01 to 02-28)
- newYearsResolution: New Year's resolutions (01-01)
- blackFridayChaos: Black Friday shopping (11-24)
é    N)ÚmessageFunctionÚquestionFunctionÚanswerOptionÚmessagec                 C   s>   d| j j› �}|| jvo | jdk}|r:d| _t|d| |ƒS d S )NZ
christmas_z12-25Ú	christmaszYou have celebrated Christmas!©ÚcÚageYearsÚeventsÚdateÚdayEventr   ©ÚplayerÚtypeÚfnameÚcheck© r   ú7/var/www/lichun.app/lichun/ws/events/holidays/annual.pyr   !   s
    r   c                 C   s>   d| j j› �}|| jvo | jdk}|r:d| _t|d| |ƒS d S )NZnewyear_ú01-01ZnewyearzYou have celebrated New Years!r   r   r   r   r   ÚnewYear)   s
    r   c                 C   s>   d| j j› �}|| jvo | jdk}|r:d| _t|d| |ƒS d S )NZthanksgiving_z11-23Úthanksgivingz!You have celebrated Thanksgiving!r   r   r   r   r   r   1   s
    r   c                 C   s>   d| j j› �}|| jvo | jdk}|r:d| _t|d| |ƒS d S )NZblackfriday_ú11-24ÚblackfridayzIt is Black Fridayr   r   r   r   r   r   9   s
    r   c                 C   s>   d| j j› �}|| jvo | jdk}|r:d| _t|d| |ƒS d S )NZindependenceday_z07-04Úindependencedayz$You have celebrated Independence Dayr   r   r   r   r   r   A   s
    r   Fc           
      C   s€  d| j j› �}|| jvo2| j jdko2| j jd dk}|r–|dkr–d}ddlm}m} g }|| ƒrj| d¡ || ƒr|| d¡ | d	¡ t||| d
|ƒS |dk�r|| j 	|¡ |d dk�r| j  j
d7  _
| jD ]6}	|	jdkrî|	 jd7  _qÐ|	jdkrÐ|	 jd7  _qÐ|d dk�rN| j  j
d7  _
| jD ] }	d|	jv �r,|	 jd7  _�q,|d d	k�r|| j  j
d7  _
| j  jd8  _d S )NZ	birthday_r   im  Úanswerz3It's your birthday! How would you like to spend it?)Úget_random_friendÚget_random_familyzSpend it with family.zSpend it with friends.z%Spend it alone, doing what you enjoy.TÚoptioné   é   é   é   Úfriend)r   r	   ÚaskedQuestionsÚageDaysÚ	functionsr   r   Úappendr   ÚaddÚ	happinessÚrÚfamilyLevelÚaffinityÚrelationshipsZstress)
r   r   r   Úresponser   r   r   r   ÚanswerOptionsÚpr   r   r   ÚbirthdayI   s:    &







r0   c                 C   s\   d}|| j vo0| jjdko0| jjdko0t ¡ dk }|rX| j  |¡ d| j_t|d| |ƒS d S )NÚimmunizationsé   é   ç{®Gáz„?Tz$You have received your immunizations)r
   r   r	   Úrandomr'   r1   r   r   r   r   r   r1   j   s    .r1   c                 C   sf   d}|| j vo0| jjdko0| jjdko0t ¡ dk }|rb| j  |¡ t g d¢¡}t|d| | |ƒS d S )NÚvacationr2   r3   r4   )
z	the beachzthe mountainszanother countryza theme parkza cruiseza national parkza lakeza cabinza resortza cityzYou have gone on vacation to )r
   r   r	   r5   r'   Úchoicer   )r   r   r   r   Údestinationr   r   r   r6   s   s    .r6   c                 C   s   d}| j jdko<|| jvo<| j jdko<| j jdko<t ¡ dk }|rˆ|dkrˆt g d¢¡}d| d	 }td
|ƒtd|ƒg}t||| d|ƒS |dkrü| j |d ¡ |d d
krÎ| j  j	d7  _	| j j
 |d ¡ |d dkrü| j  j	d8  _	| j j |d ¡ d S )NÚnewFoodr   r    r3   r4   r   )ZBroccoliZCeleryZ	MushroomszBrussels sproutsZOnionsZTomatoesz*Today at dinner your parents have you try z. Do you like it?z	Yes, yum!z
No, gross!TÚdatar   r!   )r   r$   r#   r	   r5   r7   r   r   r'   r(   Zlikesr&   Zdislikes)r   r   r   r-   r   r   Zfoodr.   r   r   r   r9   |   s    :r9   c                 C   s”  d| j j› �}|| jvo8| jdko8| j jdko8| j jdk}|rx|dkrxd}| j jdkr`g d¢}ng d	¢}t||| d
|ƒS |dk�r�| j |¡ |d dv r¸| j  jd7  _| j d¡ nØ|d dkrò| j  jd7  _| j  j	d7  _	| j d¡ nž|d dk�r"| j  jd7  _| j  j	d7  _	nn|d dk�rR| j  jd8  _| j  j	d8  _	n>|d dk�rr| j  jd7  _n|d dk�r�| j  jd8  _dS )z-Halloween costume and trick-or-treating eventZ
halloween_z10-31é   é   r   z)It's Halloween! What costume do you wear?é
   )úPrincess/SuperheroúScary MonsterúFunny Characterú
No costume)úGroup costume with friendsúIronically cuteúToo cool for costumesúHand out candy insteadTr   )r>   r?   r@   r   z'You had a great time trick-or-treating!rB   é   zYour group costume was a hit!rC   r!   rD   rE   rA   N©
r   r	   r#   r   r   r'   r(   ÚmessageQueuer&   Úsocial©r   r   r   r-   r   r   r.   r   r   r   Ú	halloween�   sB    
ÿ
þ
ý

rK   c           	      C   sî  d| j j› �}|| jvo,| jdko,| j jdk}|rŒ|dkrŒd}ddlm} || ƒ}|rjtdd	d
�ddg}ndtddd
�dg}t||| d|ƒS |dk�rê| j |¡ |d dk�r| j  j	d	8  _	| j  j
d7  _
ddlm} || ƒ}|rö| jd7  _| j d¡ næ|d dk�rL| j  j
d7  _
ddlm} || ƒ}|�rê| jd7  _nž|d dk�rl| j  j
d7  _
n~|d dk�rœ| j  j
d7  _
| j  jd7  _nN|d dk�rÌ| j  j	d8  _	| j  j
d7  _
n|d dk�rê| j  j
d7  _
dS )z&Valentine's Day celebration or anxietyZvalentinesDay_z02-14r=   r   z*It's Valentine's Day! How do you spend it?r   )Úget_partnerzRomantic dinneréd   ©Ú	moneyCostzStay in and cookzExchange small giftsz$Galentine's/Palentine's with friendszTreat yourselfé2   zIgnore it completelyTr   rF   r   z$You had a wonderful romantic dinner!r!   N)r   r	   r#   r   Úcharacter.character_managerrL   r   r   r'   Úmoneyr(   r+   rH   r&   rI   )	r   r   r   r-   r   r   rL   Úpartnerr.   r   r   r   ÚvalentinesDayÅ   s\    
ÿ
þ
ý
ý
rT   c                 C   sj   d| j j› �}|| jvo8| jdko8| j jdko8| j jdk}|rfd| _d}| j  jd7  _t||| |ƒS dS )	zEaster egg hunting as a childZeasterEggHunt_z04-10r    r=   ZeasterzDYou find a basket full of candy and colorful eggs! Easter is so fun!r   N)r   r	   r
   r   r   r(   r   ©r   r   r   r   r   r   r   r   ÚeasterEggHunt  s    
ÿ
þ
ýrV   c                 C   sj  d| j j› �}|| jvoB| jdkoB| jdkoB| j jdkoB| j jdk}|rˆ|dkrˆd}tdd	d
�tddd
�tddd
�dg}t||| d|ƒS |dk�rf| j |¡ |d dkrè| j  jd	8  _| j  jd7  _| j  j	d7  _	| j
 d¡ n~|d dk�r| j  jd8  _| j  jd7  _nN|d dk�r8| j  jd8  _n.|d dk�rf| j  jd8  _| j  j	d8  _	dS )zShopping for school suppliesZbackToSchoolShopping_z08-20z08-31r!   é   r   z9It's time for back-to-school shopping! What's your style?zCool new backpackrP   rN   zFancy notebooksé   zJust the basicsrF   zUse last year's stuffTr   r=   zYour new backpack is awesome!N)r   r	   r#   r   r   r   r'   rR   r(   rI   rH   r&   rJ   r   r   r   ÚbackToSchoolShopping  sB    
ÿþ
ý
ü


ü
rY   c                 C   sL  d| j j› �}|| jvo6| jdko6| jdko6| j jdk}|r||dkr|d}tddd	�td
dd	�tddd�dg}t||| d|ƒS |dk�rH| j |¡ |d dkrÌ| j  jd8  _| j  jd7  _| j	 
d¡ n||d d
krú| j  jd8  _| j  jd7  _nN|d dk�r*| j  jd8  _| j  jd7  _n|d dk�rH| j  jd8  _dS )zAnnual spring cleaning taskZspringCleaning_z03-15z04-15rW   r   z4It's time for spring cleaning! How thorough are you?zDeep clean everythingrX   ©Ú
energyCostzJust the visible areasr   zHire a cleaneréÈ   rN   z	Ignore itTr   zYour home is spotless!r!   r=   N)r   r	   r#   r   r   r   r'   Úenergyr(   rH   r&   rR   rJ   r   r   r   ÚspringCleaning<  s<    
ÿþ
ý


ü
r^   c                 C   s–   d| j j› �}|| jvoB| jdkoB| jdkoB| j jdkoBt ¡ dk }|r’d}ddlm} || d	ƒ}|rt| jd
8  _| j  jd8  _t	||| |ƒS dS )zForgetting Mother's DayZmothersDayForgot_z05-08z05-14é   g333333Ó?zNYou forgot it was Mother's Day! You scramble to call your mom and feel guilty.r   )Úget_relationshipÚmotherr   r=   N)
r   r	   r
   r   r5   rQ   r`   r+   r(   r   )r   r   r   r   r   r`   ra   r   r   r   ÚmothersDayForgotc  s$    
ÿþ
ý
ü
rb   c                 C   s~   d| j j› �}|| jvoB| jdkoB| jdkoB| j jdkoB| j jdk}|rzd}| j  jd7  _| j  jd8  _t||| |ƒS d	S )
zFirst day at the pool/beachZsummerFirstDayPool_z06-01z06-07r!   rX   zfIt's finally warm enough to swim! You spend the whole day at the pool/beach and get totally sunburned.r   r=   N)r   r	   r
   r   r(   r]   r   rU   r   r   r   ÚsummerFirstDayPool{  s    
ÿþ
ý
ürc   c                 C   sÈ   d| j j› �}t| j d¡d ƒ}|dkp8|dkp8|dk}| j jdv }|| jvoz|oz| j jdkoz| j jd	koz|ozt ¡ d
k }|rÄ| j jdkr’d}nd}| j  jd7  _| j  j	d7  _	t
||| |ƒS dS )z!School/work cancelled due to snowZsnowDay_ú-r   r_   r   r    )ÚstudentÚworkr!   éA   gš™™™™™©?re   zLHeavy snow overnight! School is cancelled and you get an unexpected day off!zJHeavy snow overnight! Work is cancelled and you get an unexpected day off!rF   r=   N)r   r	   Úintr   ÚsplitÚ
occupationr
   r5   r(   r]   r   )r   r   r   Zcurrent_monthZ	is_winterZis_student_or_workr   r   r   r   r   ÚsnowDay�  s,    
ÿ
þ
ýü
ûrk   c                 C   s  d| j j› �}|| jvo,| jdko,| j jdk}|rV|dkrVd}g d¢}t||| d|ƒS |dk�r| j |¡ |d d	kr–| j  jd7  _| j d
¡ n‚|d dkrÀ| j  jd7  _| j d¡ nX|d dkrú| j  jd7  _| j  j	d7  _	| j d¡ n|d dk�r| j  jd8  _dS )zMaking New Year's resolutionsZnewYearsResolution_r   r=   r   z"What's your New Year's resolution?)úExercise moreú
Save moneyúMake new friendsúNo resolutionsTr   rl   z$You feel motivated to exercise more!rm   z(You start being more careful with money!rn   r!   z(You resolve to be more social this year!ro   NrG   rJ   r   r   r   ÚnewYearsResolution¨  s0    
ÿ
þ
rp   c                 C   sV  d| j j› �}|| jvo,| jdko,| j jdk}|rt|dkrtd}tdddd	�td
dd�dtddd�g}t||| d|ƒS |dk�rR| j |¡ |d dkrÔ| j  jd8  _| j  jd8  _| j  j	d7  _	| j
 d¡ n~|d d
k�r| j  jd8  _| j  j	d7  _	nN|d dk�r$| j  j	d7  _	n.|d dk�rR| j  jd8  _| j  jd7  _dS )zBlack Friday shopping decisionZblackFridayChaos_r   r<   r   z1Black Friday is here! Brave the crowds for deals?zYes, wake up early!rF   r\   )r[   rO   zOnline shopping onlyé–   rN   zSkip it completelyzJust window shopr=   rZ   Tr   r   z/You got some great deals, but you're exhausted!r!   N)r   r	   r#   r   r   r   r'   r]   rR   r(   rH   r&   rI   rJ   r   r   r   ÚblackFridayChaosÐ  s:    
ÿ
þ

ü
rr   )r   r   r   r   r   r0   r1   r6   r9   rK   rT   rV   rY   r^   rb   rc   rk   rp   rr   )r   )r   )r   )r   )r   )r   FF)r   )r   )r   FF)r   FF)r   FF)r   )r   FF)r   FF)r   )r   )r   )r   FF)r   FF)Ú__doc__r5   Zevents.baser   r   r   r   r   r   r   r   r0   r1   r6   r9   rK   rT   rV   rY   r^   rb   rc   rk   rp   rr   Ú__all__r   r   r   r   Ú<module>   s,   





!
	
	

6
=

)
'



(
'