// 判断是不是移动平台
cc.sys.isMobile
// 动画系统
this.anim = this.getComponent(cc.Animation) as cc.Animation;
// 全场最佳 唯一 ,跨场景存活
cc.game.addPersistRootNode(this.node);
// 监听按键事件
cc.systemEvent.on(cc.SystemEvent.EventType.KEY_UP, this.onKeyUp, this)
cc.systemEvent.on(cc.SystemEvent.EventType.KEY_DOWN, this.onKeyDown, this)
// 注销按键事件
cc.systemEvent.off(cc.SystemEvent.EventType.KEY_UP, this.onKeyUp, this);
cc.systemEvent.off(cc.SystemEvent.EventType.KEY_DOWN, this.onKeyDown, this);
/**
* 键盘弹起事件
* @param event
*/
onKeyUp(event: KeyboardEvent){ ... }
// 监听触摸移动事件
this.node.on(cc.Node.EventType.TOUCH_MOVE, this.onMove, this);
// 注销触摸移动事件
this.node.off(cc.Node.EventType.TOUCH_MOVE, this.onMove, this);
/**
* 移动设备,手指移动,玩家飞机跟着跑
*/
onMove(event: cc.Event.EventTouch) {
this.node.position = event.getLocation()
}
// 开启碰撞检测
let manager = cc.director.getCollisionManager();
manager.enabled = true;
// 碰撞检测系统的 debug 绘制
manager.enabledDebugDraw = true;
/**
* 碰撞事件发生时
* @param other 对方节点
* @param self 自己的节点
*/
onCollisionEnter(other: cc.Collider, self: cc.Collider) {
// 如果是敌机,或者敌机的子弹,直接boom,结算积分嘲讽一波
if (!this.HAS_BOOM && (other.node.group == 'b_enemy' || other.node.group == 'enemy')) {
this.HAS_BOOM = true;
this.boom();
}
}
// 界面跳转
cc.director.loadScene('launch');
Cocos笔记
点赞
收藏