按高能榜当领舞
parent
e6f14e7cc5
commit
b6464a4a7c
|
@ -153,7 +153,7 @@ function exitEv(id){
|
|||
$(`${id}`).remove();
|
||||
}
|
||||
// 进入广场
|
||||
function peopleObj(name,uid,say,action,active_time){
|
||||
function peopleObj(name,uid,say,action,active_time, is_admin){
|
||||
let yspHtml = '';
|
||||
let yspData = [
|
||||
{
|
||||
|
@ -166,15 +166,17 @@ function peopleObj(name,uid,say,action,active_time){
|
|||
peopleImg:`people-img0${Math.floor(Math.random()*6+1)}`,//人物图片
|
||||
ying_guang:`stick-0${Math.floor(Math.random()*5+1)}`,//荧光棒
|
||||
dancin:action,
|
||||
active_time: active_time
|
||||
active_time: active_time,
|
||||
is_admin: is_admin
|
||||
}
|
||||
]
|
||||
$.each(yspData, function (commentIndex, comment) {
|
||||
let bigStick = comment.is_admin == 1 ? 'stick-swing-big-tow' : ''
|
||||
yspHtml += `
|
||||
<div id="${comment.uid}" data-time="${comment.active_time}" class="dance-people data${peopleId}" style="top: ${comment.top}; left: ${comment.left};">
|
||||
<div class="speak ">${comment.say}</div>
|
||||
<div class="people-img ${comment.peopleImg} ${comment.dancin}">
|
||||
<div class="stick stick-swing stick-swing-big-tow ${comment.ying_guang}"></div>
|
||||
<div class="stick stick-swing ${bigStick} ${comment.ying_guang}"></div>
|
||||
<div class="people-name ">${comment.name}</div>
|
||||
</div>
|
||||
</div>`
|
||||
|
|
34
js/handle.js
34
js/handle.js
|
@ -147,10 +147,15 @@ function receiveMessage(event)
|
|||
|
||||
let dataList = JSON.parse(event.data)
|
||||
let data = dataList.dm
|
||||
// 舰长
|
||||
let adminList = dataList.admin
|
||||
// 高能榜top3
|
||||
let highList = dataList.high
|
||||
|
||||
// 目前硬编码大航海列表
|
||||
// let adminList = dataList.admin
|
||||
adminList = ['流域_墨绿绿'];
|
||||
// adminList = ['内有猛犬小心'];
|
||||
//
|
||||
// let highList = ['流域_墨绿绿'];
|
||||
// highList = ['内有猛犬小心'];
|
||||
|
||||
if (data.length <= 0) {
|
||||
return false
|
||||
|
@ -161,29 +166,29 @@ function receiveMessage(event)
|
|||
return false
|
||||
}
|
||||
|
||||
// 大航海列表
|
||||
if (adminList.length > 0) {
|
||||
// 高能榜列表
|
||||
if (highList.length > 0) {
|
||||
// 获取当前领舞人
|
||||
let currentLeader = getLeader()
|
||||
let now = (new Date).getTime()/1000
|
||||
if (currentLeader['name'] === '') {
|
||||
setLeader(adminList[0], leaderTime)
|
||||
setLeader(highList[0], leaderTime)
|
||||
} else {
|
||||
//领舞人存在 检查过期时间
|
||||
if (currentLeader['time'] === 0 || currentLeader['time'] < now) {
|
||||
// 切换领舞
|
||||
|
||||
// 当前领舞人
|
||||
let leaderIndex = adminList.indexOf(currentLeader['name'])
|
||||
let leaderIndex = highList.indexOf(currentLeader['name'])
|
||||
let newLeader
|
||||
if (leaderIndex == -1) {
|
||||
newLeader = adminList[0]
|
||||
newLeader = highList[0]
|
||||
} else {
|
||||
let newIndex = leaderIndex + 1
|
||||
if (newIndex >= adminList.length) {
|
||||
if (newIndex >= highList.length) {
|
||||
newIndex = 0
|
||||
}
|
||||
newLeader = adminList[newIndex]
|
||||
newLeader = highList[newIndex]
|
||||
}
|
||||
|
||||
setLeader(newLeader, leaderTime)
|
||||
|
@ -212,9 +217,10 @@ function receiveMessage(event)
|
|||
|
||||
let eventName = getEvent(data.danmaku)
|
||||
let isLeader = data.uname == leaderInfo ? 1 : 0
|
||||
let isAdmin = adminList.indexOf(data.uname) == -1 ? 0 : 1
|
||||
let dm = {text: data.danmaku, uid: data.uid, uname: data.uname,
|
||||
event: eventName,
|
||||
is_new: isNew, is_admin: 0, is_leader: isLeader,active_time: data.ts}
|
||||
is_new: isNew, is_admin: isAdmin, is_leader: isLeader,active_time: data.ts}
|
||||
let leader = {
|
||||
uid: 0, uname: leaderInfo, text: '', event: ''
|
||||
}
|
||||
|
@ -230,7 +236,7 @@ function receiveMessage(event)
|
|||
// 新用户
|
||||
if(dm.is_new==1){
|
||||
// if(dm.uname!=leader.uname){//如果弹幕的人的名字不等于领舞者的名字,就创建一个人物
|
||||
peopleObj(dm.uname,dm.uid,dm.text,dm.event,dm.active_time);
|
||||
peopleObj(dm.uname,dm.uid,dm.text,dm.event,dm.active_time,dm.is_admin);
|
||||
// }
|
||||
} else {
|
||||
// 老用户
|
||||
|
@ -238,6 +244,10 @@ function receiveMessage(event)
|
|||
//更新最近时间
|
||||
$(`#${dm.uid}`).attr('data-time', dm.active_time);
|
||||
$(`#${dm.uid} .speak`).removeClass("dn");
|
||||
if (dm.is_admin == 1) {
|
||||
// 舰长添加大宝剑
|
||||
$(`#${dm.uid} .stick`).addClass("stick-swing-big-tow");
|
||||
}
|
||||
setTimeout(()=>{
|
||||
$(`#${dm.uid} .speak`).addClass("dn");
|
||||
},3000)
|
||||
|
|
Loading…
Reference in New Issue