Comutare navigație
pbInfo.ro
Probleme
Probleme - clasa a IX-a
Probleme - clasa a X-a
Probleme - clasa a XI-a
Probleme din concursuri
Căutare problemă
Exerciții
Programează cu Blockly
Desenează cu Processing
Exersează SQL
Soluţii
Resurse
Resurse pentru clasa a IX-a
Resurse pentru clasa a X-a
Resurse pentru clasa a XI-a
Subiecte bacalaureat
Ajutor
Autentificare
Înregistrare
×
Autentificare
Utilizator sau email
Parola
Acest site foloseşte cookies. Navigând în continuare, vă exprimaţi acordul asupra folosirii cookie-urilor.
Îti place pbInfo? Atunci acceptă-l cu totul! Dezactivează modulul de blocare a reclamelor!
×
Lista scripturi
Script Nou
Ajutor
"Snake 1.1" - Processing
ID
Autor
Duplicat din
Ultima modificare
#1690
Lazar Ionut Radu (LazarIonutRadu)
-
Joi, 01 mar 2018, 14:22
Contorleaza sarpele cu sagetile
//Made by Lazar Ionut Radu var xCap,yCap,xSpeed,ySpeed,saveX,saveY; var lenght; var x = [227]; var y = [227]; var xFood,yFood; function setup() { createCanvas(401, 401); frameRate(8); xCap = 200; yCap = 200; xSpeed = 25; ySpeed = 0; lenght = 2; x[1] = 175; y[1] = 200; x[2] = 150; y[2] = 200; xFood = floor(random(0,15)); yFood = floor(random(0,15)); xFood = xFood * 25; yFood = yFood * 25; } function draw() { background(170); draw_grid(); draw_snake(); movement_snake(); update_snake(); spawn_food(); eat_food(); collision(); draw_score(); } function draw_grid() { for ( var i=0 ; i<=375 ; i+=25 ) for ( var j=0 ; j<=375 ; j+=25 ) { noFill(); strokeWeight(1); rect(i,j,25,25); } } function draw_snake() { fill(80); rect(xCap,yCap,25,25); fill(100); for(var i=1 ; i<=lenght ; i++) { rect(x[i],y[i],25,25); } } function update_snake() { saveX = xCap; saveY = yCap; xCap += xSpeed ; yCap += ySpeed ; if( xCap >= 400 ) xCap = 0; if( xCap < 0 ) xCap = 400; if( yCap >= 400 ) yCap = 0; if( yCap < 0 ) yCap = 400; for(var i=lenght ; i>1 ; i-- ) { x[i]=x[i-1]; y[i]=y[i-1]; } x[1]=saveX; y[1]=saveY; } function movement_snake() { if ( keyIsDown(UP_ARROW) && ySpeed != 25) { xSpeed = 0; ySpeed = -25; } if ( keyIsDown(DOWN_ARROW) && ySpeed != -25) { xSpeed = 0; ySpeed = 25; } if ( keyIsDown(LEFT_ARROW) && xSpeed != 25) { xSpeed = -25; ySpeed = 0; } if ( keyIsDown(RIGHT_ARROW) && xSpeed !=-25 ) { xSpeed = 25; ySpeed = 0; } } function spawn_food() { fill(196, 116, 96); rect(xFood,yFood,25,25); } function eat_food() { if( xCap == xFood && yCap == yFood ) { xFood = floor(random(0,15)); yFood = floor(random(0,15)); xFood = xFood * 25; yFood = yFood * 25; lenght++; x[lenght] = 2*x[lenght-1]-x[lenght-2]; y[lenght] = 2*y[lenght-1]-y[lenght-2]; } } function collision() { for ( var i=1 ; i<=lenght ; i++ ) { if (xCap == x[i] && yCap == y[i] ) { xCap = 200; yCap = 200; xSpeed = 25; ySpeed = 0; lenght = 2; x[1] = 175; y[1] = 200; x[2] = 150; y[2] = 200; xFood = floor(random(0,15)); yFood = floor(random(0,15)); xFood = xFood * 25; yFood = yFood * 25; } } } function draw_score() { fill(0); textSize(15); text("Score : " + lenght,30,20); }
Duplicare
Executare
Cod
×
Cod HTML
<iframe sandbox="allow-scripts" src="/p5js/index.php?id=1690" style="width:408px; height:408px;border:solid 1px gray; overflow: scroll;"></iframe>
×
Duplicare script
Denumirea noului script
Du-te sus!