games/FullFire/assets/scripts/manager/CannonManager.ts

36 lines
1.4 KiB
TypeScript

import CannonCtr from "../CannonCtr";
import ResManager from "./ResManager";
// Learn TypeScript:
// - [Chinese] http://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] http://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] http://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 CannonManager{
private static instance:CannonManager = null;
static getInstance():CannonManager{
if(this.instance == null){
this.instance = new CannonManager();
}
return this.instance;
}
//创建一个大炮
public static createCannon(cannonId:number,cannonParent:cc.Node,callBack:Function){
ResManager.loadPrefab("prefabs/cannons/"+"cannon" +cannonId.toString(),function(prefab){
let cannonNode = cc.instantiate(prefab);
let cannonCtr = (cannonNode as cc.Node).getComponent<CannonCtr>(CannonCtr);
cannonCtr.node.setParent(cannonParent)
callBack(cannonCtr)
}.bind(this));
}
}