Changeset 8377


Ignore:
Timestamp:
2016-12-17 14:48:27 (3 years ago)
Author:
sieerinn
Message:
 
Location:
2016/koodauskerho/VeetiR/SurvivalCastle
Files:
2 added
13 edited

Legend:

Unmodified
Added
Removed
  • 2016/koodauskerho/VeetiR/SurvivalCastle/SurvivalCastle/SurvivalCastle/SurvivalCastle.cs

    r8364 r8377  
    2020    Image tahtiKuva = LoadImage("tahti"); 
    2121    Image sentryKuva = LoadImage("Turret"); 
     22    Image FBLKuva = LoadImage("FireBL"); 
     23    Image FBRKuva = LoadImage("FireBR"); 
    2224 
    2325    SoundEffect maaliAani = LoadSoundEffect("Coin"); 
    2426    SoundEffect jumpAani = LoadSoundEffect("JumpAani"); 
    2527    SoundEffect lostAani = LoadSoundEffect("Lost"); 
     28    SoundEffect hurtAani = LoadSoundEffect("HitOrHurt"); 
    2629 
    2730    private Animation Walk; 
     
    3538    public override void Begin() 
    3639    { 
     40        //Timer.SingleShot(0.1, delegate 
     41        //{ 
     42        //PhysicsObject o = Level.CreateRightBorder(); 
     43 
     44        //Timer kameraajastin = new Timer(); 
     45        //kameraajastin.Interval = 0.01; 
     46        //kameraajastin.Timeout += delegate 
     47        //{ 
     48            //Camera.X += 1; 
     49 
     50            //o.Left = Camera.Position.X + 600; 
     51        //}; 
     52        //kameraajastin.Start(); 
     53        //}); 
    3754 
    3855        LuoPistelaskuri(); 
     
    4562        MediaPlayer.Play("Castle"); 
    4663        MediaPlayer.IsRepeating = true; 
    47         MediaPlayer.Volume = 0.2; 
     64        MediaPlayer.Volume = 0.0; 
    4865 
    4966        Gravity = new Vector(0, -2000); 
     
    5673        Camera.ZoomFactor = 1.2; 
    5774        Camera.StayInLevel = true; 
     75        Camera.X = Level.Left; 
    5876 
    5977    } 
     
    6179    void LuoElamaLaskuri() 
    6280    { 
    63         elamaLaskuri = new DoubleMeter(10); 
    64         elamaLaskuri.MaxValue = 10; 
     81        elamaLaskuri = new DoubleMeter(100); 
     82        elamaLaskuri.MaxValue = 100; 
    6583        elamaLaskuri.LowerLimit += CheckDrop; 
    66  
    67          
     84        elamaLaskuri.LowerLimit += pelaajakuolee; 
     85 
     86 
    6887 
    6988        ProgressBar elamaPalkki = new ProgressBar(100,40); 
    7089        elamaPalkki.X = Screen.Left + 150; 
    71         elamaPalkki.Y = Screen.Top - 50; 
     90        elamaPalkki.Y = Screen.Top - 75; 
    7291        elamaPalkki.BindTo(elamaLaskuri); 
    7392        elamaPalkki.Angle = Angle.RightAngle; 
     
    8099    void LuoPistelaskuri() 
    81100    { 
    82         pisteLaskuri = new IntMeter(0); 
     101        pisteLaskuri = new IntMeter(100); 
     102        pisteLaskuri.MaxValue = 100; 
    83103 
    84104        Label pisteNaytto = new Label(); 
    85105        pisteNaytto.X = Screen.Left + 100; 
    86106        pisteNaytto.Y = Screen.Top - 100; 
    87         pisteNaytto.TextColor = Color.Ruby; 
     107        pisteNaytto.TextColor = Color.White; 
    88108 
    89109        pisteNaytto.BindTo(pisteLaskuri); 
     
    97117        kentta.SetTileMethod('-', LisaaTaso2); 
    98118        kentta.SetTileMethod('*', LisaaTahti); 
     119        kentta.SetTileMethod('c', LisaaTahti2); 
    99120        kentta.SetTileMethod('N', LisaaPelaaja); 
    100121        kentta.SetTileMethod('W', LisaaLava); 
     
    112133        sentry.Color = Color.Gray; 
    113134        Add(sentry); 
    114     } 
    115  
     135 
     136        Timer ajastin = new Timer(); 
     137        ajastin.Interval = 2.3; 
     138        ajastin.Timeout += delegate {LisääTulipallo(sentry.Position, -1, FBLKuva);}; 
     139        ajastin.Timeout += delegate {LisääTulipallo(sentry.Position, 1, FBRKuva); }; 
     140        ajastin.Start(); 
     141    } 
     142 
     143    void LisääTulipallo(Vector paikka, double suunta, Image kuva) 
     144    { 
     145        PhysicsObject FB = PhysicsObject.CreateStaticObject(30, 15); 
     146        FB.Position = paikka; 
     147        FB.Image = kuva; 
     148        FB.IgnoresCollisionResponse = true; 
     149        Add(FB); 
     150        FB.Velocity = new Vector(250*suunta, 0); 
     151        AddCollisionHandler(FB, TulipalloTormaa); 
     152        FB.Tag = "FB"; 
     153    } 
    116154 
    117155    void LisaaTaso(Vector paikka, double leveys, double korkeus) 
     
    139177        Add(lava, 2); 
    140178    } 
     179 
    141180 
    142181    void LisaaTahti(Vector paikka, double leveys, double korkeus) 
     
    151190    } 
    152191 
     192    void LisaaTahti2(Vector paikka, double leveys, double korkeus) 
     193    { 
     194        PhysicsObject tahti2 = PhysicsObject.CreateStaticObject(leveys /1.5, korkeus /1.5); 
     195        tahti2.Shape = Shape.Diamond; 
     196        tahti2.Color = Color.Cyan; 
     197        tahti2.IgnoresCollisionResponse = true; 
     198        tahti2.Position = paikka; 
     199        tahti2.Tag = "tahti2"; 
     200        Add(tahti2); 
     201    } 
     202 
    153203    void LisaaPelaaja(Vector paikka, double leveys, double korkeus) 
    154204    { 
     
    158208        pelaaja1.Image = pelaajanKuva; 
    159209        AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 
     210        AddCollisionHandler(pelaaja1, "FB", TormaaTulipallo); 
     211        AddCollisionHandler(pelaaja1, "tahti2", TormaaTahteen2); 
    160212        pelaaja1.AnimWalk = Walk; 
    161213        pelaaja1.AnimIdle = Idle; 
     
    174226        if (pelaaja1.Y < Level.Bottom) 
    175227        { 
    176             elamaLaskuri.Value -= 10; 
    177             pelaaja1.Destroy(); 
    178             MediaPlayer.Stop(); 
    179             lostAani.Play(); 
    180             Timer.SingleShot(1.5, AloitaAlusta); 
    181             Droptime.Stop(); 
     228            pelaajakuolee(); 
    182229        } 
    183230    } 
     
    224271    { 
    225272        maaliAani.Play(); 
    226         pisteLaskuri.Value += 1; 
     273        pisteLaskuri.Value += 2; 
     274        elamaLaskuri.Value += 2; 
    227275        tahti.Destroy(); 
    228276    } 
    229277 
     278    void TormaaTahteen2(PhysicsObject hahmo, PhysicsObject tahti2) 
     279    { 
     280        maaliAani.Play(); 
     281        pisteLaskuri.Value += 10; 
     282        elamaLaskuri.Value += 10; 
     283        tahti2.Destroy(); 
     284    } 
     285 
     286    void TormaaTulipallo(PhysicsObject hahmo, PhysicsObject FB) 
     287    { 
     288        elamaLaskuri.Value -= 1; 
     289        pisteLaskuri.Value -= 1; 
     290        hurtAani.Play(); 
     291 
     292    } 
     293 
     294    void TulipalloTormaa(PhysicsObject FB, PhysicsObject kohde) 
     295    { 
     296        FB.Destroy(); 
     297    } 
     298 
     299    void pelaajakuolee() 
     300    { 
     301        elamaLaskuri.Value -= 100; 
     302        pisteLaskuri.Value -= 100; 
     303        pelaaja1.Destroy(); 
     304        MediaPlayer.Stop(); 
     305        lostAani.Play(); 
     306        Timer.SingleShot(1.5, AloitaAlusta); 
     307        Droptime.Stop(); 
     308    } 
    230309 
    231310} 
  • 2016/koodauskerho/VeetiR/SurvivalCastle/SurvivalCastle/SurvivalCastle/SurvivalCastle.csproj.Debug.cachefile

    r8364 r8377  
    1919Content\FireBR.xnb 
    2020Content\Turret.xnb 
     21Content\HitOrHurt.xnb 
    2122Content\Castle.wma 
  • 2016/koodauskerho/VeetiR/SurvivalCastle/SurvivalCastle/SurvivalCastle/obj/x86/Debug/ContentPipeline-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}.xml

    r8364 r8377  
    3636      <Options>None</Options> 
    3737      <Output>C:\MyTemp\VeetiR\SurvivalCastle\SurvivalCastle\SurvivalCastle\bin\x86\Debug\Content\kentta1.xnb</Output> 
    38       <Time>2016-11-19T14:54:07.5461752+02:00</Time> 
     38      <Time>2016-12-17T14:33:27.9711031+02:00</Time> 
    3939    </Item> 
    4040    <Item> 
     
    182182      <Output>C:\MyTemp\VeetiR\SurvivalCastle\SurvivalCastle\SurvivalCastle\bin\x86\Debug\Content\Turret.xnb</Output> 
    183183      <Time>2016-11-19T14:50:29.8384682+02:00</Time> 
     184    </Item> 
     185    <Item> 
     186      <Source>HitOrHurt.wav</Source> 
     187      <Name>HitOrHurt</Name> 
     188      <Importer>WavImporter</Importer> 
     189      <Processor>SoundEffectProcessor</Processor> 
     190      <Options>None</Options> 
     191      <Output>C:\MyTemp\VeetiR\SurvivalCastle\SurvivalCastle\SurvivalCastle\bin\x86\Debug\Content\HitOrHurt.xnb</Output> 
     192      <Time>2016-12-17T11:12:35.4965433+02:00</Time> 
    184193    </Item> 
    185194    <BuildSuccessful>true</BuildSuccessful> 
  • 2016/koodauskerho/VeetiR/SurvivalCastle/SurvivalCastle/SurvivalCastle/obj/x86/Debug/SurvivalCastle.csproj.FileListAbsolute.txt

    r8364 r8377  
    2828C:\MyTemp\VeetiR\SurvivalCastle\SurvivalCastle\SurvivalCastle\bin\x86\Debug\Content\FireBR.xnb 
    2929C:\MyTemp\VeetiR\SurvivalCastle\SurvivalCastle\SurvivalCastle\bin\x86\Debug\Content\Turret.xnb 
     30C:\MyTemp\VeetiR\SurvivalCastle\SurvivalCastle\SurvivalCastle\bin\x86\Debug\Content\HitOrHurt.xnb 
  • 2016/koodauskerho/VeetiR/SurvivalCastle/SurvivalCastle/SurvivalCastle/obj/x86/Debug/cachefile-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}-targetpath.txt

    r8364 r8377  
    2020Content\FireBR.xnb 
    2121Content\Turret.xnb 
     22Content\HitOrHurt.xnb 
  • 2016/koodauskerho/VeetiR/SurvivalCastle/SurvivalCastle/SurvivalCastleContent/SurvivalCastleContent.contentproj

    r8364 r8377  
    148148    </Compile> 
    149149  </ItemGroup> 
     150  <ItemGroup> 
     151    <Compile Include="HitOrHurt.wav"> 
     152      <Name>HitOrHurt</Name> 
     153      <Importer>WavImporter</Importer> 
     154      <Processor>SoundEffectProcessor</Processor> 
     155    </Compile> 
     156  </ItemGroup> 
    150157  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    151158  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
  • 2016/koodauskerho/VeetiR/SurvivalCastle/SurvivalCastle/SurvivalCastleContent/kentta1.txt

    r8364 r8377  
    1 #################################################################################### 
    2 #################################################################################### 
    3 #################################################################################### 
    4 #################################################################################### 
    5 #################################################################################### 
    6 ##                      ############################################################ 
    7 ##     N     *******                      ########## 
    8 ##                         * * * 
    9 ######################       #            *** 
    10 ########################################        M##########------     ----########## 
    11 ########################################  -#-  ########                    ######### 
    12 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW 
     1####################################################################################################################################################################################################################################################### 
     2####################################################################################################################################################################################################################################################### 
     3####################################################################################################################################################################################################################################################### 
     4################################################################################################################################################################################################################################### 
     5###############################################################################################################################################################################################  ***   ############################ 
     6##                      #######################################################################################################################################################################  *c*   ################               **** 
     7##M    N     * * * *         c            ##########  *            c                     M  **            MM              c                                                                      ***                                   MM 
     8##M                        * * *                     ***           *         ***   M     M  **            cc              M                                                                       M                               #---####----########M 
     9######################       M                        M            M               M  **    **      M M         #M       M#                    c c c c c c c c c c c c c c c c c c c c c c       *#*          cccccc         #  --#WWWWWWWWWWWWWWWWWW#M  *****************************************************************        ccc     *************************************************************************** 
     10########################################   M     ##########------ -#- ----##########     ##############--------###  **  #################-         M     M                M           M         M-#-M                    -####    #WWWWWWWWWWWWWWWWWW#M                    M         M    M        M          M                M   M   M          M         M               M                M                M 
     11########################################  -#-  ########            #       ############################        ###--  --#################    ################## - - - - - # - - - - - # - -###### # ########----------#WWWWWWWWWWW#WWWWWWWWWWWWWWWWWW##------------------- #---------#  --#- - - - # -   - - -#- -- - - - - - ############- - - - # - - - --#-------- - - - # - - - - -  - - # -- --- - - - - #-- - - - -## 
     12WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW#WWWWWWWWWWW#WWWWWWWWWWWWWWWWWW##WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW## 
Note: See TracChangeset for help on using the changeset viewer.