49 lines
1.5 KiB
JavaScript
Executable File
49 lines
1.5 KiB
JavaScript
Executable File
"use strict";
|
|
const gulp = require('gulp');
|
|
const yargs = require('yargs');
|
|
const tail = require('../tasks/tail');
|
|
const Haxe = require('../tasks/haxe');
|
|
const FlashPlayer = require('../tasks/flashplayer');
|
|
const version = require('./version');
|
|
const dateformat = require('dateformat');
|
|
const prepare = require('./prepare');
|
|
const debug = require('../tasks/debug');
|
|
|
|
|
|
const build = (params) => function build() {
|
|
params = params || {};
|
|
const argv = yargs.argv;
|
|
const values = {
|
|
build: dateformat(new Date(), 'yyyy-mm-dd HH:MM:ss'),
|
|
};
|
|
let outputFile = 'tankz.swf';
|
|
if (params.outputFile) {
|
|
outputFile = params.outputFile;
|
|
}
|
|
if (argv.dev) {
|
|
values.dev = true;
|
|
if (!values['dev.address']) values['dev.address'] = argv['dev-address'] || 'localhost';
|
|
if (!values['dev.port']) values['dev.port'] = argv['dev-port'] || 5000;
|
|
}
|
|
return gulp.src('.')
|
|
.pipe(new Haxe().openfl({
|
|
command: 'build',
|
|
platform: 'flash',
|
|
version: version,
|
|
values: values,
|
|
outputFile: outputFile,
|
|
}))
|
|
.pipe(gulp.dest('target'));
|
|
};
|
|
|
|
const test = (build) => function test() {
|
|
const argv = yargs.argv;
|
|
return build()
|
|
.pipe(new FlashPlayer().run(argv.dev))
|
|
.pipe(tail(debug.log));
|
|
};
|
|
|
|
|
|
exports['client'] = gulp.series(prepare(Haxe.ID), build());
|
|
exports['client:test'] = gulp.series(prepare(Haxe.ID, FlashPlayer.ID), test(build()));
|