Browse Source

Merge branch 'master' into 'master'

335-loot-linking-enhancement

See merge request Isleward/isleward!518
merge-requests/518/merge
Nodal 6 months ago
parent
commit
b5282c0ddd
3 changed files with 40 additions and 23 deletions
  1. +1
    -9
      src/client/ui/templates/inventory/inventory.js
  2. +22
    -3
      src/client/ui/templates/messages/messages.js
  3. +17
    -11
      src/server/components/social/chat.js

+ 1
- 9
src/client/ui/templates/inventory/inventory.js View File

@@ -143,15 +143,7 @@ define([
if (!forceCtrl && !input.isKeyDown('ctrl', true))
return;

client.request({
cpn: 'social',
method: 'chat',
data: {
message: '{' + item.name + '}',
item: item,
type: 'global'
}
});
events.emit('beforeInventoryLinkItem', msg);
},

onMouseDown: function (el, item, down, e) {


+ 22
- 3
src/client/ui/templates/messages/messages.js View File

@@ -45,7 +45,8 @@ define([
'onClickFilter',
'onGetCustomChatChannels',
'onKeyDown',
'onKeyUp'
'onKeyUp',
'beforeInventoryLinkItem'
].forEach(e => this.onEvent(e, this[e].bind(this)));

this.find('.filter:not(.channel)').on('click', this.onClickFilter.bind(this));
@@ -170,6 +171,20 @@ define([
elInput[0].setSelectionRange(0, 7);
},

beforeInventoryLinkItem: function (msg) {
//code for linking items from inventory
client.request({
cpn: 'social',
method: 'chat',
data: {
message: '{' + msg.item.name + '}',
item: msg.item,
type: this.currentChannel,
subType: this.currentSubChannel
}
});
},

//Remember private and custom channels used
trackHistory: function (msg) {
const { subType, source, target, channel } = msg;
@@ -214,8 +229,12 @@ define([
}

if (m.item) {
let source = message.split(':')[0];
message = source + ': <span class="q' + (m.item.quality || 0) + '">' + message.replace(source + ': ', '') + '</span>';
let parts = message.split(':');
//assuming item names will never have a colon in them
let source = parts.slice(0, -1);
let rest = parts[parts.length - 1];
message = source.join(':') + ': <span class="q' + (m.item.quality || 0) + '">' + rest.trim() + '</span>';
}

let el = $('<div class="list-message ' + m.class + '">' + message + '</div>')


+ 17
- 11
src/server/components/social/chat.js View File

@@ -72,22 +72,25 @@ const sendPartyMessage = ({ party, obj }, msg) => {
return;
}

let charname = obj.auth.charname;
let message = msg.data.message;

const sendMessage = `(party: ${obj.auth.charname}): ${message}`;
const eventData = {
onGetMessages: [{
messages: [{
class: 'color-tealC',
message: sendMessage,
item: msg.data.item,
type: 'chat',
source: obj.name
}]
}]
};

party.forEach(p => {
let player = cons.players.find(c => c.id === p);

player.socket.emit('events', {
onGetMessages: [{
messages: [{
class: 'color-tealC',
message: '(party: ' + charname + '): ' + message,
type: 'chat',
source: obj.name
}]
}]
});
player.socket.emit('events', eventData);
});
};

@@ -118,6 +121,7 @@ const sendCustomChannelMessage = (cpnSocial, msg) => {
messages: [{
class: 'color-grayB',
message: sendMessage,
item: msg.data.item,
type: 'chat',
subType: 'custom',
channel: channel.trim(),
@@ -150,6 +154,7 @@ const sendPrivateMessage = ({ obj: { name: sourceName, socket } }, msg) => {
messages: [{
class: 'color-yellowB',
message: '(you to ' + targetName + '): ' + message,
item: msg.data.item,
type: 'chat',
subType: 'privateOut',
target: targetName
@@ -163,6 +168,7 @@ const sendPrivateMessage = ({ obj: { name: sourceName, socket } }, msg) => {
messages: [{
class: 'color-yellowB',
message: '(' + sourceName + ' to you): ' + message,
item: msg.data.item,
type: 'chat',
subType: 'privateIn',
source: sourceName


Loading…
Cancel
Save