Repository navigation
Expand file tree
/
Copy pathClient.js
More file actions
89 lines (72 loc) · 2.14 KB
/
Copy pathClient.js
File metadata and controls
89 lines (72 loc) · 2.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
var Client;
Client = function(name, socket) {
var announcement;
var announcer;
var ranks = ["3,1", "3,2", "4,1", "4,2", "4,3", "5,1", "5,2", "5,3", "5,4", "6,1", "6,2", "6,3", "6,4", "6,5", "1,1", "2,2", "3,3", "4,4", "5,5", "6,6", "2,1"];
var limit = 12;
function register() {
console.log("Registered");
_sendMessage("REGISTER;"+name);
}
function roundStarting(token) {
console.log("Joined game");
_sendMessage("JOIN;" + token)
}
function yourTurn(token, stats) {
console.log("My Turn");
console.log("having announcement of " + announcement );
console.log("Limit of: " + limit);
var useLimit = limit;
if(typeof stats[announcer] != "undefined") {
if(typeof stats[announcer]["CAUGHT_BLUFFING"] != "undefined") {
if(stats[announcer]["CAUGHT_BLUFFING"] / stats[announcer]["total"] * 100 > 10) {
console.log("##############use different limit for bluffer " + announcer);
useLimit = limit - 2;
}
}
}
if(ranks.indexOf(announcement) < useLimit || announcement == null) {
console.log("We roll");
_sendMessage("ROLL;" + token);
}else {
console.log("We want to see");
_sendMessage("SEE;" + token);
}
}
function announce(token, dice) {
console.log("announcing: " + dice);
var announceDice = dice;
if(ranks.indexOf(dice) <= ranks.indexOf(announcement)) {
var announceDiceIndex = ranks.indexOf(announcement) + 2;
announceDice = ranks[announceDiceIndex];
console.log("We had " + dice + " but we now bluff " + announceDice)
}
// announcer =
_sendMessage("ANNOUNCE;" + announceDice + ";" + token);
}
function setAnnounce(name, announce) {
announcer = name;
announcement = announce;
}
function resetAnnounce() {
announcer = null;
announcement = null;
}
function getAnnouncer() {
return announcer;
}
function _sendMessage(message){
var buffer = new Buffer(message);
socket.send(buffer, 0, buffer.length, 9000, "192.168.0.45", function(err, bytes){});
}
return {
register: register,
roundStarting: roundStarting,
yourTurn: yourTurn,
announce: announce,
setAnnounce: setAnnounce,
resetAnnounce: resetAnnounce,
getAnnouncer: getAnnouncer
}
}
exports.Client = Client;