// Learn TypeScript: // - https://docs.cocos.com/creator/manual/en/scripting/typescript.html // Learn Attribute: // - https://docs.cocos.com/creator/manual/en/scripting/reference/attributes.html // Learn life-cycle callbacks: // - https://docs.cocos.com/creator/manual/en/scripting/life-cycle-callbacks.html const {ccclass, property} = cc._decorator; @ccclass export default class NewClass extends cc.Component { //圖片編號變數 num = 0; //圖片陣列變數 sprfrms:cc.SpriteFrame[] = []; onLoad () { //動態加載assets到sprfrms陣列 let self = this; cc.resources.loadDir("bird", cc.SpriteFrame, function(err, assets:[cc.SpriteFrame]){ self.sprfrms = assets; }); //啟動計時器 self.schedule(self.timer, 0.2); //鍵盤上下左右移動bird cc.systemEvent.on("keydown", self.move, self); } timer() { //圖片編號+1 this.num += 1; if(this.num >= 18)this.num = 0; //抓取節點的組件sprite var comp1 = this.getComponent(cc.Sprite); comp1.spriteFrame = this.sprfrms[this.num]; } move (e:cc.Event.EventKeyboard) { cc.log(e.keyCode); cc.log(cc.macro.KEY.left); if(e.keyCode == cc.macro.KEY.right) this.node.x += 20; else if(e.keyCode == cc.macro.KEY.left) this.node.x -= 20; else if(e.keyCode == cc.macro.KEY.up) this.node.y += 20; else if(e.keyCode == cc.macro.KEY.down) this.node.y -= 20; } // update (dt) {} }