Scimitar of the Seven: diamond Daybreaker(shield): diamond
Boulder Breaker: Cobble Breaker + diamond + Flint * 5
<?xml version="1.0" encoding="UTF-8"?> | |
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | |
<plist version="1.0"> | |
<dict> | |
<key>AMApplicationBuild</key> | |
<string>419</string> | |
<key>AMApplicationVersion</key> | |
<string>2.6</string> | |
<key>AMDocumentVersion</key> | |
<string>2</string> |
// Omit the last argument (the callback) of the original function and use promise instead. | |
function wrapAsPromise (func) { | |
var expectedArgCount = func.length - 1; | |
return function () { | |
// Only the last argument (the callback) can be missing. | |
switch (true) { | |
case arguments.length < expectedArgCount: | |
throw new Error('Not enough arguments given. Expecting ' + expectedArgCount + '.'); | |
break; | |
case arguments.length < expectedArgCount: |
/** | |
* @param {function} func - The function to call. The payload of the promise. | |
* @param {Array.<*>} args - The list of arguments for `func`. | |
* @param {*} ctx - The context for `func`. | |
*/ | |
function makePromise(func, args, ctx) { | |
return new Promise(function (resolve, reject) { | |
try { | |
func.apply(ctx, Array.prototype.concat.call(args, function (err, result) { | |
if (err) { reject(err); } else { resolve(result); } |
node_modules |
@media print { | |
/* Hide everything other than code. */ | |
body.page-blob .header[role=banner], | |
body.page-blob [role=main] .pagehead.repohead, | |
body.page-blob [role=main] .repository-content > :not(.file), | |
body.page-blob [role=main] .repository-content > .file > .file-header > .file-actions, | |
body.page-blob .site-footer-container { | |
display: none; | |
} |
import { Template } from 'meteor/templating'; | |
/** | |
* Returns true when any of the provided arguments is true. | |
* Example: | |
* > {{#if some varA varB varC}} | |
* > At least something is true. | |
* > {{/if}} | |
*/ | |
Template.registerHelper('some', (...args) => args.some(Boolean)); |
#!/bin/bash | |
# Login to heroku CLI. | |
heroku login | |
# Create a new app project on heroku. | |
heroku create <appName> --stack cedar --region us --buildpack https://github.com/AdmitHub/meteor-buildpack-horse.git | |
# Add heroku remote to the git config file. | |
heroku git:remote -a meteor-mdc-demo |
/** | |
* Runs a sub composition that is invisible to its parent composition. | |
* @param {...Function} funcs | |
* @return {a -> Promise(a)} | |
*/ | |
const spyPipeP = (...funcs) => (val) => R.partialRight(R.pipeP, [() => val])(...funcs)(val); | |
/** | |
* Runs a sub composition that is invisible to its parent composition. | |
* @param {...Function} funcs |
Here are the requirements for forging new weapons.
Left side is the minimum (tested) forging levels and money required. Right side is the outcome (with level 0, of course).
(no options)
means after forging to the max level, the item disappears from the list, meaning it's impossible to further forge it.
(no options as of lv.4)
means so far I've tested forging this weapon to level 4 and haven't seen any options appearing for new weapons.
Note that it is possible for options to appear when the weapon reaches maximum level.