ソースを参照

vikar now sells basic runes

tags/v0.1.10^2
big bad waffle 6年前
コミット
b0936b9f54
9個のファイルの変更780行の追加637行の削除
  1. +4
    -8
      src/client/ui/templates/createCharacter/createCharacter.js
  2. +9
    -1
      src/client/ui/templates/createCharacter/styles.less
  3. +15
    -1
      src/server/components/extensions/factionVendor.js
  4. +23
    -1
      src/server/config/maps/tutorial/dialogues.js
  5. +699
    -625
      src/server/config/maps/tutorial/zone.js
  6. +1
    -1
      src/server/items/generator.js
  7. +3
    -0
      src/server/items/generators/worth.js
  8. +25
    -0
      src/server/mods/class-necromancer/index.js
  9. +1
    -0
      src/server/world/worker.js

+ 4
- 8
src/client/ui/templates/createCharacter/createCharacter.js ファイルの表示

@@ -59,8 +59,8 @@ define([

this.costume = -1;

this.class = Object.keys(result)[0] || '';
this.find('.txtClass').html(this.class);
this.class = 'wizard';
this.find('.txtClass').html('Wizard');

this.changeCostume({
target: this.find('.txtCostume')
@@ -143,18 +143,14 @@ define([
changeClass: function (e) {
var el = $(e.target);
var classes = ['wizard', 'warrior', 'thief'];
var nextIndex = (classes.indexOf(el.html()) + 1) % classes.length;
var nextIndex = (classes.indexOf(this.class) + 1) % classes.length;
this.costume = -1;

var newClass = classes[nextIndex];

el.html(newClass);
el.html(newClass[0].toUpperCase() + newClass.substr(1));

this.class = newClass;

this.changeCostume({
target: this.find('.txtCostume')
});
},

changeCostume: function (e) {


+ 9
- 1
src/client/ui/templates/createCharacter/styles.less ファイルの表示

@@ -46,8 +46,16 @@
}
}

.txtClass {
&:before {
content: 'Class: ';
}
}

.txtCostume {
&:before {
content: 'Skin: ';
}
}
}



+ 15
- 1
src/server/components/extensions/factionVendor.js ファイルの表示

@@ -159,10 +159,24 @@ define([
var skinBlueprint = skins.getBlueprint(item.id);
item.name = skinBlueprint.name;
item.sprite = skinBlueprint.sprite;
} else if (item.generate) {
var generated = generator.generate(item);
if (item.worth)
generated.worth = item.worth;
if (item.infinite)
generated.infinite = true;
item = generated;
}

list.items.push(item);
var id = 0;
list.items.forEach(function (checkItem) {
if (checkItem.id >= id)
id = checkItem.id + 1;
});

item.id = id;

list.items.push(item);
}
},



+ 23
- 1
src/server/config/maps/tutorial/dialogues.js ファイルの表示

@@ -193,7 +193,7 @@ module.exports = {
'1': {
msg: [{
msg: `Is there anything I can help you with today?`,
options: [1.1]
options: [1.1, 1.2, 1.3]
}],
options: {
'1.1': {
@@ -203,6 +203,14 @@ module.exports = {
return !!fullSet;
},
goto: 'tradeCards'
},
'1.2': {
msg: `I would like to buy some runes`,
goto: 'tradeBuy'
},
'1.3': {
msg: `I have some items I would like to sell`,
goto: 'tradeSell'
}
}
},
@@ -232,6 +240,20 @@ module.exports = {

return `Thank you.`;
}
},
tradeBuy: {
cpn: 'trade',
method: 'startBuy',
args: [{
targetName: 'vikar'
}]
},
tradeSell: {
cpn: 'trade',
method: 'startSell',
args: [{
targetName: 'vikar'
}]
}
},
priest: {


+ 699
- 625
src/server/config/maps/tutorial/zone.js
ファイル差分が大きすぎるため省略します
ファイルの表示


+ 1
- 1
src/server/items/generator.js ファイルの表示

@@ -15,7 +15,7 @@ define([
) {
var generators = [g1, g2, g3, g4, g5, g6, g11, g7];
var materialGenerators = [g6, g8];
var spellGenerators = [g1, g9];
var spellGenerators = [g1, g9, g7];
var currencyGenerators = [g10];

var generator = {


+ 3
- 0
src/server/items/generators/worth.js ファイルの表示

@@ -6,6 +6,9 @@ define([
return {
generate: function (item, blueprint) {
item.worth = ~~(Math.pow(item.level, 1.5) + (Math.pow((item.quality + 1), 2) * 10));

if (item.spell)
item.worth *= 5;
}
};
});

+ 25
- 0
src/server/mods/class-necromancer/index.js ファイルの表示

@@ -21,6 +21,31 @@ define([
this.events.on('onBeforeGetSpellTemplate', this.beforeGetSpellTemplate.bind(this));
this.events.on('onBeforeGetResourceList', this.beforeGetResourceList.bind(this));
this.events.on('onBeforeGetAnimations', this.beforeGetAnimations.bind(this));
this.events.on('onAfterGetZone', this.onAfterGetZone.bind(this));
},

onAfterGetZone: function (zone, config) {
if (zone != 'tutorial')
return;

var newRunes = [{
generate: true,
spell: true,
spellQuality: 'basic',
infinite: true,
spellName: 'harvest life',
worth: 3
}, {
generate: true,
spell: true,
spellQuality: 'basic',
infinite: true,
spellName: 'summon skeleton',
worth: 3
}];

var vikarTrade = config.mobs.vikar.properties.cpnTrade;
Array.prototype.push.apply(vikarTrade.items.extra, newRunes);
},

beforeGetAnimations: function (animations) {


+ 1
- 0
src/server/world/worker.js ファイルの表示

@@ -58,6 +58,7 @@ requirejs([
return;

console.log('Error Logged: ' + e.toString());
console.log(e.stack);

io.set({
ent: new Date(),


読み込み中…
キャンセル
保存