1.一開始的兩個(gè)步驟不變
//封裝一個(gè)獲取繪圖環(huán)境的函數(shù)function getCxt(){ var myCanvas = document.getElementById('floor'), myContext = myCanvas.getContext('2d'); return myContext; }//為了防止重復(fù)地獲取節(jié)點(diǎn)影響性能,我們將獲取到的繪圖環(huán)境(也就是畫筆對(duì)象)存起來(lái)var oCxt = getCxt();
2.接下來(lái)對(duì)畫坦克的函數(shù)進(jìn)行適當(dāng)改寫,因?yàn)楹瘮?shù)里重復(fù)代碼過(guò)多,同時(shí),增加兩個(gè)顏色的參數(shù),方便后面畫出不同的坦克:
//封裝一個(gè)畫坦克的函數(shù),傳兩個(gè)參數(shù)x,y,分別代表左上角的橫縱坐標(biāo)//再增加一個(gè)參數(shù)dir來(lái)表示方向 上下左右分別傳"u" "d" "l" "r"//再增加兩個(gè)參數(shù)color1與color2,用來(lái)表示坦克身上的兩種顏色,方便造出不同的坦克function drawTank(x,y,dir,color1,color2){ switch(dir){ case "u": case "d": oCxt.fil