Grunt

Grunt

Grunt是魔獸爭霸中獸族的基本地面部隊,簡稱"大G"。另外在英語中,有打呼嚕的意思。

基本介紹

  • 中文名獸人步兵
  • 外文名:Grunt
  • 攻擊方式:近戰
  • 攻擊類型:普通
  • 性別:男
部隊簡介,開源軟體項目,

部隊簡介

獸人步兵是獸族兇猛,殘暴的集中表現.也是獸族部落的前鋒和中堅力量.獸人步兵以他們的邪惡和野蠻著稱,揮舞著威力無窮的戰斧在戰場上不知疲倦的殺戮著.但是現在,在薩爾的領導下,獸人步兵開始回歸他們崇高的傳統.
狀態
訓練費用: 200 0 3
攻擊方式: 近戰
攻擊類型: 普通
護甲類型: 重型
初始護甲: 1 (升級後 7)
攻擊力: 平均19.5(升級後30)
單位等級: 3
生命值: 700 (升級後800)
攻擊間隔: 1.6
移動速度: 普通(Average,270)
訓練地點: 兵營
訓練時間: 30
必要建築: 無
訓練快捷鍵: G
簡介
在完成了狂暴力量和掠奪技能的升級後,獸人步兵可以作為強大的單位貫穿整場戰鬥.比起狼騎兵,獸人步兵的生命要高的多.將部隊轉換成牛頭人也許會更加有效但是卻需要你花費更多的資源和占用更多的人口.
魔法技能
掠奪 (被動技能)
在攻擊敵方建築的時候,可以獲得少量的金錢.如果從那個建築滿生命的時候開始攻擊,那么當你摧毀那個建築時,可以獲得相當於該建築建造費用50%的資源.
研究費用 研究建築 研究需求 升級時間
75 25 獸人大廳/要塞/堡壘 無 60 秒.
升級
狂暴力量
增加獸人步兵100點生命和3點攻擊力
研究費用 研究建築 研究需求 升級時間
50 150 兵營 要塞 40 秒.

開源軟體項目

.Grunt 是一個基於任務的JavaScript工程命令行構建工具。
Grunt
為何創建 grunt?
創建一個主要的或單檔案 repo 是相當容易的,你會承諾在不久後將會添加 linting 和單元測試。使用 grunt,你曾經所有的推遲的藉口將因此消失。創建一個新的項目總是會要做一些必要而繁瑣並重複的工作例如 linting,單元測試,連線以及細化檔案等,grunt 使得這些瑣碎的事更加簡單。
在許多的實驗與失敗嘗試後,我發現在一個巨大的 Makefile / Jakefile / Cakefile / Rakefile / ?akefile 中編寫與維護一整套“ JavaScript 構建過程”任務是壓倒性的,特別是考慮到我有多少個這樣的工程的時候。這種方式是沒法滿足我現行的需求的。
最後我意識到,一個帶有內建的常用任務的基於任務的構建工具對於我來說是最好的方式了。不幸的是,我沒有找到一個能夠真正滿足我要求的構建工具,所以我自己構建了一個。
版本發布
  • 2013年11月21日,Grunt v0.4.2 發布。
  • 2013年03月13日,Grunt v0.4.1 發布。
  • 2013年02月18日,Grunt v0.4.0 發布。
我如何構建 grunt ?
首先作為一個 JavaScript 開發者,我決定使用 Node.js 和 npm 是因為我關心的依賴組件(JSHint 和 UglifyJS)已經有 npm 模組了。也就是說,當 Node.js 被設計用來處理高並發異步 IO 驅動的網路服務時,它就注定不是設計用來當命令行構建工具的。但是沒關係,因為 grunt 能夠在 OS X,Linux 與 Windows 下良好工作。
只需要使用 npm install -g grunt 安裝就行。
內建任務處理
grunt 擁有一下預定義的任務:
  • concat - Concatenate files.
  • init - Generate project scaffolding from a predefined template.
  • lint - Validate files with JSHint.
  • min - Minify files with UglifyJS.
  • qunit - Run QUnit unit tests in a headless PhantomJS instance.
  • server - Start a static web server.
  • test - Run unit tests with nodeunit.
  • watch - Run predefined tasks whenever watched files change.
自定義任務
除了使用內建任務之外,你也能夠創建自己的任務,與內建任務默認行為不同?重寫一遍就好了。檢出grunt API documentation 和 內建任務源碼 ,這些能夠給你所有用來創建自定義任務的信息。
同時,創建 grunt 外掛程式允許你將關聯的任務輕鬆打包成 npm 模組以便安裝。Backbone Boilerplate便是一個很好的 grunt 外掛程式演示示例。
初始化新項目
這也許是我最喜歡的grunt特性,該 init task 初始化一個新項目,基於當前的環境以及一些問題的答案。一旦完成初始化,將會在生成一個帶有完整目錄結構的 grunt.js 配置檔案,包括基本的readme,license,package.json,示例源檔案以及單元測試(等)。這些檔案以及內容依賴於被選擇的模版。
可以在10秒鐘內為整個項目創建整體框架,而不是一點點勾畫出一個一次性的主體。“填空”,然後運行 grunt 用來 lint , concat , minify 我的代碼。如果一切都通過了,我便可以提交以及增進我的代碼。任何希望為該項目貢獻代碼的人都可以安裝 grunt 來做同樣的事。
當前還只有少量的內建初始化模版,包括一個 “jquery” 模版,它用來設計基本的 jQuery 外掛程式以適應即將到來的 jQuery 外掛程式站,還有一個一般的 “gruntfile” 模版用來快速的添加 grunt.js gruntfile 到一個已存在的項目中。你可以重寫初始化模版檔案,如果你想要自定義內建的初始化模版或者創建一個你自己的。你的模版不需要是與 grunt 關聯。你可以創建一個初始化模版用來構建模型或者視圖或者 package.js 檔案,做任何你想做的。
grunt 實際使用
每次 grunt 運行時,它將查看當前目錄下的名為 grunt.js 的檔案,又稱作 “gruntfile” 。如果該檔案沒有找到, grunt 將繼續在它的父目錄中查找直到找到。該檔案一般被放置在你的項目庫的根目錄下。它是一個由項目配置以及自定義項目特定任務組成的有效的 JavaScript 檔案。
如果你喜歡 “action shots” 下面便有一個 grunt 示例:
Grunt
Grunt實戰
我們已經在 Bocoup 中使用了 grunt 。Rick Waldron 使用grunt構建了 Ringmark mobile test suite 。 Scott González 與 J?rn Zaefferer 已經使用 grunt 構建任務來替代所有的就 jQuery 項目(就jQuery,jQuery UI 以及 QUnit)等等。
Grunt 還只是在內測中,然而我們已經在多個項目中使用它了,也許也會有一兩個小問題。該API已經經過多次疊代,已經被認為很穩定了。但是它仍然可能基於你的回饋在未來有所變更。
Grunt 例子
Grunt 和 Gruntplugins(grunt 外掛程式) 都是通過npm來管理和安裝,npm是一個node.js的包管理工具。
下面是一個 GruntFile 的例子, 項目的元數據是從 package.json 檔案中導入到 GruntFile 檔案中; grunt-contrib-uglify是一個 uglify 外掛程式,用來壓縮原始碼,並且可以使用元數據生成一個banner注釋。
在命令行下運行 grunt 命令會自動運行默認的 uglify 任務。
module.exports = function(grunt) {  // Project configuration.  grunt.initConfig({    pkg: grunt.file.readJSON('package.json'),    uglify: {      options: {        banner: '/*! <%= pkgname %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'      },      build: {        src: 'src/<%= pkgname %>.js',        dest: 'build/<%= pkgname %>.min.js'      }    }  });  // Load the plugin that provides the "uglify" task.  grunt.loadNpmTasks('grunt-contrib-uglify');  // Default task(s).  grunt.registerTask('default', ['uglify']);};

相關詞條

熱門詞條

聯絡我們