Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Creating variables
- var pX=[],pY=[],pT=[],shoottimer=0
- var socket = io();
- var patronX=[],patronY=[],patronT=[],patronDX=[],patronDY=[];
- var walls=0,oldX=0,oldY=0;
- var playersrn,myId,myteam,myX,myY;
- var stenaX=[],stenaY=[],stenaGX=[],stenaGY=[];
- socket.on("new player",function (players){
- playersrn=players
- //console.log(players)
- })
- socket.on("walls",function(X,Y,XG,YG,id)
- {
- stenaX[id]=X;
- stenaY[id]=Y;
- stenaGX[id]=XG;
- stenaGY[id]=YG;
- console.log(YG)
- })
- socket.on("playercordinatesmoved",function(id,X,Y,team){
- pX[id]=X;
- pY[id]=Y;
- pT[id]=team;
- })
- socket.on("all",function(X,Y,T,I)
- {
- pX[I]=X;
- pY[I]=Y;
- pT[I]=T;
- })
- socket.on("deltas",function(id,dX,dY,teamm)
- {
- patronT[id]=teamm;
- patronX[id]=pX[id]
- patronY[id]=pY[id]
- patronDX[id]=dX;
- patronDY[id]=dY;
- })
- socket.on("your id",function (id,w){
- walls=w;
- myId=id
- console.log(myId)
- myteam=myId%2;
- myX=Math.random()*770;
- myY=Math.random()*570;
- socket.emit("mycordinates",myId,myteam,myX,myY)
- })
- function update() {
- if(isKeyPressed[65])
- {
- for(let i=0;i<walls;i++)
- {
- if(areColliding(pX[myId]-3,pY[myId],20,20,stenaX[i],stenaY[i],stenaGX[i],stenaGY[i]))
- {
- pX[myId]+=3;
- }
- else
- {
- pX[myId]-=3/walls;
- }
- }
- socket.emit("mycordinates",myId,myteam,pX[myId],pY[myId])
- }
- if(isKeyPressed[68])
- {
- for(let i=0;i<walls;i++)
- {
- if(areColliding(pX[myId]+3,pY[myId],20,20,stenaX[i],stenaY[i],stenaGX[i],stenaGY[i]))
- {
- pX[myId]-=3
- }
- else
- {
- pX[myId]+=3/walls;
- }
- }
- socket.emit("mycordinates",myId,myteam,pX[myId],pY[myId])
- }
- if(isKeyPressed[83])
- {
- for(let i=0;i<walls;i++)
- {
- if(areColliding(pX[myId],pY[myId]+3,20,20,stenaX[i],stenaY[i],stenaGX[i],stenaGY[i]))
- {
- pY[myId]-=3;
- console.log("udyr")
- }
- else
- {
- pY[myId]+=3/walls;
- }
- }
- socket.emit("mycordinates",myId,myteam,pX[myId],pY[myId])
- }
- if(isKeyPressed[87])
- {
- for(let i=0;i<walls;i++)
- {
- if(areColliding(pX[myId],pY[myId]+3,20,20,stenaX[i],stenaY[i],stenaGX[i],stenaGY[i]))
- {
- console.log("udyr")
- pY[myId]+=3;
- }
- else
- {
- //oldY=pY[myId]
- pY[myId]-=3/walls;
- }
- }
- socket.emit("mycordinates",myId,myteam,pX[myId],pY[myId])
- }
- for(let i=0;i<=playersrn;i++)
- {
- patronX[i]+=patronDX[i]*10;
- patronY[i]+=patronDY[i]*10;
- }
- }
- function draw() {
- for(let i=0;i<walls;i++)
- {
- context.fillStyle="black";
- context.fillRect(stenaX[i],stenaY[i],stenaGX[i],stenaGY[i])
- }
- for(let i=0;i<playersrn+1;i++)
- {
- if(i==myId)
- {
- context.fillStyle="green";
- }
- else
- {
- if(pT[i]==myteam)
- {
- context.fillStyle="blue";
- }
- else
- {
- context.fillStyle="red";
- }
- }
- context.fillRect(pX[i],pY[i],20,20)
- context.fillRect(patronX[i],patronY[i],5,5)
- context.fillStyle="black";
- context.fillText(i,pX[i]+6,pY[i]+13)
- }
- }
- function keydown(key) {
- console.log(key)
- }
- function mouseup() {
- if(shoottimer==0)
- {
- socket.emit("shooting",mouseX,mouseY,pX[myId],pY[myId],myId,myteam)
- }
- console.log(mouseX,mouseY)
- }
- server js
- var app = require('express')();
- var http = require('http').Server(app);
- var io = require('socket.io')(http);
- app.get('/', function(req, res){
- res.sendFile(__dirname + "/start.html");
- });
- app.get('/game.js', function(req, res){
- res.sendFile(__dirname + "/game.js");
- });
- var players=0;
- var pX=[],pY=[],pT=[],walls=18;
- var stenaX=[],stenaY=[],stenaGX=[],stenaGY=[];
- for(let i1=0;i1<walls;i1++)
- {
- stenaX[i1]=Math.random()*760;
- stenaY[i1]=Math.random()*560;
- let G=Math.floor(Math.random()*11)
- if(G<5)
- {
- stenaGX[i1]=40;
- stenaGY[i1]=5;
- }
- else
- {
- stenaGX[i1]=5;
- stenaGY[i1]=40;
- }
- }
- io.on('connection', function(socket){
- io.emit("new player",players)
- socket.emit("your id",players,walls)
- for(let i=0;i<walls;i++)
- {
- socket.emit("walls",stenaX[i],stenaY[i],stenaGX[i],stenaGY[i],i)
- }
- for(let i=0;i<players+1;i++)
- {
- socket.emit("all",pX[i],pY[i],pT[i],i)
- }
- socket.on("mycordinates",function(id,team,X,Y){
- pX[id]=X;
- pY[id]=Y;
- pT[id]=team;
- io.emit("playercordinatesmoved",id,X,Y,team)
- })
- socket.on("shooting",function(pX,pY,X,Y,i,team){
- let X1=pX-X,Y1=pY-Y;
- let d=Math.sqrt(X1*X1+Y1*Y1)
- let shootdeltaX=X1/d;
- let shootdeltaY=Y1/d;
- io.emit("deltas",i,shootdeltaX,shootdeltaY,team)
- socket.emit("deltas",i,shootdeltaX,shootdeltaY,team)
- console.log(shootdeltaX,shootdeltaY)
- })
- players++;
- });
- http.listen(3000, function(){
- console.log("server started");
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement