
6b)Lc           @   s   d  d k  i Z d  d k Z d  d k Z d  d k l Z l Z l Z d  d k l	 Z	 l
 Z
 l Z l Z l Z l Z l Z l Z d e
 i f d     YZ d   Z d   Z d S(   iN(   t   casht   cput   labor(   t   widgett   dialogt   buttont   slidert   textt	   constantst   listboxt   gt   FinanceScreenc           B   s)   e  Z d d d  Z d   Z d   Z RS(	   g      ?g?g(\?g)\(?c      
   O   s   t  t |   i | | | | |  | i d t i d  t i |  d d d t i	 d d	 d
 d |  _
 |  i t i |  i
 i  t i |  d d d t i |  _ t i |  d d d t i |  _ d  S(   Nt   background_colort   clearg      gGzg333333ӿgt   anchorR   t   BACKt   hotkeyt   bi    gܿg333333i(   g      gGz(   g333333ӿg(   i    i    (   gܿg333333(   ii    (   gܿg333333(   t   superR   t   __init__t
   setdefaultt   ggt   colorsR   t   ExitDialogButtonR   t   BOTTOM_CENTERt   back_buttont   add_key_handlert   pygamet   K_ESCAPEt   activate_with_soundR   t   BorderedWidgett   TOP_LEFTt   money_report_panet	   TOP_RIGHTt   cpu_report_pane(   t   selft   parentt   post   sizet   argst   kwargs(    (    sM   /home/trcarlson/Desktop/python/endg-singularity/trunk/code/screens/finance.pyR      s    "	c         C   s  t  t |   i   t i i   } t i i | d t \ } } t i } t	 i
 |  i d( d) d d d t i d d t i d	 t i d
 t i t	 i
 |  i d* d+ d d d t i d d t i d	 t i d
 t i d } d } | d 7} | d 7} | d 7} | d 7} | d t i t i i  7} | d 7} | d 7} d | | i  | | i  | | i  | | i  | | i  | | i  | | i  | | i  f } d } d }	 |	 d 7}	 |	 d 7}	 |	 d 7}	 |	 d 7}	 |	 d 7}	 |	 d 7}	 |	 d 7}	 d | | i  | | i  | | i  | | i  | | i   | | i  | | i  | | i!  f }
 d  } t	 i
 |  i d, d- d | d$ | d t i d% d t i d	 t i t	 i
 |  i d. d/ d | d$ | d t i d% d t i d	 t i t	 i
 |  i d0 d1 d | d$ | d t i d% d t i" d	 t i t	 i
 |  i d2 d3 d |	 d$ | d t i d% d t i" d	 t i t	 i
 |  i d4 d5 d | d$ | d t i d% d t i# d	 t i t	 i
 |  i d6 d7 d |
 d$ | d t i d% d t i# d	 t i d  S(8   Nt   dry_runi    iR   s   Financial reportR   t	   dark_bluet   alignt   valignt   borderss	   CPU Usages    
+
-
-
-
+
+
=s   Current Money:
s   Jobs:
s
   Research:
s   Maintenance:
s   Construction:
s   Interest (%s):
s   Income:
s   Money at Midnight:s   %s
%s
%s
%s
%s
%s
%s
%ss    
-
-
-
=
 
-
-
=s   Total CPU:
s   Sleeping CPU:
s   Research CPU:
s	   Job CPU:
s   CPU pool:

s   Maintenance CPU:
s   Construction CPU:
s   Pool Overflow (Jobs):
s   %s
%s
%s
%s
%s

%s
%s
%s
i   g333333ÿgg333333t	   text_sizeR   gg\(\(   i    i    (   ii(   i    i    (   ii(   i    g333333ÿ(   gg333333(   i    g333333ÿ(   gg333333(   gg333333ÿ(   gg333333(   gg333333ÿ(   gg333333(   i    g333333ÿ(   g\(\g333333(   i    g333333ÿ(   g\(\g333333($   R   R   t   rebuildR
   t   plt   seconds_to_next_dayt	   give_timet   Truet   to_moneyR   t   TextR    R   R   R   t   CENTERt   TOPt   ALLR"   t
   to_percentt   interest_ratet   startt   jobst   techt   maintenancet   constructiont   interestt   incomet   endt   totalt   sleepingt   explicit_jobst   poolt	   pool_jobst   LEFTt   RIGHT(   R#   t   seconds_leftt	   cash_infot   cpu_infot   mt   financial_plusest   financial_reportt   financial_numberst
   cpu_plusest
   cpu_reportt   cpu_numbersR&   (    (    sM   /home/trcarlson/Desktop/python/endg-singularity/trunk/code/screens/finance.pyR/   /   sv    	







$+






$!!!!!!c         C   s   t  |  _ t t |   i   S(   N(   R3   t   needs_rebuildR   R   t   show(   R#   (    (    sM   /home/trcarlson/Desktop/python/endg-singularity/trunk/code/screens/finance.pyRU   x   s    	(   g      ?g?(   g(\?g)\(?(   t   __name__t
   __module__R   R/   RU   (    (    (    sM   /home/trcarlson/Desktop/python/endg-singularity/trunk/code/screens/finance.pyR      s   	Ic       	      sz   t  i d  t  i i t  i d  h    t   t i d d d d t  i d d	  <  f d
   }  t i	   d |  d  S(   Nt   clickt   blacki    iF   i   R   t   Bi   i   c              s   t    i    d  S(   N(   t   refresh_screent   keys(    (   t   menu_buttons(    sM   /home/trcarlson/Desktop/python/endg-singularity/trunk/code/screens/finance.pyt
   do_refresh   s    t   refresh_callback(   i    i    (   iF   i   (
   R
   t
   play_soundt   screent   fillR   t   exitt   buttonst   make_norm_buttont   fontt   show_buttons(   R^   (    (   R]   sM   /home/trcarlson/Desktop/python/endg-singularity/trunk/code/screens/finance.pyt   main_finance_screen   s    *c       
   C   s  t  i i t  i d  d } d } t  i | | f t  i d | d t  i d | d f  t  i d d } t  i i } d } d } d } d } t  i i   }	 x1t  i	   D]#}
 |
 i
   |	 } |
 i o | |
 i d 7} xI |
 i D]> } | p q n | i o q n | | i t t |  7} q WxI |
 i D]> } | p q5n | i o q5n | | i t t |  7} q5Wt  i i |
 i  o' | t  i |
 i i t t |  7} qq | |
 i t t |  7} q Wt   \ } } } } } } t  i i | |	  \ } } t  i i | | } t  i i | d } | d j  o
 d } n | | | | | | } t  i t  i d t  i d d	 d
 | d d f t  i d d  t  i t  i t  i t  i i  t  i d d	 d
 | d d f t  i d d  t  i t  i d t  i d d	 d
 | d d f t  i d d  d } | d j o
 d } n t  i t  i t  i |  t  i d d	 d
 | d d f t  i | d  t  i t  i d t  i t  i i  d t  i d d	 d
 | d d f t  i d d  d } | d j o
 d } n t  i t  i t  i |  t  i d d	 d
 | d d f t  i | d  t  i t  i d t  i d d	 d
 | d d f t  i d d  d } | d j o
 d } n t  i t  i t  i |  t  i d d	 d
 | d d f t  i | d  t  i t  i d t  i d d	 d
 | d d f t  i d d  d } | d j o
 d } n t  i t  i t  i |  t  i d d	 d
 | d d f t  i | d  t  i t  i d t  i d d	 d
 | d d f t  i d d  d } | d j o
 d } n t  i t  i t  i |  t  i d d	 d
 | d d f t  i | d  t  i t  i d t  i d d	 d
 | d d f t  i d d  d } | d j o
 d } n t  i t  i t  i |  t  i d d	 d
 | d d f t  i | d  t  i t  i d t  i d d	 d
 | d d f t  i d d  d } | d j o
 d } n t  i t  i t  i |  t  i d d	 d
 | d d f t  i | d  t  i i t  i d | d d d d f  t  i t  i d  t  i d d	 d
 | d d f t  i d d  d } | t  i i j o
 d } n | t  i i j  o
 d } n t  i t  i t  i |  t  i d d	 d
 | d d f t  i | d  t  i t  i d! t  i d d	 d
 | d d" f t  i d d  t  i t  i t  i |  t  i d d	 d
 | d d" f t  i d d  t  i t  i d# t  i d d	 d
 | d d$ f t  i d d  t  i t  i t  i |  t  i d d	 d
 | d d$ f t  i d d  t  i t  i d% t  i d d	 d
 | d d& f t  i d d  t  i t  i t  i |  t  i d d	 d
 | d d& f t  i d d  t  i t  i d' t  i d d	 d
 | d d( f t  i d d  t  i t  i t  i |  t  i d d	 d
 | d d( f t  i d d  t  i t  i d) t  i d d	 d
 | d d* f t  i d d  | | j  o t  i t  i t  i |  t  i d d	 d
 | d d* f t  i d d  t  i t  i t  i | |  d+ t  i d d	 d
 | d, d* f t  i d  nH t  i t  i t  i |  t  i d d	 d
 | d d* f t  i d d  t  i i t  i d | d d- d d f  t  i t  i d. t  i d d	 d
 | d d/ f t  i d d  | | j  oK t  i t  i t  i d  t  i d d	 d
 | d d/ f t  i d d  nL t  i t  i t  i | |  t  i d d	 d
 | d d/ f t  i d d  d  S(0   NRY   iP   i   i    i   i   i'  s   Current Money:i   ii   t   whitei   s	   + Income:i2   t   greens   + Interest (s   ):iF   s   + Jobs:iZ   s   - Research:in   t   reds   - Maintenance:i   s   - Base Construction:s   - Item Construction:i   i   i   s   = Money at midnight:s
   Total CPU:i,  s   -Sleeping CPU:i@  s   - Research CPU:iT  s
   - Job CPU:ih  s   - Maint. CPU:i|  s
    shortfalli   i  s   =R. CPU Pool:i  (   R
   Ra   Rb   R   t   create_norm_boxt   screen_sizeR0   RA   R1   t	   all_basest   processor_timet   doneR>   t   cpust
   get_wantedR    R   t   extra_itemst   techst   has_keyt   studyingRS   t   get_job_infoR:   t   print_stringRf   R4   R9   (    R]   t   xstartt   ystartt   text_midRA   t   maintt   researcht   base_constrt   item_constrRJ   t   baset   cpu_leftt   itemt	   total_cput   sleeping_cput   construction_cput   research_cput   job_cput	   maint_cput	   jobs_casht   moldy_leftoverst   partial_sumR@   t   complete_sumt
   income_colt   interest_colt   jobs_colt   research_colt	   maint_colt   base_constr_colt   item_constr_colt   complete_sum_col(    (    sM   /home/trcarlson/Desktop/python/endg-singularity/trunk/code/screens/finance.pyR[      s   ! 

  
 
  
 + 
/// 
/&/ 
// 
// 
// 
// 
// 
/*/ 
 
///////////!0/*/3(   t   code.gR
   R   t   numpyt   code.buyableR    R   R   t   code.graphicsR   R   R   R   R   R   R	   R   t   DialogR   Rh   R[   (    (    (    sM   /home/trcarlson/Desktop/python/endg-singularity/trunk/code/screens/finance.pyt   <module>   s   :a	