Changeset 8433 for 2016


Ignore:
Timestamp:
2017-05-20 14:43:59 (15 months ago)
Author:
tesatapa
Message:
 
Location:
2016/koodauskerho/OttoK
Files:
60 added
12 edited

Legend:

Unmodified
Added
Removed
  • 2016/koodauskerho/OttoK/JSPhaser/JSPhaser/index.html

    r8428 r8433  
    33<head>  
    44        <meta charset="UTF-8" /> 
    5         <title>Ensimmäinen Javascript Phaser-peli</title> 
     5        <title>&#8734;</title> 
    66        <script type="text/javascript" src="phaser.min.js"></script> 
    77        <script type="text/javascript" src="pong.js"></script> 
  • 2016/koodauskerho/OttoK/JSPhaser/JSPhaser/pong.js

    r8428 r8433  
    1 var leveys = 1920; 
    2 var korkeus = 974; 
     1var tekoalyPaalla = true; 
     2var leveys = 800; 
     3var korkeus = 600; 
    34var nopeus = 200; 
    45var p1Pisteet = 0; 
    56var p2Pisteet = 0; 
    6 var tekstinTyyli = { font: "bold 64px Arial", fill: "#00FF33", boundsAlignH: "center", boundsAlignV: "middle" }; 
    77var game = new Phaser.Game(leveys, korkeus, Phaser.CANVAS, 'pong', { preload: lataus, create: luonti, update: paivitys }); 
     8var tekstinTyyli = { font: "bold 32px Arial", fill: "#fff", boundsAlignH: "center", boundsAlignV: "middle" }; 
    89 
    910function lataus() { 
     11        game.load.image('pallo','Kuvat/Pallokuva.png'); 
    1012} 
    1113 
    1214function luonti() { 
     15    game.physics.startSystem(Phaser.Physics.ARCADE); 
    1316    game.stage.backgroundColor = "#000000"; 
    14         salliKuuntelu(); 
    15         game.physics.startSystem(Phaser.Physics.ARCADE); 
    16         var kuva = luoPallonKuva(32, "#00FF33"); 
    17         pallo = luoOlio(leveys/2, korkeus/2, kuva); 
    18         pallo.body.onWorldBounds = new Phaser.Signal(); 
    19         pallo.body.onWorldBounds.add(tormasiSeinaan); 
    20         pallo.body.setCircle(32); 
    21         pallo.body.bounce.set(1); 
    22         pallo.body.velocity = new Phaser.Point(750, 45); 
    23         var mailanKuva = luoKuva(32, 128, "#00FF33"); 
    24         maila1 = luoOlio(leveys - 32, korkeus/2, mailanKuva); 
    25         maila1.body.immovable = true; 
    26         maila2 = luoOlio(0+32, korkeus/2, mailanKuva); 
    27         maila2.body.immovable = true; 
    28         p1Pistenaytto = luoTeksti(leveys * 0.8, korkeus * 0.15, "0"); 
    29         p2Pistenaytto = luoTeksti(leveys * 0.2, korkeus * 0.15, "0"); 
     17    salliKuuntelu(); 
     18    pallo = luoOlio(leveys/2, korkeus/2, 'pallo'); 
     19    pallo.body.bounce.set(1); 
     20    pallo.body.velocity = new Phaser.Point(150, 0); 
     21    pallo.body.onWorldBounds = new Phaser.Signal(); 
     22    pallo.body.onWorldBounds.add(tormasiSeinaan); 
     23    pallo.body.setCircle(32); 
     24         
     25        pallo.body.angularVelocity = 500; 
     26     
     27    var mailanKuva = luoKuva(32, 128, "#FFFFFF"); 
     28    maila1 = luoOlio(leveys - 32, korkeus/2, mailanKuva); 
     29    maila1.body.immovable = true; 
     30     
     31    maila2 = luoOlio(0 + 32, korkeus/2, mailanKuva); 
     32    maila2.body.immovable = true; 
     33     
     34    p1Pistenaytto = luoTeksti(leveys * 0.8, korkeus * 0.15, "0"); 
     35    p2Pistenaytto = luoTeksti(leveys * 0.2, korkeus * 0.15, "0"); 
     36         
    3037         
    3138} 
    3239 
    33 function paivitys() { 
    34         game.physics.arcade.collide(pallo, maila1); 
    35         game.physics.arcade.collide(pallo, maila2); 
    36          
    37         if (speedButton.isDown) { 
    38                 pallo.body.velocity.x = pallo.body.velocity.x * 1.01; 
    39         } 
    40          
    41         tarkistaLiike(maila1, cursors.up, cursors.down); 
    42         tarkistaLiike(maila2, wButton, sButton); 
     40 
     41function luoTeksti(x, y, teksti){ 
     42    var text = game.add.text(x, y, teksti, tekstinTyyli); 
     43     
     44    return text; 
    4345} 
    4446 
    45 function luoOlio(x, y, kuva){ 
    46         var olio = game.add.sprite(x, y, kuva); 
    47         olio.anchor.x = 0.5; 
    48         olio.anchor.y = 0.5; 
    49         game.physics.enable(olio, Phaser.Physics.ARCADE); 
    50         olio.body.collideWorldBounds = true; 
    51         return olio; 
    52          
    53          
     47 
     48function tormasiSeinaan(tormaaja, ylos, alas, vasen, oikea){ 
     49    if(vasen){ 
     50        tormaaja.body.position = new Phaser.Point(leveys/2, korkeus/2); 
     51        p1Pisteet++; 
     52        p1Pistenaytto.text = ""+p1Pisteet; 
     53    } 
     54    if(oikea){ 
     55        tormaaja.body.position = new Phaser.Point(leveys/2, korkeus/2); 
     56        p2Pisteet++; 
     57        p2Pistenaytto.text = ""+p2Pisteet; 
     58    } 
    5459} 
     60 
    5561 
    5662function salliKuuntelu(){ 
     
    5864    wButton = game.input.keyboard.addKey(Phaser.Keyboard.W); 
    5965    sButton = game.input.keyboard.addKey(Phaser.Keyboard.S); 
    60         speedButton = game.input.keyboard.addKey(Phaser.Keyboard.SPACEBAR); 
    6166} 
     67 
     68 
     69function luoOlio(x, y, kuva){ 
     70    var olio = game.add.sprite(x,y, kuva); 
     71    olio.anchor.x = 0.5; 
     72    olio.anchor.y = 0.5; 
     73    game.physics.enable(olio, Phaser.Physics.ARCADE); 
     74    olio.body.collideWorldBounds = true; 
     75    return olio; 
     76} 
     77 
     78 
    6279function tarkistaLiike(maila, ylos, alas){ 
    6380    if (ylos.isDown) 
     
    7188    } 
    7289} 
    73 function tormasiSeinaan(tormaaja, ylos, alas, vasen, oikea){ 
    74         if(vasen){ 
    75                 tormaaja.body.position = new Phaser.Point(leveys/2, korkeus/2); 
    76                 p1Pisteet++; 
    77                 p1Pistenaytto.text = ""+p1Pisteet; 
    78         } 
    79         if(oikea){ 
    80                 tormaaja.body.position = new Phaser.Point(leveys/2, korkeus/2); 
    81                 p2Pisteet++; 
    82                 p2Pistenaytto.text = ""+p2Pisteet; 
    83         } 
    84 } 
    85 function luoTeksti(x, y, teksti){ 
    86         var text = game.add.text(x, y, teksti, tekstinTyyli); 
    8790 
    88         return text; 
     91function tarkistaOsoitin(osoitin, xRaja, yRaja, ekaLiikutettava, tokaLiikutettava, nopeus){ 
     92    if(osoitin.isDown){ 
     93        var suunta = 0.0; 
     94        if (osoitin.position.y > yRaja){ 
     95            suunta = 1.0; 
     96        } 
     97        else{ 
     98            suunta = -1.0; 
     99        } 
     100        if(osoitin.position.x > xRaja){ 
     101            ekaLiikutettava.body.velocity.y = suunta * nopeus; 
     102        } 
     103        else{ 
     104            tokaLiikutettava.body.velocity.y = suunta * nopeus; 
     105        } 
     106    } 
    89107} 
    90108 
    91109 
     110function kasitteleTekoaly(maila, kohde, liikutusNopeus){ 
     111    var suunta = 0.0; 
     112     
     113    //if (maila.y > kohde.y){ 
     114    //    suunta = -1.0; 
     115    //} 
     116    //else{ 
     117    //    suunta = 1.0; 
     118    //} 
     119    suunta = (kohde.y - maila.y) / (korkeus * 0.01); 
     120    suunta = Math.min(suunta, 1.0); 
     121    suunta = Math.max(suunta, -1.0); 
     122    maila.body.velocity.y = suunta * nopeus; 
     123} 
    92124 
    93125 
    94  
     126function paivitys() { 
     127    game.physics.arcade.collide(pallo, maila1); 
     128    game.physics.arcade.collide(pallo, maila2); 
     129     
     130     
     131    tarkistaLiike(maila1, cursors.up, cursors.down); 
     132    if(!tekoalyPaalla){ 
     133        tarkistaLiike(maila2, wButton, sButton); 
     134    } 
     135    else{ 
     136        kasitteleTekoaly(maila2, pallo, nopeus); 
     137    } 
     138     
     139    tarkistaOsoitin(game.input.mousePointer, leveys/2, korkeus/2, maila1, maila2, nopeus); 
     140    tarkistaOsoitin(game.input.pointer1, leveys/2, korkeus/2, maila1, maila2, nopeus); 
     141    tarkistaOsoitin(game.input.pointer2, leveys/2, korkeus/2, maila1, maila2, nopeus); 
     142} 
  • 2016/koodauskerho/OttoK/PalikkaPeli/PalikkaPeli/PalikkaPeli/MultiJumpPlatformCharacter.cs

    r8375 r8433  
    22public class MultiJumpPlatformCharacter : PlatformCharacter 
    33{ 
    4     private int jumpsAllowed = 10; 
     4    private int jumpsAllowed = 100; 
    55    private int jumped = 0; 
    66 
  • 2016/koodauskerho/OttoK/PalikkaPeli/PalikkaPeli/PalikkaPeli/PalikkaPeli.cs

    r8375 r8433  
    2222 
    2323    SoundEffect maaliAani = LoadSoundEffect("maali"); 
     24    private List<PhysicsObject> kranut = new List<PhysicsObject>(); 
    2425 
    2526    public override void Begin() 
    2627    { 
    2728        Gravity = new Vector(0, -3000); 
     29 
    2830 
    2931        LuoKentta(); 
     
    3638        SmoothTextures = false; 
    3739    } 
     40 
    3841 
    3942    void LuoKentta() 
     
    5962    void HeitaKranaatti(PlatformCharacter pelaaja) 
    6063    { 
    61         Grenade kranu = new Grenade(10.0); 
     64        PhysicsObject kranu = new PhysicsObject(20.0, 20.0); 
     65        kranu.Mass = 30.0; 
    6266        kranu.Image = pomminkuva; 
    6367        pelaaja.Throw(kranu, Angle.FromDegrees(30), 20000); 
     68        kranut.Add(kranu); 
    6469    } 
     70 
     71 
     72    void RajaytaKranut() 
     73    { 
     74        for (int i = 0; i < kranut.Count; i++) 
     75        { 
     76            Explosion expl = new Explosion(200); 
     77            expl.Position = kranut[i].Position; 
     78            kranut[i].Destroy(); 
     79            Add(expl); 
     80        } 
     81        kranut.Clear(); 
     82    } 
     83 
    6584 
    6685    void LisaaTahti(Vector paikka, double leveys, double korkeus) 
     
    7695    void LisaaPelaaja(Vector paikka, double leveys, double korkeus) 
    7796    { 
    78         pelaaja1 = new MultiJumpPlatformCharacter(leveys, korkeus, 20, 10); 
     97        pelaaja1 = new MultiJumpPlatformCharacter(leveys, korkeus, 1000, 1000); 
    7998        pelaaja1.Position = paikka; 
    8099        pelaaja1.Mass = 4.0; 
     
    107126        pahis.Brain = tasoAivot; 
    108127        tasoAivot.FallsOffPlatforms = true; 
    109         //pahis.ElamaLaskuri.Value -= 3; 
    110128    } 
    111129    void LisaaNappaimet() 
     
    117135        Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, nopeus); 
    118136        Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
    119         Keyboard.Listen(Key.RightControl, ButtonState.Pressed, Lyo, "Pelaaja lyö", pelaaja1); 
    120         Keyboard.Listen(Key.RightShift, ButtonState.Pressed, HeitaKranaatti, "Heitä kranu", pelaaja1); 
     137        Keyboard.Listen(Key.RightControl, ButtonState.Pressed, RajaytaKranut, "Räjäytä kranut"); 
     138        Keyboard.Listen(Key.RightShift, ButtonState.Down, HeitaKranaatti, "Heitä kranu", pelaaja1); 
    121139 
    122140        ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 
  • 2016/koodauskerho/OttoK/PalikkaPeli/PalikkaPeli/PalikkaPeli/obj/x86/Debug/ContentPipeline-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}.xml

    r8375 r8433  
    4545      <Options>None</Options> 
    4646      <Output>C:\MyTemp\OttoK\PalikkaPeli\PalikkaPeli\PalikkaPeli\bin\x86\Debug\Content\kentta1.xnb</Output> 
    47       <Time>2016-12-17T11:12:33.429408+02:00</Time> 
     47      <Time>2017-05-20T14:17:37.1418024+03:00</Time> 
    4848    </Item> 
    4949    <Item> 
  • 2016/koodauskerho/OttoK/PalikkaPeli/PalikkaPeli/PalikkaPeliContent/kentta1.txt

    r8375 r8433  
    11O                                       O 
     2O                                       O 
     3O      OOOOOOOOOOOOOOOOOOOOOOO          O 
     4O      K                     O          O 
     5OO     OOOOOOOOOOOOOOOOOOOO  O          O 
    26O                                       O 
    37O                                       O 
     
    1418O                                       O 
    1519O                                       O 
    16 O                                       O 
    17 OO                                      O 
    18 O                                       O 
    19 O                                       O 
    20 OO                                      O 
    21 O                                       O 
    22 O                                       O 
    23 O   K   PPP        PPPP                 O 
     20OO       PPPPPPPPPPPPPPPPPPPPPP         O 
     21O        PPPPPPPPPPPPPPPPPPPPPP         O 
     22O        PPPPPPPPPPPPPPPPPPPPPP         O 
     23O       PPP        PPPP                 O 
    2424OOOOO       PPP                         O 
    2525OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO 
Note: See TracChangeset for help on using the changeset viewer.