Changeset 1248 for 2010


Ignore:
Timestamp:
2010-07-20 11:54:30 (13 years ago)
Author:
vilvaini
Message:

TODELLA paljon uusia ominaisuuksia mm. uudet valikot, uusi pelimodi: yhteistyöpelimuoto, Parhaat pisteet lista ja paljon muuta.

Location:
2010/24/Vilvaini/SmilejumpToimiva
Files:
81 added
1 deleted
15 edited

Legend:

Unmodified
Added
Removed
  • 2010/24/Vilvaini/SmilejumpToimiva/Content/Content.contentproj

    r1024 r1248  
    2727  </ItemGroup> 
    2828  <ItemGroup> 
    29     <Compile Include="smile jump %28vihreä pelaaja%29 %282%29.png"> 
    30       <Name>smile jump %28vihreä pelaaja%29 %282%29</Name> 
    31       <Importer>TextureImporter</Importer> 
    32       <Processor>TextureProcessor</Processor> 
    33     </Compile> 
    34   </ItemGroup> 
    35   <ItemGroup> 
    36     <Compile Include="smile jump%28keltainen pelaaja%29 %282%29.png"> 
    37       <Name>smile jump%28keltainen pelaaja%29 %282%29</Name> 
    38       <Importer>TextureImporter</Importer> 
    39       <Processor>TextureProcessor</Processor> 
    40     </Compile> 
    41   </ItemGroup> 
    42   <ItemGroup> 
    43     <Compile Include="smile jump%28vihollinen%29 %282%29.png"> 
    44       <Name>smile jump%28vihollinen%29 %282%29</Name> 
    45       <Importer>TextureImporter</Importer> 
    46       <Processor>TextureProcessor</Processor> 
    47     </Compile> 
    48   </ItemGroup> 
    49   <ItemGroup> 
    50     <Compile Include="Smile Jump%28trampoliini-laatta%29.png"> 
    51       <Name>Smile Jump%28trampoliini-laatta%29</Name> 
    52       <Importer>TextureImporter</Importer> 
    53       <Processor>TextureProcessor</Processor> 
    54     </Compile> 
    55   </ItemGroup> 
    56   <ItemGroup> 
    57     <Compile Include="Smile Jump%28laatta%29.png"> 
    58       <Name>Smile Jump%28laatta%29</Name> 
    59       <Importer>TextureImporter</Importer> 
    60       <Processor>TextureProcessor</Processor> 
    61     </Compile> 
    62   </ItemGroup> 
    63   <ItemGroup> 
    64     <Compile Include="smile jump%28sininen pelaaja%29.png"> 
    65       <Name>smile jump%28sininen pelaaja%29</Name> 
    66       <Importer>TextureImporter</Importer> 
    67       <Processor>TextureProcessor</Processor> 
    68     </Compile> 
    69   </ItemGroup> 
    70   <ItemGroup> 
    71     <Compile Include="Ohje2p.png"> 
    72       <Name>Ohje2p</Name> 
    73       <Importer>TextureImporter</Importer> 
    74       <Processor>TextureProcessor</Processor> 
    75     </Compile> 
    76   </ItemGroup> 
    77   <ItemGroup> 
    7829    <Compile Include="Aloituskokonaytto2.png"> 
    7930      <Name>Aloituskokonaytto2</Name> 
     
    8132      <Processor>TextureProcessor</Processor> 
    8233    </Compile> 
    83     <Compile Include="Ohje3p.png"> 
    84       <Name>Ohje3p</Name> 
    85       <Importer>TextureImporter</Importer> 
    86       <Processor>TextureProcessor</Processor> 
    87     </Compile> 
    88     <Compile Include="smile jump%28pinkki pelaaja%29.png"> 
    89       <Name>smile jump%28pinkki pelaaja%29</Name> 
    90       <Importer>TextureImporter</Importer> 
    91       <Processor>TextureProcessor</Processor> 
    92     </Compile> 
    93   </ItemGroup> 
    94   <ItemGroup> 
    95     <Compile Include="Smile Jump%28pelaaja1voitti%29.png"> 
    96       <Name>Smile Jump%28pelaaja1voitti%29</Name> 
    97       <Importer>TextureImporter</Importer> 
    98       <Processor>TextureProcessor</Processor> 
    99     </Compile> 
    100   </ItemGroup> 
    101   <ItemGroup> 
    102     <Compile Include="Smile Jump%28pelaaja2voitti%29.png"> 
    103       <Name>Smile Jump%28pelaaja2voitti%29</Name> 
    104       <Importer>TextureImporter</Importer> 
    105       <Processor>TextureProcessor</Processor> 
    106     </Compile> 
    107   </ItemGroup> 
    108   <ItemGroup> 
    109     <Compile Include="Smile Jump%28pelaaja3voitti%29.png"> 
    110       <Name>Smile Jump%28pelaaja3voitti%29</Name> 
    111       <Importer>TextureImporter</Importer> 
    112       <Processor>TextureProcessor</Processor> 
    113     </Compile> 
    114   </ItemGroup> 
    115   <ItemGroup> 
    116     <Compile Include="Smile Jump%28pelaaja4voitti%29.png"> 
    117       <Name>Smile Jump%28pelaaja4voitti%29</Name> 
    118       <Importer>TextureImporter</Importer> 
    119       <Processor>TextureProcessor</Processor> 
    120     </Compile> 
    121   </ItemGroup> 
    122   <ItemGroup> 
    12334    <Compile Include="E Api.mp3"> 
    12435      <Name>E Api</Name> 
     
    12637      <Processor>SongProcessor</Processor> 
    12738    </Compile> 
    128   </ItemGroup> 
    129   <ItemGroup> 
    13039    <Compile Include="Menu.wma"> 
    13140      <Name>Menu</Name> 
    13241      <Importer>WmaImporter</Importer> 
    13342      <Processor>SongProcessor</Processor> 
     43    </Compile> 
     44    <Compile Include="NappiAloitapeli.png"> 
     45      <Name>NappiAloitapeli</Name> 
     46      <Importer>TextureImporter</Importer> 
     47      <Processor>TextureProcessor</Processor> 
     48    </Compile> 
     49    <Compile Include="NappiAloitapeli2.png"> 
     50      <Name>NappiAloitapeli2</Name> 
     51      <Importer>TextureImporter</Importer> 
     52      <Processor>TextureProcessor</Processor> 
     53    </Compile> 
     54    <Compile Include="NappiKaksinpeli.png"> 
     55      <Name>NappiKaksinpeli</Name> 
     56      <Importer>TextureImporter</Importer> 
     57      <Processor>TextureProcessor</Processor> 
     58    </Compile> 
     59    <Compile Include="NappiKaksinpeli2.png"> 
     60      <Name>NappiKaksinpeli2</Name> 
     61      <Importer>TextureImporter</Importer> 
     62      <Processor>TextureProcessor</Processor> 
     63    </Compile> 
     64    <Compile Include="NappiKolminpeli.png"> 
     65      <Name>NappiKolminpeli</Name> 
     66      <Importer>TextureImporter</Importer> 
     67      <Processor>TextureProcessor</Processor> 
     68    </Compile> 
     69    <Compile Include="NappiKolminpeli2.png"> 
     70      <Name>NappiKolminpeli2</Name> 
     71      <Importer>TextureImporter</Importer> 
     72      <Processor>TextureProcessor</Processor> 
     73    </Compile> 
     74    <Compile Include="NappiKP.png"> 
     75      <Name>NappiKP</Name> 
     76      <Importer>TextureImporter</Importer> 
     77      <Processor>TextureProcessor</Processor> 
     78    </Compile> 
     79    <Compile Include="NappiKP2.png"> 
     80      <Name>NappiKP2</Name> 
     81      <Importer>TextureImporter</Importer> 
     82      <Processor>TextureProcessor</Processor> 
     83    </Compile> 
     84    <Compile Include="NappiNelinpeli.png"> 
     85      <Name>NappiNelinpeli</Name> 
     86      <Importer>TextureImporter</Importer> 
     87      <Processor>TextureProcessor</Processor> 
     88    </Compile> 
     89    <Compile Include="NappiNelinpeli2.png"> 
     90      <Name>NappiNelinpeli2</Name> 
     91      <Importer>TextureImporter</Importer> 
     92      <Processor>TextureProcessor</Processor> 
     93    </Compile> 
     94    <Compile Include="NappiOhjeet.png"> 
     95      <Name>NappiOhjeet</Name> 
     96      <Importer>TextureImporter</Importer> 
     97      <Processor>TextureProcessor</Processor> 
     98    </Compile> 
     99    <Compile Include="NappiOhjeet2.png"> 
     100      <Name>NappiOhjeet2</Name> 
     101      <Importer>TextureImporter</Importer> 
     102      <Processor>TextureProcessor</Processor> 
     103    </Compile> 
     104    <Compile Include="NappiPisteet.png"> 
     105      <Name>NappiPisteet</Name> 
     106      <Importer>TextureImporter</Importer> 
     107      <Processor>TextureProcessor</Processor> 
     108    </Compile> 
     109    <Compile Include="NappiPisteet2.png"> 
     110      <Name>NappiPisteet2</Name> 
     111      <Importer>TextureImporter</Importer> 
     112      <Processor>TextureProcessor</Processor> 
     113    </Compile> 
     114    <Compile Include="NappiPoistu.png"> 
     115      <Name>NappiPoistu</Name> 
     116      <Importer>TextureImporter</Importer> 
     117      <Processor>TextureProcessor</Processor> 
     118    </Compile> 
     119    <Compile Include="NappiPoistu2.png"> 
     120      <Name>NappiPoistu2</Name> 
     121      <Importer>TextureImporter</Importer> 
     122      <Processor>TextureProcessor</Processor> 
     123    </Compile> 
     124    <Compile Include="NappiPäävalikkoon.png"> 
     125      <Name>NappiPäävalikkoon</Name> 
     126      <Importer>TextureImporter</Importer> 
     127      <Processor>TextureProcessor</Processor> 
     128    </Compile> 
     129    <Compile Include="NappiPäävalikkoon2.png"> 
     130      <Name>NappiPäävalikkoon2</Name> 
     131      <Importer>TextureImporter</Importer> 
     132      <Processor>TextureProcessor</Processor> 
     133    </Compile> 
     134    <Compile Include="NappiYP.png"> 
     135      <Name>NappiYP</Name> 
     136      <Importer>TextureImporter</Importer> 
     137      <Processor>TextureProcessor</Processor> 
     138    </Compile> 
     139    <Compile Include="NappiYP2.png"> 
     140      <Name>NappiYP2</Name> 
     141      <Importer>TextureImporter</Importer> 
     142      <Processor>TextureProcessor</Processor> 
     143    </Compile> 
     144    <Compile Include="Ohje2p.png"> 
     145      <Name>Ohje2p</Name> 
     146      <Importer>TextureImporter</Importer> 
     147      <Processor>TextureProcessor</Processor> 
     148    </Compile> 
     149    <Compile Include="Ohje3p.png"> 
     150      <Name>Ohje3p</Name> 
     151      <Importer>TextureImporter</Importer> 
     152      <Processor>TextureProcessor</Processor> 
     153    </Compile> 
     154    <Compile Include="P1bubble.png"> 
     155      <Name>P1bubble</Name> 
     156      <Importer>TextureImporter</Importer> 
     157      <Processor>TextureProcessor</Processor> 
     158    </Compile> 
     159    <Compile Include="P2bubble.png"> 
     160      <Name>P2bubble</Name> 
     161      <Importer>TextureImporter</Importer> 
     162      <Processor>TextureProcessor</Processor> 
     163    </Compile> 
     164    <Compile Include="P3bubble.png"> 
     165      <Name>P3bubble</Name> 
     166      <Importer>TextureImporter</Importer> 
     167      <Processor>TextureProcessor</Processor> 
     168    </Compile> 
     169    <Compile Include="P4bubble.png"> 
     170      <Name>P4bubble</Name> 
     171      <Importer>TextureImporter</Importer> 
     172      <Processor>TextureProcessor</Processor> 
     173    </Compile> 
     174    <Compile Include="SJ2pohjeet.png"> 
     175      <Name>SJ2pohjeet</Name> 
     176      <Importer>TextureImporter</Importer> 
     177      <Processor>TextureProcessor</Processor> 
     178    </Compile> 
     179    <Compile Include="SJ3pohjeet.png"> 
     180      <Name>SJ3pohjeet</Name> 
     181      <Importer>TextureImporter</Importer> 
     182      <Processor>TextureProcessor</Processor> 
     183    </Compile> 
     184    <Compile Include="SJ4pohjeet.png"> 
     185      <Name>SJ4pohjeet</Name> 
     186      <Importer>TextureImporter</Importer> 
     187      <Processor>TextureProcessor</Processor> 
     188    </Compile> 
     189    <Compile Include="SJohjeet.png"> 
     190      <Name>SJohjeet</Name> 
     191      <Importer>TextureImporter</Importer> 
     192      <Processor>TextureProcessor</Processor> 
     193    </Compile> 
     194    <Compile Include="SJpelaajamaara.png"> 
     195      <Name>SJpelaajamaara</Name> 
     196      <Importer>TextureImporter</Importer> 
     197      <Processor>TextureProcessor</Processor> 
     198    </Compile> 
     199    <Compile Include="SJpelimodi.png"> 
     200      <Name>SJpelimodi</Name> 
     201      <Importer>TextureImporter</Importer> 
     202      <Processor>TextureProcessor</Processor> 
     203    </Compile> 
     204    <Compile Include="SJpäävalikko.png"> 
     205      <Name>SJpäävalikko</Name> 
     206      <Importer>TextureImporter</Importer> 
     207      <Processor>TextureProcessor</Processor> 
     208    </Compile> 
     209    <Compile Include="SJtyhjä.png"> 
     210      <Name>SJtyhjä</Name> 
     211      <Importer>TextureImporter</Importer> 
     212      <Processor>TextureProcessor</Processor> 
     213    </Compile> 
     214    <Compile Include="SJvalikko.png"> 
     215      <Name>SJvalikko</Name> 
     216      <Importer>TextureImporter</Importer> 
     217      <Processor>TextureProcessor</Processor> 
     218    </Compile> 
     219    <Compile Include="SJYPloppu.png"> 
     220      <Name>SJYPloppu</Name> 
     221      <Importer>TextureImporter</Importer> 
     222      <Processor>TextureProcessor</Processor> 
     223    </Compile> 
     224    <Compile Include="SJYPloppu2.png"> 
     225      <Name>SJYPloppu2</Name> 
     226      <Importer>TextureImporter</Importer> 
     227      <Processor>TextureProcessor</Processor> 
     228    </Compile> 
     229    <Compile Include="smile jump %28vihreä pelaaja%29 %282%29.png"> 
     230      <Name>smile jump %28vihreä pelaaja%29 %282%29</Name> 
     231      <Importer>TextureImporter</Importer> 
     232      <Processor>TextureProcessor</Processor> 
     233    </Compile> 
     234    <Compile Include="smile jump%28keltainen pelaaja%29 %282%29.png"> 
     235      <Name>smile jump%28keltainen pelaaja%29 %282%29</Name> 
     236      <Importer>TextureImporter</Importer> 
     237      <Processor>TextureProcessor</Processor> 
     238    </Compile> 
     239    <Compile Include="Smile Jump%28laatta%29.png"> 
     240      <Name>Smile Jump%28laatta%29</Name> 
     241      <Importer>TextureImporter</Importer> 
     242      <Processor>TextureProcessor</Processor> 
     243    </Compile> 
     244    <Compile Include="Smile Jump%28pelaaja1voitti%29.png"> 
     245      <Name>Smile Jump%28pelaaja1voitti%29</Name> 
     246      <Importer>TextureImporter</Importer> 
     247      <Processor>TextureProcessor</Processor> 
     248    </Compile> 
     249    <Compile Include="Smile Jump%28pelaaja2voitti%29.png"> 
     250      <Name>Smile Jump%28pelaaja2voitti%29</Name> 
     251      <Importer>TextureImporter</Importer> 
     252      <Processor>TextureProcessor</Processor> 
     253    </Compile> 
     254    <Compile Include="Smile Jump%28pelaaja3voitti%29.png"> 
     255      <Name>Smile Jump%28pelaaja3voitti%29</Name> 
     256      <Importer>TextureImporter</Importer> 
     257      <Processor>TextureProcessor</Processor> 
     258    </Compile> 
     259    <Compile Include="Smile Jump%28pelaaja4voitti%29.png"> 
     260      <Name>Smile Jump%28pelaaja4voitti%29</Name> 
     261      <Importer>TextureImporter</Importer> 
     262      <Processor>TextureProcessor</Processor> 
     263    </Compile> 
     264    <Compile Include="smile jump%28pinkki pelaaja%29.png"> 
     265      <Name>smile jump%28pinkki pelaaja%29</Name> 
     266      <Importer>TextureImporter</Importer> 
     267      <Processor>TextureProcessor</Processor> 
     268    </Compile> 
     269    <Compile Include="smile jump%28sininen pelaaja%29.png"> 
     270      <Name>smile jump%28sininen pelaaja%29</Name> 
     271      <Importer>TextureImporter</Importer> 
     272      <Processor>TextureProcessor</Processor> 
     273    </Compile> 
     274    <Compile Include="smile jump%28vihollinen%29 %282%29.png"> 
     275      <Name>smile jump%28vihollinen%29 %282%29</Name> 
     276      <Importer>TextureImporter</Importer> 
     277      <Processor>TextureProcessor</Processor> 
     278    </Compile> 
     279  </ItemGroup> 
     280  <ItemGroup> 
     281    <Compile Include="SJeitoimi.png"> 
     282      <Name>SJeitoimi</Name> 
     283      <Importer>TextureImporter</Importer> 
     284      <Processor>TextureProcessor</Processor> 
     285    </Compile> 
     286    <Compile Include="SJparhaatpisteet.png"> 
     287      <Name>SJparhaatpisteet</Name> 
     288      <Importer>TextureImporter</Importer> 
     289      <Processor>TextureProcessor</Processor> 
    134290    </Compile> 
    135291  </ItemGroup> 
  • 2010/24/Vilvaini/SmilejumpToimiva/Content/obj/x86/Debug/ContentPipeline.xml

    r1024 r1248  
    2828      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\smile jump(vihollinen) (2).xnb</Output> 
    2929      <Time>2010-06-18T23:23:27.166391+03:00</Time> 
    30     </Item> 
    31     <Item> 
    32       <Source>Smile Jump(trampoliini-laatta).png</Source> 
    33       <Name>Smile Jump(trampoliini-laatta)</Name> 
    34       <Importer>TextureImporter</Importer> 
    35       <Processor>TextureProcessor</Processor> 
    36       <Options>None</Options> 
    37       <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\Smile Jump(trampoliini-laatta).xnb</Output> 
    38       <Time>2010-06-18T23:23:27.1303889+03:00</Time> 
    3930    </Item> 
    4031    <Item> 
     
    147138      <Extra>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\Menu.wma</Extra> 
    148139      <Time>2010-06-23T18:09:50.2157924+03:00</Time> 
     140    </Item> 
     141    <Item> 
     142      <Source>SJvalikko.png</Source> 
     143      <Name>SJvalikko</Name> 
     144      <Importer>TextureImporter</Importer> 
     145      <Processor>TextureProcessor</Processor> 
     146      <Options>None</Options> 
     147      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\SJvalikko.xnb</Output> 
     148      <Time>2010-06-24T12:57:29.8140891+03:00</Time> 
     149    </Item> 
     150    <Item> 
     151      <Source>SJ2pohjeet.png</Source> 
     152      <Name>SJ2pohjeet</Name> 
     153      <Importer>TextureImporter</Importer> 
     154      <Processor>TextureProcessor</Processor> 
     155      <Options>None</Options> 
     156      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\SJ2pohjeet.xnb</Output> 
     157      <Time>2010-06-24T12:59:34.9002436+03:00</Time> 
     158    </Item> 
     159    <Item> 
     160      <Source>SJ3pohjeet.png</Source> 
     161      <Name>SJ3pohjeet</Name> 
     162      <Importer>TextureImporter</Importer> 
     163      <Processor>TextureProcessor</Processor> 
     164      <Options>None</Options> 
     165      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\SJ3pohjeet.xnb</Output> 
     166      <Time>2010-06-24T12:59:35.4442748+03:00</Time> 
     167    </Item> 
     168    <Item> 
     169      <Source>SJ4pohjeet.png</Source> 
     170      <Name>SJ4pohjeet</Name> 
     171      <Importer>TextureImporter</Importer> 
     172      <Processor>TextureProcessor</Processor> 
     173      <Options>None</Options> 
     174      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\SJ4pohjeet.xnb</Output> 
     175      <Time>2010-06-24T12:59:35.9643045+03:00</Time> 
     176    </Item> 
     177    <Item> 
     178      <Source>P1bubble.png</Source> 
     179      <Name>P1bubble</Name> 
     180      <Importer>TextureImporter</Importer> 
     181      <Processor>TextureProcessor</Processor> 
     182      <Options>None</Options> 
     183      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\P1bubble.xnb</Output> 
     184      <Time>2010-06-29T23:19:01.773514+03:00</Time> 
     185    </Item> 
     186    <Item> 
     187      <Source>P2bubble.png</Source> 
     188      <Name>P2bubble</Name> 
     189      <Importer>TextureImporter</Importer> 
     190      <Processor>TextureProcessor</Processor> 
     191      <Options>None</Options> 
     192      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\P2bubble.xnb</Output> 
     193      <Time>2010-06-29T23:19:00.3404321+03:00</Time> 
     194    </Item> 
     195    <Item> 
     196      <Source>P3bubble.png</Source> 
     197      <Name>P3bubble</Name> 
     198      <Importer>TextureImporter</Importer> 
     199      <Processor>TextureProcessor</Processor> 
     200      <Options>None</Options> 
     201      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\P3bubble.xnb</Output> 
     202      <Time>2010-06-29T23:19:00.3434322+03:00</Time> 
     203    </Item> 
     204    <Item> 
     205      <Source>P4bubble.png</Source> 
     206      <Name>P4bubble</Name> 
     207      <Importer>TextureImporter</Importer> 
     208      <Processor>TextureProcessor</Processor> 
     209      <Options>None</Options> 
     210      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\P4bubble.xnb</Output> 
     211      <Time>2010-06-29T23:19:00.3464324+03:00</Time> 
     212    </Item> 
     213    <Item> 
     214      <Source>SJYPloppu.png</Source> 
     215      <Name>SJYPloppu</Name> 
     216      <Importer>TextureImporter</Importer> 
     217      <Processor>TextureProcessor</Processor> 
     218      <Options>None</Options> 
     219      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\SJYPloppu.xnb</Output> 
     220      <Time>2010-07-07T16:06:05.2454056+03:00</Time> 
     221    </Item> 
     222    <Item> 
     223      <Source>SJYPloppu2.png</Source> 
     224      <Name>SJYPloppu2</Name> 
     225      <Importer>TextureImporter</Importer> 
     226      <Processor>TextureProcessor</Processor> 
     227      <Options>None</Options> 
     228      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\SJYPloppu2.xnb</Output> 
     229      <Time>2010-07-07T16:07:47.5392565+03:00</Time> 
     230    </Item> 
     231    <Item> 
     232      <Source>SJohjeet.png</Source> 
     233      <Name>SJohjeet</Name> 
     234      <Importer>TextureImporter</Importer> 
     235      <Processor>TextureProcessor</Processor> 
     236      <Options>None</Options> 
     237      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\SJohjeet.xnb</Output> 
     238      <Time>2010-07-15T21:07:34.3847279+03:00</Time> 
     239    </Item> 
     240    <Item> 
     241      <Source>SJparhaatpisteet.png</Source> 
     242      <Name>SJparhaatpisteet</Name> 
     243      <Importer>TextureImporter</Importer> 
     244      <Processor>TextureProcessor</Processor> 
     245      <Options>None</Options> 
     246      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\SJparhaatpisteet.xnb</Output> 
     247      <Time>2010-07-20T10:41:22.0530752+03:00</Time> 
     248    </Item> 
     249    <Item> 
     250      <Source>SJpelaajamaara.png</Source> 
     251      <Name>SJpelaajamaara</Name> 
     252      <Importer>TextureImporter</Importer> 
     253      <Processor>TextureProcessor</Processor> 
     254      <Options>None</Options> 
     255      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\SJpelaajamaara.xnb</Output> 
     256      <Time>2010-07-15T21:06:12.7970613+03:00</Time> 
     257    </Item> 
     258    <Item> 
     259      <Source>SJpelimodi.png</Source> 
     260      <Name>SJpelimodi</Name> 
     261      <Importer>TextureImporter</Importer> 
     262      <Processor>TextureProcessor</Processor> 
     263      <Options>None</Options> 
     264      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\SJpelimodi.xnb</Output> 
     265      <Time>2010-07-15T21:08:43.6016869+03:00</Time> 
     266    </Item> 
     267    <Item> 
     268      <Source>SJpäävalikko.png</Source> 
     269      <Name>SJpäävalikko</Name> 
     270      <Importer>TextureImporter</Importer> 
     271      <Processor>TextureProcessor</Processor> 
     272      <Options>None</Options> 
     273      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\SJpäävalikko.xnb</Output> 
     274      <Time>2010-07-15T21:09:45.0892038+03:00</Time> 
     275    </Item> 
     276    <Item> 
     277      <Source>SJtyhjä.png</Source> 
     278      <Name>SJtyhjä</Name> 
     279      <Importer>TextureImporter</Importer> 
     280      <Processor>TextureProcessor</Processor> 
     281      <Options>None</Options> 
     282      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\SJtyhjä.xnb</Output> 
     283      <Time>2010-07-15T21:03:57.97535+03:00</Time> 
     284    </Item> 
     285    <Item> 
     286      <Source>NappiAloitapeli.png</Source> 
     287      <Name>NappiAloitapeli</Name> 
     288      <Importer>TextureImporter</Importer> 
     289      <Processor>TextureProcessor</Processor> 
     290      <Options>None</Options> 
     291      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiAloitapeli.xnb</Output> 
     292      <Time>2010-07-15T22:31:31.4658324+03:00</Time> 
     293    </Item> 
     294    <Item> 
     295      <Source>NappiAloitapeli2.png</Source> 
     296      <Name>NappiAloitapeli2</Name> 
     297      <Importer>TextureImporter</Importer> 
     298      <Processor>TextureProcessor</Processor> 
     299      <Options>None</Options> 
     300      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiAloitapeli2.xnb</Output> 
     301      <Time>2010-07-15T22:36:48.6009715+03:00</Time> 
     302    </Item> 
     303    <Item> 
     304      <Source>NappiOhjeet.png</Source> 
     305      <Name>NappiOhjeet</Name> 
     306      <Importer>TextureImporter</Importer> 
     307      <Processor>TextureProcessor</Processor> 
     308      <Options>None</Options> 
     309      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiOhjeet.xnb</Output> 
     310      <Time>2010-07-15T22:38:56.6292943+03:00</Time> 
     311    </Item> 
     312    <Item> 
     313      <Source>NappiOhjeet2.png</Source> 
     314      <Name>NappiOhjeet2</Name> 
     315      <Importer>TextureImporter</Importer> 
     316      <Processor>TextureProcessor</Processor> 
     317      <Options>None</Options> 
     318      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiOhjeet2.xnb</Output> 
     319      <Time>2010-07-15T22:39:15.4563712+03:00</Time> 
     320    </Item> 
     321    <Item> 
     322      <Source>NappiPisteet.png</Source> 
     323      <Name>NappiPisteet</Name> 
     324      <Importer>TextureImporter</Importer> 
     325      <Processor>TextureProcessor</Processor> 
     326      <Options>None</Options> 
     327      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiPisteet.xnb</Output> 
     328      <Time>2010-07-15T22:37:52.2236105+03:00</Time> 
     329    </Item> 
     330    <Item> 
     331      <Source>NappiPisteet2.png</Source> 
     332      <Name>NappiPisteet2</Name> 
     333      <Importer>TextureImporter</Importer> 
     334      <Processor>TextureProcessor</Processor> 
     335      <Options>None</Options> 
     336      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiPisteet2.xnb</Output> 
     337      <Time>2010-07-15T22:38:12.7947872+03:00</Time> 
     338    </Item> 
     339    <Item> 
     340      <Source>NappiPoistu.png</Source> 
     341      <Name>NappiPoistu</Name> 
     342      <Importer>TextureImporter</Importer> 
     343      <Processor>TextureProcessor</Processor> 
     344      <Options>None</Options> 
     345      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiPoistu.xnb</Output> 
     346      <Time>2010-07-15T22:39:34.5354625+03:00</Time> 
     347    </Item> 
     348    <Item> 
     349      <Source>NappiPoistu2.png</Source> 
     350      <Name>NappiPoistu2</Name> 
     351      <Importer>TextureImporter</Importer> 
     352      <Processor>TextureProcessor</Processor> 
     353      <Options>None</Options> 
     354      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiPoistu2.xnb</Output> 
     355      <Time>2010-07-15T22:39:49.5433209+03:00</Time> 
     356    </Item> 
     357    <Item> 
     358      <Source>NappiKaksinpeli.png</Source> 
     359      <Name>NappiKaksinpeli</Name> 
     360      <Importer>TextureImporter</Importer> 
     361      <Processor>TextureProcessor</Processor> 
     362      <Options>None</Options> 
     363      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiKaksinpeli.xnb</Output> 
     364      <Time>2010-07-15T23:05:04.0799474+03:00</Time> 
     365    </Item> 
     366    <Item> 
     367      <Source>NappiKaksinpeli2.png</Source> 
     368      <Name>NappiKaksinpeli2</Name> 
     369      <Importer>TextureImporter</Importer> 
     370      <Processor>TextureProcessor</Processor> 
     371      <Options>None</Options> 
     372      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiKaksinpeli2.xnb</Output> 
     373      <Time>2010-07-15T23:05:22.9530269+03:00</Time> 
     374    </Item> 
     375    <Item> 
     376      <Source>NappiKolminpeli.png</Source> 
     377      <Name>NappiKolminpeli</Name> 
     378      <Importer>TextureImporter</Importer> 
     379      <Processor>TextureProcessor</Processor> 
     380      <Options>None</Options> 
     381      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiKolminpeli.xnb</Output> 
     382      <Time>2010-07-15T23:05:48.2574742+03:00</Time> 
     383    </Item> 
     384    <Item> 
     385      <Source>NappiKolminpeli2.png</Source> 
     386      <Name>NappiKolminpeli2</Name> 
     387      <Importer>TextureImporter</Importer> 
     388      <Processor>TextureProcessor</Processor> 
     389      <Options>None</Options> 
     390      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiKolminpeli2.xnb</Output> 
     391      <Time>2010-07-15T23:06:04.706415+03:00</Time> 
     392    </Item> 
     393    <Item> 
     394      <Source>NappiKP.png</Source> 
     395      <Name>NappiKP</Name> 
     396      <Importer>TextureImporter</Importer> 
     397      <Processor>TextureProcessor</Processor> 
     398      <Options>None</Options> 
     399      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiKP.xnb</Output> 
     400      <Time>2010-07-15T23:09:51.2893748+03:00</Time> 
     401    </Item> 
     402    <Item> 
     403      <Source>NappiKP2.png</Source> 
     404      <Name>NappiKP2</Name> 
     405      <Importer>TextureImporter</Importer> 
     406      <Processor>TextureProcessor</Processor> 
     407      <Options>None</Options> 
     408      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiKP2.xnb</Output> 
     409      <Time>2010-07-15T23:10:14.2116859+03:00</Time> 
     410    </Item> 
     411    <Item> 
     412      <Source>NappiNelinpeli.png</Source> 
     413      <Name>NappiNelinpeli</Name> 
     414      <Importer>TextureImporter</Importer> 
     415      <Processor>TextureProcessor</Processor> 
     416      <Options>None</Options> 
     417      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiNelinpeli.xnb</Output> 
     418      <Time>2010-07-15T23:06:59.6635584+03:00</Time> 
     419    </Item> 
     420    <Item> 
     421      <Source>NappiNelinpeli2.png</Source> 
     422      <Name>NappiNelinpeli2</Name> 
     423      <Importer>TextureImporter</Importer> 
     424      <Processor>TextureProcessor</Processor> 
     425      <Options>None</Options> 
     426      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiNelinpeli2.xnb</Output> 
     427      <Time>2010-07-15T23:07:17.786595+03:00</Time> 
     428    </Item> 
     429    <Item> 
     430      <Source>NappiPäävalikkoon.png</Source> 
     431      <Name>NappiPäävalikkoon</Name> 
     432      <Importer>TextureImporter</Importer> 
     433      <Processor>TextureProcessor</Processor> 
     434      <Options>None</Options> 
     435      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiPäävalikkoon.xnb</Output> 
     436      <Time>2010-07-15T23:08:27.3085714+03:00</Time> 
     437    </Item> 
     438    <Item> 
     439      <Source>NappiPäävalikkoon2.png</Source> 
     440      <Name>NappiPäävalikkoon2</Name> 
     441      <Importer>TextureImporter</Importer> 
     442      <Processor>TextureProcessor</Processor> 
     443      <Options>None</Options> 
     444      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiPäävalikkoon2.xnb</Output> 
     445      <Time>2010-07-15T23:08:52.9720393+03:00</Time> 
     446    </Item> 
     447    <Item> 
     448      <Source>NappiYP.png</Source> 
     449      <Name>NappiYP</Name> 
     450      <Importer>TextureImporter</Importer> 
     451      <Processor>TextureProcessor</Processor> 
     452      <Options>None</Options> 
     453      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiYP.xnb</Output> 
     454      <Time>2010-07-15T23:10:55.2580336+03:00</Time> 
     455    </Item> 
     456    <Item> 
     457      <Source>NappiYP2.png</Source> 
     458      <Name>NappiYP2</Name> 
     459      <Importer>TextureImporter</Importer> 
     460      <Processor>TextureProcessor</Processor> 
     461      <Options>None</Options> 
     462      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\NappiYP2.xnb</Output> 
     463      <Time>2010-07-15T23:11:22.7056035+03:00</Time> 
     464    </Item> 
     465    <Item> 
     466      <Source>SJeitoimi.png</Source> 
     467      <Name>SJeitoimi</Name> 
     468      <Importer>TextureImporter</Importer> 
     469      <Processor>TextureProcessor</Processor> 
     470      <Options>None</Options> 
     471      <Output>C:\MyTemp\vilvaini\npo_pelit\2010\24\Vilvaini\SmilejumpToimiva\bin\x86\Debug\Content\SJeitoimi.xnb</Output> 
     472      <Time>2010-07-20T10:21:50.5400685+03:00</Time> 
    149473    </Item> 
    150474    <BuildSuccessful>true</BuildSuccessful> 
  • 2010/24/Vilvaini/SmilejumpToimiva/Peli.cs

    r1024 r1248  
    11using System; 
     2using System.Collections.Generic; 
    23using Jypeli; 
    34using Jypeli.ScreenObjects; 
    45using Jypeli.Assets; 
    5  
    6 class Tasohyppely : PhysicsGame 
     6using Jypeli.Widgets; 
     7 
     8public class Tasohyppely : PhysicsGame 
    79{ 
     10    GameObject Pelaajamaaranappi = new GameObject(600, 100); 
     11    GameObject Ohjeetnappi = new GameObject(600, 100); 
     12    GameObject Pisteetnappi = new GameObject(600, 100); 
     13    GameObject Poistunappi = new GameObject(600, 100); 
     14 
    815    const double nopeus = 300; 
    916    const double hyppyVoima = 4000; 
     17 
     18    const double Kuplaaika = 5; 
     19 
     20    const double KPPisteraja = 7; 
     21 
    1022    double tasokorkeus = 0; 
    1123    double vihollistiheytys = 1; 
    1224    double tasoleveys = 150; 
    1325    double viholliskorkeus = 800; 
    14  
    15     bool Kolmepelaajaa = false; 
    16     bool Kaksipelaajaa = false; 
    17     bool Neljapelaajaa = false; 
     26    double pelaajamaara = 0; 
     27    double korkeus; 
     28    double korkein; 
     29 
     30    bool YP = false; 
     31    bool PeliKäynnissä = false; 
    1832    bool p1SaiVoiton = false; 
    1933    bool p2SaiVoiton = false; 
    2034    bool p3SaiVoiton = false; 
    2135    bool p4SaiVoiton = false; 
     36    bool p1elamamenetys = false; 
     37    bool p2elamamenetys = false; 
     38    bool p3elamamenetys = false; 
     39    bool p4elamamenetys = false; 
     40    bool p1OnKuplassa = false; 
     41    bool p2OnKuplassa = false; 
     42    bool p3OnKuplassa = false; 
     43    bool p4OnKuplassa = false; 
    2244 
    2345    IntMeter pelaajan1pisteet; 
     
    2547    IntMeter pelaajan3pisteet; 
    2648    IntMeter pelaajan4pisteet; 
    27  
    28     PhysicsObject voittaja; 
    29     PhysicsObject p1voitti; 
    30     PhysicsObject p2voitti; 
    31     PhysicsObject p3voitti; 
    32     PhysicsObject p4voitti; 
     49    IntMeter pelaajan1elamat; 
     50    IntMeter pelaajan2elamat; 
     51    IntMeter pelaajan3elamat; 
     52    IntMeter pelaajan4elamat; 
    3353 
    3454    PlatformCharacter pelaaja1; 
     
    3757    PlatformCharacter pelaaja4; 
    3858 
     59    PhysicsObject P1kupla; 
     60    PhysicsObject P2kupla; 
     61    PhysicsObject P3kupla; 
     62    PhysicsObject P4kupla; 
     63    PhysicsObject voittaja; 
    3964    PhysicsObject Alku; 
     65    PhysicsObject PMäärä; 
     66    PhysicsObject Tappio; 
    4067    PhysicsObject Ohje2p; 
    4168    PhysicsObject Ohje3p; 
    42     PhysicsObject taso; 
    43  
    44     Timer aikaLaskuri2; 
    45     Timer aikaLaskuri; 
    46  
    4769    PhysicsObject vasenReuna; 
    4870    PhysicsObject alaReuna; 
     
    5072    PhysicsObject DownReuna; 
    5173 
     74    Timer aikaLaskuri3; 
     75    Timer aikaLaskuri2; 
     76    Timer aikaLaskuri; 
     77 
     78    Timer KuplaSyntymä1; 
     79    Timer KuplaSyntymä2; 
     80    Timer KuplaSyntymä3; 
     81    Timer KuplaSyntymä4; 
     82 
     83    TextDisplay mittari; 
     84 
     85    HighScoreList korkeustaulukko; 
     86 
     87    Vector aloituspaikka; 
     88 
    5289    protected override void Begin() 
    5390    { 
     91        //MediaPlayer.Play("Menu"); 
     92        TeeKorkeustaulukko(); 
     93        SetWindowSize(1440, 900, true);  
     94        //SetWindowSize(true); 
    5495        Level.Width = 1024; 
    55         Level.Height = 15000; 
     96        Level.Height = 30000; 
     97        Teelaskurit(); 
     98        Camera.StayInLevel = true; 
     99        Alkukentta(); 
     100    } 
     101 
     102    private void TeeKorkeustaulukko() 
     103    { 
     104        korkeustaulukko = HighScoreList.LoadOrCreate("jeejee.dat", 20); 
     105        korkeustaulukko.ScreenList.ItemColor = Color.Black; 
     106        korkeustaulukko.ScreenList.BackGroundColor = Color.TransparentWhite; 
     107        korkeustaulukko.ScreenList.X = -280; 
     108        korkeustaulukko.ScreenList.Y = 40; 
     109        korkeustaulukko.ScreenList.HighlightColor = Color.TransparentBlack; 
     110        korkeustaulukko.ScreenInput.QueryText.TextColor = Color.Blue; 
     111        korkeustaulukko.CongratulationText = "Onnittelut! Pääsit {1} pikseliä korkealle! Pääsit {0}. sijalle. Syötä nimesi:"; 
     112    } 
     113 
     114    private void Teelaskurit() 
     115    { 
    56116        pelaajan1pisteet = new IntMeter(0); 
    57117        pelaajan2pisteet = new IntMeter(0); 
    58118        pelaajan3pisteet = new IntMeter(0); 
    59119        pelaajan4pisteet = new IntMeter(0); 
    60         Camera.StayInLevel = true; 
    61         Alkukentta(); 
     120        pelaajan1elamat = new IntMeter(2); 
     121        pelaajan2elamat = new IntMeter(2); 
     122        pelaajan3elamat = new IntMeter(2); 
     123        pelaajan4elamat = new IntMeter(2); 
    62124    } 
    63125 
    64126    void Alkukentta() 
    65127    { 
     128        PeliKäynnissä = false; 
    66129        ClearAll(); 
    67         //MediaPlayer.Play("Menu"); 
    68         AlustaPistelaskurit(); 
     130        YP = false; 
     131 
     132        Mouse.IsCursorVisible = true; 
     133        AlustaLaskurit(); 
    69134        Alkunappaimet(); 
    70         lisaaPelaajat(); 
     135        lisaaPelaaja1(0, Level.Bottom + 50); 
     136        lisaaPelaaja2(100, Level.Bottom + 50); 
    71137        LisaaDownReuna(); 
     138        LisaaEitoimiruutu(); 
    72139        alaReuna = Level.CreateBottomBorder(); 
    73         Level.Background.CreateGradient(Color.Beige, Color.Wheat); 
    74140        LisaaAloitusruutu(); 
    75         Kolmepelaajaa = false; 
    76         Kaksipelaajaa = false; 
    77     } 
    78  
    79     private void AlustaPistelaskurit() 
     141        pelaajamaara = 0; 
     142        TeePäävalikkoNapit(); 
     143    } 
     144 
     145    private void TeePäävalikkoNapit() 
     146    { 
     147        Pelaajamaaranappi = new GameObject(400, 70); 
     148        Pisteetnappi = new GameObject(400, 70); 
     149        Ohjeetnappi = new GameObject(400, 70); 
     150        Poistunappi = new GameObject(400, 70); 
     151 
     152        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Pressed, Pelaajamaarakentta, ""); 
     153        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "",(4)); 
     154        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Pressed, Parhaatpisteetkentta, ""); 
     155        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (5)); 
     156        Mouse.ListenOn(Ohjeetnappi, MouseButton.Left, ButtonState.Pressed, Ohjevalikko, ""); 
     157        Mouse.ListenOn(Ohjeetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (6)); 
     158        Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Pressed, Exit, ""); 
     159        Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (7)); 
     160 
     161        Pelaajamaaranappi.Image = LoadImage("NappiAloitapeli"); 
     162        Pisteetnappi.Image = LoadImage("NappiPisteet"); 
     163        Ohjeetnappi.Image = LoadImage("NappiOhjeet"); 
     164        Poistunappi.Image = LoadImage("NappiPoistu"); 
     165 
     166        Pelaajamaaranappi.X = 0; 
     167        Pelaajamaaranappi.Y = Level.Bottom + 330; 
     168        Pisteetnappi.X = 0; 
     169        Pisteetnappi.Y = Level.Bottom + 240; 
     170        Ohjeetnappi.X = 0; 
     171        Ohjeetnappi.Y = Level.Bottom + 150; 
     172        Poistunappi.X = 0; 
     173        Poistunappi.Y = Level.Bottom + 60; 
     174 
     175        Add(Pelaajamaaranappi); 
     176        Add(Pisteetnappi); 
     177        Add(Ohjeetnappi); 
     178        Add(Poistunappi); 
     179 
     180    } 
     181 
     182    private void Nappipunainen(int nappi) 
     183    { 
     184        //Pelaajamääränapit ja ohjenapit 
     185        if (nappi == 1) 
     186        { 
     187            Pelaajamaaranappi.Image = LoadImage("NappiKaksinpeli2"); 
     188            Pisteetnappi.Image = LoadImage("NappiKolminpeli"); 
     189            Ohjeetnappi.Image = LoadImage("NappiNelinpeli"); 
     190            Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     191        } 
     192        if (nappi == 2) 
     193        { 
     194            Pisteetnappi.Image = LoadImage("NappiKolminpeli2"); 
     195            Pelaajamaaranappi.Image = LoadImage("NappiKaksinpeli"); 
     196            Ohjeetnappi.Image = LoadImage("NappiNelinpeli"); 
     197            Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     198        } 
     199        if (nappi == 3) 
     200        { 
     201            Ohjeetnappi.Image = LoadImage("NappiNelinpeli2"); 
     202            Pelaajamaaranappi.Image = LoadImage("NappiKaksinpeli"); 
     203            Pisteetnappi.Image = LoadImage("NappiKolminpeli"); 
     204            Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     205        } 
     206        //Päävalikkonapit 
     207        if (nappi == 4) 
     208        { 
     209            Ohjeetnappi.Image = LoadImage("NappiOhjeet"); 
     210            Pisteetnappi.Image = LoadImage("NappiPisteet"); 
     211            Pelaajamaaranappi.Image = LoadImage("NappiAloitapeli2"); 
     212            Poistunappi.Image = LoadImage("NappiPoistu"); 
     213        } 
     214        if (nappi == 5) 
     215        { 
     216            Pelaajamaaranappi.Image = LoadImage("NappiAloitapeli"); 
     217            Ohjeetnappi.Image = LoadImage("NappiOhjeet"); 
     218            Pisteetnappi.Image = LoadImage("NappiPisteet2"); 
     219            Poistunappi.Image = LoadImage("NappiPoistu"); 
     220        } 
     221        if (nappi == 6) 
     222        { 
     223            Pelaajamaaranappi.Image = LoadImage("NappiAloitapeli"); 
     224            Pisteetnappi.Image = LoadImage("NappiPisteet"); 
     225            Ohjeetnappi.Image = LoadImage("NappiOhjeet2"); 
     226            Poistunappi.Image = LoadImage("NappiPoistu"); 
     227        } 
     228        if (nappi == 7) 
     229        { 
     230            Pelaajamaaranappi.Image = LoadImage("NappiAloitapeli"); 
     231            Pisteetnappi.Image = LoadImage("NappiPisteet"); 
     232            Ohjeetnappi.Image = LoadImage("NappiOhjeet"); 
     233            Poistunappi.Image = LoadImage("NappiPoistu2"); 
     234        } 
     235        //Pelimodinapit 
     236        if (nappi == 8) 
     237        { 
     238            Pelaajamaaranappi.Image = LoadImage("NappiKP"); 
     239            Pisteetnappi.Image = LoadImage("NappiYP"); 
     240            Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     241        } 
     242        if (nappi == 9) 
     243        { 
     244            Pelaajamaaranappi.Image = LoadImage("NappiKP2"); 
     245            Pisteetnappi.Image = LoadImage("NappiYP2"); 
     246            Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     247        } 
     248        //if (nappi == 10) 
     249        //{ 
     250        //    Poistunappi.Image = LoadImage("NappiPäävalikkoon2"); 
     251        //} 
     252 
     253        //Ohjenapit = pelaajamääränapit 
     254 
     255        //Paluunappi 
     256        if (nappi == 14) 
     257        { 
     258            Poistunappi.Image = LoadImage("NappiPäävalikkoon2"); 
     259            Pelaajamaaranappi.Image = LoadImage("NappiKaksinpeli"); 
     260            Pisteetnappi.Image = LoadImage("NappiKolminpeli"); 
     261            Ohjeetnappi.Image = LoadImage("NappiNelinpeli"); 
     262        } 
     263        if (nappi == 15) 
     264        { 
     265            Poistunappi.Image = LoadImage("NappiPäävalikkoon2"); 
     266            Pelaajamaaranappi.Image = LoadImage("NappiKP2"); 
     267            Pisteetnappi.Image = LoadImage("NappiYP"); 
     268        } 
     269    } 
     270 
     271    private void TeePelimodiNapit() 
     272    { 
     273        Pelaajamaaranappi = new GameObject(400, 70); 
     274        Pisteetnappi = new GameObject(400, 70); 
     275        //Poistunappi = new GameObject(400, 70); 
     276 
     277        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Pressed, AloitaKP, ""); 
     278        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (8)); 
     279        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Pressed, AloitaYP, ""); 
     280        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (9)); 
     281        //Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Pressed, Alkukentta, ""); 
     282        //Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (10)); 
     283 
     284        Pelaajamaaranappi.Image = LoadImage("NappiKP2"); 
     285        Pisteetnappi.Image = LoadImage("NappiYP"); 
     286        //Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     287 
     288        Pelaajamaaranappi.X = 0; 
     289        Pelaajamaaranappi.Y = Level.Bottom + 330; 
     290        Pisteetnappi.X = 0; 
     291        Pisteetnappi.Y = Level.Bottom + 240; 
     292        //Poistunappi.X = 0; 
     293        //Poistunappi.Y = Level.Bottom + 60; 
     294 
     295        Add(Pelaajamaaranappi); 
     296        Add(Pisteetnappi); 
     297        //Add(Poistunappi); 
     298        TeePaluuNappi(0, Level.Bottom + 60, 400, 70, 2); 
     299    } 
     300 
     301    private void TeePelaajamääräNapit() 
     302    { 
     303        Pelaajamaaranappi = new GameObject(400, 70); 
     304        Pisteetnappi = new GameObject(400, 70); 
     305        Ohjeetnappi = new GameObject(400, 70); 
     306 
     307        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Pressed, Kahdenpelaajanpeli, ""); 
     308        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "",(1)); 
     309        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Pressed, Kolmenpelaajanpeli, ""); 
     310        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (2)); 
     311        Mouse.ListenOn(Ohjeetnappi, MouseButton.Left, ButtonState.Pressed, Neljanpelaajanpeli, ""); 
     312        Mouse.ListenOn(Ohjeetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (3)); 
     313 
     314        Pelaajamaaranappi.Image = LoadImage("NappiKaksinpeli"); 
     315        Pisteetnappi.Image = LoadImage("NappiKolminpeli"); 
     316        Ohjeetnappi.Image = LoadImage("NappiNelinpeli"); 
     317 
     318        Pelaajamaaranappi.X = 0; 
     319        Pelaajamaaranappi.Y = Level.Bottom + 360; 
     320        Pisteetnappi.X = 0; 
     321        Pisteetnappi.Y = Level.Bottom + 270; 
     322        Ohjeetnappi.X = 0; 
     323        Ohjeetnappi.Y = Level.Bottom + 180; 
     324 
     325        Add(Pelaajamaaranappi); 
     326        Add(Pisteetnappi); 
     327        Add(Ohjeetnappi); 
     328        TeePaluuNappi(0, Level.Bottom + 50, 400, 70,1); 
     329    } 
     330 
     331    private void TeeOhjeNapit() 
     332    { 
     333        Pelaajamaaranappi = new GameObject(400, 70); 
     334        Pisteetnappi = new GameObject(400, 70); 
     335        Ohjeetnappi = new GameObject(400, 70); 
     336 
     337        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Pressed, ohjevalikko2p, ""); 
     338        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (1)); 
     339        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Pressed, ohjevalikko3p, ""); 
     340        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (2)); 
     341        Mouse.ListenOn(Ohjeetnappi, MouseButton.Left, ButtonState.Pressed, ohjevalikko4p, ""); 
     342        Mouse.ListenOn(Ohjeetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (3)); 
     343 
     344        Pelaajamaaranappi.Image = LoadImage("NappiKaksinpeli"); 
     345        Pisteetnappi.Image = LoadImage("NappiKolminpeli"); 
     346        Ohjeetnappi.Image = LoadImage("NappiNelinpeli"); 
     347 
     348        Pelaajamaaranappi.X = 0; 
     349        Pelaajamaaranappi.Y = Level.Bottom + 330; 
     350        Pisteetnappi.X = 0; 
     351        Pisteetnappi.Y = Level.Bottom + 240; 
     352        Ohjeetnappi.X = 0; 
     353        Ohjeetnappi.Y = Level.Bottom + 150; 
     354 
     355        Add(Pelaajamaaranappi); 
     356        Add(Pisteetnappi); 
     357        Add(Ohjeetnappi); 
     358        TeePaluuNappi(0, Level.Bottom + 60, 400, 70,1); 
     359 
     360    } 
     361 
     362    private void TeePaluuNappi(double x, double y, double leveys, double korkeus, double ruutu) 
     363    { 
     364        Poistunappi = new GameObject(leveys, korkeus); 
     365 
     366        Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Pressed, Alkukentta, ""); 
     367        if (ruutu == 1) 
     368        { 
     369            Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (14)); 
     370        } 
     371        if (ruutu == 2) 
     372        { 
     373            Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (15)); 
     374        } 
     375 
     376        Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     377 
     378        Poistunappi.X = x; 
     379        Poistunappi.Y = y; 
     380 
     381        Add(Poistunappi); 
     382 
     383    } 
     384 
     385    void AloitaYP() 
     386    { 
     387        if (pelaajamaara == 2) 
     388        { 
     389            KahdenpelaajanYP(); 
     390        } 
     391        if (pelaajamaara == 3) 
     392        { 
     393            KolmenpelaajanYP(); 
     394        } 
     395        if (pelaajamaara == 4) 
     396        { 
     397            NeljanpelaajanYP(); 
     398        } 
     399        PeliKäynnissä = true; 
     400    } 
     401 
     402    void AloitaKP() 
     403    { 
     404        if (pelaajamaara == 2) 
     405        { 
     406            KahdenpelaajanKP(); 
     407        } 
     408        if (pelaajamaara == 3) 
     409        { 
     410            KolmenpelaajanKP(); 
     411        } 
     412        if (pelaajamaara == 4) 
     413        { 
     414            NeljanpelaajanKP(); 
     415        } 
     416        PeliKäynnissä = true; 
     417    } 
     418 
     419    void Pelimodikentta() 
     420    { 
     421        ClearAll(); 
     422        LisaaEitoimiruutu(); 
     423        TeePelimodivalikko(); 
     424        TeePelimodiNapit(); 
     425    } 
     426 
     427    void Ohjevalikko() 
     428    { 
     429        ClearAll(); 
     430        LisaaEitoimiruutu(); 
     431        TeeOhjevalikko(); 
     432        TeeOhjeNapit(); 
     433    } 
     434 
     435    void Pelaajamaarakentta() 
     436    { 
     437        ClearAll(); 
     438        LisaaEitoimiruutu(); 
     439        TeePelaajaMäärä(); 
     440        TeePelaajamääräNapit(); 
     441    } 
     442 
     443    void Parhaatpisteetkentta() 
     444    { 
     445        PeliKäynnissä = false; 
     446        ClearAll(); 
     447        Tappionappaimet(); 
     448        TeeTappiovalikko(); 
     449        pelaajamaara = 0; 
     450        korkeustaulukko.Show((int)korkeus); 
     451        TeePaluuNappi(6, Level.Bottom + 31, 300, 50,1); 
     452        //MediaPlayer.Stop(); 
     453    } 
     454 
     455    void Tappionappaimet() 
     456    { 
     457        Keyboard.Listen(Key.P, ButtonState.Pressed, Alkukentta, ""); 
     458    } 
     459 
     460    private void AlustaLaskurit() 
    80461    { 
    81462        pelaajan1pisteet.Reset(); 
     
    83464        pelaajan3pisteet.Reset(); 
    84465        pelaajan4pisteet.Reset(); 
     466 
     467        pelaajan1elamat.Reset(); 
     468        pelaajan2elamat.Reset(); 
     469        pelaajan3elamat.Reset(); 
     470        pelaajan4elamat.Reset(); 
    85471    } 
    86472 
     
    90476        Keyboard.Listen(Key.D3, ButtonState.Pressed, Kolmenpelaajanpeli, ""); 
    91477        Keyboard.Listen(Key.D4, ButtonState.Pressed, Neljanpelaajanpeli, ""); 
     478        Keyboard.Listen(Key.D5, ButtonState.Pressed, korkeustaulukko.Show, ""); 
    92479        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, ""); 
    93480    } 
    94481 
     482    private void Pelimodinappaimet() 
     483    { 
     484        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, ""); 
     485        if (pelaajamaara == 2) 
     486        { 
     487            Keyboard.Listen(Key.D1, ButtonState.Pressed, KahdenpelaajanKP, ""); 
     488            Keyboard.Listen(Key.D2, ButtonState.Pressed, KahdenpelaajanYP, ""); 
     489            Keyboard.Listen(Key.H, ButtonState.Pressed, ohjevalikko2p, ""); 
     490        } 
     491        if (pelaajamaara == 3) 
     492        { 
     493            Keyboard.Listen(Key.D1, ButtonState.Pressed, KolmenpelaajanKP, ""); 
     494            Keyboard.Listen(Key.D2, ButtonState.Pressed, KolmenpelaajanYP, ""); 
     495            Keyboard.Listen(Key.H, ButtonState.Pressed, ohjevalikko3p, ""); 
     496        } 
     497        if (pelaajamaara == 4) 
     498        { 
     499            Keyboard.Listen(Key.D1, ButtonState.Pressed, NeljanpelaajanKP, ""); 
     500            Keyboard.Listen(Key.D2, ButtonState.Pressed, NeljanpelaajanYP, ""); 
     501            Keyboard.Listen(Key.H, ButtonState.Pressed, ohjevalikko4p, ""); 
     502        } 
     503    } 
     504 
    95505    void seuraavaKentta() 
    96506    { 
    97507        ClearAll(); 
    98         if (Kolmepelaajaa == true) 
    99         { 
    100             lisaaPelaaja3(); 
    101         } 
    102  
    103         if (Neljapelaajaa == true) 
    104         { 
    105             lisaaPelaaja3(); 
    106             lisaaPelaaja4(); 
    107         } 
    108         lisaaTaso(RandomGen.NextDouble(Level.Left + 50, Level.Right - 50), Level.Bottom + 150, 150); 
    109  
     508 
     509        if (pelaajamaara == 3) 
     510        { 
     511            lisaaPelaaja3(-100, Level.Bottom + 50); 
     512        } 
     513 
     514        if (pelaajamaara == 4) 
     515        { 
     516            lisaaPelaaja3(-100, Level.Bottom + 50); 
     517            lisaaPelaaja4(200, Level.Bottom + 50); 
     518        } 
    110519        TeeReunat(); 
    111         TeePistenaytot(); 
     520        if (YP == false) TeePistenaytot(); 
    112521 
    113522        Gravity = new Vector(0, -600); 
     
    115524        luoKentta(); 
    116525        lisaaNappaimet(); 
    117         Camera.Follow(pelaaja1); 
     526        if (YP == true) 
     527        { 
     528            Timer korkeusAjastin = new Timer(); 
     529            korkeusAjastin.Interval = 0.1; 
     530            korkeusAjastin.Trigger += NaytaKorkeus; 
     531            Add(korkeusAjastin); 
     532            korkeusAjastin.Start(); 
     533 
     534            TeeElamanaytot(); 
     535            lisaaYPNappaimet(); 
     536            p1OnKuplassa = false; 
     537            p2OnKuplassa = false; 
     538            p3OnKuplassa = false; 
     539            p4OnKuplassa = false; 
     540        } 
     541    } 
     542 
     543    private void lisaaYPNappaimet() 
     544    { 
     545        Keyboard.Listen(Key.Down, ButtonState.Pressed, Pelaaja1kupla, ""); 
     546        Keyboard.Listen(Key.S, ButtonState.Pressed, Pelaaja2kupla, ""); 
     547        if (pelaajamaara == 3) Keyboard.Listen(Key.K, ButtonState.Pressed, Pelaaja3kupla, ""); 
     548        if (pelaajamaara == 4) Keyboard.Listen(Key.K, ButtonState.Pressed, Pelaaja3kupla, ""); 
     549    } 
     550 
     551    void lisaaPelaaja1kupla(double x, double y) 
     552    { 
     553        P1kupla = new PhysicsObject(50, 50); 
     554        P1kupla.Image = LoadImage("P1bubble"); 
     555        P1kupla.Shape = Shapes.Circle; 
     556        P1kupla.X = x; 
     557        P1kupla.Y = y; 
     558        P1kupla.IgnoresCollisionResponse = true; 
     559        P1kupla.IgnoresPhysicsLogics = true; 
     560        P1kupla.Velocity = new Vector(0.0, 50.0); 
     561        AddCollisionHandler(P1kupla, KasitteleKuplan1Tormays); 
     562 
     563        Add(P1kupla); 
     564    } 
     565 
     566    void lisaaPelaaja2kupla(double x, double y) 
     567    { 
     568        P2kupla = new PhysicsObject(50, 50); 
     569        P2kupla.Image = LoadImage("P2bubble"); 
     570        P2kupla.Shape = Shapes.Circle; 
     571        P2kupla.X = x; 
     572        P2kupla.Y = y; 
     573        P2kupla.IgnoresCollisionResponse = true; 
     574        P2kupla.IgnoresPhysicsLogics = true; 
     575        P2kupla.Velocity = new Vector(0.0, 50.0); 
     576        AddCollisionHandler(P2kupla, KasitteleKuplan2Tormays); 
     577 
     578        Add(P2kupla); 
     579    } 
     580 
     581    void lisaaPelaaja3kupla(double x, double y) 
     582    { 
     583        P3kupla = new PhysicsObject(60, 60); 
     584        P3kupla.Image = LoadImage("P3bubble"); 
     585        P3kupla.Shape = Shapes.Circle; 
     586        P3kupla.X = x; 
     587        P3kupla.Y = y; 
     588        P3kupla.IgnoresCollisionResponse = true; 
     589        P3kupla.IgnoresPhysicsLogics = true; 
     590        P3kupla.Velocity = new Vector(0.0, 50.0); 
     591        AddCollisionHandler(P3kupla, KasitteleKuplan3Tormays); 
     592 
     593        Add(P3kupla); 
     594    } 
     595 
     596    void lisaaPelaaja4kupla(double x, double y) 
     597    { 
     598        P4kupla = new PhysicsObject(60, 60); 
     599        P4kupla.Image = LoadImage("P3bubble"); 
     600        P4kupla.Shape = Shapes.Circle; 
     601        P4kupla.X = x; 
     602        P4kupla.Y = y; 
     603        P4kupla.IgnoresCollisionResponse = true; 
     604        P4kupla.IgnoresPhysicsLogics = true; 
     605        P4kupla.Velocity = new Vector(0.0, 50.0); 
     606        AddCollisionHandler(P4kupla, KasitteleKuplan4Tormays); 
     607 
     608        Add(P4kupla); 
     609    } 
     610    void Pelaaja1kupla() 
     611    { 
     612        if (p1OnKuplassa == false) 
     613        { 
     614            lisaaPelaaja1kupla(pelaaja1.X, pelaaja1.Y); 
     615            p1OnKuplassa = true; 
     616        } 
     617        pelaaja1.Destroy(); 
     618    } 
     619 
     620    void Pelaaja2kupla() 
     621    { 
     622        if (p2OnKuplassa == false) 
     623        { 
     624            lisaaPelaaja2kupla(pelaaja2.X, pelaaja2.Y); 
     625            p2OnKuplassa = true; 
     626        } 
     627        pelaaja2.Destroy(); 
     628    } 
     629 
     630    void Pelaaja3kupla() 
     631    { 
     632        if (p3OnKuplassa == false) 
     633        { 
     634            lisaaPelaaja3kupla(pelaaja3.X, pelaaja3.Y); 
     635            p3OnKuplassa = true; 
     636        } 
     637        if (pelaaja3 != null) 
     638        { 
     639            pelaaja3.Destroy(); 
     640        } 
     641    } 
     642 
     643    void Pelaaja4kupla() 
     644    { 
     645        if (p4OnKuplassa == false) 
     646        { 
     647            lisaaPelaaja4kupla(pelaaja4.X, pelaaja4.Y); 
     648            p4OnKuplassa = true; 
     649        } 
     650        pelaaja4.Destroy(); 
    118651    } 
    119652 
     
    129662        Add(pisteNaytto); 
    130663 
    131  
    132664        ValueDisplay pisteNaytto2 = new ValueDisplay(); 
    133665        pisteNaytto2.Text = "Pelaaja 2: "; 
     
    139671        Add(pisteNaytto2); 
    140672 
    141         if (Kolmepelaajaa == true) 
     673        if (pelaajamaara == 3) 
    142674        { 
    143675            ValueDisplay pisteNaytto3 = new ValueDisplay(); 
     
    150682            Add(pisteNaytto3); 
    151683        } 
    152         if (Neljapelaajaa == true) 
     684        if (pelaajamaara == 4) 
    153685        { 
    154686            ValueDisplay pisteNaytto3 = new ValueDisplay(); 
     
    172704    } 
    173705 
     706    void TeeElamanaytot() 
     707    { 
     708        ValueDisplay elamaNaytto = new ValueDisplay(); 
     709        elamaNaytto.Text = "Pelaaja 1:n elämät: "; 
     710        elamaNaytto.X = Screen.Left + 150; 
     711        elamaNaytto.Y = Screen.Top - 100; 
     712        elamaNaytto.ValueColor = Color.Red; 
     713        elamaNaytto.TextColor = Color.Red; 
     714        elamaNaytto.BindTo(pelaajan1elamat); 
     715        Add(elamaNaytto); 
     716 
     717 
     718        ValueDisplay elamaNaytto2 = new ValueDisplay(); 
     719        elamaNaytto2.Text = "Pelaaja 2:n elämät: "; 
     720        elamaNaytto2.X = Screen.Left + 400; 
     721        elamaNaytto2.Y = Screen.Top - 100; 
     722        elamaNaytto2.ValueColor = Color.Red; 
     723        elamaNaytto2.TextColor = Color.Red; 
     724        elamaNaytto2.BindTo(pelaajan2elamat); 
     725        Add(elamaNaytto2); 
     726 
     727        if (pelaajamaara == 3) 
     728        { 
     729            ValueDisplay elamaNaytto3 = new ValueDisplay(); 
     730            elamaNaytto3.Text = "Pelaaja 3:n elämät: "; 
     731            elamaNaytto3.X = Screen.Right - 400; 
     732            elamaNaytto3.Y = Screen.Top - 100; 
     733            elamaNaytto3.ValueColor = Color.Red; 
     734            elamaNaytto3.TextColor = Color.Red; 
     735            elamaNaytto3.BindTo(pelaajan3elamat); 
     736            Add(elamaNaytto3); 
     737        } 
     738        if (pelaajamaara == 4) 
     739        { 
     740            ValueDisplay elamaNaytto3 = new ValueDisplay(); 
     741            elamaNaytto3.Text = "Pelaaja 3:n elämät: "; 
     742            elamaNaytto3.X = Screen.Right - 400; 
     743            elamaNaytto3.Y = Screen.Top - 100; 
     744            elamaNaytto3.ValueColor = Color.Red; 
     745            elamaNaytto3.TextColor = Color.Red; 
     746            elamaNaytto3.BindTo(pelaajan3elamat); 
     747            Add(elamaNaytto3); 
     748 
     749            ValueDisplay elamaNaytto4 = new ValueDisplay(); 
     750            elamaNaytto4.Text = "Pelaaja 4:n elämät: "; 
     751            elamaNaytto4.X = Screen.Right - 150; 
     752            elamaNaytto4.Y = Screen.Top - 100; 
     753            elamaNaytto4.ValueColor = Color.Red; 
     754            elamaNaytto4.TextColor = Color.Red; 
     755            elamaNaytto4.BindTo(pelaajan4elamat); 
     756            Add(elamaNaytto4); 
     757        } 
     758    } 
     759 
    174760    void TeeReunat() 
    175761    { 
     
    187773    } 
    188774 
     775    void LisaaEitoimiruutu() 
     776    { 
     777        Alku = PhysicsObject.CreateStaticObject(1024, 768); 
     778        Alku.X = 0; 
     779        Alku.Y = Level.Bottom + 400; 
     780        Alku.Image = LoadImage("SJeitoimi"); 
     781        Alku.IgnoresCollisionResponse = true; 
     782        Alku.IgnoresPhysicsLogics = true; 
     783        Add(Alku); 
     784    } 
     785 
    189786    void LisaaAloitusruutu() 
    190787    { 
     
    192789        Alku.X = 0; 
    193790        Alku.Y = Level.Bottom + 320; 
    194         Alku.Image = LoadImage("Aloituskokonaytto2"); 
     791        Alku.Image = LoadImage("SJpäävalikko"); 
    195792        Alku.IgnoresCollisionResponse = true; 
    196793        Alku.IgnoresPhysicsLogics = true; 
     
    198795    } 
    199796 
    200     void voitto(int voittavaPelaaja) 
     797    void TeePelimodivalikko() 
     798    { 
     799        Alku = PhysicsObject.CreateStaticObject(1024, 640); 
     800        Alku.X = 0; 
     801        Alku.Y = Level.Bottom + 320; 
     802        Alku.Image = LoadImage("SJpelimodi"); 
     803        Alku.IgnoresCollisionResponse = true; 
     804        Alku.IgnoresPhysicsLogics = true; 
     805        Add(Alku); 
     806    } 
     807 
     808    void TeeOhjevalikko() 
     809    { 
     810        Alku = PhysicsObject.CreateStaticObject(1024, 640); 
     811        Alku.X = 0; 
     812        Alku.Y = Level.Bottom + 320; 
     813        Alku.Image = LoadImage("SJohjeet"); 
     814        Alku.IgnoresCollisionResponse = true; 
     815        Alku.IgnoresPhysicsLogics = true; 
     816        Add(Alku); 
     817    } 
     818 
     819    void TeePelaajaMäärä() 
     820    { 
     821        PMäärä = PhysicsObject.CreateStaticObject(1024, 640); 
     822        PMäärä.X = 0; 
     823        PMäärä.Y = Level.Bottom + 320; 
     824        PMäärä.Image = LoadImage("SJpelaajamaara"); 
     825        PMäärä.IgnoresCollisionResponse = true; 
     826        PMäärä.IgnoresPhysicsLogics = true; 
     827        Add(PMäärä); 
     828    } 
     829 
     830    void TeeTappiovalikko() 
     831    { 
     832        Tappio = PhysicsObject.CreateStaticObject(1024, 640); 
     833        Camera.Position = new Vector(0, 0); 
     834        Tappio.X = Camera.Position.X; 
     835        Tappio.Y = -14680; 
     836        Tappio.Image = LoadImage("SJparhaatpisteet"); 
     837        Tappio.IgnoresCollisionResponse = true; 
     838        Tappio.IgnoresPhysicsLogics = true; 
     839        Add(Tappio); 
     840    } 
     841 
     842    void ohjevalikko2p() 
     843    { 
     844        Alku = PhysicsObject.CreateStaticObject(1024, 640); 
     845        Alku.X = 0; 
     846        Alku.Y = Level.Bottom + 320; 
     847        Alku.Image = LoadImage("SJ2pohjeet"); 
     848        Alku.IgnoresCollisionResponse = true; 
     849        Alku.IgnoresPhysicsLogics = true; 
     850        Add(Alku); 
     851        NappiAlkuvalikkoon(); 
     852    } 
     853 
     854    void ohjevalikko3p() 
     855    { 
     856        Alku = PhysicsObject.CreateStaticObject(1024, 640); 
     857        Alku.X = 0; 
     858        Alku.Y = Level.Bottom + 320; 
     859        Alku.Image = LoadImage("SJ3pohjeet"); 
     860        Alku.IgnoresCollisionResponse = true; 
     861        Alku.IgnoresPhysicsLogics = true; 
     862        Add(Alku); 
     863        NappiAlkuvalikkoon(); 
     864    } 
     865 
     866    void ohjevalikko4p() 
     867    { 
     868        Alku = PhysicsObject.CreateStaticObject(1024, 640); 
     869        Alku.X = 0; 
     870        Alku.Y = Level.Bottom + 320; 
     871        Alku.Image = LoadImage("SJ4pohjeet"); 
     872        Alku.IgnoresCollisionResponse = true; 
     873        Alku.IgnoresPhysicsLogics = true; 
     874        Add(Alku); 
     875        NappiAlkuvalikkoon(); 
     876    } 
     877 
     878    private void NappiAlkuvalikkoon() 
     879    { 
     880        Keyboard.Listen(Key.P, ButtonState.Pressed, Alkukentta, ""); 
     881    } 
     882 
     883    void voitto() 
    201884    { 
    202885        voittaja = PhysicsObject.CreateStaticObject(1024, 640); 
    203886        Camera.Position = new Vector(0, 0); 
    204887        voittaja.X = Camera.Position.X; 
    205         voittaja.Y = Camera.Position.Y; 
    206         if (voittavaPelaaja == 1) 
     888        voittaja.Y = -14680; 
     889        if (p1SaiVoiton == true) 
    207890        { 
    208891            voittaja.Image = LoadImage("Smile Jump(pelaaja1voitti)"); 
    209892        } 
    210         if (voittavaPelaaja == 2) 
     893        if (p2SaiVoiton == true) 
    211894        { 
    212895            voittaja.Image = LoadImage("Smile Jump(pelaaja2voitti)"); 
    213896        } 
    214         if (voittavaPelaaja == 3) 
     897        if (p3SaiVoiton == true) 
    215898        { 
    216899            voittaja.Image = LoadImage("Smile Jump(pelaaja3voitti)"); 
    217900        } 
    218         if (voittavaPelaaja == 4) 
     901        if (p4SaiVoiton == true) 
    219902        { 
    220903            voittaja.Image = LoadImage("Smile Jump(pelaaja4voitti)"); 
    221904        } 
     905 
    222906        voittaja.IgnoresCollisionResponse = true; 
    223         voittaja.IgnoresPhysicsLogics = true; 
    224907        Add(voittaja); 
    225908    } 
    226909 
    227     void pelaaja1voitti() 
    228     { 
    229         p1voitti = PhysicsObject.CreateStaticObject(1024, 640); 
    230         Camera.Position = new Vector(0, 0); 
    231         p1voitti.X = Camera.Position.X; 
    232         p1voitti.Y = -7180; 
    233         p1voitti.Image = LoadImage("Smile Jump(pelaaja1voitti)"); 
    234  
    235         p1voitti.IgnoresCollisionResponse = true; 
    236         p1voitti.IgnoresPhysicsLogics = true; 
    237         Add(p1voitti); 
    238     } 
    239  
    240     void pelaaja2voitti() 
    241     { 
    242         p2voitti = PhysicsObject.CreateStaticObject(1024, 640); 
    243         Camera.Position = new Vector(0,0); 
    244         p2voitti.X = Camera.Position.X; 
    245         p2voitti.Y = -7180; 
    246         p2voitti.Image = LoadImage("Smile Jump(pelaaja2voitti)"); 
    247  
    248         p2voitti.IgnoresCollisionResponse = true; 
    249         p2voitti.IgnoresPhysicsLogics = true; 
    250         Add(p2voitti); 
    251     } 
    252  
    253     void pelaaja3voitti() 
    254     { 
    255         p3voitti = PhysicsObject.CreateStaticObject(1024, 640); 
    256         Camera.Position = new Vector(0, 0); 
    257         p3voitti.X = Camera.Position.X; 
    258         p3voitti.Y = -7180; 
    259         p3voitti.Image = LoadImage("Smile Jump(pelaaja3voitti)"); 
    260  
    261         p3voitti.IgnoresCollisionResponse = true; 
    262         p3voitti.IgnoresPhysicsLogics = true; 
    263         Add(p3voitti); 
    264     } 
    265  
    266     void pelaaja4voitti() 
    267     { 
    268         p4voitti = PhysicsObject.CreateStaticObject(1024, 640); 
    269         Camera.Position = new Vector(0, 0); 
    270         p4voitti.X = Camera.Position.X; 
    271         p4voitti.Y = -7180; 
    272         p4voitti.Image = LoadImage("Smile Jump(pelaaja4voitti)"); 
    273  
    274         p4voitti.IgnoresCollisionResponse = true; 
    275         p4voitti.IgnoresPhysicsLogics = true; 
    276         Add(p4voitti); 
    277     } 
    278  
    279910    void KasittelePallonTormays(PhysicsObject pelaaja1, PhysicsObject kohde) 
    280911    { 
     
    289920    } 
    290921 
     922    void KasitteleKuplan1Tormays(PhysicsObject kupla, PhysicsObject kohde) 
     923    { 
     924        if (kohde == pelaaja2) 
     925        { 
     926            lisaaPelaaja1(kupla.X, kupla.Y); 
     927            kupla.Destroy(); 
     928            lisaaNappaimet(); 
     929            p1OnKuplassa = false; 
     930        } 
     931        if (kohde == pelaaja3) 
     932        { 
     933            lisaaPelaaja1(kupla.X, kupla.Y); 
     934            kupla.Destroy(); 
     935            lisaaNappaimet(); 
     936            p1OnKuplassa = false; 
     937        } 
     938        if (kohde == pelaaja4) 
     939        { 
     940            lisaaPelaaja1(kupla.X, kupla.Y); 
     941            kupla.Destroy(); 
     942            lisaaNappaimet(); 
     943            p1OnKuplassa = false; 
     944        } 
     945    } 
     946 
     947    void KasitteleKuplan2Tormays(PhysicsObject kupla, PhysicsObject kohde) 
     948    { 
     949        if (kohde == pelaaja1) 
     950        { 
     951            lisaaPelaaja2(kupla.X, kupla.Y); 
     952            kupla.Destroy(); 
     953            lisaaNappaimet(); 
     954            p2OnKuplassa = false; 
     955        } 
     956        if (kohde == pelaaja3) 
     957        { 
     958            lisaaPelaaja2(kupla.X, kupla.Y); 
     959            kupla.Destroy(); 
     960            lisaaNappaimet(); 
     961            p2OnKuplassa = false; 
     962        } 
     963        if (kohde == pelaaja4) 
     964        { 
     965            lisaaPelaaja2(kupla.X, kupla.Y); 
     966            kupla.Destroy(); 
     967            lisaaNappaimet(); 
     968            p2OnKuplassa = false; 
     969        } 
     970    } 
     971 
     972    void KasitteleKuplan3Tormays(PhysicsObject kupla, PhysicsObject kohde) 
     973    { 
     974        if (kohde == pelaaja2) 
     975        { 
     976            lisaaPelaaja3(kupla.X, kupla.Y); 
     977            kupla.Destroy(); 
     978            lisaaNappaimet(); 
     979            p3OnKuplassa = false; 
     980        } 
     981        if (kohde == pelaaja1) 
     982        { 
     983            lisaaPelaaja3(kupla.X, kupla.Y); 
     984            kupla.Destroy(); 
     985            lisaaNappaimet(); 
     986            p3OnKuplassa = false; 
     987        } 
     988        if (kohde == pelaaja4) 
     989        { 
     990            lisaaPelaaja3(kupla.X, kupla.Y); 
     991            kupla.Destroy(); 
     992            lisaaNappaimet(); 
     993            p3OnKuplassa = false; 
     994        } 
     995    } 
     996 
     997    void KasitteleKuplan4Tormays(PhysicsObject kupla, PhysicsObject kohde) 
     998    { 
     999        if (kohde == pelaaja2) 
     1000        { 
     1001            lisaaPelaaja4(kupla.X, kupla.Y); 
     1002            kupla.Destroy(); 
     1003            lisaaNappaimet(); 
     1004            p4OnKuplassa = false; 
     1005        } 
     1006        if (kohde == pelaaja3) 
     1007        { 
     1008            lisaaPelaaja4(kupla.X, kupla.Y); 
     1009            kupla.Destroy(); 
     1010            lisaaNappaimet(); 
     1011            p4OnKuplassa = false; 
     1012        } 
     1013        if (kohde == pelaaja1) 
     1014        { 
     1015            lisaaPelaaja4(kupla.X, kupla.Y); 
     1016            kupla.Destroy(); 
     1017            lisaaNappaimet(); 
     1018            p4OnKuplassa = false; 
     1019        } 
     1020    } 
     1021 
    2911022    void TasonTormays(PhysicsObject taso, PhysicsObject kohde) 
    2921023    { 
     
    3021033        if (kohde == DownReuna) 
    3031034        { 
     1035            if (YP == true && p1elamamenetys == false) 
     1036            { 
     1037                p1elamamenetys = true; 
     1038                pelaajan1elamat.Value--; 
     1039                KuplaSyntymä1.Start(); 
     1040            } 
    3041041            p1.Destroy(); 
    3051042            ControllerOne.Vibrate(1, 1, 0.0, 0.0, 0.5); 
     
    3081045        if (kohde.Tag.ToString() == "vihollinen") 
    3091046        { 
     1047            if (YP == true && p1elamamenetys == false) 
     1048            { 
     1049                p1elamamenetys = true; 
     1050                pelaajan1elamat.Value--; 
     1051                KuplaSyntymä1.Start(); 
     1052            } 
    3101053            kohde.Destroy(); 
    3111054            p1.Destroy(); 
     
    3211064            p2.Destroy(); 
    3221065            ControllerTwo.Vibrate(1, 1, 0.0, 0.0, 0.5); 
    323  
     1066            if (YP == true && p2elamamenetys == false) 
     1067            { 
     1068                p2elamamenetys = true; 
     1069                pelaajan2elamat.Value--; 
     1070                KuplaSyntymä2.Start(); 
     1071            } 
    3241072        } 
    3251073 
     
    3291077            p2.Destroy(); 
    3301078            ControllerTwo.Vibrate(1, 1, 0.0, 0.0, 0.5); 
    331         } 
    332  
    333     } 
    334  
     1079            if (YP == true && p2elamamenetys == false) 
     1080            { 
     1081                p2elamamenetys = true; 
     1082                pelaajan2elamat.Value--; 
     1083                KuplaSyntymä2.Start(); 
     1084            } 
     1085        } 
     1086 
     1087    } 
    3351088 
    3361089    void Pelaaja3Osui(PhysicsObject p3, PhysicsObject kohde) 
     
    3401093            p3.Destroy(); 
    3411094            ControllerThree.Vibrate(1, 1, 0.0, 0.0, 0.5); 
     1095            if (YP == true && p3elamamenetys == false) 
     1096            { 
     1097                p3elamamenetys = true; 
     1098                pelaajan3elamat.Value--; 
     1099                KuplaSyntymä3.Start(); 
     1100            } 
    3421101        } 
    3431102 
     
    3471106            p3.Destroy(); 
    3481107            ControllerThree.Vibrate(1, 1, 0.0, 0.0, 0.5); 
     1108            if (YP == true && p3elamamenetys == false) 
     1109            { 
     1110                p3elamamenetys = true; 
     1111                pelaajan3elamat.Value--; 
     1112                KuplaSyntymä3.Start(); 
     1113            } 
    3491114        } 
    3501115 
     
    3551120        if (kohde == DownReuna) 
    3561121        { 
     1122            if (YP == true && p4elamamenetys == false) 
     1123            { 
     1124                p4elamamenetys = true; 
     1125                pelaajan4elamat.Value--; 
     1126                KuplaSyntymä4.Start(); 
     1127            } 
    3571128            p4.Destroy(); 
     1129            ControllerFour.Vibrate(1, 1, 0.0, 0.0, 0.5); 
    3581130        } 
    3591131 
    3601132        if (kohde.Tag.ToString() == "vihollinen") 
    3611133        { 
     1134            if (YP == true && p4elamamenetys == false) 
     1135            { 
     1136                p4elamamenetys = true; 
     1137                pelaajan4elamat.Value--; 
     1138                KuplaSyntymä4.Start(); 
     1139            } 
    3621140            kohde.Destroy(); 
    3631141            p4.Destroy(); 
    364         } 
    365  
    366     } 
    367  
    368     void VihollisKaantyVR(PhysicsObject vihulainen, PhysicsObject kohde) 
     1142            ControllerFour.Vibrate(1, 1, 0.0, 0.0, 0.5); 
     1143        } 
     1144 
     1145    } 
     1146 
     1147    void VihollisKaanty(PhysicsObject vihulainen, PhysicsObject kohde) 
    3691148    { 
    3701149        if (kohde == vasenReuna) 
     
    3721151            vihulainen.Velocity = new Vector(220.0, 0.0); 
    3731152        } 
    374  
    375     } 
    376  
    377     void VihollisKaantyOR(PhysicsObject vihulainen, PhysicsObject kohde) 
    378     { 
    3791153        if (kohde == oikeaReuna) 
    3801154        { 
     
    3841158    } 
    3851159 
     1160    void Nappainohje() 
     1161    { 
     1162        MessageDisplay.Add("Katso ohjeet valikosta"); 
     1163    } 
     1164 
    3861165    void luoKentta() 
    3871166    { 
    388         tasokorkeus = 50; 
     1167        lisaaTaso(RandomGen.NextDouble(Level.Left + 50, Level.Right - 50), Level.Bottom + 100, 150); 
     1168 
     1169        mittari = new TextDisplay(); 
     1170        Add(mittari); 
     1171 
     1172        TeeTasot(); 
     1173        vihollistiheytys = 0; 
     1174        viholliskorkeus = 0; 
     1175        for (int v = 0; v < 55; v++) 
     1176        { 
     1177            viholliskorkeus = viholliskorkeus + 600 - vihollistiheytys; 
     1178            LisaaVihollinen(RandomGen.NextDouble(Level.Left, Level.Right), Level.Bottom + viholliskorkeus + RandomGen.NextDouble(0.0, 40.0)); 
     1179            vihollistiheytys = vihollistiheytys + 10; 
     1180        } 
     1181 
     1182        LisaaDownReuna(); 
     1183 
     1184        Level.Background.CreateGradient(Color.SkyBlue, Color.DarkBlue); 
     1185        lisaaPelaaja1(0, Level.Bottom + 50); 
     1186        lisaaPelaaja2(100, Level.Bottom + 50); 
     1187        Teeaikalaskurit(); 
     1188        TeeKuplaSyntymälaskurit(); 
     1189 
     1190        Level.Width = 1024; 
     1191        Level.Height = 30000; 
     1192 
     1193 
     1194        if (pelaajamaara == 2) 
     1195        { 
     1196            Ohjeet2pelaajaa(); 
     1197        } 
     1198        if (pelaajamaara == 3) 
     1199        { 
     1200            Ohjeet3pelaajaa(); 
     1201        } 
     1202        if (pelaajamaara == 4) 
     1203        { 
     1204            Ohjeet3pelaajaa(); 
     1205        } 
     1206        aloituspaikka = pelaaja1.Position; 
     1207    } 
     1208 
     1209    private void TeeTasot() 
     1210    { 
     1211        tasokorkeus = 100; 
    3891212        tasoleveys = 150; 
    3901213        for (int i = 0; i < 145; i++) 
     
    3951218            tasoleveys = tasoleveys - 1; 
    3961219        } 
    397         vihollistiheytys = 0; 
    398         viholliskorkeus = 0; 
    399         for (int v = 0; v < 55; v++) 
    400         { 
    401             viholliskorkeus = viholliskorkeus + 600 - vihollistiheytys; 
    402             LisaaVihollinen(RandomGen.NextDouble(Level.Left, Level.Right), Level.Bottom + viholliskorkeus + RandomGen.NextDouble(0.0, 40.0)); 
    403             vihollistiheytys = vihollistiheytys + 10; 
    404         } 
    4051220 
    4061221        tasokorkeus = 150; 
     
    4121227            tasokorkeus = tasokorkeus + 170; 
    4131228        } 
    414         LisaaDownReuna(); 
    415  
    416         Level.Background.CreateGradient(Color.SkyBlue, Color.DarkBlue); 
    417         lisaaPelaajat(); 
    418  
     1229    } 
     1230 
     1231    void Teeaikalaskurit() 
     1232    { 
    4191233        aikaLaskuri = new Timer(); 
    4201234        aikaLaskuri.Interval = 2; 
     
    4281242        Add(aikaLaskuri2); 
    4291243 
    430         Level.Width = 1024; 
    431         Level.Height = 15000; 
    432  
    433         LisaaVihollinen(0.0, Level.Bottom + 500); 
    434         Camera.StayInLevel = true; 
    435  
    436         if (Kaksipelaajaa == true) 
    437         { 
    438             Ohjeet2pelaajaa(); 
    439         } 
    440         if (Kolmepelaajaa == true) 
    441         { 
    442             Ohjeet3pelaajaa(); 
    443         } 
    444         if (Neljapelaajaa == true) 
    445         { 
    446             Ohjeet3pelaajaa(); 
    447         } 
     1244        aikaLaskuri3 = new Timer(); 
     1245        aikaLaskuri3.Interval = 1; 
     1246        aikaLaskuri3.Trigger += aikaLoppui3; 
     1247        Add(aikaLaskuri3); 
     1248    } 
     1249 
     1250    void TeeKuplaSyntymälaskurit() 
     1251    { 
     1252        KuplaSyntymä1 = new Timer(); 
     1253        KuplaSyntymä1.LimitTimes(1); 
     1254        KuplaSyntymä1.Interval = Kuplaaika; 
     1255        KuplaSyntymä1.Trigger += KuplaSyntymä1aika; 
     1256        Add(KuplaSyntymä1); 
     1257 
     1258        KuplaSyntymä2 = new Timer(); 
     1259        KuplaSyntymä2.LimitTimes(1); 
     1260        KuplaSyntymä2.Interval = Kuplaaika; 
     1261        KuplaSyntymä2.Trigger += KuplaSyntymä2aika; 
     1262        Add(KuplaSyntymä2); 
     1263 
     1264        KuplaSyntymä3 = new Timer(); 
     1265        KuplaSyntymä3.LimitTimes(1); 
     1266        KuplaSyntymä3.Interval = Kuplaaika; 
     1267        KuplaSyntymä3.Trigger += KuplaSyntymä3aika; 
     1268        Add(KuplaSyntymä3); 
     1269 
     1270        KuplaSyntymä4 = new Timer(); 
     1271        KuplaSyntymä4.LimitTimes(1); 
     1272        KuplaSyntymä4.Interval = Kuplaaika; 
     1273        KuplaSyntymä4.Trigger += KuplaSyntymä4aika; 
     1274        Add(KuplaSyntymä4); 
    4481275    } 
    4491276 
     
    4561283        Ohje2p.IgnoresCollisionResponse = true; 
    4571284        Ohje2p.IgnoresPhysicsLogics = true; 
    458         Add(Ohje2p); 
     1285        if (YP == false) 
     1286        { 
     1287            Add(Ohje2p); 
     1288        } 
    4591289    } 
    4601290 
     
    4671297        Ohje3p.IgnoresCollisionResponse = true; 
    4681298        Ohje3p.IgnoresPhysicsLogics = true; 
    469         Add(Ohje3p); 
     1299        if (YP == false) 
     1300        { 
     1301            Add(Ohje3p); 
     1302        } 
    4701303    } 
    4711304 
     
    4811314    } 
    4821315 
    483     void lisaaPelaajat() 
     1316    void lisaaPelaaja1(double x, double y) 
    4841317    { 
    4851318        pelaaja1 = new PlatformCharacter(40, 40); 
     
    4871320        pelaaja1.Shape = Shapes.Circle; 
    4881321        pelaaja1.Image = LoadImage("smile jump(keltainen pelaaja) (2)"); 
    489         pelaaja1.X = 0; 
    490         pelaaja1.Y = Level.Bottom + 50; 
    491  
     1322        pelaaja1.X = x; 
     1323        pelaaja1.Y = y; 
     1324 
     1325        AddCollisionHandler(pelaaja1, KasittelePallonTormays); 
     1326 
     1327        Add(pelaaja1); 
     1328    } 
     1329 
     1330    void lisaaPelaaja2(double x, double y) 
     1331    { 
    4921332        pelaaja2 = new PlatformCharacter(40, 40); 
    4931333        pelaaja2.Mass = 4.0; 
    4941334        pelaaja2.Shape = Shapes.Circle; 
    4951335        pelaaja2.Image = LoadImage("smile jump (vihreä pelaaja) (2)"); 
    496         pelaaja2.X = 50; 
    497         pelaaja2.Y = Level.Bottom + 50; 
    498  
    499         AddCollisionHandler(pelaaja1, KasittelePallonTormays); 
     1336        pelaaja2.X = x; 
     1337        pelaaja2.Y = y; 
     1338 
    5001339        AddCollisionHandler(pelaaja2, KasittelePallonTormays); 
    5011340 
    502         Add(pelaaja1); 
    5031341        Add(pelaaja2); 
    5041342    } 
    5051343 
    506     void lisaaPelaaja3() 
     1344    void lisaaPelaaja3(double x, double y) 
    5071345    { 
    5081346        pelaaja3 = new PlatformCharacter(40, 40); 
     
    5101348        pelaaja3.Shape = Shapes.Circle; 
    5111349        pelaaja3.Image = LoadImage("smile jump(sininen pelaaja)"); 
    512         pelaaja3.X = -50; 
    513         pelaaja3.Y = Level.Bottom + 50; 
     1350        pelaaja3.X = x; 
     1351        pelaaja3.Y = y; 
    5141352 
    5151353        AddCollisionHandler(pelaaja3, KasittelePallonTormays); 
     
    5181356    } 
    5191357 
    520     void lisaaPelaaja4() 
     1358    void lisaaPelaaja4(double x, double y) 
    5211359    { 
    5221360        pelaaja4 = new PlatformCharacter(40, 40); 
     
    5241362        pelaaja4.Shape = Shapes.Circle; 
    5251363        pelaaja4.Image = LoadImage("smile jump(pinkki pelaaja)"); 
    526         pelaaja4.X = 100; 
    527         pelaaja4.Y = Level.Bottom + 50; 
     1364        pelaaja4.X = x; 
     1365        pelaaja4.Y = y; 
    5281366 
    5291367        AddCollisionHandler(pelaaja4, KasittelePallonTormays); 
     
    5451383        Add(vihollinen); 
    5461384 
    547         AddCollisionHandler(vihollinen, VihollisKaantyOR); 
    548         AddCollisionHandler(vihollinen, VihollisKaantyVR); 
     1385        AddCollisionHandler(vihollinen, VihollisKaanty); 
    5491386    } 
    5501387 
    5511388    private void aikaLoppui(Timer sender) 
    5521389    { 
    553         if (Kaksipelaajaa == true) 
     1390        if (pelaajamaara == 2) 
    5541391        { 
    5551392            Ohje2p.Destroy(); 
     
    5571394        AddCollisionHandler(pelaaja1, Pelaaja1Osui); 
    5581395        AddCollisionHandler(pelaaja2, Pelaaja2Osui); 
    559         if (Kolmepelaajaa == true) 
    560         { 
    561             AddCollisionHandler(pelaaja1, Pelaaja1Osui); 
    562             AddCollisionHandler(pelaaja2, Pelaaja2Osui); 
     1396        if (pelaajamaara == 3) 
     1397        { 
    5631398            AddCollisionHandler(pelaaja3, Pelaaja3Osui); 
    5641399            Ohje3p.Destroy(); 
    5651400        } 
    566         if (Neljapelaajaa == true) 
    567         { 
    568             AddCollisionHandler(pelaaja1, Pelaaja1Osui); 
    569             AddCollisionHandler(pelaaja2, Pelaaja2Osui); 
     1401        if (pelaajamaara == 4) 
     1402        { 
    5701403            AddCollisionHandler(pelaaja3, Pelaaja3Osui); 
    5711404            AddCollisionHandler(pelaaja4, Pelaaja4Osui); 
     
    5751408    private void aikaLoppui2(Timer sender) 
    5761409    { 
    577             if (p1SaiVoiton == true) 
    578             { 
    579                 p1voitti.Destroy(); 
    580                 p1SaiVoiton = false; 
    581                 Alkukentta(); 
    582             } 
    583             if (p2SaiVoiton == true) 
    584             { 
    585                 p2voitti.Destroy(); 
    586                 p2SaiVoiton = false; 
    587                 Alkukentta(); 
    588             } 
    589             if (p3SaiVoiton == true) 
    590             { 
    591                 p3voitti.Destroy(); 
    592                 p3SaiVoiton = false; 
    593                 Alkukentta(); 
    594             } 
    595             if (p4SaiVoiton == true) 
    596             { 
    597                 p4voitti.Destroy(); 
    598                 p4SaiVoiton = false; 
    599                 Alkukentta(); 
    600             } 
    601              /* 
    6021410        voittaja.Destroy(); 
    6031411        p1SaiVoiton = false; 
     
    6051413        p3SaiVoiton = false; 
    6061414        p4SaiVoiton = false; 
     1415        //MediaPlayer.Play("Menu"); 
    6071416        Alkukentta(); 
    608               */ 
    609     } 
    610      
     1417 
     1418    } 
     1419 
     1420    private void aikaLoppui3(Timer sender) 
     1421    { 
     1422        seuraavaKentta(); 
     1423        //MediaPlayer.Play("Menu"); 
     1424        Parhaatpisteetkentta(); 
     1425    } 
     1426 
     1427    private void KuplaSyntymä1aika(Timer sender) 
     1428    { 
     1429        lisaaPelaaja1kupla(Level.Left + 10, korkein); 
     1430    } 
     1431 
     1432    private void KuplaSyntymä2aika(Timer sender) 
     1433    { 
     1434        lisaaPelaaja2kupla(Level.Left + 10, korkein); 
     1435    } 
     1436 
     1437    private void KuplaSyntymä3aika(Timer sender) 
     1438    { 
     1439        lisaaPelaaja3kupla(Level.Right - 10, korkein); 
     1440    } 
     1441 
     1442    private void KuplaSyntymä4aika(Timer sender) 
     1443    { 
     1444        lisaaPelaaja3kupla(Level.Right - 10, korkein); 
     1445    } 
     1446 
    6111447    void lisaaNappaimet() 
    6121448    { 
    613         Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 
     1449        Keyboard.Listen(Key.F1, ButtonState.Pressed, Nappainohje, "Näytä ohjeet"); 
    6141450        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu pelistä"); 
    6151451 
    616         if (Kaksipelaajaa == true) 
    617         { 
    618             Keyboard.Listen(Key.Left, ButtonState.Down, liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    619             Keyboard.Listen(Key.Right, ButtonState.Down, liikuta, "Liikkuu oikealle", pelaaja1, nopeus); 
     1452        if (pelaajamaara == 2) 
     1453        { 
     1454            Keyboard.Listen(Key.Left, ButtonState.Down, LiikuLäski, null, pelaaja1, -18.0); 
     1455            Keyboard.Listen(Key.Right, ButtonState.Down, LiikuLäski, null, pelaaja1, 18.0); 
    6201456            Keyboard.Listen(Key.Up, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja1, hyppyVoima); 
    6211457 
    622             Keyboard.Listen(Key.A, ButtonState.Down, liikuta, "Liikkuu vasemmalle", pelaaja2, -nopeus); 
    623             Keyboard.Listen(Key.D, ButtonState.Down, liikuta, "Liikkuu oikealle", pelaaja2, nopeus); 
     1458            Keyboard.Listen(Key.A, ButtonState.Down, LiikuLäski, null, pelaaja2, -18.0); 
     1459            Keyboard.Listen(Key.D, ButtonState.Down, LiikuLäski, null, pelaaja2, 18.0); 
    6241460            Keyboard.Listen(Key.W, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja2, hyppyVoima); 
    6251461        } 
     
    6281464    } 
    6291465 
    630     // TODO: kesken 
    631     //void KasitteleAse(PhysicsObject Ase, PhysicsObject pelaaja) 
    632     //{ 
    633     //    if (pelaaja == pelaaja1) 
    634     //    { 
    635     //        pelaajan1ase = true; 
    636     //    } 
    637     //    else if (pelaaja == pelaaja2) 
    638     //    { 
    639     //        pelaajan2ase = true; 
    640     //   } 
    641     // }     
    642  
    6431466    void lisaaGamePadNappaimet(GamePad controller) 
    6441467    { 
    6451468        controller.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 
    646         if (Kaksipelaajaa == true) 
    647         { 
    648             ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus); 
    649             ControllerOne.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 
     1469        if (pelaajamaara == 2) 
     1470        { 
     1471            ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja1, -18.0); 
     1472            ControllerOne.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja1, 18.0); 
    6501473            ControllerOne.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja1, hyppyVoima); 
    6511474 
    652             ControllerTwo.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja2, -nopeus); 
    653             ControllerTwo.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja2, nopeus); 
     1475            ControllerTwo.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja2, -18.0); 
     1476            ControllerTwo.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja2, 18.0); 
    6541477            ControllerTwo.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja2, hyppyVoima); 
    6551478        } 
    656         if (Kolmepelaajaa == true) 
    657         { 
    658             Keyboard.Listen(Key.Left, ButtonState.Down, liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    659             Keyboard.Listen(Key.Right, ButtonState.Down, liikuta, "Liikkuu oikealle", pelaaja1, nopeus); 
     1479        if (pelaajamaara == 3) 
     1480        { 
     1481            Keyboard.Listen(Key.Left, ButtonState.Down, LiikuLäski, null, pelaaja1, -18.0); 
     1482            Keyboard.Listen(Key.Right, ButtonState.Down, LiikuLäski, null, pelaaja1, 18.0); 
    6601483            Keyboard.Listen(Key.Up, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja1, hyppyVoima); 
    6611484 
    662             Keyboard.Listen(Key.A, ButtonState.Down, liikuta, "Liikkuu vasemmalle", pelaaja2, -nopeus); 
    663             Keyboard.Listen(Key.D, ButtonState.Down, liikuta, "Liikkuu oikealle", pelaaja2, nopeus); 
     1485            Keyboard.Listen(Key.A, ButtonState.Down, LiikuLäski, null, pelaaja2, -18.0); 
     1486            Keyboard.Listen(Key.D, ButtonState.Down, LiikuLäski, null, pelaaja2, 18.0); 
    6641487            Keyboard.Listen(Key.W, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja2, hyppyVoima); 
    6651488 
    666             ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja3, -nopeus); 
    667             ControllerOne.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja3, nopeus); 
    668             ControllerOne.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja3, hyppyVoima); 
    669  
    670             ControllerTwo.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus); 
    671             ControllerTwo.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 
    672             ControllerTwo.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja1, hyppyVoima); 
    673  
    674             ControllerThree.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja2, -nopeus); 
    675             ControllerThree.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja2, nopeus); 
    676             ControllerThree.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja2, hyppyVoima); 
    677         } 
    678  
    679         if (Neljapelaajaa == true) 
    680         { 
    681             Keyboard.Listen(Key.Left, ButtonState.Down, liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    682             Keyboard.Listen(Key.Right, ButtonState.Down, liikuta, "Liikkuu oikealle", pelaaja1, nopeus); 
     1489            Keyboard.Listen(Key.J, ButtonState.Down, LiikuLäski, null, pelaaja3, -18.0); 
     1490            Keyboard.Listen(Key.L, ButtonState.Down, LiikuLäski, null, pelaaja3, 18.0); 
     1491            Keyboard.Listen(Key.I, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja3, hyppyVoima); 
     1492 
     1493            ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja1, -18.0); 
     1494            ControllerOne.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja1, 18.0); 
     1495            ControllerOne.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja1, hyppyVoima); 
     1496 
     1497            ControllerTwo.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja2, -18.0); 
     1498            ControllerTwo.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja2, 18.0); 
     1499            ControllerTwo.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja2, hyppyVoima); 
     1500 
     1501            ControllerThree.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja3, -18.0); 
     1502            ControllerThree.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja3, 18.0); 
     1503            ControllerThree.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja3, hyppyVoima); 
     1504        } 
     1505 
     1506        if (pelaajamaara == 4) 
     1507        { 
     1508            Keyboard.Listen(Key.Left, ButtonState.Down, LiikuLäski, null, pelaaja1, -18.0); 
     1509            Keyboard.Listen(Key.Right, ButtonState.Down, LiikuLäski, null, pelaaja1, 18.0); 
    6831510            Keyboard.Listen(Key.Up, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja1, hyppyVoima); 
    6841511 
    685             Keyboard.Listen(Key.A, ButtonState.Down, liikuta, "Liikkuu vasemmalle", pelaaja2, -nopeus); 
    686             Keyboard.Listen(Key.D, ButtonState.Down, liikuta, "Liikkuu oikealle", pelaaja2, nopeus); 
     1512            Keyboard.Listen(Key.A, ButtonState.Down, LiikuLäski, null, pelaaja2, -18.0); 
     1513            Keyboard.Listen(Key.D, ButtonState.Down, LiikuLäski, null, pelaaja2, 18.0); 
    6871514            Keyboard.Listen(Key.W, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja2, hyppyVoima); 
    6881515 
    689             ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja3, -nopeus); 
    690             ControllerOne.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja3, nopeus); 
    691             ControllerOne.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja3, hyppyVoima); 
    692  
    693             ControllerTwo.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja4, -nopeus); 
    694             ControllerTwo.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja4, nopeus); 
    695             ControllerTwo.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja4, hyppyVoima); 
    696  
    697             ControllerThree.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus); 
    698             ControllerThree.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 
    699             ControllerThree.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja1, hyppyVoima); 
    700  
    701             ControllerFour.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja2, -nopeus); 
    702             ControllerFour.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja2, nopeus); 
    703             ControllerFour.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja2, hyppyVoima); 
     1516            Keyboard.Listen(Key.J, ButtonState.Down, LiikuLäski, null, pelaaja3, -18.0); 
     1517            Keyboard.Listen(Key.L, ButtonState.Down, LiikuLäski, null, pelaaja3, 18.0); 
     1518            Keyboard.Listen(Key.I, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja3, hyppyVoima); 
     1519 
     1520            ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja1, -18.0); 
     1521            ControllerOne.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja1, 18.0); 
     1522            ControllerOne.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja1, hyppyVoima); 
     1523 
     1524            ControllerTwo.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja2, -18.0); 
     1525            ControllerTwo.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja2, 18.0); 
     1526            ControllerTwo.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja2, hyppyVoima); 
     1527 
     1528            ControllerThree.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja3, -18.0); 
     1529            ControllerThree.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja3, 18.0); 
     1530            ControllerThree.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja3, hyppyVoima); 
     1531 
     1532            ControllerFour.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja4, -18.0); 
     1533            ControllerFour.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja4, 18.0); 
     1534            ControllerFour.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja4, hyppyVoima); 
    7041535        } 
    7051536    } 
     
    7281559        Add(DownReuna); 
    7291560    } 
     1561    void Kahdenpelaajanpeli() 
     1562    { 
     1563        pelaajamaara = 2; 
     1564        Pelimodikentta(); 
     1565    } 
     1566 
     1567    void KahdenpelaajanYP() 
     1568    { 
     1569        pelaajamaara = 2; 
     1570        YP = true; 
     1571        seuraavaKentta(); 
     1572        //MediaPlayer.Play("E Api"); 
     1573    } 
     1574 
     1575    void KahdenpelaajanKP() 
     1576    { 
     1577        pelaajamaara = 2; 
     1578        YP = false; 
     1579        seuraavaKentta(); 
     1580        //MediaPlayer.Play("E Api"); 
     1581    } 
    7301582 
    7311583    void Kolmenpelaajanpeli() 
    7321584    { 
    733         Kolmepelaajaa = true; 
     1585        pelaajamaara = 3; 
     1586        Pelimodikentta(); 
     1587    } 
     1588 
     1589    void KolmenpelaajanYP() 
     1590    { 
     1591        pelaajamaara = 3; 
     1592        YP = true; 
    7341593        seuraavaKentta(); 
    735         MediaPlayer.Play("E Api"); 
     1594        //MediaPlayer.Play("E Api"); 
     1595    } 
     1596 
     1597    void KolmenpelaajanKP() 
     1598    { 
     1599        pelaajamaara = 3; 
     1600        YP = false; 
     1601        seuraavaKentta(); 
     1602        //MediaPlayer.Play("E Api"); 
    7361603    } 
    7371604 
    7381605    void Neljanpelaajanpeli() 
    7391606    { 
    740         Neljapelaajaa = true; 
     1607        pelaajamaara = 4; 
     1608        Pelimodikentta(); 
     1609    } 
     1610 
     1611    void NeljanpelaajanYP() 
     1612    { 
     1613        pelaajamaara = 4; 
     1614        YP = true; 
    7411615        seuraavaKentta(); 
    742         MediaPlayer.Play("E Api"); 
    743     } 
    744  
    745     void Kahdenpelaajanpeli() 
    746     { 
    747         Kaksipelaajaa = true; 
     1616        //MediaPlayer.Play("E Api"); 
     1617    } 
     1618 
     1619    void NeljanpelaajanKP() 
     1620    { 
     1621        pelaajamaara = 4; 
     1622        YP = false; 
    7481623        seuraavaKentta(); 
    749         MediaPlayer.Play("E Api"); 
     1624        //MediaPlayer.Play("E Api"); 
     1625    } 
     1626 
     1627    void jokuvoitti() 
     1628    { 
     1629        seuraavaKentta(); 
     1630        ClearAll(); 
     1631        pelaajamaara = 0; 
     1632        voitto(); 
     1633        aikaLaskuri2.Start(); 
     1634    } 
     1635 
     1636    void NaytaKorkeus(Timer sender) 
     1637    { 
     1638        korkeus = Math.Round((aloituspaikka.Y + korkein + 29932), 0); 
     1639        mittari.Text = "Korkeus: " + korkeus; 
     1640        mittari.X = 0; 
     1641        mittari.Y = Screen.Top - 100; 
     1642    } 
     1643 
     1644    void LiikuLäski(PhysicsObject SJpelaaja, double nopeus) 
     1645    { 
     1646        SJpelaaja.Velocity += Vector.FromLengthAndAngle(nopeus, SJpelaaja.Angle); 
    7501647    } 
    7511648 
     
    7531650    { 
    7541651        PlatformCharacter highest = pelaaja1; 
    755         if (pelaaja2.Y > highest.Y) highest = pelaaja2; 
     1652        if (pelaaja2 != null && pelaaja2.Y > highest.Y) highest = pelaaja2; 
    7561653        if (pelaaja3 != null && pelaaja3.Y > highest.Y) highest = pelaaja3; 
    7571654        if (pelaaja4 != null && pelaaja4.Y > highest.Y) highest = pelaaja4; 
    7581655 
     1656        korkein = highest.Y; 
     1657 
    7591658        Camera.Follow(highest); 
    760         /* 
    761         PlatformCharacter eloOlio; 
    762         int elossa = 0; 
    763         if (!pelaaja1.IsDestroyed()) 
    764         {  
    765             elossa++; 
    766             eloOlio = pelaaja1; 
    767         } 
    768         if (!pelaaja2.IsDestroyed()) elossa++; 
    769         { 
    770             elossa++; 
    771             eloOlio = pelaaja2; 
    772         } 
    773         if (pelaaja3 != null && !pelaaja3.IsDestroyed()) elossa++; 
    774         { 
    775             elossa++; 
    776             eloOlio = pelaaja3; 
    777         } 
    778         if (pelaaja4 != null && !pelaaja4.IsDestroyed()) elossa++; 
    779         { 
    780             elossa++; 
    781             eloOlio = pelaaja4; 
    782         } 
    783  
    784         if (elossa == 1) 
    785         { 
    786             seuraavaKentta(); 
    787             ClearAll(); 
    788             Kolmepelaajaa = false; 
    789             Kaksipelaajaa = false; 
    790             Neljapelaajaa = false; 
    791             if (eloOlio == pelaaja1) { voitto(1); } 
    792             if (eloOlio == pelaaja2) { voitto(2); } 
    793             if (eloOlio == pelaaja3) { voitto(3); } 
    794             if (eloOlio == pelaaja4) { voitto(4); } 
    795         }*/ 
    796          
    797         if (Kolmepelaajaa == true) 
    798         { 
    799  
    800             if (pelaaja3.IsDestroyed()) 
    801             { 
    802                 if (pelaaja2.IsDestroyed()) 
     1659        if (YP == true) 
     1660        { 
     1661            if (P1kupla != null && P1kupla.Y > highest.Y) 
     1662            { 
     1663                P1kupla.Velocity = new Vector(0.0, -50.0); 
     1664            } 
     1665            if (P1kupla != null && P1kupla.Y < highest.Y) 
     1666            { 
     1667                P1kupla.Velocity = new Vector(0.0, 50.0); 
     1668            } 
     1669            if (P2kupla != null && P2kupla.Y > highest.Y) 
     1670            { 
     1671                P2kupla.Velocity = new Vector(0.0, -50.0); 
     1672            } 
     1673            if (P2kupla != null && P2kupla.Y < highest.Y) 
     1674            { 
     1675                P2kupla.Velocity = new Vector(0.0, 50.0); 
     1676            } 
     1677            if (P3kupla != null && P3kupla.Y > highest.Y) 
     1678            { 
     1679                P3kupla.Velocity = new Vector(0.0, -50.0); 
     1680            } 
     1681            if (P3kupla != null && P3kupla.Y < highest.Y) 
     1682            { 
     1683                P3kupla.Velocity = new Vector(0.0, 50.0); 
     1684            } 
     1685            if (P4kupla != null && P4kupla.Y > highest.Y) 
     1686            { 
     1687                P4kupla.Velocity = new Vector(0.0, -50.0); 
     1688            } 
     1689            if (P4kupla != null && P4kupla.Y < highest.Y) 
     1690            { 
     1691                P4kupla.Velocity = new Vector(0.0, 50.0); 
     1692            } 
     1693        } 
     1694 
     1695        if (pelaajamaara == 3 && YP == true && PeliKäynnissä == true) 
     1696        { 
     1697            if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja3.IsDestroyed()) 
     1698            { 
     1699                aikaLaskuri3.Start(); 
     1700            } 
     1701        } 
     1702        else if (pelaajamaara == 3 && YP == false && PeliKäynnissä == true) 
     1703        { 
     1704 
     1705            if (pelaaja3.IsDestroyed() && pelaaja2.IsDestroyed()) 
     1706            { 
     1707                pelaajan1pisteet.Value++; 
     1708                if (pelaajan1pisteet >= KPPisteraja) 
    8031709                { 
    804                     pelaajan1pisteet.Value++; 
    805                     if (pelaajan1pisteet >= 7) 
    806                     { 
    807                         seuraavaKentta(); 
    808                         ClearAll(); 
    809                         Kolmepelaajaa = false; 
    810                         Kaksipelaajaa = false; 
    811                         Neljapelaajaa = false; 
    812                         p1SaiVoiton = true; 
    813                         pelaaja1voitti(); 
    814                         aikaLaskuri2.Start(); 
    815                     } 
    816                     else 
    817                     { 
    818                         seuraavaKentta(); 
    819                     } 
     1710                    p1SaiVoiton = true; 
     1711                    jokuvoitti(); 
    8201712                } 
    821                 if (pelaaja1.IsDestroyed()) 
     1713                else seuraavaKentta(); 
     1714 
     1715            } 
     1716            if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed()) 
     1717            { 
     1718                pelaajan3pisteet.Value++; 
     1719                if (pelaajan3pisteet >= KPPisteraja) 
    8221720                { 
    823                     pelaajan2pisteet.Value++; 
    824                     if (pelaajan2pisteet >= 7) 
    825                     { 
    826                         seuraavaKentta(); 
    827                         ClearAll(); 
    828                         Kolmepelaajaa = false; 
    829                         Kaksipelaajaa = false; 
    830                         Neljapelaajaa = false; 
    831                         p2SaiVoiton = true; 
    832                         pelaaja2voitti(); 
    833                         aikaLaskuri2.Start(); 
    834                     } 
    835                     else 
    836                     { 
    837                     seuraavaKentta(); 
    838                     } 
     1721                    p3SaiVoiton = true; 
     1722                    jokuvoitti(); 
    8391723                } 
    840             } 
     1724                else seuraavaKentta(); 
     1725 
     1726            } 
     1727            if (pelaaja1.IsDestroyed() && pelaaja3.IsDestroyed()) 
     1728            { 
     1729                pelaajan2pisteet.Value++; 
     1730                if (pelaajan2pisteet >= KPPisteraja) 
     1731                { 
     1732                    p2SaiVoiton = true; 
     1733                    jokuvoitti(); 
     1734                } 
     1735                else seuraavaKentta(); 
     1736            } 
     1737        } 
     1738        if (pelaajamaara == 4 && YP == true && PeliKäynnissä == true) 
     1739        { 
     1740            if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja3.IsDestroyed() && pelaaja4.IsDestroyed()) 
     1741            { 
     1742                aikaLaskuri3.Start(); 
     1743            } 
     1744        } 
     1745        else if (pelaajamaara == 4 && YP == false && PeliKäynnissä == true) 
     1746        { 
     1747            if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja3.IsDestroyed()) 
     1748            { 
     1749                pelaajan4pisteet.Value++; 
     1750                if (pelaajan4pisteet >= KPPisteraja) 
     1751                { 
     1752                    p4SaiVoiton = true; 
     1753                    jokuvoitti(); 
     1754                } 
     1755                else seuraavaKentta(); 
     1756            } 
     1757            if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja4.IsDestroyed()) 
     1758            { 
     1759                pelaajan3pisteet.Value++; 
     1760                if (pelaajan3pisteet >= KPPisteraja) 
     1761                { 
     1762                    p3SaiVoiton = true; 
     1763                    jokuvoitti(); 
     1764                } 
     1765                else seuraavaKentta(); 
     1766            } 
     1767            if (pelaaja1.IsDestroyed() && pelaaja4.IsDestroyed() && pelaaja3.IsDestroyed()) 
     1768            { 
     1769                pelaajan2pisteet.Value++; 
     1770                if (pelaajan2pisteet >= KPPisteraja) 
     1771                { 
     1772                    p2SaiVoiton = true; 
     1773                    jokuvoitti(); 
     1774                } 
     1775                else seuraavaKentta(); 
     1776            } 
     1777            if (pelaaja4.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja3.IsDestroyed()) 
     1778            { 
     1779                pelaajan1pisteet.Value++; 
     1780                if (pelaajan1pisteet >= KPPisteraja) 
     1781                { 
     1782                    p1SaiVoiton = true; 
     1783                    jokuvoitti(); 
     1784                } 
     1785                else seuraavaKentta(); 
     1786            } 
     1787        } 
     1788 
     1789        if (pelaajamaara == 2 && YP == true && PeliKäynnissä == true) 
     1790        { 
     1791            if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed()) 
     1792            { 
     1793                aikaLaskuri3.Start(); 
     1794            } 
     1795        } 
     1796        else if (pelaajamaara == 2 && YP == false && PeliKäynnissä == true) 
     1797        { 
     1798            if (pelaaja2.IsDestroyed()) 
     1799            { 
     1800                pelaajan1pisteet.Value++; 
     1801                if (pelaajan1pisteet >= KPPisteraja) 
     1802                { 
     1803                    p1SaiVoiton = true; 
     1804                    jokuvoitti(); 
     1805                } 
     1806                else seuraavaKentta(); 
     1807            } 
     1808 
    8411809            if (pelaaja1.IsDestroyed()) 
    8421810            { 
    843                 if (pelaaja2.IsDestroyed()) 
     1811 
     1812                pelaajan2pisteet.Value++; 
     1813                if (pelaajan2pisteet >= KPPisteraja) 
    8441814                { 
    845                     pelaajan3pisteet.Value++; 
    846                     if (pelaajan3pisteet >= 7) 
    847                     { 
    848                         seuraavaKentta(); 
    849                         ClearAll(); 
    850                         Kolmepelaajaa = false; 
    851                         Kaksipelaajaa = false; 
    852                         Neljapelaajaa = false; 
    853                         p3SaiVoiton = true; 
    854                         pelaaja3voitti(); 
    855                         aikaLaskuri2.Start(); 
    856                     } 
    857                     else 
    858                     { 
    859                         seuraavaKentta(); 
    860                     } 
     1815                    p2SaiVoiton = true; 
     1816                    jokuvoitti(); 
    8611817                } 
    862             } 
    863         } 
    864         if (Neljapelaajaa == true) 
    865         { 
    866             if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja3.IsDestroyed()) 
    867             { 
    868                         pelaajan4pisteet.Value++; 
    869                         if (pelaajan4pisteet >= 7) 
    870                         { 
    871                             seuraavaKentta(); 
    872                             ClearAll(); 
    873                             Kolmepelaajaa = false; 
    874                             Kaksipelaajaa = false; 
    875                             Neljapelaajaa = false; 
    876                             p4SaiVoiton = true; 
    877                             pelaaja4voitti(); 
    878                             aikaLaskuri2.Start(); 
    879                         } 
    880                         else 
    881                         { 
    882                             seuraavaKentta(); 
    883                         } 
    884                     } 
    885             if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja4.IsDestroyed()) 
    886             { 
    887                 pelaajan3pisteet.Value++; 
    888                 if (pelaajan3pisteet >= 7) 
    889                 { 
    890                     seuraavaKentta(); 
    891                     ClearAll(); 
    892                     Kolmepelaajaa = false; 
    893                     Kaksipelaajaa = false; 
    894                     Neljapelaajaa = false; 
    895                     p3SaiVoiton = true; 
    896                     pelaaja3voitti(); 
    897                     aikaLaskuri2.Start(); 
    898                 } 
    899                 else 
    900                 { 
    901                     seuraavaKentta(); 
    902                 } 
    903             } 
    904             if (pelaaja1.IsDestroyed() && pelaaja4.IsDestroyed() && pelaaja3.IsDestroyed()) 
    905             { 
    906                 pelaajan2pisteet.Value++; 
    907                 if (pelaajan2pisteet >= 7) 
    908                 { 
    909                     seuraavaKentta(); 
    910                     ClearAll(); 
    911                     Kolmepelaajaa = false; 
    912                     Kaksipelaajaa = false; 
    913                     Neljapelaajaa = false; 
    914                     p2SaiVoiton = true; 
    915                     pelaaja2voitti(); 
    916                     aikaLaskuri2.Start(); 
    917                 } 
    918                 else 
    919                 { 
    920                     seuraavaKentta(); 
    921                 } 
    922             } 
    923             if (pelaaja4.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja3.IsDestroyed()) 
    924             { 
    925                 pelaajan1pisteet.Value++; 
    926                 if (pelaajan1pisteet >= 7) 
    927                 { 
    928                     seuraavaKentta(); 
    929                     ClearAll(); 
    930                     Kolmepelaajaa = false; 
    931                     Kaksipelaajaa = false; 
    932                     Neljapelaajaa = false; 
    933                     p1SaiVoiton = true; 
    934                     pelaaja1voitti(); 
    935                     aikaLaskuri2.Start(); 
    936                 } 
    937                 else 
    938                 { 
    939                     seuraavaKentta(); 
    940                 } 
    941             } 
    942         } 
    943  
    944         if (Kaksipelaajaa == false && Kolmepelaajaa == false && Neljapelaajaa == false) 
    945         { 
    946                     if (pelaaja1.Y > pelaaja2.Y) 
    947                     { 
    948                         Camera.Follow(pelaaja1); 
    949                     } 
    950                     else 
    951                     { 
    952                         Camera.Follow(pelaaja2); 
    953                     } 
    954         } 
    955          
    956         if (Kaksipelaajaa == true) 
    957         { 
    958                     if (pelaaja2.IsDestroyed()) 
    959                     { 
    960                         pelaajan1pisteet.Value++; 
    961                         if (pelaajan1pisteet >= 7) 
    962                         { 
    963                             seuraavaKentta(); 
    964                             ClearAll(); 
    965                             Kolmepelaajaa = false; 
    966                             Kaksipelaajaa = false; 
    967                             Neljapelaajaa = false; 
    968                             p1SaiVoiton = true; 
    969                             pelaaja1voitti(); 
    970                             aikaLaskuri2.Start(); 
    971                         } 
    972                         else 
    973                         { 
    974                             seuraavaKentta(); 
    975                         } 
    976                     } 
    977  
    978                     if (pelaaja1.IsDestroyed()) 
    979                     { 
    980  
    981                         pelaajan2pisteet.Value++; 
    982                         if (pelaajan2pisteet >= 7) 
    983                         { 
    984                             seuraavaKentta(); 
    985                             ClearAll(); 
    986                             Kolmepelaajaa = false; 
    987                             Kaksipelaajaa = false; 
    988                             Neljapelaajaa = false; 
    989                             p2SaiVoiton = true; 
    990                             pelaaja2voitti(); 
    991                             aikaLaskuri2.Start(); 
    992                         } 
    993                         else 
    994                         { 
    995                             seuraavaKentta(); 
    996                         } 
    997                     } 
    998                     /*if (pelaaja1.Y > pelaaja2.Y) 
    999                     { 
    1000                         Camera.Follow(pelaaja1); 
    1001                     } 
    1002                     else 
    1003                     { 
    1004                         Camera.Follow(pelaaja2); 
    1005                     } 
    1006                      */  
    1007         } 
    1008          
     1818                else seuraavaKentta(); 
     1819            } 
     1820        } 
     1821 
    10091822        // Tämä pitää huolen siitä, että kun kamera menee ylöspäin, niin kameran 
    10101823        // alapuolella olevat asiat tuhoutuvat. 
  • 2010/24/Vilvaini/SmilejumpToimiva/Smile Jump.csproj

    r1021 r1248  
    5757  </PropertyGroup> 
    5858  <ItemGroup> 
    59     <Reference Include="Jypeli2, Version=2.2.0.0, Culture=neutral, processorArchitecture=x86"> 
     59    <Reference Include="Jypeli2, Version=2.2.2.0, Culture=neutral, processorArchitecture=x86"> 
    6060      <SpecificVersion>False</SpecificVersion> 
    6161      <HintPath>..\..\..\..\..\..\lib\Jypeli2.dll</HintPath> 
  • 2010/24/Vilvaini/SmilejumpToimiva/Smile Jump.csproj.Debug.cachefile

    r1024 r1248  
    22Content\smile jump(keltainen pelaaja) (2).xnb 
    33Content\smile jump(vihollinen) (2).xnb 
    4 Content\Smile Jump(trampoliini-laatta).xnb 
    54Content\Smile Jump(laatta).xnb 
    65Content\smile jump(sininen pelaaja).xnb 
     
    1514Content\E Api.xnb 
    1615Content\Menu.xnb 
     16Content\SJvalikko.xnb 
     17Content\SJ2pohjeet.xnb 
     18Content\SJ3pohjeet.xnb 
     19Content\SJ4pohjeet.xnb 
     20Content\P1bubble.xnb 
     21Content\P2bubble.xnb 
     22Content\P3bubble.xnb 
     23Content\P4bubble.xnb 
     24Content\SJYPloppu.xnb 
     25Content\SJYPloppu2.xnb 
     26Content\SJohjeet.xnb 
     27Content\SJparhaatpisteet.xnb 
     28Content\SJpelaajamaara.xnb 
     29Content\SJpelimodi.xnb 
     30Content\SJpÀÀvalikko.xnb 
     31Content\SJtyhjÀ.xnb 
     32Content\NappiAloitapeli.xnb 
     33Content\NappiAloitapeli2.xnb 
     34Content\NappiOhjeet.xnb 
     35Content\NappiOhjeet2.xnb 
     36Content\NappiPisteet.xnb 
     37Content\NappiPisteet2.xnb 
     38Content\NappiPoistu.xnb 
     39Content\NappiPoistu2.xnb 
     40Content\NappiKaksinpeli.xnb 
     41Content\NappiKaksinpeli2.xnb 
     42Content\NappiKolminpeli.xnb 
     43Content\NappiKolminpeli2.xnb 
     44Content\NappiKP.xnb 
     45Content\NappiKP2.xnb 
     46Content\NappiNelinpeli.xnb 
     47Content\NappiNelinpeli2.xnb 
     48Content\NappiPÀÀvalikkoon.xnb 
     49Content\NappiPÀÀvalikkoon2.xnb 
     50Content\NappiYP.xnb 
     51Content\NappiYP2.xnb 
     52Content\SJeitoimi.xnb 
    1753Content\E Api.wma 
    1854Content\Menu.wma 
  • 2010/24/Vilvaini/SmilejumpToimiva/bin/x86/Debug/Jypeli2.xml

    r1021 r1248  
    55    </assembly> 
    66    <members> 
    7         <member name="T:Jypeli.Drawing"> 
    8             <summary> 
    9             Piirtofunktioita. 
    10             </summary> 
    11         </member> 
    12         <member name="F:Jypeli.Drawing.beginHasBeenCalled"> 
    13             <summary> 
    14             For error checking. 
    15             </summary> 
    16         </member> 
    17         <member name="M:Jypeli.Drawing.#ctor(Jypeli.Game)"> 
    18             <summary> 
    19             Alustaa uuden piirtoluokan. 
    20             </summary> 
    21             <param name="game">Peli.</param> 
    22         </member> 
    23         <member name="M:Jypeli.Drawing.Initialize(Jypeli.View)"> 
    24             <summary> 
    25             Alustaa piirtÀmisen tietylle nÀkymÀlle. 
    26             Kutsutaan pelin alussa, yleensÀ vain kerran. 
    27             </summary> 
    28             <param name="view">The view.</param> 
    29         </member> 
    30         <member name="M:Jypeli.Drawing.Dispose"> 
    31             <summary> 
    32             Vapauttaa olion varaamat resurssit sen tuhoutuessa. 
    33             </summary> 
    34         </member> 
    35         <member name="M:Jypeli.Drawing.Begin"> 
    36             <summary> 
    37             Kutsutaan, kun aloitetaan piirtÀminen. PiirtÀmisen jÀlkeen tulee kutsua metodia <c>End</c>. 
    38             </summary> 
    39         </member> 
    40         <member name="M:Jypeli.Drawing.BeginScreen"> 
    41             <summary> 
    42             Kutsutaan, kun aloitetaan piirtÀmÀÀn ruutukoordinaateissa. PiirtÀmisen jÀlkeen tulee kutsua metodia <c>End</c>. 
    43             </summary> 
    44         </member> 
    45         <member name="M:Jypeli.Drawing.End"> 
    46             <summary> 
    47             Kutsutaan, kun lopetetaan piirtÀminen. Voidaan kutsua ainoastaan Begin:in jÀlkeen. 
    48             </summary> 
    49         </member> 
    50         <member name="M:Jypeli.Drawing.DrawText(System.String,Microsoft.Xna.Framework.Graphics.SpriteFont,Jypeli.Vector,Jypeli.Color)"> 
    51             <summary> 
    52             PiirtÀÀ tekstiÀ ruudulle. 
    53             </summary> 
    54             <param name="text">PiirrettÀvÀ teksti.</param> 
    55             <param name="font">Fontti, jota kÀytetÀÀn.</param> 
    56             <param name="position">Paikka maailmankoordinaateissa.</param> 
    57             <param name="color">VÀri, jota kÀytetÀÀn.</param> 
    58         </member> 
    59         <member name="M:Jypeli.Drawing.DrawText(System.String,Microsoft.Xna.Framework.Graphics.SpriteFont,Jypeli.Vector,Jypeli.Vector,Jypeli.Color)"> 
    60             <summary> 
    61             PiirtÀÀ tekstiÀ ruudulle. 
    62             </summary> 
    63             <param name="text">PiirrettÀvÀ teksti.</param> 
    64             <param name="font">Fontti, jota kÀytetÀÀn.</param> 
    65             <param name="position">Paikka maailmankoordinaateissa.</param> 
    66             <param name="origo">Tekstin keskipiste (0,0 on keskellÀ).</param> 
    67             <param name="color">VÀri, jota kÀytetÀÀn.</param> 
    68         </member> 
    69         <member name="M:Jypeli.Drawing.DrawTextOnImage(System.String,Microsoft.Xna.Framework.Graphics.SpriteBatch,Microsoft.Xna.Framework.Graphics.SpriteFont,Jypeli.Color,Jypeli.Color)"> 
    70             <summary> 
    71             PiirtÀÀ tekstiÀ kuvan pÀÀlle. 
    72             </summary> 
    73             <param name="text">PiirrettÀvÀ teksti.</param> 
    74             <param name="spriteBatch">Spritebatch, jolla piirretÀÀn.</param> 
    75             <param name="font">Fontti, jota kÀytetÀÀn.</param> 
    76             <param name="textColor">Tekstin vÀri.</param> 
    77             <param name="bgColor">Tekstin taustavÀri.</param> 
    78             <returns></returns> 
    79         </member> 
    80         <member name="M:Jypeli.Drawing.DrawImage(Jypeli.Image,Jypeli.Vector,Jypeli.Vector,Jypeli.Angle)"> 
    81             <summary> 
    82             PiirtÀÀ kuvan ruudulle. 
    83             </summary> 
    84             <param name="image">Kuva.</param> 
    85             <param name="position">Paikka maailmankoordinaatistossa.</param> 
    86             <param name="size">Kuvan koko.</param> 
    87             <param name="angle">Kuvan kÀÀntökulma.</param> 
    88         </member> 
    89         <member name="M:Jypeli.Drawing.DrawImage(Jypeli.Image,Jypeli.Vector,Jypeli.Vector,Jypeli.Angle,Jypeli.Vector)"> 
    90             <summary> 
    91             PiirtÀÀ kuvan ruudulle. 
    92             Voi piirtÀÀ tekstuurin myös useaan kertaan perÀkkÀin. 
    93             </summary> 
    94             <param name="image">Kuva.</param> 
    95             <param name="position">Paikka maailmankoordinaatistossa.</param> 
    96             <param name="size">Kuvan koko.</param> 
    97             <param name="angle">Kuvan kÀÀntökulma.</param> 
    98             <param name="wrapSize">Kuinka monta kertaa Kuva piirretÀÀn perÀkkÀin.</param> 
    99         </member> 
    100         <member name="M:Jypeli.Drawing.DrawImage(Jypeli.Image,Jypeli.Vector,Jypeli.Vector,Jypeli.Angle,Jypeli.Vector,System.Single)"> 
    101             <summary> 
    102             PiirtÀÀ kuvan ruudulle lÀpinÀkyvyydellÀ 
    103             Voi piirtÀÀ tekstuurin myös useaan kertaan perÀkkÀin 
    104             </summary> 
    105             <param name="image">Kuva</param> 
    106             <param name="position">Paikka maailmankoordinaatistossa</param> 
    107             <param name="size">Kuvan koko</param> 
    108             <param name="angle">Kuvan kÀÀntökulma</param> 
    109             <param name="wrapSize">Kuinka monta kertaa Kuva piirretÀÀn perÀkkÀin</param> 
    110             <param name="alpha">LÀpinÀkyvyys</param> 
    111         </member> 
    112         <member name="M:Jypeli.Drawing.DrawShape(Jypeli.Shape,Jypeli.Vector,Jypeli.Vector,Jypeli.Angle,Jypeli.Image,Jypeli.Vector,Jypeli.Vector,Jypeli.Color)"> 
    113             <summary> 
    114             PiirtÀÀ kuvion niin, ettÀ tekstuuri tÀyttÀÀ sen. 
    115             </summary> 
    116         </member> 
    117         <member name="M:Jypeli.Drawing.DrawShape(Jypeli.Shape,Jypeli.Vector,Jypeli.Vector,Jypeli.Angle,Jypeli.Color)"> 
    118             <summary> 
    119             PiirtÀÀ kuvion, joka on vÀritetty vÀrillÀ <code>color</code>. 
    120             </summary> 
    121         </member> 
    122         <member name="M:Jypeli.Drawing.DrawPolygon(Jypeli.Vector[],Jypeli.Vector,Jypeli.Vector,Jypeli.Angle,Jypeli.Color)"> 
    123             <summary> 
    124             PiirtÀÀ vertices-taulukon muodostaman monikulmion. 
    125             </summary> 
    126         </member> 
    127         <member name="M:Jypeli.Drawing.DrawRectangle(Jypeli.Vector,Jypeli.Vector,Jypeli.Angle,Jypeli.Color)"> 
    128             <summary> 
    129             PiirtÀÀ suorakulmion. 
    130             </summary> 
    131             <param name="position">Sijainti.</param> 
    132             <param name="size">Koko.</param> 
    133             <param name="angle">Kulma.</param> 
    134             <param name="color">Reunan vÀri.</param> 
    135         </member> 
    136         <member name="M:Jypeli.Drawing.DrawFilledRectangle(Jypeli.Vector,Jypeli.Vector,Jypeli.Angle,Jypeli.Color)"> 
    137             <summary> 
    138             PiirtÀÀ tÀytetyn suorakulmion. 
    139             </summary> 
    140             <param name="position">Sijainti.</param> 
    141             <param name="size">Koko.</param> 
    142             <param name="angle">Kulma.</param> 
    143             <param name="color">Suorakulmion vÀri.</param> 
    144         </member> 
    145         <member name="M:Jypeli.Drawing.CreateWorldMatrix"> 
    146             <summary> 
    147             Rakentaa maailmanmatriisin (vastaa muunnoksesta maailmankoordinaatiston ja 
    148             ruutukoordinaatiston vÀlillÀ). 
    149             </summary> 
    150             <returns></returns> 
    151         </member> 
    152         <member name="T:Physics2DDotNet.Shapes.PolygonShape"> 
    153             <summary> 
    154             Use this to Represent a Polygon in the engine 
    155             </summary> 
    156         </member> 
    157         <member name="P:Physics2DDotNet.Shapes.IShape.VertexNormals"> 
    158             <summary> 
    159             These are the normals for the original vertexes. 
    160             </summary> 
    161         </member> 
    162         <!-- Badly formed XML comment ignored for member "M:Physics2DDotNet.Shapes.PolygonShape.#ctor(AdvanceMath.Vector2D[],System.Double)" --> 
    163         <member name="M:Physics2DDotNet.Shapes.PolygonShape.#ctor(AdvanceMath.Vector2D[],System.Double,System.Double)"> 
    164             <summary> 
    165             Creates a new Polygon Instance. 
    166             </summary> 
    167             <param name="vertexes">the vertexes that make up the shape of the Polygon</param> 
    168             <param name="gridSpacing"> 
    169             How large a grid cell is. Usualy you will want at least 2 cells between major vertexes. 
    170             The smaller this is the better precision you get, but higher cost in memory.  
    171             The larger the less precision and if it's to high collision detection may fail completely. 
    172             </param> 
    173             <param name="momentOfInertiaMultiplier"> 
    174             How hard it is to turn the shape. Depending on the construtor in the  
    175             Body this will be multiplied with the mass to determine the moment of inertia. 
    176             </param> 
     7        <member name="T:Jypeli.Level"> 
     8            <summary> 
     9            PelikenttÀ, johon voi lisÀtÀ olioita. KentÀllÀ voi myös olla reunat ja taustavÀri tai taustakuva. 
     10            </summary> 
     11        </member> 
     12        <member name="F:Jypeli.Level.Center"> 
     13            <summary> 
     14            KentÀn keskipiste. 
     15            </summary> 
     16        </member> 
     17        <member name="M:Jypeli.Level.CreateBorders"> 
     18            <summary> 
     19            LisÀÀ kaikille kentÀn sivuille reunat, joihin oliot voivat törmÀtÀ. 
     20            </summary> 
     21        </member> 
     22        <member name="M:Jypeli.Level.CreateBorders(System.Boolean)"> 
     23            <summary> 
     24            LisÀÀ kaikille kentÀn sivuille reunat, joihin oliot voivat törmÀtÀ. 
     25            </summary> 
     26            <param name="isVisible">Reunan nÀkyvyys <c>true</c>, jos nÀkyvÀt reunat, muuten <c>false</c>.</param> 
     27        </member> 
     28        <member name="M:Jypeli.Level.CreateBorders(System.Double,System.Boolean)"> 
     29            <summary> 
     30            LisÀÀ kaikille kentÀn sivuille reunat, joihin oliot voivat törmÀtÀ. 
     31            </summary> 
     32            <param name="restitution">Reunojen kimmoisuus (0.0 = pysÀyttÀÀ, 1.0 = kimpoaa tÀydellÀ voimalla)</param> 
     33            <param name="isVisible">Reunan nÀkyvyys <c>true</c>, jos nÀkyvÀt reunat, muuten <c>false</c>.</param> 
     34        </member> 
     35        <member name="M:Jypeli.Level.CreateLeftBorder"> 
     36            <summary> 
     37            LisÀÀ kenttÀÀn vasemman reunan. 
     38            </summary> 
     39            <returns>Uusi reuna.</returns> 
     40        </member> 
     41        <member name="M:Jypeli.Level.CreateRightBorder"> 
     42            <summary> 
     43            LisÀÀ kenttÀÀn oikean reunan. 
     44            </summary> 
     45            <returns>Uusi reuna.</returns> 
     46        </member> 
     47        <member name="M:Jypeli.Level.CreateTopBorder"> 
     48            <summary> 
     49            LisÀÀ kenttÀÀn ylÀreunan. 
     50            </summary> 
     51            <returns>Uusi reuna.</returns> 
     52        </member> 
     53        <member name="M:Jypeli.Level.CreateBottomBorder"> 
     54            <summary> 
     55            LisÀÀ kenttÀÀn alareunan. 
     56            </summary> 
     57            <returns>Uusi reuna.</returns> 
     58        </member> 
     59        <member name="M:Jypeli.Level.CreateGround(System.Double[],System.Double)"> 
     60            <summary> 
     61            Helppo tapa lisÀtÀ kenttÀÀn epÀtasainen maasto. 
     62            Maasto kuvataan luettelemalla Y-koordinaatteja vasemmalta oikealle lukien. Kahden Y-koordinaatin 
     63            vÀli on aina sama. 
     64            </summary> 
     65            <param name="heights">Y-koordinaatit lueteltuna vasemmalta oikealle.</param> 
     66            <param name="scale">Vakio, jolla jokainen Y-koordinaatti kerrotaan. Hyödyllinen, 
     67            jos halutaan muuttaa koko maaston korkeutta muuttamatta jokaista pistettÀ yksitellen. 
     68            Tavallisesti arvoksi kelpaa 1.0.</param> 
     69            <remarks> 
     70            Huomaa, ettÀ maastossa ei voi olla kahta pistettÀ pÀÀllekkÀin. 
     71            </remarks> 
     72        </member> 
     73        <member name="M:Jypeli.Level.CreateGround(System.Double[],System.Double,Jypeli.Image)"> 
     74            <summary> 
     75            Helppo tapa lisÀtÀ kenttÀÀn epÀtasainen maasto. 
     76            Maasto kuvataan luettelemalla Y-koordinaatteja vasemmalta oikealle lukien. Kahden Y-koordinaatin 
     77            vÀli on aina sama. 
     78            </summary> 
     79            <param name="heights">Y-koordinaatit lueteltuna vasemmalta oikealle.</param> 
     80            <param name="scale">Vakio, jolla jokainen Y-koordinaatti kerrotaan. Hyödyllinen, 
     81            jos halutaan muuttaa koko maaston korkeutta muuttamatta jokaista pistettÀ yksitellen. 
     82            Tavallisesti arvoksi kelpaa 1.0.</param> 
     83            <param name="image">Maastossa kÀytettÀvÀ kuva.</param> 
     84            <returns></returns> 
     85        </member> 
     86        <member name="M:Jypeli.Level.CreateGround(System.Double,System.Double,System.Int32)"> 
     87            <summary> 
     88            Luo satunnaisen maaston. 
     89            </summary> 
     90            <param name="min">Matalin kohta.</param> 
     91            <param name="max">Korkein kohta.</param> 
     92            <param name="points">Pisteiden mÀÀrÀ.</param> 
     93        </member> 
     94        <member name="M:Jypeli.Level.CreateGround(System.Double,System.Double,System.Int32,Jypeli.Color)"> 
     95            <summary> 
     96            Luo satunnaisen maaston. 
     97            </summary> 
     98            <param name="min">Matalin kohta.</param> 
     99            <param name="max">Korkein kohta.</param> 
     100            <param name="points">Pisteiden mÀÀrÀ.</param> 
     101            <param name="color">Maaston vÀri.</param> 
     102            <returns></returns> 
     103        </member> 
     104        <member name="M:Jypeli.Level.CreateGround(System.Double,System.Double,System.Int32,Jypeli.Image)"> 
     105            <summary> 
     106            Luo satunnaisen maaston. 
     107            </summary> 
     108            <param name="min">Matalin kohta.</param> 
     109            <param name="max">Korkein kohta.</param> 
     110            <param name="points">Pisteiden mÀÀrÀ.</param> 
     111            <param name="image">Maaston kuva.</param> 
     112            <returns></returns> 
     113        </member> 
     114        <member name="M:Jypeli.Level.CreateGround(System.Double,System.Double,System.Int32,Jypeli.Color,Jypeli.Image)"> 
     115            <summary> 
     116            Luo satunnaisen maaston. 
     117            </summary> 
     118            <param name="min">Matalin kohta.</param> 
     119            <param name="max">Korkein kohta.</param> 
     120            <param name="points">Pisteiden mÀÀrÀ.</param> 
     121            <param name="color">Maaston vÀri.</param> 
     122            <param name="image">Maaston kuva.</param> 
     123            <returns></returns> 
     124        </member> 
     125        <member name="M:Jypeli.Level.CreateGround(System.Double,System.Double,System.Int32,System.Int32)"> 
     126            <summary> 
     127            Luo satunnaisen maaston. 
     128            </summary> 
     129            <param name="min">Matalin kohta.</param> 
     130            <param name="max">Korkein kohta.</param> 
     131            <param name="points">Pisteiden mÀÀrÀ.</param> 
     132            <param name="maxchange">Suurin sallittu muutos korkeudessa pisteiden vÀlillÀ.</param> 
     133        </member> 
     134        <member name="M:Jypeli.Level.CreateGround(System.Double,System.Double,System.Int32,Jypeli.Color,System.Int32)"> 
     135            <summary> 
     136            Luo satunnaisen maaston. 
     137            </summary> 
     138            <param name="min">Matalin kohta.</param> 
     139            <param name="max">Korkein kohta.</param> 
     140            <param name="points">Pisteiden mÀÀrÀ.</param> 
     141            <param name="color">Maaston vÀri.</param> 
     142            <param name="maxchange">Suurin sallittu erotus kahden pisteen vÀlillÀ.</param> 
     143            <returns></returns> 
     144        </member> 
     145        <member name="M:Jypeli.Level.CreateGround(System.Double,System.Double,System.Int32,Jypeli.Image,System.Int32)"> 
     146            <summary> 
     147            Luo satunnaisen maaston. 
     148            </summary> 
     149            <param name="min">Matalin kohta.</param> 
     150            <param name="max">Korkein kohta.</param> 
     151            <param name="points">Pisteiden mÀÀrÀ.</param> 
     152            <param name="image">Maaston kuva.</param> 
     153            <param name="maxchange">Suurin sallittu erotus kahden pisteen vÀlillÀ.</param> 
     154            <returns></returns> 
     155        </member> 
     156        <member name="M:Jypeli.Level.CreateGround(System.Double,System.Double,System.Int32,Jypeli.Color,Jypeli.Image,System.Int32)"> 
     157            <summary> 
     158            Luo satunnaisen maaston. 
     159            </summary> 
     160            <param name="min">Matalin kohta.</param> 
     161            <param name="max">Korkein kohta.</param> 
     162            <param name="points">Pisteiden mÀÀrÀ.</param> 
     163            <param name="color">Maaston vÀri.</param> 
     164            <param name="image">Maaston kuva.</param> 
     165            <param name="maxchange">Suurin sallittu erotus kahden pisteen vÀlillÀ.</param> 
     166            <returns></returns> 
     167        </member> 
     168        <member name="M:Jypeli.Level.GetRandomPosition"> 
     169            <summary> 
     170            Palauttaa satunnaisen kohdan kentÀn reunojen sisÀltÀ. 
     171            </summary> 
     172            <returns>Vektori.</returns> 
     173        </member> 
     174        <member name="P:Jypeli.Level.Objects"> 
     175            <summary> 
     176            KenttÀÀn kuuluvat oliot. 
     177            </summary> 
     178        </member> 
     179        <member name="P:Jypeli.Level.BackgroundColor"> 
     180            <summary> 
     181            KentÀn taustavÀri. 
     182            </summary> 
     183        </member> 
     184        <member name="P:Jypeli.Level.Background"> 
     185            <summary> 
     186            KentÀn taustakuva. 
     187            </summary> 
     188        </member> 
     189        <member name="P:Jypeli.Level.Width"> 
     190            <summary> 
     191            KentÀn leveys. 
     192            </summary> 
     193        </member> 
     194        <member name="P:Jypeli.Level.Height"> 
     195            <summary> 
     196            KentÀn korkeus. 
     197            </summary> 
     198        </member> 
     199        <member name="P:Jypeli.Level.Left"> 
     200            <summary> 
     201            KentÀn vasemman reunan x-koordinaatti. 
     202            </summary> 
     203        </member> 
     204        <member name="P:Jypeli.Level.Right"> 
     205            <summary> 
     206            KentÀn oikean reunan x-koordinaatti. 
     207            </summary> 
     208        </member> 
     209        <member name="P:Jypeli.Level.Top"> 
     210            <summary> 
     211            KentÀn ylÀreunan y-koordinaatti. 
     212            </summary> 
     213        </member> 
     214        <member name="P:Jypeli.Level.Bottom"> 
     215            <summary> 
     216            KentÀn alareunan y-koordinaatti. 
     217            </summary> 
     218        </member> 
     219        <member name="T:Jypeli.FrictionLogic"> 
     220            <summary> 
     221            Fysiikkalogiikkaluokka ylhÀÀltÀ pÀin kuvattuihin peleihin, joissa tarvitaan kitkaa. 
     222            </summary> 
    177223        </member> 
    178224        <member name="T:Physics2DDotNet.PhysicsLogics.PhysicsLogic"> 
     
    241287            </summary> 
    242288        </member> 
    243         <member name="T:Physics2DDotNet.Ignorers.GroupCollection"> 
    244             <summary> 
    245             A collection that stores ints that represent groups 
    246             </summary> 
    247         </member> 
    248         <member name="M:Physics2DDotNet.Ignorers.GroupCollection.Add(System.Int32)"> 
    249             <summary> 
    250             Trys to add a group. 
    251             </summary> 
    252             <param name="item">The group ID to add.</param> 
    253             <returns>false if the ignorer was already part of the group; otherwise false.</returns> 
    254         </member> 
    255         <member name="M:Physics2DDotNet.Ignorers.GroupCollection.AddRange(System.Int32[])"> 
    256             <summary> 
    257             adds an array of group ids. 
    258             </summary> 
    259             <param name="array">The array of group IDs. (this will be sorted)</param> 
    260             <returns>the number of IDs that were not already part of the group.</returns> 
    261         </member> 
    262         <member name="M:Physics2DDotNet.Ignorers.GroupCollection.Contains(System.Int32)"> 
    263             <summary> 
    264             returns true if the ignorer is part of the group. 
    265             </summary> 
    266             <param name="item">The group ID.</param> 
    267             <returns>true if the ignorer is part of the group; otherwise false.</returns> 
    268         </member> 
    269         <member name="M:Physics2DDotNet.Ignorers.GroupCollection.ContainsRange(System.Int32[])"> 
    270             <summary> 
    271             returns the number of groups in the array it is part of. 
    272             </summary> 
    273             <param name="array">The array of group IDs. (this will be sorted)</param> 
    274             <returns>The number of groups in the array it is part of.</returns> 
    275         </member> 
    276         <member name="M:Physics2DDotNet.Ignorers.GroupCollection.Remove(System.Int32)"> 
    277             <summary> 
    278             Trys to remove the ignorer from a group. 
    279             </summary> 
    280             <param name="item">The group ID.</param> 
    281             <returns>true if the ignore was part of the group; otherwise false.</returns> 
    282         </member> 
    283         <member name="M:Physics2DDotNet.Ignorers.GroupCollection.RemoveRange(System.Int32[])"> 
    284             <summary> 
    285             Trys to remove the ignorer from a range of groups. 
    286             </summary> 
    287             <param name="array">The array of group IDs. (this will be sorted)</param> 
    288             <returns>the number of groups the ignore was removed from.</returns> 
    289         </member> 
    290         <member name="M:Physics2DDotNet.Ignorers.GroupCollection.System#Collections#Generic#ICollection{System#Int32}#Add(System.Int32)"> 
    291             <summary> 
    292             returns if the 2 ignores are not part of the same group. 
    293             </summary> 
    294             <param name="other">the other CollisionGroupIgnorer</param> 
    295             <returns>true if they are not part of the same group; otherwiase false.</returns> 
    296         </member> 
    297         <member name="M:Physics2DDotNet.Ignorers.GroupCollection.Clear"> 
    298             <summary> 
    299             removes the ignorer from all groups. 
    300             </summary> 
    301         </member> 
    302         <member name="P:Physics2DDotNet.Ignorers.GroupCollection.Count"> 
    303             <summary> 
    304             Gets the number of collison Groups the ignorer is part of. 
    305             </summary> 
    306         </member> 
    307         <member name="T:Jypeli.StringHelper"> 
    308             <summary> 
    309             SisÀltÀÀ tekstinkÀsittelyyn tarkoitettuja apuohjelmia. 
    310             </summary> 
    311         </member> 
    312         <member name="M:Jypeli.StringHelper.WrapText(Microsoft.Xna.Framework.Graphics.SpriteFont,System.String,System.Double)"> 
    313             <summary> 
    314             RivittÀÀ tekstin. 
    315             </summary> 
    316             <remarks>Code from http://www.xnawiki.com/index.php/Basic_Word_Wrapping</remarks> 
    317             <param name="spriteFont">Fontti.</param> 
    318             <param name="text">RivitettÀvÀ teksti.</param> 
    319             <param name="maxLineWidth">Maksimileveys, jonka mukaan teksti rivitetÀÀn.</param> 
    320             <returns></returns> 
    321         </member> 
    322         <member name="T:Jypeli.ScreenObjects.FractionDisplay"> 
    323             <summary> 
    324             MurtolukunÀyttö. 
    325             Sidottavissa <c>Meter</c>iin. 
    326             </summary> 
    327         </member> 
    328         <member name="T:Jypeli.ScreenObjects.TextDisplay"> 
    329             <summary> 
    330             TekstinÀyttö. 
     289        <member name="M:Jypeli.FrictionLogic.RunLogic(Physics2DDotNet.TimeStep)"> 
     290            <summary> 
     291            KÀyttÀÀ kitkalogiikkaa pelitilanteeseen. 
     292            </summary> 
     293            <param name="step">Aika viimeisestÀ pÀivityksestÀ.</param> 
     294        </member> 
     295        <member name="P:Jypeli.Sound.IsLooped"> 
     296            <summary> 
     297            Jos <c>true</c>, ÀÀntÀ soitetaan toistuvasti. 
     298            </summary> 
     299        </member> 
     300        <member name="P:Jypeli.Sound.Pan"> 
     301            <summary> 
     302            ÄÀnen kuuluminen vasemmasta ja oikeasta kaiuttimesta. 
     303            Arvot vaihtelevat vÀlillÀ -1.0 - 1.0 seuraavasti: 
     304            -1.0 -> tÀysin vasemmalla 
     305            0.0 -> keskellÀ 
     306            1.0 -> tÀysin oikealla 
     307            </summary> 
     308        </member> 
     309        <member name="P:Jypeli.Sound.Volume"> 
     310            <summary> 
     311            ÄÀnenvoimakkuus vÀlillÀ 0.0 - 1.0. 
     312            </summary> 
     313        </member> 
     314        <member name="P:Jypeli.Sound.Pitch"> 
     315            <summary> 
     316            ÄÀnenkorkeus vÀlillÀ -1.0 - 1.0. 
     317            </summary> 
     318            <remarks> 
     319            -1.0 on oktaavin alempana, 1.0 oktaavin ylempÀnÀ. 
     320            </remarks> 
     321        </member> 
     322        <member name="T:Jypeli.ScreenObjects.ImageDisplay"> 
     323            <summary> 
     324            NÀyttÀÀ kuvan ruudulla. 
    331325            </summary> 
    332326        </member> 
     
    470464            </summary> 
    471465        </member> 
    472         <member name="F:Jypeli.ScreenObjects.TextDisplay.fontHeight"> 
    473             <summary> 
    474             Fontin korkeus pikseleinÀ. 
    475             </summary> 
    476         </member> 
    477         <member name="F:Jypeli.ScreenObjects.TextDisplay.wrappedText"> 
    478             <summary> 
    479             Teksti rivitettynÀ. 
    480             </summary> 
    481         </member> 
    482         <member name="M:Jypeli.ScreenObjects.TextDisplay.OnTextChange(System.String)"> 
    483             <summary> 
    484             Kutsutaan, kun teksti muuttuu. 
    485             </summary> 
    486             <param name="oldText">Vanha teksti.</param> 
    487         </member> 
    488         <member name="M:Jypeli.ScreenObjects.TextDisplay.#ctor"> 
    489             <summary> 
    490             Alustaa uuden tekstinÀytön oletusfontilla. 
    491             </summary> 
    492         </member> 
    493         <member name="M:Jypeli.ScreenObjects.TextDisplay.#ctor(Microsoft.Xna.Framework.Graphics.SpriteFont)"> 
    494             <summary> 
    495             Alustaa uuden tekstinÀytön annetulla fontilla. 
    496             </summary> 
    497             <param name="font">Fontti tekstille.</param> 
    498         </member> 
    499         <member name="M:Jypeli.ScreenObjects.TextDisplay.updateSize"> 
    500             <summary> 
    501             PÀivittÀÀ nÀytön/tekstin koon ja rivittÀÀ tekstin. 
    502             </summary> 
    503         </member> 
    504         <member name="M:Jypeli.ScreenObjects.TextDisplay.Draw(Jypeli.View,Jypeli.Drawing)"> 
     466        <member name="M:Jypeli.ScreenObjects.ImageDisplay.OnImageChanged(Jypeli.Animation)"> 
     467            <summary> 
     468            Kutsutaan kun itse kuva tai sen koko vaihtuu. 
     469            </summary> 
     470        </member> 
     471        <member name="M:Jypeli.ScreenObjects.ImageDisplay.#ctor"> 
     472            <summary> 
     473            <see cref="T:Jypeli.ScreenObjects.ImageDisplay"/>n rakentaja. 
     474            </summary> 
     475        </member> 
     476        <member name="M:Jypeli.ScreenObjects.ImageDisplay.Draw(Jypeli.View,Jypeli.Drawing)"> 
    505477            <summary> 
    506478            PiirtÀÀ olion. 
     
    509481            <param name="drawing">Ks. <see cref="T:Jypeli.Drawing">Drawing</see>.</param> 
    510482        </member> 
    511         <member name="M:Jypeli.ScreenObjects.TextDisplay.GetLocalDrawCoordinates"> 
    512             <summary> 
    513             Laskee lokaalit piirtokoordinaatit <c>Alignment</c>in perusteella. 
    514             </summary> 
    515             <returns>Vektori</returns> 
    516         </member> 
    517         <member name="P:Jypeli.ScreenObjects.TextDisplay.TextFont"> 
    518             <summary> 
    519             Fontti, jolla teksti kirjoitetaan ruudulle. 
    520             </summary> 
    521         </member> 
    522         <member name="P:Jypeli.ScreenObjects.TextDisplay.TextColor"> 
    523             <summary> 
    524             Tekstin vÀri. 
    525             </summary> 
    526         </member> 
    527         <member name="P:Jypeli.ScreenObjects.TextDisplay.BackGroundColor"> 
    528             <summary> 
    529             TaustavÀri. 
    530             </summary> 
    531         </member> 
    532         <member name="P:Jypeli.ScreenObjects.TextDisplay.AutoSize"> 
    533             <summary> 
    534             Muutetaanko tekstinÀytön kokoa tekstin pituuden mukaan automaattisesti. 
    535             </summary> 
    536         </member> 
    537         <member name="P:Jypeli.ScreenObjects.TextDisplay.AutoWrap"> 
    538             <summary> 
    539             RivitetÀÀnkö teksti automaattisesti, kun se ylittÀÀ maksimipituutensa. 
    540             </summary> 
    541         </member> 
    542         <member name="P:Jypeli.ScreenObjects.TextDisplay.Alignment"> 
    543             <summary> 
    544             Tekstin sijoitus tekstinÀytössÀ. 
    545             Vaikuttaa vain, jos tekstinÀytön koko on suurempi kuin tekstin koko 
    546             ja <c>AutoSize</c> on kytketty pois pÀÀltÀ. 
    547             </summary> 
    548         </member> 
    549         <member name="P:Jypeli.ScreenObjects.TextDisplay.Text"> 
    550             <summary> 
    551             NÀytettÀvÀ teksti. 
    552             </summary> 
    553         </member> 
    554         <member name="P:Jypeli.ScreenObjects.TextDisplay.TextSize"> 
    555             <summary> 
    556             NÀytettÀvÀn tekstin koko. 
    557             Ei vÀlttÀmÀttÀ sama kuin <c>Size</c>. 
    558             </summary> 
    559         </member> 
    560         <member name="E:Jypeli.ScreenObjects.TextDisplay.TextChanged"> 
    561             <summary> 
    562             Tapahtuu, kun tekstiÀ muutetaan. 
    563             </summary> 
    564         </member> 
    565         <member name="T:Jypeli.ScreenObjects.TextDisplay.TextChangeHandler"> 
    566             <summary> 
    567             TapahtumankÀsittelijÀ tekstinmuutostapahtumille. 
    568             </summary> 
    569         </member> 
    570         <member name="M:Jypeli.ScreenObjects.FractionDisplay.#ctor"> 
    571             <summary> 
    572             Alustaa uuden murtolukulaskurinÀytön oletusfontilla. 
    573             </summary> 
    574         </member> 
    575         <member name="M:Jypeli.ScreenObjects.FractionDisplay.#ctor(Microsoft.Xna.Framework.Graphics.SpriteFont)"> 
    576             <summary> 
    577             Alustaa uuden murtolukulaskurinÀytön annetulla fontilla. 
    578             </summary> 
    579             <param name="textFont">Fontti tekstille ja arvolle.</param> 
    580         </member> 
    581         <member name="M:Jypeli.ScreenObjects.FractionDisplay.BindTo(Jypeli.IntMeter)"> 
    582             <summary> 
    583             Sitoo nÀytön arvon mittariin (ks. <c>IntMeter</c>). 
    584             </summary> 
    585             <param name="calc">Mittari.</param> 
    586         </member> 
    587         <member name="M:Jypeli.ScreenObjects.FractionDisplay.Draw(Jypeli.View,Jypeli.Drawing)"> 
    588             <summary> 
    589             PiirtÀÀ olion 
    590             </summary> 
    591             <param name="view">NÀkymÀ, johon halutaan piirtÀÀ.</param> 
    592             <param name="drawing">Ks. <see cref="T:Jypeli.Drawing">Drawing</see>.</param> 
    593             <param name="gameTime">Peliaika.</param> 
    594         </member> 
    595         <member name="P:Jypeli.ScreenObjects.FractionDisplay.Calc"> 
    596             <summary> 
    597             <c>Meter</c>-laskuri, josta arvo luetaan. 
    598             Jos null, kÀyttÀÀ omaa sisÀistÀ arvoaan. 
    599             </summary> 
    600         </member> 
    601         <member name="P:Jypeli.ScreenObjects.FractionDisplay.ValueColor"> 
    602             <summary> 
    603             Arvon vÀri. 
    604             </summary> 
    605         </member> 
    606         <member name="P:Jypeli.ScreenObjects.FractionDisplay.Nominator"> 
    607             <summary> 
    608             Osoittaja, jos nÀyttöÀ ei ole sidottu laskuriin. 
    609             </summary> 
    610         </member> 
    611         <member name="P:Jypeli.ScreenObjects.FractionDisplay.Denominator"> 
    612             <summary> 
    613             NimittÀjÀ, jos nÀyttöÀ ei ole sidottu laskuriin. 
    614             </summary> 
    615         </member> 
    616         <member name="P:Jypeli.ScreenObjects.FractionDisplay.Separator"> 
    617             <summary> 
    618             Merkkijono, joka erottaa osoittajan ja nimittÀjÀn toisistaan. 
    619             Oletuksena " / ". 
    620             </summary> 
    621         </member> 
    622         <member name="T:Jypeli.ResourcesX86"> 
    623             <summary> 
    624               A strongly-typed resource class, for looking up localized strings, etc. 
    625             </summary> 
    626         </member> 
    627         <member name="P:Jypeli.ResourcesX86.ResourceManager"> 
    628             <summary> 
    629               Returns the cached ResourceManager instance used by this class. 
    630             </summary> 
    631         </member> 
    632         <member name="P:Jypeli.ResourcesX86.Culture"> 
    633             <summary> 
    634               Overrides the current thread's CurrentUICulture property for all 
    635               resource lookups using this strongly typed resource class. 
    636             </summary> 
    637         </member> 
    638         <member name="T:Jypeli.ScreenObjects.AlertWindow"> 
    639             <summary> 
    640             Yksinkertainen ikkuna, joka nÀyttÀÀ tekstiÀ ruudulla. 
    641             Sulkeutuu automaattisesti esc-/enter-/space-nÀppÀimellÀ tai 
    642             peliohjaimen A- tai B-napilla. 
    643             </summary> 
    644         </member> 
    645         <member name="T:Jypeli.ScreenObjects.Window"> 
    646             <summary> 
    647             KÀyttöliittymÀn ikkuna. 
    648             </summary> 
    649         </member> 
    650         <member name="M:Jypeli.ScreenObjects.Window.OnShow"> 
    651             <summary> 
    652             Kutsutaan kun ikkuna nÀytetÀÀn. 
    653             </summary> 
    654         </member> 
    655         <member name="M:Jypeli.ScreenObjects.Window.OnClose"> 
    656             <summary> 
    657             Kutsutaan kun ikkuna suljetaan. 
    658             </summary> 
    659         </member> 
    660         <member name="M:Jypeli.ScreenObjects.Window.#ctor"> 
    661             <summary> 
    662             Alustaa uuden (tyhjÀn) ikkunan. 
    663             </summary> 
    664             <example> 
    665             Window ikkuna = new Window(); 
    666             ikkuna.Add( new IkkunaKomponentti( parametrit ) ); 
    667             ShowWindow( ikkuna ); 
    668             </example> 
    669         </member> 
    670         <member name="M:Jypeli.ScreenObjects.Window.Close"> 
    671             <summary> 
    672             Sulkee ikkunan. 
    673             </summary> 
    674         </member> 
    675         <member name="M:Jypeli.ScreenObjects.Window.WindowClose"> 
    676             <summary> 
    677             Kontrollitapahtuma, joka sulkee ikkunan. 
    678             </summary> 
    679             <param name="e">Kontrolliargumentit.</param> 
    680             <returns></returns> 
    681         </member> 
    682         <member name="M:Jypeli.ScreenObjects.Window.NextSubitem"> 
    683             <summary> 
    684             Valitsee seuraavan "ali-ikkunan". 
    685             Kontrollitapahtuma. 
    686             </summary> 
    687             <param name="e">The e.</param> 
    688             <returns></returns> 
    689         </member> 
    690         <member name="M:Jypeli.ScreenObjects.Window.CycleFocus(System.Int32)"> 
    691             <summary> 
    692             SiirtÀÀ valintaa halutulla mÀÀrÀllÀ. 
    693             1 valitsee seuraavan olion, 
    694             -1 edellisen. 
    695             </summary> 
    696             <param name="delta">Valintamuutos.</param> 
    697         </member> 
    698         <member name="M:Jypeli.ScreenObjects.Window.Draw(Jypeli.View,Jypeli.Drawing)"> 
    699             <summary> 
    700             PiirtÀÀ olion. 
    701             </summary> 
    702             <param name="view">NÀkymÀ, johon halutaan piirtÀÀ.</param> 
    703             <param name="drawing">Ks. <see cref="T:Jypeli.Drawing">Drawing</see>.</param> 
    704             <param name="gameTime">Peliaika.</param> 
    705         </member> 
    706         <member name="M:Jypeli.ScreenObjects.Window.Update(Jypeli.Time)"> 
    707             <summary> 
    708             Kutsutaan, kun ikkunaa pÀivitetÀÀn. 
    709             </summary> 
    710         </member> 
    711         <member name="P:Jypeli.ScreenObjects.Window.Title"> 
    712             <summary> 
    713             Ikkunan otsikko. 
    714             </summary> 
    715         </member> 
    716         <member name="P:Jypeli.ScreenObjects.Window.BackGroundColor"> 
    717             <summary> 
    718             Ikkunan taustavÀri. 
    719             </summary> 
    720         </member> 
    721         <member name="P:Jypeli.ScreenObjects.Window.BorderColor"> 
    722             <summary> 
    723             Ikkunan reunojen vÀri. 
    724             </summary> 
    725         </member> 
    726         <member name="P:Jypeli.ScreenObjects.Window.FocusColor"> 
    727             <summary> 
    728             ValintavÀri. 
    729             </summary> 
    730         </member> 
    731         <member name="P:Jypeli.ScreenObjects.Window.IsVisible"> 
    732             <summary> 
    733             Ikkunan nÀkyvyys. 
    734             Ikkunan piilottaminen on sama kuin sen sulkeminen. 
    735             </summary> 
    736         </member> 
    737         <member name="P:Jypeli.ScreenObjects.Window.Objects"> 
    738             <summary> 
    739             Ikkunaan kuuluvat oliot. 
    740             NÀmÀ voivat olla mitÀ tahansa nÀyttöjÀ. 
    741             </summary> 
    742         </member> 
    743         <member name="P:Jypeli.ScreenObjects.Window.Selection"> 
    744             <summary> 
    745             Valittu nÀyttöolio. 
    746             </summary> 
    747         </member> 
    748         <member name="E:Jypeli.ScreenObjects.Window.Showing"> 
    749             <summary> 
    750             Tapahtuu kun ikkuna nÀytetÀÀn ruudulla ("avataan") 
    751             </summary> 
    752         </member> 
    753         <member name="E:Jypeli.ScreenObjects.Window.Closing"> 
    754             <summary> 
    755             Tapahtuu kun ikkuna suljetaan (=piilotetaan) 
    756             </summary> 
    757         </member> 
    758         <member name="M:Jypeli.ScreenObjects.AlertWindow.#ctor"> 
    759             <summary> 
    760             Alustaa uuden <see cref="T:Jypeli.ScreenObjects.AlertWindow"/>-olion. 
    761             </summary> 
    762         </member> 
    763         <member name="M:Jypeli.ScreenObjects.AlertWindow.#ctor(System.String)"> 
    764             <summary> 
    765             Alustaa uuden <see cref="T:Jypeli.ScreenObjects.AlertWindow"/>-olion ja asettaa sille tekstin. 
    766             </summary> 
    767             <param name="game">Peli, johon ikkuna kuuluu.</param> 
    768             <param name="text">Ikkunassa nÀytettÀvÀ teksti.</param> 
    769         </member> 
    770         <member name="P:Jypeli.ScreenObjects.AlertWindow.Text"> 
    771             <summary> 
    772             TekstikenttÀ. 
    773             </summary> 
    774         </member> 
    775         <member name="P:Jypeli.ScreenObjects.AlertWindow.MaxWidth"> 
    776             <summary> 
    777             Tekstin maksimipituus pikseleinÀ. 
    778             Jos teksti on maksimipituutta pidempi, rivitetÀÀn se automaattisesti 
    779             seuraavalle riville. 
    780             </summary> 
    781         </member> 
    782         <member name="P:Jypeli.ScreenObjects.AlertWindow.HMargin"> 
    783             <summary> 
    784             Marginaali vaakasuunnassa. 
    785             </summary> 
    786         </member> 
    787         <member name="P:Jypeli.ScreenObjects.AlertWindow.VMargin"> 
    788             <summary> 
    789             Marginaali pystysuunnassa. 
    790             </summary> 
    791         </member> 
    792         <member name="T:Physics2DDotNet.PhysicsLogics.GravityPointMass"> 
    793             <summary> 
    794             A PhysicsLogic to causes a Body to have a realistic pull of Gravity with a exponential drop-off.  
    795             </summary> 
    796         </member> 
    797         <member name="M:Physics2DDotNet.PhysicsLogics.GravityPointMass.#ctor(Physics2DDotNet.Body)"> 
    798             <summary> 
    799             Creates a new GravityPointMass Instance. 
    800             </summary> 
    801             <param name="body">The body that will be the source of gravity.</param> 
    802             <param name="lifetime">A object Describing how long the object will be in the engine.</param> 
    803         </member> 
    804         <member name="M:Physics2DDotNet.PhysicsLogics.GravityPointMass.#ctor(Physics2DDotNet.Body,System.Double)"> 
    805             <summary> 
    806             Creates a new GravityPointMass Instance. 
    807             </summary> 
    808             <param name="body">The body that will be the source of gravity.</param> 
    809             <param name="metersPerDistanceUnit">The scale of of the universe.</param> 
    810             <param name="lifetime">A object Describing how long the object will be in the engine.</param> 
    811         </member> 
    812         <member name="T:Physics2DDotNet.PhysicsHelper"> 
    813             <summary> 
    814             contains some methods to do physics calculations. 
    815             </summary> 
     483        <member name="M:Jypeli.ScreenObjects.ImageDisplay.Update(Jypeli.Time)"> 
     484            <summary> 
     485            PÀivittÀÀ kuvan kokoa tarvittaessa ja aiheuttaa tapahtumia. 
     486            Kutsutaan automaattisesti. 
     487            </summary> 
     488            <param name="time">Peliaika.</param> 
     489        </member> 
     490        <member name="P:Jypeli.ScreenObjects.ImageDisplay.Animation"> 
     491            <summary> 
     492            Animoitu kuva. 
     493            </summary> 
     494        </member> 
     495        <member name="P:Jypeli.ScreenObjects.ImageDisplay.Image"> 
     496            <summary> 
     497            Ei-animoitu kuva. 
     498            </summary> 
     499        </member> 
     500        <member name="P:Jypeli.ScreenObjects.ImageDisplay.AutoSize"> 
     501            <summary> 
     502            Asetetaanko nÀkymÀn koko automaattisesti, kun kuvaa muutetaan. 
     503            Ei muuta itse kuvaa. 
     504            </summary> 
     505        </member> 
     506        <member name="P:Jypeli.ScreenObjects.ImageDisplay.AutoAspect"> 
     507            <summary> 
     508            Asetetaanko nÀkymÀn kuvasuhde automaattisesti, kun kuvaa muutetaan. 
     509            Ei muuta itse kuvaa. 
     510            </summary> 
     511        </member> 
     512        <member name="E:Jypeli.ScreenObjects.ImageDisplay.ImageChanged"> 
     513            <summary> 
     514            Tapahtuu kun itse kuva tai sen koko vaihtuu. 
     515            </summary> 
     516        </member> 
     517        <member name="T:Jypeli.ScreenObjects.ImageDisplay.ChangeEventHandler"> 
     518            <summary> 
     519            MuutostapahtumankÀsittelijÀ. 
     520            </summary> 
     521        </member> 
     522        <member name="T:Physics2DDotNet.Ignorers.AdvGroupIgnorer"> 
     523            <summary> 
     524            A collision ignorer that uses group numbers to do collision ignoring. 
     525            If a object is member of a group that the other body is ignoring then they will not collide.  
     526            </summary> 
     527        </member> 
     528        <member name="T:Physics2DDotNet.Ignorers.Ignorer"> 
     529            <summary> 
     530            Base class for Collision Ignorers to impliment. 
     531            </summary> 
     532        </member> 
     533        <member name="P:Physics2DDotNet.Ignorers.Ignorer.IsInverted"> 
     534            <summary> 
     535            Get and sets if the result of this ignorer is inverted. 
     536            </summary> 
     537        </member> 
     538        <member name="T:Jypeli.Widgets.HorizontalLayout"> 
     539            <summary> 
     540            Asettelee widgetit riviin vaakasuunnassa. 
     541            </summary> 
     542        </member> 
     543        <member name="M:Jypeli.Widgets.HorizontalLayout.#ctor"> 
     544            <summary> 
     545            Luo uuden asettelijan. 
     546            </summary> 
     547        </member> 
     548        <member name="P:Jypeli.Widgets.HorizontalLayout.Margin"> 
     549            <summary> 
     550            Olioiden vÀliin jÀÀvÀ tyhjÀ tila. 
     551            </summary> 
     552        </member> 
     553        <member name="T:Jypeli.Widgets.VerticalLayout"> 
     554            <summary> 
     555            Asettelee widgetit pÀÀllekÀin, jÀrjestyksessÀ ylhÀÀltÀ alas. 
     556            </summary> 
     557        </member> 
     558        <member name="M:Jypeli.Widgets.VerticalLayout.#ctor"> 
     559            <summary> 
     560            Luo uuden asettelijan. 
     561            </summary> 
     562        </member> 
     563        <member name="P:Jypeli.Widgets.VerticalLayout.Margin"> 
     564            <summary> 
     565            Olioiden vÀliin jÀÀvÀ tyhjÀ tila. 
     566            </summary> 
     567        </member> 
     568        <member name="M:AdvanceMath.IAdvanceValueType.ToArray"> 
     569            <summary> 
     570            Copies the elements of the IAdvanceValueType to a new array of <see cref="T:System.Double"/> .  
     571            </summary> 
     572            <returns>An array containing copies of the elements of the IAdvanceValueType.</returns> 
     573        </member> 
     574        <member name="M:AdvanceMath.IAdvanceValueType.CopyTo(System.Double[],System.Int32)"> 
     575            <summary> 
     576            Copies all the elements of the IAdvanceValueType to the specified one-dimensional Array of <see cref="T:System.Double"/>.  
     577            </summary> 
     578            <param name="array">The one-dimensional Array that is the destination of the elements copied from the IAdvanceValueType.</param> 
     579            <param name="index">A 32-bit integer that represents the index in array at which copying begins.</param> 
     580        </member> 
     581        <member name="M:AdvanceMath.IAdvanceValueType.CopyFrom(System.Double[],System.Int32)"> 
     582            <summary> 
     583            Copies all the elements, up to the <see cref="!:Length"/> of the IAdvanceValueType, of the specified one-dimensional Array to the IAdvanceValueType.  
     584            </summary> 
     585            <param name="array">The one-dimensional Array that is the source of the elements copied to the IAdvanceValueType.</param> 
     586            <param name="index">A 32-bit integer that represents the index in array at which copying begins.</param> 
     587        </member> 
     588        <member name="M:AdvanceMath.IAdvanceValueType.ToString(System.String)"> 
     589            <summary> 
     590            turns the object into a string representation of itself with a special format for each Scaler in it. 
     591            </summary> 
     592            <param name="format">the format to be applied to each Scalar </param> 
     593            <returns>a string with every Scalar formated with the provided format.  </returns> 
     594        </member> 
     595        <member name="P:AdvanceMath.IAdvanceValueType.Count"> 
     596            <summary> 
     597            Gets a 32-bit integer that represents the total number of elements in all the dimensions of IAdvanceValueType.  
     598            </summary> 
     599        </member> 
     600        <member name="P:AdvanceMath.IVector`1.Magnitude"> 
     601            <summary> 
     602            Gets or Sets the Magnitude (Length of a Vector). 
     603            </summary> 
     604            <remarks><seealso href="http://en.wikipedia.org/wiki/Vector_%28spatial%29#Length_of_a_vector"/></remarks> 
     605        </member> 
     606        <member name="P:AdvanceMath.IVector`1.MagnitudeSq"> 
     607            <summary> 
     608            Gets the Squared Magnitude (IE Magnitude*Magnitude). 
     609            </summary> 
     610            <remarks><seealso href="http://en.wikipedia.org/wiki/Vector_%28spatial%29#Length_of_a_vector"/></remarks> 
     611        </member> 
     612        <member name="P:AdvanceMath.IVector`1.Normalized"> 
     613            <summary> 
     614            Gets the Normalized Vector. (Unit Vector) 
     615            </summary> 
     616            <remarks><seealso href="http://en.wikipedia.org/wiki/Vector_%28spatial%29#Unit_vector"/></remarks> 
     617        </member> 
     618        <member name="M:AdvanceMath.IMatrix.ToMatrixArray"> 
     619            <summary> 
     620            Copies the elements of the IMatrix to a new 2-dimensional array of <see cref="T:System.Double"/>s.  
     621            </summary> 
     622            <returns>A 2-dimensional array containing copies of the elements of the IMatrix.</returns> 
     623        </member> 
     624        <member name="M:AdvanceMath.IMatrix.ToTransposedArray"> 
     625            <returns></returns> 
     626            <summary> 
     627            Copies the elements, in a Transposed order, of the IMatrix to a new array of <see cref="T:System.Double"/>.  
     628            </summary> 
     629            <returns>An array containing copies of the elements, in a Transposed order, of the IAdvanceValueType.</returns> 
     630            <remarks> 
     631            This is the Format Accepted by OpenGL. 
     632            </remarks> 
     633        </member> 
     634        <member name="M:AdvanceMath.IMatrix.CopyTransposedTo(System.Double[],System.Int32)"> 
     635            <summary> 
     636            Copies all the elements, in a Transposed order, of the IAdvanceValueType to the specified one-dimensional Array of <see cref="T:System.Double"/>.  
     637            </summary> 
     638            <param name="array">The one-dimensional Array that is the destination of the elements copied from the IAdvanceValueType.</param> 
     639            <param name="index">A 32-bit integer that represents the index in array at which copying begins.</param> 
     640        </member> 
     641        <member name="M:AdvanceMath.IMatrix.CopyTransposedFrom(System.Double[],System.Int32)"> 
     642            <summary> 
     643            Copies all the elements, in a Transposed order, up to the <see cref="!:IAdvanceValueType.Length"/> of the IAdvanceValueType, of the specified one-dimensional Array to the IAdvanceValueType.  
     644            </summary> 
     645            <param name="array">The one-dimensional Array that is the source of the elements copied to the IAdvanceValueType.</param> 
     646            <param name="index">A 32-bit integer that represents the index in array at which copying begins.</param> 
     647        </member> 
     648        <member name="P:AdvanceMath.IMatrix.RowCount"> 
     649            <summary> 
     650            Gets a 32-bit integer that represents the total number of Rows in the IMatrix.  
     651            </summary> 
     652        </member> 
     653        <member name="P:AdvanceMath.IMatrix.ColumnCount"> 
     654            <summary> 
     655            Gets a 32-bit integer that represents the total number of Columns in the IMatrix.  
     656            </summary> 
     657        </member> 
     658        <member name="P:AdvanceMath.IMatrix.Determinant"> 
     659            <summary> 
     660            Gets the Determinant of the IMatrix 
     661            </summary> 
     662            <remarks><seealso href="http://en.wikipedia.org/wiki/Determinant"/></remarks> 
     663        </member> 
     664        <member name="M:AdvanceMath.IMatrix`3.GetColumn(System.Int32)"> 
     665            <summary> 
     666            Gets the <typeparamref name="V"/> at the specified Column. 
     667            </summary> 
     668            <param name="column">The zero-based index of the Column of the <typeparamref name="V"/> to get.</param> 
     669            <returns>The <typeparamref name="V"/> at the specified Column.</returns> 
     670        </member> 
     671        <member name="M:AdvanceMath.IMatrix`3.SetColumn(System.Int32,`1)"> 
     672            <summary> 
     673            Sets the <typeparamref name="V"/>  at the specified Column. 
     674            </summary> 
     675            <param name="column">The zero-based index of the Column of the <typeparamref name="V"/> to set.</param> 
     676            <param name="value">The <typeparamref name="V"/> to set at the specified Column.</param> 
     677        </member> 
     678        <member name="M:AdvanceMath.IMatrix`3.GetRow(System.Int32)"> 
     679            <summary> 
     680            Gets the <typeparamref name="V"/> at the specified Row. 
     681            </summary> 
     682            <param name="row">The zero-based index of the Row of the <typeparamref name="V"/> to get.</param> 
     683            <returns>The <typeparamref name="V"/> at the specified Row.</returns> 
     684        </member> 
     685        <member name="M:AdvanceMath.IMatrix`3.SetRow(System.Int32,`2)"> 
     686            <summary> 
     687            Sets the <typeparamref name="V"/> at the specified Row. 
     688            </summary> 
     689            <param name="row">The zero-based index of the Row of the <typeparamref name="V"/> to set.</param> 
     690            <param name="value">The <typeparamref name="V"/> to set at the specified Row.</param> 
     691        </member> 
     692        <member name="P:AdvanceMath.IMatrix`3.Inverted"> 
     693            <summary> 
     694            Gets the Inverse of the IMatrix 
     695            </summary> 
     696            <remarks><seealso href="http://en.wikipedia.org/wiki/Invertible_matrix"/></remarks> 
     697        </member> 
     698        <member name="P:AdvanceMath.IMatrix`3.Transposed"> 
     699            <summary> 
     700            Gets the Transpose of the IMatrix 
     701            </summary> 
     702            <remarks><seealso href="http://en.wikipedia.org/wiki/Transpose"/></remarks> 
     703        </member> 
     704        <member name="P:AdvanceMath.IMatrix`3.Adjoint"> 
     705            <summary> 
     706            Gets the Adjoint (Conjugate Transpose) of the IMatrix 
     707            </summary> 
     708            <remarks><seealso href="http://en.wikipedia.org/wiki/Conjugate_transpose"/></remarks> 
     709        </member> 
     710        <member name="P:AdvanceMath.IMatrix`3.Cofactor"> 
     711            <summary> 
     712            Gets the Cofactor (The Transpose of the Adjoint) of the IMatrix 
     713            </summary> 
     714        </member> 
     715        <member name="T:Physics2DDotNet.PhysicsLogics.GravityPointField"> 
     716            <summary> 
     717            A PhysicsLogic to causes a Gravity a a certain point with zero dropoff. 
     718            </summary> 
     719        </member> 
     720        <member name="M:Physics2DDotNet.PhysicsLogics.GravityPointField.#ctor(AdvanceMath.Vector2D,System.Double,Physics2DDotNet.Lifespan)"> 
     721            <summary> 
     722            Creates a new GravityPointField Instance. 
     723            </summary> 
     724            <param name="location">The location of the Gravity point.</param> 
     725            <param name="gravity"></param> 
     726            <param name="lifetime"></param> 
    816727        </member> 
    817728        <member name="T:Physics2DDotNet.Joints.HingeJoint"> 
     
    896807            </summary> 
    897808        </member> 
    898         <member name="T:Jypeli.Assets.Automobile"> 
    899             <summary> 
    900             Auto. 
     809        <member name="T:Physics2DDotNet.Joints.FixedHingeJoint"> 
     810            <summary> 
     811            A joint that makes a single Body Pivot around an Anchor. 
     812            </summary> 
     813        </member> 
     814        <member name="P:Physics2DDotNet.Joints.FixedHingeJoint.DistanceTolerance"> 
     815            <summary> 
     816            The distance the joint can stretch before breaking.  
     817            </summary> 
     818        </member> 
     819        <member name="T:Jypeli.Mouse"> 
     820            <summary> 
     821            Hiiri peliohjaimena. 
     822            </summary> 
     823        </member> 
     824        <member name="T:Jypeli.Controller"> 
     825            <summary> 
     826            Yleinen peliohjainluokka. 
     827            </summary> 
     828        </member> 
     829        <member name="M:Jypeli.Controller.AddHelpText(Jypeli.Handler,System.String)"> 
     830            <summary> 
     831            LisÀÀ ohjeteksti, joka on sama kaikille nÀppÀimille tai muille ohjaimille, 
     832            jotka kÀyttÀvÀt samaa aliohjelmaa ohjaintapahtuman kÀsittelyyn. 
     833            </summary> 
     834            <param name="controlHandler">Ohjaintapahtuman kÀsittelevÀ aliohjelma.</param> 
     835            <param name="text">Ohjeteksti.</param> 
     836        </member> 
     837        <member name="M:Jypeli.Controller.GetControlText(Jypeli.Listener)"> 
     838            <summary> 
     839            Returns a name for the key, button, or whatever control that is assigned to the 
     840            given listener. 
     841            </summary> 
     842        </member> 
     843        <member name="M:Jypeli.Controller.Disable(System.Predicate{Jypeli.Listener})"> 
     844            <summary> 
     845            Poistaa tietyt kuuntelutapahtumat kÀytöstÀ. 
     846            </summary> 
     847            <param name="predicate">Ehto, jonka tapahtuman on toteutettava.</param> 
     848        </member> 
     849        <member name="M:Jypeli.Controller.Enable(System.Predicate{Jypeli.Listener})"> 
     850            <summary> 
     851            Ottaa kÀytöstÀ poistetun kontrollin takaisin kÀyttöön. 
     852            </summary> 
     853            <param name="predicate">Ehto, jonka tapahtuman on toteutettava.</param> 
     854        </member> 
     855        <member name="M:Jypeli.Controller.EnableAll"> 
     856            <summary> 
     857            Ottaa takaisin kÀyttöön kaikki <c>Disable</c>-metodilla poistetut kontrollit. 
     858            </summary> 
     859        </member> 
     860        <member name="M:Jypeli.Controller.Clear"> 
     861            <summary> 
     862            Poistaa tÀmÀn ohjaimen kaikki kuuntelijat. 
     863            </summary> 
     864        </member> 
     865        <member name="M:Jypeli.Controller.IsBufferEmpty"> 
     866            <summary> 
     867            Tarkistaa, onko ohjainpuskuri tyhjÀ. 
     868            </summary> 
     869        </member> 
     870        <member name="M:Jypeli.Controller.PurgeBuffer"> 
     871            <summary> 
     872            TyhjentÀÀ ohjainpuskurin. 
     873            Huomaa, ettÀ puskuri ei tyhjenny automaattisesti kutsun jÀlkeen 
     874            (kutsu <c>IsBufferEmpty</c> tarkastaaksesi) 
     875            </summary> 
     876        </member> 
     877        <member name="P:Jypeli.Controller.BufferPurging"> 
     878            <summary> 
     879            Onko puskuri parhaillaan tyhjentymÀssÀ. 
     880            </summary> 
     881        </member> 
     882        <member name="P:Jypeli.Controller.Enabled"> 
     883            <summary> 
     884            Kuunnellaanko ohjainta. 
     885            </summary> 
     886        </member> 
     887        <member name="M:Jypeli.Mouse.AnyButtonDown"> 
     888            <summary> 
     889            Palauttaa, onko yksikÀÀn hiiren nappi alhaalla. 
     890            </summary> 
     891            <returns><c>bool</c></returns> 
     892        </member> 
     893        <member name="M:Jypeli.Mouse.IsCursorOn(Jypeli.ScreenObjects.ScreenObject)"> 
     894            <summary> 
     895            Onko hiiren kursori annetun olion pÀÀllÀ. 
     896            </summary> 
     897        </member> 
     898        <member name="M:Jypeli.Mouse.IsCursorOn(Jypeli.Widgets.Widget)"> 
     899            <summary> 
     900            Onko hiiren kursori annetun olion pÀÀllÀ. 
     901            </summary> 
     902        </member> 
     903        <member name="M:Jypeli.Mouse.IsCursorOn(Jypeli.GameObject)"> 
     904            <summary> 
     905            Onko hiiren kursori annetun olion pÀÀllÀ. 
     906            </summary> 
     907        </member> 
     908        <member name="M:Jypeli.Mouse.Listen(Jypeli.MouseButton,Jypeli.ButtonState,Jypeli.Handler,System.String)"> 
     909            <summary> 
     910            Kuuntelee hiiren nappulan painalluksia. 
     911            </summary> 
     912            <param name="b">Kuunneltava nappula.</param> 
     913            <param name="state">Nappulan tila.</param> 
     914            <param name="handler">Tapahtuman kÀsittelijÀ.</param> 
     915            <param name="helpText">Ohjeteksti.</param> 
     916        </member> 
     917        <member name="M:Jypeli.Mouse.ListenOn(Jypeli.GameObject,Jypeli.MouseButton,Jypeli.ButtonState,Jypeli.Handler,System.String)"> 
     918            <summary> 
     919            Kuuntelee hiirenpainalluksia annetun peliolion pÀÀllÀ. 
     920            </summary> 
     921            <param name="obj">Olio, jonka pÀÀllÀ hiiren kursorin tulisi olla.</param> 
     922            <param name="b">Hiiren nappula.</param> 
     923            <param name="state">Nappulan tila.</param> 
     924            <param name="handler">Tapahtuman kÀsittelijÀ.</param> 
     925            <param name="helpText">Ohjeteksti.</param> 
     926        </member> 
     927        <member name="M:Jypeli.Mouse.ListenOn(Jypeli.ScreenObjects.ScreenObject,Jypeli.MouseButton,Jypeli.ButtonState,Jypeli.Handler,System.String)"> 
     928            <summary> 
     929            Kuuntelee hiirenpainalluksia annetun ruutuolion pÀÀllÀ. 
     930            </summary> 
     931            <param name="obj">Olio, jonka pÀÀllÀ hiiren kursorin tulisi olla.</param> 
     932            <param name="b">Hiiren painike.</param> 
     933            <param name="state">Nappulan tila.</param> 
     934            <param name="handler">Tapahtuman kÀsittelijÀ.</param> 
     935            <param name="helpText">Ohjeteksti.</param> 
     936        </member> 
     937        <member name="M:Jypeli.Mouse.ListenOn(Jypeli.Widgets.Widget,Jypeli.MouseButton,Jypeli.ButtonState,Jypeli.Handler,System.String)"> 
     938            <summary> 
     939            Kuuntelee hiirenpainalluksia annetun olion pÀÀllÀ. 
     940            </summary> 
     941            <param name="w">Olio, jonka pÀÀllÀ hiiren kursorin tulisi olla.</param> 
     942            <param name="b">Hiiren painike.</param> 
     943            <param name="state">Nappulan tila.</param> 
     944            <param name="handler">Tapahtuman kÀsittelijÀ.</param> 
     945            <param name="helpText">Ohjeteksti.</param> 
     946        </member> 
     947        <member name="M:Jypeli.Mouse.ListenMovement(System.Double,Jypeli.AnalogHandler,System.String)"> 
     948            <summary> 
     949            Kuuntelee hiiren liikettÀ. 
     950            </summary> 
     951            <param name="trigger">Kuinka pitkÀn matkan hiiren tulisi liikkua, ettÀ tulee tapahtuma.</param> 
     952            <param name="handler">Hiiren tapahtuman kÀsittelijÀ.</param> 
     953            <param name="helpText">Ohjeteksti.</param> 
     954        </member> 
     955        <member name="P:Jypeli.Mouse.IsCursorVisible"> 
     956            <summary> 
     957            KÀytetÀÀnkö hiiren kursoria. 
     958            Jos kÀytetÀÀn, hiiren paikka ruudulla on mitattavissa, mutta hiiri ei 
     959            voi liikkua ruudun ulkopuolelle. 
     960            Jos ei kÀytetÀ, hiirtÀ voidaan liikuttaa rajatta, mutta sen paikkaa 
     961            ruudulla ei voida mÀÀrittÀÀ. 
     962            </summary> 
     963        </member> 
     964        <member name="P:Jypeli.Mouse.PositionOnScreen"> 
     965            <summary> 
     966            Kursorin paikka ruutukoordinaateissa. 
     967            </summary> 
     968        </member> 
     969        <member name="P:Jypeli.Mouse.PositionOnWorld"> 
     970            <summary> 
     971            Kursorin paikka maailmankoordinaateissa. 
     972            </summary> 
     973        </member> 
     974        <member name="T:Jypeli.MouseButton"> 
     975            <summary> 
     976            Hiiren napit. 
     977            </summary> 
     978        </member> 
     979        <member name="F:Jypeli.MouseButton.None"> 
     980            <summary> 
     981            Ei mikÀÀn nappi hiiressÀ. 
     982            </summary> 
     983        </member> 
     984        <member name="F:Jypeli.MouseButton.Left"> 
     985            <summary> 
     986            Vasen nappi hiiressÀ. 
     987            </summary> 
     988        </member> 
     989        <member name="F:Jypeli.MouseButton.Right"> 
     990            <summary> 
     991            Oikea nappi hiiressÀ. 
     992            </summary> 
     993        </member> 
     994        <member name="F:Jypeli.MouseButton.Middle"> 
     995            <summary> 
     996            KeskimmÀinen nappi hiiressÀ (rullan painallus). 
     997            </summary> 
     998        </member> 
     999        <member name="F:Jypeli.MouseButton.XButton1"> 
     1000            <summary> 
     1001            Hiiren ensimmÀinen erikoisnÀppÀin. 
     1002            </summary> 
     1003        </member> 
     1004        <member name="F:Jypeli.MouseButton.XButton2"> 
     1005            <summary> 
     1006            Hiiren toinen erikoisnÀppÀin. 
     1007            </summary> 
     1008        </member> 
     1009        <member name="T:Jypeli.Image"> 
     1010            <summary> 
     1011            Kuva. 
     1012            </summary> 
     1013        </member> 
     1014        <member name="M:Jypeli.Image.FromFile(System.String)"> 
     1015            <summary> 
     1016            Lataa kuvan tiedostosta. Kuvan ei tarvitse olla lisÀttynÀ 
     1017            Content-projektiin. 
     1018            </summary> 
     1019            <param name="path">Tiedoston polku.</param> 
     1020        </member> 
     1021        <member name="M:Jypeli.Image.CreateStarSky(System.Int32,System.Int32,System.Int32)"> 
     1022            <summary> 
     1023            Luo tÀhtitaivaskuvan. 
     1024            </summary> 
     1025            <param name="width">Tekstuurin leveys.</param> 
     1026            <param name="height">Tekstuurin korkeus.</param> 
     1027            <param name="stars">TÀhtien mÀÀrÀ.</param> 
     1028            <returns>Tekstuuri.</returns> 
     1029        </member> 
     1030        <member name="M:Jypeli.Image.CreateGradient(System.Int32,System.Int32,Jypeli.Color,Jypeli.Color)"> 
     1031            <summary> 
     1032            Luo pystysuuntaisen liukuvÀritetyn kuvan. 
     1033            </summary> 
     1034            <param name="imageWidth">kuvan leveys.</param> 
     1035            <param name="imageHeight">kuvan korkeus.</param> 
     1036            <param name="lowerColor">Alareunassa kÀytettÀvÀ vÀri.</param> 
     1037            <param name="upperColor">YlÀreunassa kÀytettÀvÀ vÀri.</param> 
     1038            <returns>VÀritetty kuva.</returns> 
     1039        </member> 
     1040        <member name="M:Jypeli.Image.FromGradient(System.Int32,System.Int32,Jypeli.Color,Jypeli.Color)"> 
     1041            <summary> 
     1042            Luo pystysuuntaisen liukuvÀritetyn kuvan. 
     1043            </summary> 
     1044            <param name="imageWidth">kuvan leveys.</param> 
     1045            <param name="imageHeight">kuvan korkeus.</param> 
     1046            <param name="lowerColor">Alareunassa kÀytettÀvÀ vÀri.</param> 
     1047            <param name="upperColor">YlÀreunassa kÀytettÀvÀ vÀri.</param> 
     1048            <returns>VÀritetty kuva.</returns> 
     1049        </member> 
     1050        <member name="M:Jypeli.Image.FromColor(System.Int32,System.Int32,Jypeli.Color)"> 
     1051            <summary> 
     1052            Luo yksivÀrisen kuvan. 
     1053            </summary> 
     1054            <param name="imageWidth">Kuvan leveys.</param> 
     1055            <param name="imageHeight">Kuvan korkeus.</param> 
     1056            <param name="color">Kuvan vÀri.</param> 
     1057            <returns>VÀritetty kuva.</returns> 
     1058        </member> 
     1059        <member name="M:Jypeli.Image.Mirror(Jypeli.Image)"> 
     1060            <summary> 
     1061            Peilaa kuvan X-suunnassa. 
     1062            </summary> 
     1063            <param name="image">Peilattava kuva.</param> 
     1064            <returns>Peilattu kuva.</returns> 
     1065        </member> 
     1066        <member name="M:Jypeli.Image.Flip(Jypeli.Image)"> 
     1067            <summary> 
     1068            Peilaa (ei-animoidun) kuvan Y-suunnassa. 
     1069            </summary> 
     1070            <param name="image">Peilattava kuva.</param> 
     1071            <returns>Peilattu kuva.</returns> 
     1072        </member> 
     1073        <member name="M:Jypeli.Image.Color(Jypeli.Image,Jypeli.Color)"> 
     1074            <summary> 
     1075            VÀrittÀÀ kuvan. 
     1076            </summary> 
     1077            <param name="image">VÀritettÀvÀ kuva.</param> 
     1078            <param name="color">VÀri, jolla vÀritetÀÀn.</param> 
     1079            <returns>VÀritetty kuva.</returns> 
     1080        </member> 
     1081        <member name="T:Jypeli.Color"> 
     1082            <summary> 
     1083            VÀri. 
     1084            </summary> 
     1085        </member> 
     1086        <member name="T:Jypeli.Assets.Tank"> 
     1087            <summary> 
     1088            Yksinkertainen tankki eli panssarivaunu. 
    9011089            </summary> 
    9021090        </member> 
     
    9111099            Pelialueella liikkuva olio. 
    9121100            KÀytÀ fysiikkapeleissÀ <c>PhysicsObject</c>-olioita. 
     1101            </summary> 
     1102        </member> 
     1103        <member name="F:Jypeli.GameObject.ZOffset"> 
     1104            <summary> 
     1105            The Z coordinate is adjusted by this much in order 
     1106            to have GameObjects drawn behind widgets. 
    9131107            </summary> 
    9141108        </member> 
     
    9501144            <c>PhysicsObject</c>-tyyppisiÀ olioita ei voi lisÀtÀ lapsiolioksi. 
    9511145            </remarks> 
     1146        </member> 
     1147        <member name="M:Jypeli.GameObject.Remove(Jypeli.GameObject)"> 
     1148            <summary>  
     1149            Poistaa lapsiolion. Jos haluat tuhota olion,  
     1150            kutsu mielummin olion <c>Destroy</c>-metodia.  
     1151            </summary>  
     1152            <remarks>  
     1153            Oliota ei poisteta vÀlittömÀsti, vaan viimeistÀÀn seuraavan  
     1154            pÀivityksen jÀlkeen.  
     1155            </remarks>  
    9521156        </member> 
    9531157        <member name="M:Jypeli.GameObject.Destroy"> 
     
    10541258        <member name="P:Jypeli.GameObject.Width"> 
    10551259            <summary> 
    1056             Olion pituus (X-suunnassa, leveimmÀssÀ kohdassa) 
     1260            Olion leveys (X-suunnassa, leveimmÀssÀ kohdassa). 
    10571261            </summary> 
    10581262        </member> 
    10591263        <member name="P:Jypeli.GameObject.Height"> 
    10601264            <summary> 
    1061             Olion korkeus (Y-suunnassa, leveimmÀssÀ kohdassa) 
     1265            Olion korkeus (Y-suunnassa, korkeimmassa kohdassa). 
    10621266            </summary> 
    10631267        </member> 
     
    11121316            </summary> 
    11131317        </member> 
     1318        <member name="P:Jypeli.GameObject.Z"> 
     1319            <summary>  
     1320            Koordinaatti, joka mÀÀrittÀÀ sen kuinka lÀhellÀ kameraa olio on.  
     1321            Mahdolliset arvot ovat luvut vÀliltÀ [-1.0, 1.0].  
     1322            </summary>  
     1323            <remarks>  
     1324            Oletusarvo on 0.0. MitÀ isompi arvo, sitÀ "lÀhempÀnÀ" kameraa olio on.  
     1325            Jos kahdella oliolla on eri z-koordinaatti, pienemmÀn z-arvon omaava  
     1326            olio nÀkyy toisen takana. 
     1327            </remarks>  
     1328        </member> 
    11141329        <member name="P:Jypeli.GameObject.Angle"> 
    11151330            <summary> 
     
    11201335        <member name="P:Jypeli.GameObject.Animation"> 
    11211336            <summary> 
    1122             Animoitu tekstuuri. Jos null, tekstuuria ei piirretÀ. 
     1337            Animaatio. Voi olla <c>null</c>, jolloin piirretÀÀn vain vÀri. 
    11231338            </summary> 
    11241339        </member> 
    11251340        <member name="P:Jypeli.GameObject.Image"> 
    11261341            <summary> 
    1127             Olion kuva. 
     1342            Olion kuva. Voi olla <c>null</c>, jolloin piirretÀÀn vain vÀri. 
    11281343            </summary> 
    11291344        </member> 
     
    11591374            Tapahtuu, kun olio lisÀtÀÀn peliin. 
    11601375            </summary> 
     1376        </member> 
     1377        <member name="E:Jypeli.GameObject.Destroyed"> 
     1378            <summary>  
     1379            Tapahtuu, kun olio tuhotaan.  
     1380            </summary>  
    11611381        </member> 
    11621382        <member name="M:Jypeli.PhysicsObject.CreateStaticObject(System.Double,System.Double)"> 
     
    13941614            </summary> 
    13951615        </member> 
    1396         <member name="M:Jypeli.Assets.Automobile.#ctor(System.Double,System.Double)"> 
    1397             <summary> 
    1398             Alustaa uuden auton. 
    1399             </summary> 
    1400             <param name="width">Auton leveys (X-suunnassa).</param> 
    1401             <param name="height">Auton korkeus (Y-suunnassa).</param> 
    1402         </member> 
    1403         <member name="M:Jypeli.Assets.Automobile.Accelerate(System.Double)"> 
    1404             <summary> 
    1405             KiihdyttÀÀ. 
    1406             </summary> 
    1407             <param name="time">Kiihdytysaika sekunteina.</param> 
    1408         </member> 
    1409         <member name="M:Jypeli.Assets.Automobile.Brake(System.Double)"> 
    1410             <summary> 
    1411             Jarruttaa. 
    1412             </summary> 
    1413             <param name="time">Jarrutusaika sekunteina.</param> 
    1414         </member> 
    1415         <member name="M:Jypeli.Assets.Automobile.Turn(Jypeli.Angle,System.Double)"> 
    1416             <summary> 
    1417             KÀÀntyy niin paljon kuin auton ohjattavuus sallii. 
    1418             </summary> 
    1419             <param name="angle">KÀÀntökulma.</param> 
    1420             <param name="time">Aika, joka kÀÀntÀmiseen kÀytetÀÀn.</param> 
    1421         </member> 
    1422         <member name="M:Jypeli.Assets.Automobile.Update(Jypeli.Time)"> 
    1423             <summary> 
    1424             Ajetaan kun pelitilannetta pÀivitetÀÀn. PÀivityksen voi toteuttaa omassa luokassa toteuttamalla tÀmÀn 
    1425             metodin. Perityn luokan metodissa tulee kutsua kantaluokan metodia. 
    1426             </summary> 
    1427         </member> 
    1428         <member name="P:Jypeli.Assets.Automobile.SpeedMeter"> 
    1429             <summary> 
    1430             Nopeusmittari, joka mittaa auton nopeuden (moottorin nopeus). 
    1431             Huomaa, ettÀ ei vastaa aina <c>Velocity</c>-ominaisuuden arvoa. 
    1432             </summary> 
    1433         </member> 
    1434         <member name="P:Jypeli.Assets.Automobile.Speed"> 
    1435             <summary> 
    1436             Auton moottorin nopeus. 
    1437             Huomaa, ettÀ ei vastaa aina <c>Velocity</c>-ominaisuuden arvoa. 
    1438             </summary> 
    1439         </member> 
    1440         <member name="P:Jypeli.Assets.Automobile.TopSpeed"> 
    1441             <summary> 
    1442             Suurin nopeus, johon auto voi kiihdyttÀÀ. 
    1443             </summary> 
    1444         </member> 
    1445         <member name="P:Jypeli.Assets.Automobile.Acceleration"> 
    1446             <summary> 
    1447             Auton kiihtyvyys, eli kuinka monta yksikköÀ korkeintaan nopeutta voidaan 
    1448             lisÀtÀ sekunnissa kiihdyttÀmÀllÀ. 
    1449             </summary> 
    1450         </member> 
    1451         <member name="P:Jypeli.Assets.Automobile.BrakeDeceleration"> 
    1452             <summary> 
    1453             Jarrujen hidastavuus, eli kuinka monta yksikköÀ korkeintaan nopeutta voidaan 
    1454             vÀhentÀÀ sekunnissa jarruttamalla. 
    1455             </summary> 
    1456         </member> 
    1457         <member name="P:Jypeli.Assets.Automobile.Maneuverability"> 
    1458             <summary> 
    1459             Ohjattavuus, eli kulma jonka auto voi korkeintaan kÀÀntyÀ sekunnissa. 
     1616        <member name="M:Jypeli.Assets.Tank.#ctor(System.Double,System.Double)"> 
     1617            <summary> 
     1618            Alustaa uuden tankin. 
     1619            </summary> 
     1620        </member> 
     1621        <member name="M:Jypeli.Assets.Tank.Accelerate(System.Double)"> 
     1622            <summary> 
     1623            KiihdyttÀÀ tankkia. 
     1624            </summary> 
     1625            <param name="power">Teho vÀlillÀ <c>-1.0</c>-<c>1.0</c></param> 
     1626        </member> 
     1627        <member name="M:Jypeli.Assets.Tank.Shoot(System.Double)"> 
     1628            <summary> 
     1629            Ampuu halutulla voimalla. 
     1630            </summary> 
     1631            <param name="power">Voima.</param> 
     1632        </member> 
     1633        <member name="M:Jypeli.Assets.Tank.Shoot"> 
     1634            <summary> 
     1635            Ampuu tankin tykillÀ, jos ammuksia on vielÀ jÀljellÀ. 
     1636            </summary> 
     1637        </member> 
     1638        <member name="P:Jypeli.Assets.Tank.Size"> 
     1639            <summary> 
     1640            Tankin koko. TÀtÀ ei voi muuttaa. 
     1641            </summary> 
     1642        </member> 
     1643        <member name="P:Jypeli.Assets.Tank.HitPoints"> 
     1644            <summary> 
     1645            Tankin osumapisteet. 
     1646            Kun nÀmÀ menevÀt nollaan, tankki hajoaa. 
     1647            </summary> 
     1648        </member> 
     1649        <member name="P:Jypeli.Assets.Tank.Ammo"> 
     1650            <summary> 
     1651            Ammusten mÀÀrÀ. 
     1652            </summary> 
     1653        </member> 
     1654        <member name="P:Jypeli.Assets.Tank.Cannon"> 
     1655            <summary> 
     1656            Tankin piippu. 
    14601657            </summary> 
    14611658        </member> 
     
    18222019            </summary> 
    18232020        </member> 
    1824         <member name="T:Jypeli.TopDownPhysicsGame"> 
    1825             <summary> 
    1826             Peli, johon voi lisÀtÀ pintoja, joiden pÀÀllÀ oliot voivat liukua. Peliin lisÀtyt <code>PhysicsObject</code>-oliot 
     2021        <member name="T:Jypeli.Meter`1"> 
     2022            <summary> 
     2023            Mittari, joka mittaa erityyppisiÀ arvoja. 
     2024            Sidottavissa nÀyttöihin, kuten <c>ValueDisplay</c> ja <c>BarGauge</c>. 
     2025            </summary> 
     2026        </member> 
     2027        <member name="M:Jypeli.Meter`1.#ctor(`0,`0,`0)"> 
     2028            <summary> 
     2029            Luo uuden mittarin. 
     2030            </summary> 
     2031            <param name="defaultVal">Oletusarvo.</param> 
     2032            <param name="minVal">Pienin sallittu arvo.</param> 
     2033            <param name="maxVal">Suurin sallittu arvo.</param> 
     2034        </member> 
     2035        <member name="M:Jypeli.Meter`1.#ctor(Jypeli.Meter{`0})"> 
     2036            <summary> 
     2037            Luo uuden mittarin kopiona parametrina annetusta. 
     2038            </summary> 
     2039            <param name="src">Kopioitava mittari.</param> 
     2040        </member> 
     2041        <member name="M:Jypeli.Meter`1.Reset"> 
     2042            <summary> 
     2043            Palauttaa mittarin arvon oletusarvoonsa. 
     2044            </summary> 
     2045        </member> 
     2046        <member name="M:Jypeli.Meter`1.ToString"> 
     2047            <summary> 
     2048            Palauttaa mittarin arvon merkkijonona. 
     2049            </summary> 
     2050        </member> 
     2051        <member name="P:Jypeli.Meter`1.Value"> 
     2052            <summary> 
     2053            Mittarin arvo. 
     2054            </summary> 
     2055        </member> 
     2056        <member name="P:Jypeli.Meter`1.DefaultValue"> 
     2057            <summary> 
     2058            Mittarin oletusarvo. 
     2059            </summary> 
     2060        </member> 
     2061        <member name="P:Jypeli.Meter`1.MinValue"> 
     2062            <summary> 
     2063            Mittarin pienin sallittu arvo. 
     2064            Kun mittari saavuttaa tÀmÀn arvon, laukeaa tapahtuma <c>LowerLimit</c>. 
     2065            </summary> 
     2066        </member> 
     2067        <member name="P:Jypeli.Meter`1.MaxValue"> 
     2068            <summary> 
     2069            Mittarin suurin sallittu arvo. 
     2070            Kun mittari saavuttaa tÀmÀn arvon, laukeaa tapahtuma <c>UpperLimit</c>. 
     2071            </summary> 
     2072        </member> 
     2073        <member name="P:Jypeli.Meter`1.UpperAlertValue"> 
     2074            <summary> 
     2075            Mittarin hÀlytysalaraja. 
     2076            Kun raja alittuu, laukeaa tapahtuma <c>LowerAlert</c>. 
     2077            </summary> 
     2078        </member> 
     2079        <member name="P:Jypeli.Meter`1.LowerAlertValue"> 
     2080            <summary> 
     2081            Mittarin hÀlytysalaraja. 
     2082            Kun raja ylittyy, laukeaa tapahtuma <c>UpperAlert</c>. 
     2083            </summary> 
     2084        </member> 
     2085        <member name="E:Jypeli.Meter`1.Changed"> 
     2086            <summary> 
     2087            Tapahtuu, kun mittarin arvo muuttuu. 
     2088            </summary> 
     2089        </member> 
     2090        <member name="E:Jypeli.Meter`1.LowerAlert"> 
     2091            <summary> 
     2092            Tapahtuu, kun arvo alittaa hÀlytysalarajan. 
     2093            </summary> 
     2094        </member> 
     2095        <member name="E:Jypeli.Meter`1.UpperAlert"> 
     2096            <summary> 
     2097            Tapahtuu, kun arvo alittaa hÀlytysylÀrajan. 
     2098            </summary> 
     2099        </member> 
     2100        <member name="E:Jypeli.Meter`1.LowerLimit"> 
     2101            <summary> 
     2102            Tapahtuu, kun arvo saavuttaa pienimmÀn sallitun arvonsa. 
     2103            </summary> 
     2104        </member> 
     2105        <member name="E:Jypeli.Meter`1.UpperLimit"> 
     2106            <summary> 
     2107            Tapahtuu, kun arvo saavuttaa suurimman sallitun arvonsa. 
     2108            </summary> 
     2109        </member> 
     2110        <member name="T:Jypeli.Meter`1.OnChangeHandler"> 
     2111            <summary> 
     2112            Mittarin muutostapahtumankÀsittelijÀ. 
     2113            </summary> 
     2114        </member> 
     2115        <member name="T:Jypeli.Meter`1.OnAlertHandler"> 
     2116            <summary> 
     2117            Mittarin hÀlytystapahtumankÀsittelijÀ. 
     2118            </summary> 
     2119        </member> 
     2120        <member name="T:Jypeli.Meter`1.OnLimitHandler"> 
     2121            <summary> 
     2122            Mittarin ÀÀriarvotapahtumankÀsittelijÀ. 
     2123            </summary> 
     2124        </member> 
     2125        <member name="T:Jypeli.IntMeter"> 
     2126            <summary> 
     2127            Mittari, joka mittaa int-tyyppisiÀ arvoja. 
     2128            Sidottavissa nÀyttöihin, kuten <c>ValueDisplay</c> ja <c>BarGauge</c>. 
     2129            </summary> 
     2130        </member> 
     2131        <member name="M:Jypeli.IntMeter.op_Implicit(Jypeli.IntMeter)~System.Int32"> 
     2132            <summary> 
     2133            Antaa mittariolion <c>m</c> arvon, kun mittaria kÀytetÀÀn 
     2134            sellaisessa yhteydessÀ, jossa vaaditaan tavallista <c>int</c>- 
     2135            tyyppistÀ kokonaislukua. 
     2136            </summary> 
     2137        </member> 
     2138        <member name="M:Jypeli.IntMeter.op_Implicit(Jypeli.IntMeter)~System.Double"> 
     2139            <summary> 
     2140            Antaa mittariolion <c>m</c> arvon, kun mittaria kÀytetÀÀn 
     2141            sellaisessa yhteydessÀ, jossa vaaditaan tavallista <c>double</c>- 
     2142            tyyppistÀ liukulukua. 
     2143            </summary> 
     2144        </member> 
     2145        <member name="T:Jypeli.DoubleMeter"> 
     2146            <summary> 
     2147            Mittari, joka mittaa double-tyyppisiÀ arvoja. 
     2148            Sidottavissa nÀyttöihin, kuten <c>ValueDisplay</c> ja <c>BarGauge</c>. 
     2149            </summary> 
     2150        </member> 
     2151        <member name="M:Jypeli.DoubleMeter.op_Implicit(Jypeli.DoubleMeter)~System.Double"> 
     2152            <summary> 
     2153            Antaa mittariolion <c>m</c> arvon, kun mittaria kÀytetÀÀn 
     2154            sellaisessa yhteydessÀ, jossa vaaditaan tavallista <c>double</c>- 
     2155            tyyppistÀ liukulukua. 
     2156            </summary> 
     2157        </member> 
     2158        <member name="T:Jypeli.ScreenObjects.AlertWindow"> 
     2159            <summary> 
     2160            Yksinkertainen ikkuna, joka nÀyttÀÀ tekstiÀ ruudulla. 
     2161            Sulkeutuu automaattisesti esc-/enter-/space-nÀppÀimellÀ tai 
     2162            peliohjaimen A- tai B-napilla. 
     2163            </summary> 
     2164        </member> 
     2165        <member name="T:Jypeli.ScreenObjects.Window"> 
     2166            <summary> 
     2167            KÀyttöliittymÀn ikkuna. 
     2168            </summary> 
     2169        </member> 
     2170        <member name="M:Jypeli.ScreenObjects.Window.OnShow"> 
     2171            <summary> 
     2172            Kutsutaan kun ikkuna nÀytetÀÀn. 
     2173            </summary> 
     2174        </member> 
     2175        <member name="M:Jypeli.ScreenObjects.Window.OnClose"> 
     2176            <summary> 
     2177            Kutsutaan kun ikkuna suljetaan. 
     2178            </summary> 
     2179        </member> 
     2180        <member name="M:Jypeli.ScreenObjects.Window.#ctor"> 
     2181            <summary> 
     2182            Alustaa uuden (tyhjÀn) ikkunan. 
     2183            </summary> 
     2184            <example> 
     2185            Window ikkuna = new Window(); 
     2186            ikkuna.Add( new IkkunaKomponentti( parametrit ) ); 
     2187            ShowWindow( ikkuna ); 
     2188            </example> 
     2189        </member> 
     2190        <member name="M:Jypeli.ScreenObjects.Window.Close"> 
     2191            <summary> 
     2192            Sulkee ikkunan. 
     2193            </summary> 
     2194        </member> 
     2195        <member name="M:Jypeli.ScreenObjects.Window.WindowClose"> 
     2196            <summary> 
     2197            Kontrollitapahtuma, joka sulkee ikkunan. 
     2198            </summary> 
     2199            <param name="e">Kontrolliargumentit.</param> 
     2200            <returns></returns> 
     2201        </member> 
     2202        <member name="M:Jypeli.ScreenObjects.Window.NextSubitem"> 
     2203            <summary> 
     2204            Valitsee seuraavan "ali-ikkunan". 
     2205            Kontrollitapahtuma. 
     2206            </summary> 
     2207            <param name="e">The e.</param> 
     2208            <returns></returns> 
     2209        </member> 
     2210        <member name="M:Jypeli.ScreenObjects.Window.CycleFocus(System.Int32)"> 
     2211            <summary> 
     2212            SiirtÀÀ valintaa halutulla mÀÀrÀllÀ. 
     2213            1 valitsee seuraavan olion, 
     2214            -1 edellisen. 
     2215            </summary> 
     2216            <param name="delta">Valintamuutos.</param> 
     2217        </member> 
     2218        <member name="M:Jypeli.ScreenObjects.Window.Draw(Jypeli.View,Jypeli.Drawing)"> 
     2219            <summary> 
     2220            PiirtÀÀ olion. 
     2221            </summary> 
     2222            <param name="view">NÀkymÀ, johon halutaan piirtÀÀ.</param> 
     2223            <param name="drawing">Ks. <see cref="T:Jypeli.Drawing">Drawing</see>.</param> 
     2224            <param name="gameTime">Peliaika.</param> 
     2225        </member> 
     2226        <member name="M:Jypeli.ScreenObjects.Window.Update(Jypeli.Time)"> 
     2227            <summary> 
     2228            Kutsutaan, kun ikkunaa pÀivitetÀÀn. 
     2229            </summary> 
     2230        </member> 
     2231        <member name="P:Jypeli.ScreenObjects.Window.Title"> 
     2232            <summary> 
     2233            Ikkunan otsikko. 
     2234            </summary> 
     2235        </member> 
     2236        <member name="P:Jypeli.ScreenObjects.Window.BackGroundColor"> 
     2237            <summary> 
     2238            Ikkunan taustavÀri. 
     2239            </summary> 
     2240        </member> 
     2241        <member name="P:Jypeli.ScreenObjects.Window.BorderColor"> 
     2242            <summary> 
     2243            Ikkunan reunojen vÀri. 
     2244            </summary> 
     2245        </member> 
     2246        <member name="P:Jypeli.ScreenObjects.Window.FocusColor"> 
     2247            <summary> 
     2248            ValintavÀri. 
     2249            </summary> 
     2250        </member> 
     2251        <member name="P:Jypeli.ScreenObjects.Window.IsVisible"> 
     2252            <summary> 
     2253            Ikkunan nÀkyvyys. 
     2254            Ikkunan piilottaminen on sama kuin sen sulkeminen. 
     2255            </summary> 
     2256        </member> 
     2257        <member name="P:Jypeli.ScreenObjects.Window.Objects"> 
     2258            <summary> 
     2259            Ikkunaan kuuluvat oliot. 
     2260            NÀmÀ voivat olla mitÀ tahansa nÀyttöjÀ. 
     2261            </summary> 
     2262        </member> 
     2263        <member name="P:Jypeli.ScreenObjects.Window.Selection"> 
     2264            <summary> 
     2265            Valittu nÀyttöolio. 
     2266            </summary> 
     2267        </member> 
     2268        <member name="E:Jypeli.ScreenObjects.Window.Showing"> 
     2269            <summary> 
     2270            Tapahtuu kun ikkuna nÀytetÀÀn ruudulla ("avataan") 
     2271            </summary> 
     2272        </member> 
     2273        <member name="E:Jypeli.ScreenObjects.Window.Closing"> 
     2274            <summary> 
     2275            Tapahtuu kun ikkuna suljetaan (=piilotetaan) 
     2276            </summary> 
     2277        </member> 
     2278        <member name="M:Jypeli.ScreenObjects.AlertWindow.#ctor"> 
     2279            <summary> 
     2280            Alustaa uuden <see cref="T:Jypeli.ScreenObjects.AlertWindow"/>-olion. 
     2281            </summary> 
     2282        </member> 
     2283        <member name="M:Jypeli.ScreenObjects.AlertWindow.#ctor(System.String)"> 
     2284            <summary> 
     2285            Alustaa uuden <see cref="T:Jypeli.ScreenObjects.AlertWindow"/>-olion ja asettaa sille tekstin. 
     2286            </summary> 
     2287            <param name="game">Peli, johon ikkuna kuuluu.</param> 
     2288            <param name="text">Ikkunassa nÀytettÀvÀ teksti.</param> 
     2289        </member> 
     2290        <member name="P:Jypeli.ScreenObjects.AlertWindow.Text"> 
     2291            <summary> 
     2292            TekstikenttÀ. 
     2293            </summary> 
     2294        </member> 
     2295        <member name="P:Jypeli.ScreenObjects.AlertWindow.MaxWidth"> 
     2296            <summary> 
     2297            Tekstin maksimipituus pikseleinÀ. 
     2298            Jos teksti on maksimipituutta pidempi, rivitetÀÀn se automaattisesti 
     2299            seuraavalle riville. 
     2300            </summary> 
     2301        </member> 
     2302        <member name="P:Jypeli.ScreenObjects.AlertWindow.HMargin"> 
     2303            <summary> 
     2304            Marginaali vaakasuunnassa. 
     2305            </summary> 
     2306        </member> 
     2307        <member name="P:Jypeli.ScreenObjects.AlertWindow.VMargin"> 
     2308            <summary> 
     2309            Marginaali pystysuunnassa. 
     2310            </summary> 
     2311        </member> 
     2312        <member name="P:Physics2DDotNet.Solvers.CollisionSolver.Engine"> 
     2313            <summary> 
     2314            The engine this solver is in. 
     2315            </summary> 
     2316        </member> 
     2317        <member name="T:Physics2DDotNet.PhysicsLogics.RaySegmentsCollisionLogic"> 
     2318            <summary> 
     2319            A class to manage a RaySegmentsShape collisions 
     2320            </summary> 
     2321        </member> 
     2322        <member name="T:Physics2DDotNet.PhysicsLogics.GravityField"> 
     2323            <summary> 
     2324            A Gravity Field that apply gravity pulling in one direction regardless of the Body's position with zero dropoff. 
     2325            </summary> 
     2326        </member> 
     2327        <member name="M:Physics2DDotNet.PhysicsLogics.GravityField.#ctor(AdvanceMath.Vector2D,Physics2DDotNet.Lifespan)"> 
     2328            <summary> 
     2329            Creates a new GravityField Instance. 
     2330            </summary> 
     2331            <param name="gravity">The direction and magnitude of the gravity.</param> 
     2332            <param name="lifeTime">A object Describing how long the object will be in the engine.</param> 
     2333        </member> 
     2334        <member name="T:Physics2DDotNet.PhysicsLogics.ExplosionLogic"> 
     2335            <summary> 
     2336            Simulates a simple explosion.   
     2337            </summary> 
     2338        </member> 
     2339        <member name="M:Physics2DDotNet.PhysicsLogics.ExplosionLogic.#ctor(AdvanceMath.Vector2D,AdvanceMath.Vector2D,System.Double,System.Double,System.Double,Physics2DDotNet.Lifespan)"> 
     2340            <summary> 
     2341            Creates a new instance of the ExplosionLogic 
     2342            </summary> 
     2343            <param name="location">ground zero</param> 
     2344            <param name="velocity">the velocity of the explosion (this would be from the missile or bomb that spawns it).</param> 
     2345            <param name="pressurePulseSpeed">the speed at which the explosion expands</param> 
     2346            <param name="dragCoefficient">the drag Coefficient</param> 
     2347            <param name="mass">the mass of the expanding cloud</param> 
     2348            <param name="lifetime"></param> 
     2349        </member> 
     2350        <member name="T:Physics2DDotNet.Ignorers.OneWayPlatformIgnorer"> 
     2351            <summary> 
     2352            this allows you to have platforms that are one way. like in platform games. 
     2353            </summary> 
     2354        </member> 
     2355        <member name="T:Physics2DDotNet.Ignorers.GroupedOneWayPlatformIgnorer"> 
     2356            <summary> 
     2357            this allows you to have platforms that are one way. like in platform games. 
     2358            </summary> 
     2359        </member> 
     2360        <member name="T:Physics2DDotNet.Ignorers.GroupCollection"> 
     2361            <summary> 
     2362            A collection that stores ints that represent groups 
     2363            </summary> 
     2364        </member> 
     2365        <member name="M:Physics2DDotNet.Ignorers.GroupCollection.Add(System.Int32)"> 
     2366            <summary> 
     2367            Trys to add a group. 
     2368            </summary> 
     2369            <param name="item">The group ID to add.</param> 
     2370            <returns>false if the ignorer was already part of the group; otherwise false.</returns> 
     2371        </member> 
     2372        <member name="M:Physics2DDotNet.Ignorers.GroupCollection.AddRange(System.Int32[])"> 
     2373            <summary> 
     2374            adds an array of group ids. 
     2375            </summary> 
     2376            <param name="array">The array of group IDs. (this will be sorted)</param> 
     2377            <returns>the number of IDs that were not already part of the group.</returns> 
     2378        </member> 
     2379        <member name="M:Physics2DDotNet.Ignorers.GroupCollection.Contains(System.Int32)"> 
     2380            <summary> 
     2381            returns true if the ignorer is part of the group. 
     2382            </summary> 
     2383            <param name="item">The group ID.</param> 
     2384            <returns>true if the ignorer is part of the group; otherwise false.</returns> 
     2385        </member> 
     2386        <member name="M:Physics2DDotNet.Ignorers.GroupCollection.ContainsRange(System.Int32[])"> 
     2387            <summary> 
     2388            returns the number of groups in the array it is part of. 
     2389            </summary> 
     2390            <param name="array">The array of group IDs. (this will be sorted)</param> 
     2391            <returns>The number of groups in the array it is part of.</returns> 
     2392        </member> 
     2393        <member name="M:Physics2DDotNet.Ignorers.GroupCollection.Remove(System.Int32)"> 
     2394            <summary> 
     2395            Trys to remove the ignorer from a group. 
     2396            </summary> 
     2397            <param name="item">The group ID.</param> 
     2398            <returns>true if the ignore was part of the group; otherwise false.</returns> 
     2399        </member> 
     2400        <member name="M:Physics2DDotNet.Ignorers.GroupCollection.RemoveRange(System.Int32[])"> 
     2401            <summary> 
     2402            Trys to remove the ignorer from a range of groups. 
     2403            </summary> 
     2404            <param name="array">The array of group IDs. (this will be sorted)</param> 
     2405            <returns>the number of groups the ignore was removed from.</returns> 
     2406        </member> 
     2407        <member name="M:Physics2DDotNet.Ignorers.GroupCollection.System#Collections#Generic#ICollection{System#Int32}#Add(System.Int32)"> 
     2408            <summary> 
     2409            returns if the 2 ignores are not part of the same group. 
     2410            </summary> 
     2411            <param name="other">the other CollisionGroupIgnorer</param> 
     2412            <returns>true if they are not part of the same group; otherwiase false.</returns> 
     2413        </member> 
     2414        <member name="M:Physics2DDotNet.Ignorers.GroupCollection.Clear"> 
     2415            <summary> 
     2416            removes the ignorer from all groups. 
     2417            </summary> 
     2418        </member> 
     2419        <member name="P:Physics2DDotNet.Ignorers.GroupCollection.Count"> 
     2420            <summary> 
     2421            Gets the number of collison Groups the ignorer is part of. 
     2422            </summary> 
     2423        </member> 
     2424        <member name="T:Physics2DDotNet.Detectors.SweepAndPruneDetector"> 
     2425            <summary> 
     2426            The Sweep and Prune detector should be O(nlogn), but can be O(n^2) if everything is colliding.   
     2427            </summary> 
     2428        </member> 
     2429        <member name="M:AdvanceMath.Geometry2D.BoundingRectangle.FromVectors(AdvanceMath.Vector2D,AdvanceMath.Vector2D)"> 
     2430            <summary> 
     2431            Creates a new BoundingRectangle Instance from 2 Vector2Ds. 
     2432            </summary> 
     2433            <param name="first">the first Vector2D.</param> 
     2434            <param name="second">the second Vector2D.</param> 
     2435            <returns>a new BoundingRectangle</returns> 
     2436            <remarks>The Max and Min values are automatically determined.</remarks> 
     2437        </member> 
     2438        <member name="M:AdvanceMath.Geometry2D.BoundingRectangle.FromVectors(AdvanceMath.Vector2D[])"> 
     2439            <summary> 
     2440            Creates a new BoundingRectangle Instance from multiple Vector2Ds. 
     2441            </summary> 
     2442            <param name="vectors">the list of vectors</param> 
     2443            <returns>a new BoundingRectangle</returns> 
     2444            <remarks>The Max and Min values are automatically determined.</remarks> 
     2445        </member> 
     2446        <member name="M:AdvanceMath.Geometry2D.BoundingRectangle.FromUnion(AdvanceMath.Geometry2D.BoundingRectangle,AdvanceMath.Geometry2D.BoundingRectangle)"> 
     2447            <summary> 
     2448            Makes a BoundingRectangle that can contain the 2 BoundingRectangles passed. 
     2449            </summary> 
     2450            <param name="first">The First BoundingRectangle.</param> 
     2451            <param name="second">The Second BoundingRectangle.</param> 
     2452            <returns>The BoundingRectangle that can contain the 2 BoundingRectangles passed.</returns> 
     2453        </member> 
     2454        <member name="M:AdvanceMath.Geometry2D.BoundingRectangle.FromIntersection(AdvanceMath.Geometry2D.BoundingRectangle,AdvanceMath.Geometry2D.BoundingRectangle)"> 
     2455            <summary> 
     2456            Makes a BoundingRectangle that contains the area where the BoundingRectangles Intersect. 
     2457            </summary> 
     2458            <param name="first">The First BoundingRectangle.</param> 
     2459            <param name="second">The Second BoundingRectangle.</param> 
     2460            <returns>The BoundingRectangle that can contain the 2 BoundingRectangles passed.</returns> 
     2461        </member> 
     2462        <member name="M:AdvanceMath.Geometry2D.BoundingRectangle.#ctor(System.Double,System.Double,System.Double,System.Double)"> 
     2463            <summary> 
     2464            Creates a new BoundingRectangle Instance. 
     2465            </summary> 
     2466            <param name="minX">The Lower Bound on the XAxis.</param> 
     2467            <param name="minY">The Lower Bound on the YAxis.</param> 
     2468            <param name="maxX">The Upper Bound on the XAxis.</param> 
     2469            <param name="maxY">The Upper Bound on the YAxis.</param> 
     2470        </member> 
     2471        <member name="M:AdvanceMath.Geometry2D.BoundingRectangle.#ctor(AdvanceMath.Vector2D,AdvanceMath.Vector2D)"> 
     2472            <summary> 
     2473            Creates a new BoundingRectangle Instance from 2 Vector2Ds. 
     2474            </summary> 
     2475            <param name="min">The Lower Vector2D.</param> 
     2476            <param name="max">The Upper Vector2D.</param> 
     2477        </member> 
     2478        <member name="T:Jypeli.Widgets.PushButton"> 
     2479            <summary> 
     2480            Painonappi. 
     2481            </summary> 
     2482        </member> 
     2483        <member name="T:Jypeli.Widgets.Label"> 
     2484            <summary> 
     2485            TekstikenttÀ. 
     2486            </summary> 
     2487        </member> 
     2488        <member name="T:Jypeli.Widgets.Widget"> 
     2489            <summary> 
     2490            KÀyttöliittymÀn komponentti. Samankaltainen kuin <c>GameObject</c>, 
     2491            mutta toimii vain ruutukoordinaateissa. 
     2492            </summary> 
     2493        </member> 
     2494        <member name="F:Jypeli.Widgets.Widget.ZOffset"> 
     2495            <see cref="F:Jypeli.GameObject.ZOffset"/> 
     2496        </member> 
     2497        <member name="F:Jypeli.Widgets.Widget.TextureWrapSize"> 
     2498            <summary> 
     2499            MÀÀrittÀÀ kuinka moneen kertaan kuva piirretÀÀn. Esimerkiksi (3.0, 2.0) piirtÀÀ 
     2500            kuvan 3 kertaa vaakasuunnassa ja 2 kertaa pystysuunnassa. 
     2501            </summary> 
     2502        </member> 
     2503        <member name="M:Jypeli.Widgets.Widget.#ctor(System.Double,System.Double)"> 
     2504            <summary> 
     2505            Alustaa uuden widgetin. 
     2506            </summary> 
     2507            <param name="width">Leveys.</param> 
     2508            <param name="height">Korkeus.</param> 
     2509        </member> 
     2510        <member name="M:Jypeli.Widgets.Widget.#ctor(System.Double,System.Double,Jypeli.Shape)"> 
     2511            <summary> 
     2512            Alustaa uuden widgetin. 
     2513            </summary> 
     2514            <param name="width">Leveys.</param> 
     2515            <param name="height">Korkeus.</param> 
     2516            <param name="shape">Muoto.</param> 
     2517        </member> 
     2518        <member name="M:Jypeli.Widgets.Widget.Clone"> 
     2519            <summary> 
     2520            Tekee oliosta kopion. 
     2521            </summary> 
     2522            <returns> 
     2523            Uusi <see cref="T:Jypeli.Widgets.Widget"/>-olio samoilla arvoilla. 
     2524            </returns> 
     2525        </member> 
     2526        <member name="M:Jypeli.Widgets.Widget.Show"> 
     2527            <summary> 
     2528            Asettaa olion nÀkyvÀksi. NÀkyvÀ olio voi ottaa vastaan ohjaintapahtumia. 
     2529            </summary> 
     2530        </member> 
     2531        <member name="M:Jypeli.Widgets.Widget.Hide"> 
     2532            <summary> 
     2533            Piilottaa olion. Piilotettu olio ei ota vastaan ohjaintapahtumia. 
     2534            </summary> 
     2535        </member> 
     2536        <member name="M:Jypeli.Widgets.Widget.Add(Jypeli.Widgets.Widget)"> 
     2537            <summary> 
     2538            LisÀÀ annetun peliolion tÀmÀn olion lapseksi. Lapsiolio liikkuu tÀmÀn olion mukana, 
     2539            ja sen paikka ja koko ilmaistaan suhteessa tÀhÀn olioon. 
     2540            </summary> 
     2541        </member> 
     2542        <member name="M:Jypeli.Widgets.Widget.Destroy"> 
     2543            <summary> 
     2544            Tuhoaa olion. Tuhottu olio poistuu pelistÀ. 
     2545            </summary> 
     2546        </member> 
     2547        <member name="M:Jypeli.Widgets.Widget.IsDestroyed"> 
     2548            <summary> 
     2549            Onko olio tuhottu. 
     2550            </summary> 
     2551            <returns></returns> 
     2552        </member> 
     2553        <member name="M:Jypeli.Widgets.Widget.Update(Jypeli.Time)"> 
     2554            <summary> 
     2555            Widgetin pÀivitys. 
     2556            </summary> 
     2557            <param name="time">Peliaika.</param> 
     2558        </member> 
     2559        <member name="M:Jypeli.Widgets.Widget.Draw(Microsoft.Xna.Framework.Matrix,Microsoft.Xna.Framework.Matrix)"> 
     2560            <summary> 
     2561            Kutsutaan, kun olio piirretÀÀn. 
     2562            </summary> 
     2563        </member> 
     2564        <member name="M:Jypeli.Widgets.Widget.getDrawScale"> 
     2565            <summary> 
     2566            Palauttaa piirtoskaalan. 
     2567            </summary> 
     2568        </member> 
     2569        <member name="P:Jypeli.Widgets.Widget.Parent"> 
     2570            <summary> 
     2571            Olio, jonka lapsiolio tÀmÀ olio on. Jos <c>null</c>, olio ei 
     2572            ole minkÀÀn olion lapsiolio. 
     2573            </summary> 
     2574        </member> 
     2575        <member name="P:Jypeli.Widgets.Widget.Tag"> 
     2576            <summary> 
     2577            Vapaasti asetettava muuttuja. 
     2578            </summary> 
     2579        </member> 
     2580        <member name="P:Jypeli.Widgets.Widget.IsVisible"> 
     2581            <summary> 
     2582            PiirretÀÀnkö oliota ruudulle. 
     2583            </summary> 
     2584        </member> 
     2585        <member name="P:Jypeli.Widgets.Widget.CreationTime"> 
     2586            <summary> 
     2587            Olion luomisaika. 
     2588            </summary> 
     2589        </member> 
     2590        <member name="P:Jypeli.Widgets.Widget.Lifetime"> 
     2591            <summary> 
     2592            Olion elinaika. Lasketaan siitÀ lÀhtien, kun olio luodaan. 
     2593            </summary> 
     2594        </member> 
     2595        <member name="P:Jypeli.Widgets.Widget.MaximumLifetime"> 
     2596            <summary> 
     2597            Olion suurin mahdollinen elinaika. 
     2598            Kun <c>Lifetime</c> on suurempi kuin tÀmÀ, olio kuolee. 
     2599            </summary> 
     2600        </member> 
     2601        <member name="P:Jypeli.Widgets.Widget.Size"> 
     2602            <summary> 
     2603            Olion koko pelimaailmassa. 
     2604            Kertoo olion ÀÀrirajat, ei muotoa. 
     2605            </summary> 
     2606        </member> 
     2607        <member name="P:Jypeli.Widgets.Widget.Width"> 
     2608            <summary> 
     2609            Olion leveys (X-suunnassa, leveimmÀssÀ kohdassa). 
     2610            </summary> 
     2611        </member> 
     2612        <member name="P:Jypeli.Widgets.Widget.Height"> 
     2613            <summary> 
     2614            Olion korkeus (Y-suunnassa, korkeimmassa kohdassa). 
     2615            </summary> 
     2616        </member> 
     2617        <member name="P:Jypeli.Widgets.Widget.Position"> 
     2618            <summary> 
     2619            Olion paikka. Jos olio on jonkun toisen peliolion lapsi, paikka on suhteessa 
     2620            tÀmÀn vanhempaan (<c>Parent</c>). Muuten paikka on paikka pelimaailmassa. 
     2621            </summary> 
     2622        </member> 
     2623        <member name="P:Jypeli.Widgets.Widget.AbsolutePosition"> 
     2624            <summary> 
     2625            Olion absoluuttinen paikka pelimaailmassa. 
     2626            Jos olio ei ole minkÀÀn toisen peliolion lapsiolio, 
     2627            tÀmÀ on sama kuin <c>Position</c>. 
     2628            </summary> 
     2629        </member> 
     2630        <member name="P:Jypeli.Widgets.Widget.AbsoluteAngle"> 
     2631            <summary> 
     2632            Olion absoluuttinen kulma pelimaailmassa. 
     2633            Jos olio ei ole minkÀÀn toisen peliolion lapsiolio, 
     2634            tÀmÀ on sama kuin <c>Angle</c>. 
     2635            </summary> 
     2636        </member> 
     2637        <member name="P:Jypeli.Widgets.Widget.Left"> 
     2638            <summary> 
     2639            Olion vasemman reunan x-koordinaatti. 
     2640            </summary> 
     2641        </member> 
     2642        <member name="P:Jypeli.Widgets.Widget.Right"> 
     2643            <summary> 
     2644            Olion oikean reunan x-koordinaatti. 
     2645            </summary> 
     2646        </member> 
     2647        <member name="P:Jypeli.Widgets.Widget.Top"> 
     2648            <summary> 
     2649            Olion ylÀreunan y-koordinaatti. 
     2650            </summary> 
     2651        </member> 
     2652        <member name="P:Jypeli.Widgets.Widget.Bottom"> 
     2653            <summary> 
     2654            Olion alareunan y-koordinaatti. 
     2655            </summary> 
     2656        </member> 
     2657        <member name="P:Jypeli.Widgets.Widget.X"> 
     2658            <summary> 
     2659            Olion paikan X-koordinaatti. 
     2660            </summary> 
     2661        </member> 
     2662        <member name="P:Jypeli.Widgets.Widget.Y"> 
     2663            <summary> 
     2664            Olion paikan Y-koordinaatti. 
     2665            </summary> 
     2666        </member> 
     2667        <member name="P:Jypeli.Widgets.Widget.Z"> 
     2668            <summary>  
     2669            Koordinaatti, joka mÀÀrittÀÀ sen kuinka lÀhellÀ kameraa olio on.  
     2670            Mahdolliset arvot ovat luvut vÀliltÀ [-1.0, 1.0].  
     2671            </summary>  
     2672            <remarks>  
     2673            Oletusarvo on 0.0. MitÀ isompi arvo, sitÀ "lÀhempÀnÀ" kameraa olio on.  
     2674            Jos kahdella oliolla on eri z-koordinaatti, pienemmÀn z-arvon omaava  
     2675            olio nÀkyy toisen takana.  
     2676            </remarks>  
     2677        </member> 
     2678        <member name="P:Jypeli.Widgets.Widget.Angle"> 
     2679            <summary> 
     2680            Olion kulma. 
     2681            Nolla = osoittaa oikealle. 
     2682            </summary>       
     2683        </member> 
     2684        <member name="P:Jypeli.Widgets.Widget.Animation"> 
     2685            <summary> 
     2686            Animaatio. Voi olla <c>null</c>, jolloin piirretÀÀn vain vÀri. 
     2687            </summary> 
     2688        </member> 
     2689        <member name="P:Jypeli.Widgets.Widget.Image"> 
     2690            <summary> 
     2691            Olion kuva. Voi olla <c>null</c>, jolloin piirretÀÀn vain vÀri. 
     2692            </summary> 
     2693        </member> 
     2694        <member name="P:Jypeli.Widgets.Widget.Color"> 
     2695            <summary> 
     2696            VÀri, jonka vÀrisenÀ olio piirretÀÀn, jos tekstuuria ei ole mÀÀritelty. 
     2697            </summary> 
     2698        </member> 
     2699        <member name="P:Jypeli.Widgets.Widget.BorderColor"> 
     2700            <summary> 
     2701            Reunojen vÀri. 
     2702            </summary> 
     2703        </member> 
     2704        <member name="P:Jypeli.Widgets.Widget.TextureFillsShape"> 
     2705            <summary> 
     2706            MÀÀrittÀÀ, tÀyttÀÀkö tekstuuri olion muodon jos olio on suurempi kuin sille 
     2707            mÀÀrÀtty tekstuuri. 
     2708            </summary> 
     2709        </member> 
     2710        <member name="P:Jypeli.Widgets.Widget.Shape"> 
     2711            <summary> 
     2712            Olion muoto. 
     2713            </summary> 
     2714        </member> 
     2715        <member name="P:Jypeli.Widgets.Widget.Game"> 
     2716            <summary> 
     2717            Peli, johon olio on lisÀtty. <c>null</c>, jos 
     2718            oliota ei ole lisÀtty peliin. 
     2719            </summary> 
     2720        </member> 
     2721        <member name="P:Jypeli.Widgets.Widget.IsModal"> 
     2722            <summary> 
     2723            Jos <c>true</c>, pelin sekÀ ikkunan alla olevien widgettien 
     2724            ohjaimet eivÀt ole kÀytössÀ kun ikkuna on nÀkyvissÀ. 
     2725            </summary> 
     2726        </member> 
     2727        <member name="P:Jypeli.Widgets.Widget.Controls"> 
     2728            <summary> 
     2729            TÀhÀn olioon liittyvÀt ohjaimet. 
     2730            </summary> 
     2731        </member> 
     2732        <member name="P:Jypeli.Widgets.Widget.IsAddedToGame"> 
     2733            <summary> 
     2734            Onko olio lisÀtty peliin. 
     2735            </summary> 
     2736        </member> 
     2737        <member name="E:Jypeli.Widgets.Widget.AddedToGame"> 
     2738            <summary> 
     2739            Tapahtuu, kun olio lisÀtÀÀn peliin. 
     2740            </summary> 
     2741        </member> 
     2742        <member name="M:Jypeli.Widgets.Label.#ctor"> 
     2743            <summary> 
     2744            Luo uuden tekstikentÀn. Asettaa 
     2745            koon tekstin mukaan. 
     2746            </summary> 
     2747        </member> 
     2748        <member name="M:Jypeli.Widgets.Label.#ctor(System.String)"> 
     2749            <summary> 
     2750            Luo uuden tekstikentÀn annetulla tekstillÀ. Asettaa 
     2751            koon tekstin mukaan. 
     2752            </summary> 
     2753        </member> 
     2754        <member name="M:Jypeli.Widgets.Label.#ctor(System.Double,System.Double)"> 
     2755            <summary> 
     2756            Luo uuden tekstikentÀn. 
     2757            </summary> 
     2758            <param name="width">Leveys.</param> 
     2759            <param name="height">Korkeus.</param> 
     2760        </member> 
     2761        <member name="M:Jypeli.Widgets.Label.#ctor(System.Double,System.Double,System.String)"> 
     2762            <summary> 
     2763            Luo uuden tekstikentÀn. 
     2764            </summary> 
     2765            <param name="width">Leveys.</param> 
     2766            <param name="height">Korkeus.</param> 
     2767            <param name="text">Teksti.</param> 
     2768        </member> 
     2769        <member name="M:Jypeli.Widgets.Label.BindTo(Jypeli.IntMeter)"> 
     2770            <summary> 
     2771            Asettaa tekstikentÀn nÀyttÀmÀÀn annetun mittarin arvoa. 
     2772            </summary> 
     2773        </member> 
     2774        <member name="M:Jypeli.Widgets.Label.BindTo(Jypeli.DoubleMeter)"> 
     2775            <summary> 
     2776            Asettaa tekstikentÀn nÀyttÀmÀÀn annetun mittarin arvoa. 
     2777            </summary> 
     2778        </member> 
     2779        <member name="M:Jypeli.Widgets.Label.updateSize"> 
     2780            <summary> 
     2781            PÀivittÀÀ tekstikentÀn/tekstin koon ja rivittÀÀ tekstin. 
     2782            </summary> 
     2783        </member> 
     2784        <member name="M:Jypeli.Widgets.Label.WrapText(Microsoft.Xna.Framework.Graphics.SpriteFont,System.String,System.Double)"> 
     2785            <summary> 
     2786            RivittÀÀ tekstin. 
     2787            </summary> 
     2788            <remarks>Code from http://www.xnawiki.com/index.php/Basic_Word_Wrapping</remarks> 
     2789            <param name="spriteFont">Fontti.</param> 
     2790            <param name="text">RivitettÀvÀ teksti.</param> 
     2791            <param name="maxLineWidth">Maksimileveys, jonka mukaan teksti rivitetÀÀn.</param> 
     2792        </member> 
     2793        <member name="P:Jypeli.Widgets.Label.Text"> 
     2794            <summary> 
     2795            Teksti. 
     2796            </summary> 
     2797        </member> 
     2798        <member name="P:Jypeli.Widgets.Label.DecimalPlaces"> 
     2799            <summary> 
     2800            Kuinka monta desimaalia nÀytetÀÀn, kun tekstikenttÀ on 
     2801            sidottu nÀyttÀmÀÀn desimaalilukua. 
     2802            </summary> 
     2803        </member> 
     2804        <member name="P:Jypeli.Widgets.Label.SizeMode"> 
     2805            <summary> 
     2806            Kuinka tekstikentÀn koko mÀÀrÀytyy. 
     2807            </summary> 
     2808        </member> 
     2809        <member name="P:Jypeli.Widgets.Label.TextSize"> 
     2810            <summary> 
     2811            NÀytettÀvÀn tekstin koko. 
     2812            Ei vÀlttÀmÀttÀ sama kuin <c>Size</c>. 
     2813            </summary> 
     2814        </member> 
     2815        <member name="P:Jypeli.Widgets.Label.TextColor"> 
     2816            <summary> 
     2817            Tekstin vÀri. 
     2818            </summary> 
     2819        </member> 
     2820        <member name="P:Jypeli.Widgets.Label.HorizontalAlignment"> 
     2821            <summary> 
     2822            Tekstin sijoitus vaakasuunnassa. 
     2823            Vaikuttaa vain, jos tekstikentÀn koko on suurempi kuin tekstin koko 
     2824            ja <c>SizeMode</c> ei ole <c>SizeMode.AutoSize</c>. 
     2825            </summary> 
     2826        </member> 
     2827        <member name="P:Jypeli.Widgets.Label.VerticalAlignment"> 
     2828            <summary> 
     2829            Tekstin sijoitus pystysuunnassa. 
     2830            Vaikuttaa vain, jos tekstikentÀn koko on suurempi kuin tekstin koko 
     2831            ja <c>SizeMode</c> ei ole <c>SizeMode.AutoSize</c>. 
     2832            </summary> 
     2833        </member> 
     2834        <member name="M:Jypeli.Widgets.PushButton.#ctor(System.Double,System.Double)"> 
     2835            <summary> 
     2836            Luo uuden painonapin. 
     2837            </summary> 
     2838            <param name="width">Leveys.</param> 
     2839            <param name="height">Korkeus.</param> 
     2840        </member> 
     2841        <member name="M:Jypeli.Widgets.PushButton.#ctor(System.Double,System.Double,Jypeli.Image)"> 
     2842            <summary> 
     2843            Luo uuden painonapin omalla kuvalla. 
     2844            </summary> 
     2845            <param name="width">Leveys.</param> 
     2846            <param name="height">Korkeus.</param> 
     2847            <param name="image">Kuva.</param> 
     2848        </member> 
     2849        <member name="M:Jypeli.Widgets.PushButton.#ctor(System.Double,System.Double,System.String)"> 
     2850            <summary> 
     2851            Luo uuden painonapin. 
     2852            </summary> 
     2853            <param name="width">Leveys.</param>