Kaydet (Commit) d393a461 authored tarafından Abdülkerim AKSAK's avatar Abdülkerim AKSAK

oda olusturma ve odaya giris yapma eklendi

üst 186f6db8
......@@ -4,6 +4,38 @@ const io = require("socket.io-client");
//Connect
let game = io.connect("http://localhost:3030/game");
const username = "Kerim";
// server kontrol
game.on("welcome", (data) => {
console.log(data);
});
// ODA OLUSTUR
let randomKey = Math.random().toString(36).substr(2, 5); // odalar için random key
const odaOlusturContainer = document.getElementById("odaOlustur");
const odaOlusturBtn = document.getElementById("odaOlusturBtn");
odaOlusturBtn.onclick = () => {
let elemt = document.createElement("p");
//Server kısmında key adında oda olustur.
game.emit("odaOlustur", randomKey);
game.on("odaBasariliSekildeOlusturuldu", (odaninKeyDegeri) => {
elemt.textContent = odaninKeyDegeri + " odası oluşturuldu.";
});
odaOlusturContainer.appendChild(elemt);
let elemt2 = document.createElement("p");
game.emit("joinRoom", randomKey, username);
game.on("success", (key) => {
elemt2.textContent = key + " odasına giriş yapıldı.";
});
game.on("err", (key) => {
elemt2.textContent = key + " odasına giriş yapılamadı.";
});
odaOlusturContainer.appendChild(elemt2);
let elemt3 = document.createElement("p");
game.on("newUser", (username) => {
elemt3.textContent = username + " odaya katıldı.";
});
odaOlusturContainer.appendChild(elemt3);
};
......@@ -6,8 +6,30 @@ const http = require("http").createServer();
const io = require("socket.io")(http);
var gameRooms = []; // Kullanıcıların oluşturmuş oldukları odalar
io.of("/game").on("connection", (socket) => {
socket.emit("welcome", "hello to <namespcaess>");
// Oda Oluşturma
socket.on("odaOlustur", function (roomKey) {
gameRooms.push(roomKey); //oda için oluşturulan key
console.log(`"${roomKey}" odasi olusturuldu.`);
return socket.emit("odaBasariliSekildeOlusturuldu", roomKey);
});
// Odaya katılma
socket.on("joinRoom", (roomKey, username) => {
if (gameRooms.includes(roomKey)) {
socket.join(roomKey);
io.of("/chat").in(roomKey).emit("newUser", username); //odaya biri girdiğinde tetiklenir
console.log(`"${roomKey}" odasina "${username} giris yapti.`);
return socket.emit("success", roomKey); //eğer gameRooms içinde oda varsa (1)
} else {
console.log(`"${roomKey}" odasina "${username}" giris yapilamadi.`);
return socket.emit("err", roomKey);
}
});
});
http.listen(port, () => {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment