45 lines
1.5 KiB
TypeScript
45 lines
1.5 KiB
TypeScript
// Learn TypeScript:
|
|
// - [Chinese] https://docs.cocos.com/creator/manual/zh/scripting/typescript.html
|
|
// - [English] http://www.cocos2d-x.org/docs/creator/manual/en/scripting/typescript.html
|
|
// Learn Attribute:
|
|
// - [Chinese] https://docs.cocos.com/creator/manual/zh/scripting/reference/attributes.html
|
|
// - [English] http://www.cocos2d-x.org/docs/creator/manual/en/scripting/reference/attributes.html
|
|
// Learn life-cycle callbacks:
|
|
// - [Chinese] https://docs.cocos.com/creator/manual/zh/scripting/life-cycle-callbacks.html
|
|
// - [English] http://www.cocos2d-x.org/docs/creator/manual/en/scripting/life-cycle-callbacks.html
|
|
|
|
const {ccclass, property} = cc._decorator;
|
|
|
|
@ccclass
|
|
export default class NewClass extends cc.Component {
|
|
|
|
@property(cc.Prefab)
|
|
alienship1: cc.Prefab = null;
|
|
|
|
@property(cc.Prefab)
|
|
alienship2: cc.Prefab = null;
|
|
|
|
@property(cc.Prefab)
|
|
alienship3: cc.Prefab = null;
|
|
|
|
spawnShips() {
|
|
var ships = [this.alienship1, this.alienship2, this.alienship3];
|
|
var ship = cc.instantiate(ships[Math.floor(Math.random() * ships.length)]);
|
|
const shipX = Math.random() * 800 - 400;
|
|
const shipY = this.node.getContentSize().height * 0.95;
|
|
ship.setPosition(shipX, shipY);
|
|
this.node.addChild(ship);
|
|
}
|
|
|
|
onLoad () {
|
|
var manager = cc.director.getCollisionManager();
|
|
manager.enabled = true;
|
|
}
|
|
|
|
start () {
|
|
this.schedule(this.spawnShips, 1, cc.macro.REPEAT_FOREVER, 1);
|
|
}
|
|
|
|
// update (dt) {}
|
|
}
|