Commit bcb26124 authored by nanahira's avatar nanahira

Merge branch 'mc'

parents 1e912e01 96fe8f96
...@@ -2858,34 +2858,38 @@ ygopro.stoc_follow 'GAME_MSG', true, (buffer, info, client, server, datas)-> ...@@ -2858,34 +2858,38 @@ ygopro.stoc_follow 'GAME_MSG', true, (buffer, info, client, server, datas)->
pos = 1 - pos unless client.is_first pos = 1 - pos unless client.is_first
pos = pos * 2 if pos >= 0 and room.hostinfo.mode == 2 pos = pos * 2 if pos >= 0 and room.hostinfo.mode == 2
val = buffer.readInt32LE(2) val = buffer.readInt32LE(2)
room.dueling_players[pos].lp -= val if room.dueling_players[pos]
room.dueling_players[pos].lp = 0 if room.dueling_players[pos].lp < 0 room.dueling_players[pos].lp -= val
if 0 < room.dueling_players[pos].lp <= 100 room.dueling_players[pos].lp = 0 if room.dueling_players[pos].lp < 0
ygopro.stoc_send_chat_to_room(room, "${lp_low_opponent}", ygopro.constants.COLORS.PINK) if 0 < room.dueling_players[pos].lp <= 100
ygopro.stoc_send_chat_to_room(room, "${lp_low_opponent}", ygopro.constants.COLORS.PINK)
if msg_name == 'RECOVER' and client.pos == 0 if msg_name == 'RECOVER' and client.pos == 0
pos = buffer.readUInt8(1) pos = buffer.readUInt8(1)
pos = 1 - pos unless client.is_first pos = 1 - pos unless client.is_first
pos = pos * 2 if pos >= 0 and room.hostinfo.mode == 2 pos = pos * 2 if pos >= 0 and room.hostinfo.mode == 2
val = buffer.readInt32LE(2) val = buffer.readInt32LE(2)
room.dueling_players[pos].lp += val if room.dueling_players[pos]
room.dueling_players[pos].lp += val
if msg_name == 'LPUPDATE' and client.pos == 0 if msg_name == 'LPUPDATE' and client.pos == 0
pos = buffer.readUInt8(1) pos = buffer.readUInt8(1)
pos = 1 - pos unless client.is_first pos = 1 - pos unless client.is_first
pos = pos * 2 if pos >= 0 and room.hostinfo.mode == 2 pos = pos * 2 if pos >= 0 and room.hostinfo.mode == 2
val = buffer.readInt32LE(2) val = buffer.readInt32LE(2)
room.dueling_players[pos].lp = val if room.dueling_players[pos]
room.dueling_players[pos].lp = val
if msg_name == 'PAY_LPCOST' and client.pos == 0 if msg_name == 'PAY_LPCOST' and client.pos == 0
pos = buffer.readUInt8(1) pos = buffer.readUInt8(1)
pos = 1 - pos unless client.is_first pos = 1 - pos unless client.is_first
pos = pos * 2 if pos >= 0 and room.hostinfo.mode == 2 pos = pos * 2 if pos >= 0 and room.hostinfo.mode == 2
val = buffer.readInt32LE(2) val = buffer.readInt32LE(2)
room.dueling_players[pos].lp -= val if room.dueling_players[pos]
room.dueling_players[pos].lp = 0 if room.dueling_players[pos].lp < 0 room.dueling_players[pos].lp -= val
if 0 < room.dueling_players[pos].lp <= 100 room.dueling_players[pos].lp = 0 if room.dueling_players[pos].lp < 0
ygopro.stoc_send_chat_to_room(room, "${lp_low_self}", ygopro.constants.COLORS.PINK) if 0 < room.dueling_players[pos].lp <= 100
ygopro.stoc_send_chat_to_room(room, "${lp_low_self}", ygopro.constants.COLORS.PINK)
#track card count #track card count
#todo: track card count in tag mode #todo: track card count in tag mode
......
...@@ -3745,12 +3745,14 @@ ...@@ -3745,12 +3745,14 @@
pos = pos * 2; pos = pos * 2;
} }
val = buffer.readInt32LE(2); val = buffer.readInt32LE(2);
room.dueling_players[pos].lp -= val; if (room.dueling_players[pos]) {
if (room.dueling_players[pos].lp < 0) { room.dueling_players[pos].lp -= val;
room.dueling_players[pos].lp = 0; if (room.dueling_players[pos].lp < 0) {
} room.dueling_players[pos].lp = 0;
if ((0 < (ref1 = room.dueling_players[pos].lp) && ref1 <= 100)) { }
ygopro.stoc_send_chat_to_room(room, "${lp_low_opponent}", ygopro.constants.COLORS.PINK); if ((0 < (ref1 = room.dueling_players[pos].lp) && ref1 <= 100)) {
ygopro.stoc_send_chat_to_room(room, "${lp_low_opponent}", ygopro.constants.COLORS.PINK);
}
} }
} }
if (msg_name === 'RECOVER' && client.pos === 0) { if (msg_name === 'RECOVER' && client.pos === 0) {
...@@ -3762,7 +3764,9 @@ ...@@ -3762,7 +3764,9 @@
pos = pos * 2; pos = pos * 2;
} }
val = buffer.readInt32LE(2); val = buffer.readInt32LE(2);
room.dueling_players[pos].lp += val; if (room.dueling_players[pos]) {
room.dueling_players[pos].lp += val;
}
} }
if (msg_name === 'LPUPDATE' && client.pos === 0) { if (msg_name === 'LPUPDATE' && client.pos === 0) {
pos = buffer.readUInt8(1); pos = buffer.readUInt8(1);
...@@ -3773,7 +3777,9 @@ ...@@ -3773,7 +3777,9 @@
pos = pos * 2; pos = pos * 2;
} }
val = buffer.readInt32LE(2); val = buffer.readInt32LE(2);
room.dueling_players[pos].lp = val; if (room.dueling_players[pos]) {
room.dueling_players[pos].lp = val;
}
} }
if (msg_name === 'PAY_LPCOST' && client.pos === 0) { if (msg_name === 'PAY_LPCOST' && client.pos === 0) {
pos = buffer.readUInt8(1); pos = buffer.readUInt8(1);
...@@ -3784,12 +3790,14 @@ ...@@ -3784,12 +3790,14 @@
pos = pos * 2; pos = pos * 2;
} }
val = buffer.readInt32LE(2); val = buffer.readInt32LE(2);
room.dueling_players[pos].lp -= val; if (room.dueling_players[pos]) {
if (room.dueling_players[pos].lp < 0) { room.dueling_players[pos].lp -= val;
room.dueling_players[pos].lp = 0; if (room.dueling_players[pos].lp < 0) {
} room.dueling_players[pos].lp = 0;
if ((0 < (ref2 = room.dueling_players[pos].lp) && ref2 <= 100)) { }
ygopro.stoc_send_chat_to_room(room, "${lp_low_self}", ygopro.constants.COLORS.PINK); if ((0 < (ref2 = room.dueling_players[pos].lp) && ref2 <= 100)) {
ygopro.stoc_send_chat_to_room(room, "${lp_low_self}", ygopro.constants.COLORS.PINK);
}
} }
} }
//track card count //track card count
......
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