³ò
bZ(Hc           @   ss   d  d k  Z  d  d k Z d  d k Z d  d k Z d „  Z d „  Z d „  Z d „  Z d a	 d „  Z
 d d „ Z d S(   iÿÿÿÿNc             s°  t  i d ƒ t  i i t  i d ƒ d }  d } t  i i t  i d |  | |  t  i d d d f ƒ t  i i t  i d |  d | d |  t  i d d d	 d
 f ƒ d" } ‡ f d †  ‰  ‡  f d †  } ‡  f d †  } h  ‰ t i ˆ t i	 d# d$ d d t  i
 d d ƒ <| ˆ t i	 d% d& d d t  i
 d d ƒ <| ˆ t i	 |  d | d f d' d d t  i
 d d ƒ <g  a ˆ  ƒ  d „  } t i t ˆ d | d d( d  | d! | ƒd  S()   Nt   clickt   blackiP   i   t   whitei   i2   t	   dark_bluei   i0   i
   iF   c             s&   t  ˆ  d ƒ \ a }  a a |  t (d  S(   Ni
   (   t   refresh_screent	   item_listt   item_CPU_listt   free_CPUt   item_display_list(   t   new_item_display_list(   t   menu_buttons(    sD   /home/phil/rcs/svn/endgame-singularity/trunk/code/research_screen.pyt   rebuild_list-   s    c            s-   t  t |  ƒ o t i d ƒ n ˆ  ƒ  d  S(   NR    (   t	   kill_techR   t   gt
   play_sound(   t   list_pos(   R   (    sD   /home/phil/rcs/svn/endgame-singularity/trunk/code/research_screen.pyt   do_stop5   s    c            s   t  t t |  ƒ ˆ  ƒ  d  S(   N(   t   assign_techR   R   (   R   (   R   (    sD   /home/phil/rcs/svn/endgame-singularity/trunk/code/research_screen.pyt	   do_assign:   s    i    i   t   BACKt   Bi   i†  t   STOPt   SiZ   t   ASSIGNt   Ac         S   s   t  t |  t |  ƒ d  S(   N(   t   refresh_researchR   R   (   R   (    (    sD   /home/phil/rcs/svn/endgame-singularity/trunk/code/research_screen.pyt
   do_refreshL   s    t   loct   box_sizeiæ   i,  t   pos_callbackt   return_callback(   i
   iF   (   i    i    (   iF   i   (   i   i†  (   iP   i   (   iZ   i   (   iæ   i,  (   R   R   t   screent   fillt   colorst   screen_sizet   listboxt   exitt   buttonst   make_norm_buttont   fontR   t   show_listbox(   t   xstartt   ystartt   xy_locR   R   R   (    (   R   R
   sD   /home/phil/rcs/svn/endgame-singularity/trunk/code/research_screen.pyt   main_research_screen   s,    +
! -*8	c      
   C   s­  t  i i t  i d ƒ d } d } t  i i t  i d | | | t  i d d d f ƒ t  i i t  i d | d | d | t  i d d d d	 f ƒ g  } g  } g  } d
 } x#t  i ƒ  D]} | i p q¾ n | i d j o | | i ƒ  7} q¾ | i d j oƒ xÇt	 t
 | ƒ ƒ D]5 }	 | |	 | i j o | |	 c | i ƒ  7<PqqW| i | i ƒ | i | i ƒ  ƒ | i | i ƒ q¾ t  i i | i ƒ oŽ x.t	 t
 | ƒ ƒ D]5 }	 | |	 | i j o | |	 c | i ƒ  7<PqµqµW| i | i ƒ | i | i ƒ  ƒ | i t  i | i d ƒ q¾ t  i i | i ƒ o xŠ t	 t
 | ƒ ƒ D]5 }	 | |	 | i j o | |	 c | i ƒ  7<PqYqYW| i | i ƒ | i | i ƒ  ƒ | i t  i | i i ƒ q¾ q¾ Wd }
 xV t
 | ƒ | d
 j p t
 | ƒ d
 j o+ | i d ƒ | i d ƒ | i d
 ƒ qàWt  i t  i d t | ƒ t  i d
 d d | d | d f t  i d ƒ x |  D] } | i d
 ƒ q†W| | | | f S(   NR   iP   i   R   i   i2   R   i   i0   i    t    s   CPU Poolt   Sleepi   i
   iF   s   Free CPU per day: i   iÿÿÿÿ(   s   CPU Pools   Sleep(   i
   iF   (   R   R   R    R!   R"   t	   all_basest   donet   studyingt   processor_timet   ranget   lent   appendt   jobst   has_keyt   techst   namet   print_stringt   strR'   t   refresh_button(   R
   t	   list_sizeR)   R*   R   R   R   R   t   baset   iR+   t   button(    (    sD   /home/phil/rcs/svn/endgame-singularity/trunk/code/research_screen.pyR   S   sp    +
!  
  	 	 	" *0 c         C   sX  t  i d d d f } t  i i t  i d | d | d d d f ƒ t  i i t  i d | d d | d d d	 d
 f ƒ |  d j p |  d j oª t  i t  i t  i d t  i d d d | d d | d d f t  i d ƒ t  i d } t  i t  i | t  i d d d | d d | d d f t  i d ƒ d  Sn |  d j oû t  i t  i t  i d t  i d d d | d d | d d f t  i d ƒ t  i t  i d t	 | ƒ t  i d d d | d d | d d f t  i d ƒ t  i d } t  i t  i | t  i d d d | d d | d d f t  i d ƒ d  Sn |  d j oû t  i t  i t  i d t  i d d d | d d | d d f t  i d ƒ t  i t  i d t	 | ƒ t  i d d d | d d | d d f t  i d ƒ t  i d } t  i t  i | t  i d d d | d d | d d f t  i d ƒ d  Sn t  i
 i |  ƒ oât  i t  i t  i
 |  d t  i d d d | d d | d d f t  i d ƒ t  i t  i d t	 | ƒ t  i d d d | d d | d d f t  i d ƒ t  i d i oq t  i t  i t  i t t  i
 |  d | d ƒ ƒ d  t  i d d d | d d | d d f t  i d ƒ nd t  i t  i t  i t  i
 |  d | ƒ d  t  i d d d | d d | d d f t  i d ƒ t  i t  i t  i
 |  d! t  i d d d | d d | d d" f t  i d ƒ d  Sn t  i t  i t  i |  i t  i d d d | d d | d d f t  i d ƒ d# } t  i t  i | t  i d d d | d d | d d f t  i d ƒ t  i t  i |  i d ƒ d$ } t  i t  i | t  i d d d | d d | d d% f t  i d ƒ t  i t  i |  i d ƒ d& } t  i t  i | t  i d d d | d d' | d d% f t  i d ƒ t  i t  i d t	 | ƒ t  i d d d | d d( | d d) f t  i d ƒ t  i t  i t  i |  i t  i d d d | d d | d d* f t  i d ƒ d  S(+   Ni    ih  i   R   i   i6  i^  R   i4  i\  R-   t   Nothingt   nothingi   iÿÿÿÿt   research_nothingi   i"  i#   R.   t   sleeps   CPU per day: i   t   research_sleepi7   s   CPU Poolt   cpu_poolt   research_cpu_pooli   s   Advanced Simulacragš™™™™™ñ?s    Money per day.i   iU   s
   Tech Cost:s    Moneyi2   s    CPUi¥   ii   iF   iZ   (   R   R"   R   R    R!   R:   t   stringsR'   t   print_multilineR;   R6   R7   R8   R0   t   to_moneyt   intR9   t	   cost_leftt   to_cput   description(   t	   tech_namet
   CPU_amountt   xyt   string(    (    sD   /home/phil/rcs/svn/endgame-singularity/trunk/code/research_screen.pyR   ‘   sz    .68888888888	.8888!8!88c         C   sY   t  } |  d j o | Sn x7 t i ƒ  D]) } | i |  j o t } d | _ q( q( W| S(   NR-   (   t   FalseR   R/   R1   t   True(   RO   t
   return_valR>   (    (    sD   /home/phil/rcs/svn/endgame-singularity/trunk/code/research_screen.pyR   â   s     c           C   s_   t  pT t i i d t i d t ƒ a  t i i t i d ƒ t  i	 d <t  i	 d i
 ƒ  n d  S(   Nt	   fake_baset   Faket   research_screen_fake_cpui    (   RV   R   R>   t   Baset	   base_typeRT   t   itemt   Itemt   itemst   cpust   finish(    (    (    sD   /home/phil/rcs/svn/endgame-singularity/trunk/code/research_screen.pyt   init_fake_baseí   s     c         C   s0  t  } t ƒ  |  t i d i _ d t _ t i t | ƒ t i d j o t  Sn t  } x‹ t	 i
 ƒ  D]} } | i d j og | i t i ƒ o< t } t i | _ t i d j o d | _ qÝ d | _ qá | i o
 t } qá qd qd W| o@ t i d j o t	 i t	 i d ƒ q,t	 i t	 i d ƒ n | S(   Ni    R-   R.   t   Activet   no_construction_sleept   dangerous_research(   RS   R`   RV   R^   t   typet	   item_qualR1   t   base_screent   change_techR   R/   t   allow_studyRT   t   power_stateR0   t   create_dialogRH   (   R   t   select_thisRU   t   show_dangerous_dialogR>   (    (    sD   /home/phil/rcs/svn/endgame-singularity/trunk/code/research_screen.pyR   ô   s0    	  
(   R   R%   R#   Rf   R,   R   R   R   t   NoneRV   R`   R   (    (    (    sD   /home/phil/rcs/svn/endgame-singularity/trunk/code/research_screen.pys   <module>   s   	5	>	Q	
	