diff --git a/.drone.yml b/.drone.yml
new file mode 100644
index 0000000..d9c4057
--- /dev/null
+++ b/.drone.yml
@@ -0,0 +1,30 @@
+kind: pipeline
+type: docker
+name: maettleship
+
+trigger:
+ event:
+ - push
+
+steps:
+ - name: maettleship-build
+ image: plugins/docker
+ settings:
+ dockerfile: Dockerfile
+ context: .
+ registry: hub.codefirst.iut.uca.fr
+ repo: hub.codefirst.iut.uca.fr/vincent.astolfi/maettleship
+ username:
+ from_secret: registry-username
+ password:
+ from_secret: registry-password
+
+ - name: maettleship-deployment
+ image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-dockerproxy-clientdrone:latest
+ environment:
+ IMAGENAME: hub.codefirst.iut.uca.fr/vincent.astolfi/maettleship:latest
+ CONTAINERNAME: maettleship
+ COMMAND: create
+ OVERWRITE: true
+ ADMINS: vincentastolfi
+ depends_on: [maettleship-build]
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..056d804
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,7 @@
+FROM node:10
+WORKDIR /usr/src/app
+COPY ./ ./
+RUN sed -i '1i\' ./public/index.html
+RUN npm install
+EXPOSE 8081
+CMD [ "npm", "run", "dev" ]
diff --git a/Game.js b/Game.js
index 399ca94..04402aa 100644
--- a/Game.js
+++ b/Game.js
@@ -1,5 +1,3 @@
-const { io } = require(`${__dirname}/index.js`);
-
class Game {
constructor(room) {
this.room = room;
diff --git a/app.js b/app.js
index 2f61a73..33c4ab1 100644
--- a/app.js
+++ b/app.js
@@ -1,7 +1,7 @@
-const { io } = require(`${__dirname}/index.js`);
const { Player } = require(`${__dirname}/businesses/Player.js`);
const { Room } = require(`${__dirname}/businesses/Room.js`);
const { Game } = require(`${__dirname}/game.js`);
+const { io } = require(`${__dirname}/index.js`);
let room;
let game;
diff --git a/index.js b/index.js
index 0ccd9e5..1320451 100644
--- a/index.js
+++ b/index.js
@@ -4,6 +4,12 @@ const http = require("http").createServer(app);
const path = require("path");
const port = 8081;
const io = require("socket.io")(http);
+const { Player } = require(`${__dirname}/businesses/Player.js`);
+const { Room } = require(`${__dirname}/businesses/Room.js`);
+const { Game } = require(`${__dirname}/game.js`);
+
+let room;
+let game;
app.use(express.static("public"));
@@ -15,6 +21,36 @@ app.get("/", (req, res) => {
res.sendFile(path.join(__dirname, "/public/index.html"));
});
+io.on("connection", (socket) => {
+ socket.on("Hello", (callback) => {
+ callback({
+ Hello: "World",
+ });
+ });
+
+ socket.on("room creation", (socketId) => {
+ let player = new Player(socketId);
+ player.grid.cases[2][2].isShip = true;
+ player.grid.cases[3][2].isShip = true;
+ room = new Room();
+ room.addPlayer(player);
+ });
+
+ socket.on("ask for room", (socketId) => {
+ if (room.players.length === 1) {
+ let player = new Player(socketId);
+ player.grid.cases[2][2].isShip = true;
+ room.addPlayer(player);
+ game = new Game(room);
+ game.start();
+ }
+ });
+
+ socket.on("play", (move) => {
+ game.move(move);
+ });
+});
+
module.exports = {
io,
};
diff --git a/public/index.html b/public/index.html
index d2b2aa7..973baf8 100644
--- a/public/index.html
+++ b/public/index.html
@@ -42,7 +42,7 @@
WIN !
-
-
+
+