(function() { var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; var __module = nodeEnv ? module : {exports:{}}; var __filename = 'preview-scripts/assets/Script/tanhuang.js'; var __require = nodeEnv ? function (request) { return cc.require(request); } : function (request) { return __quick_compile_project__.require(request, __filename); }; function __define (exports, require, module) { if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict"; cc._RF.push(module, 'aa287RDrGdFu4EArMpW55C/', 'tanhuang'); // Script/tanhuang.ts "use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; return extendStatics(d, b); }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports, "__esModule", { value: true }); var Global_1 = require("./Global"); var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property; var tanhuang = /** @class */ (function (_super) { __extends(tanhuang, _super); function tanhuang() { var _this = _super !== null && _super.apply(this, arguments) || this; /** * 落脚点类型 2:tanhuang */ _this.KIND_FootHold = 2; /** * player是否落在落脚点上,默认false,没有 */ _this.isHold = false; _this.NodeH = 60; _this.GoUp = false; _this.gainSc = false; //弹簧加分标志 _this.main = null; /** * 落脚点对应动画 */ _this.Ani = null; _this.AniState = null; return _this; } tanhuang.prototype.onLoad = function () { this.node.y = -500; this.node.x = (Math.random() * 2 - 1) * 140; this.Ani = this.node.getComponent(cc.Animation); this.gainSc = false; }; tanhuang.prototype.start = function () { this.Ding = this.main.node.getChildByName("BgNode").getChildByName("LifeDing").getChildByName("ding"); }; tanhuang.prototype.update = function (dt) { // console.log(Global.instance.CollisionFlag); var self = this; if (Global_1.default.instance.OverFlag) { self.enabled = false; } else { this.node.active = true; this.node.y += Global_1.default.instance.FHFallSpeed; if (this.node.isHold) { Global_1.default.instance.CollisionFlag = true; Global_1.default.instance.TheHolder = this.node; } if (this.node.y > 360) { if (this.node.isHold) { Global_1.default.instance.CollisionFlag = false; this.node.isHold = false; } this.node.destroy(); } } }; /** * 初始化函数 * @param main 主场景 */ tanhuang.prototype.init = function (main) { this.main = main; }; /** * 获取落脚点类型 */ tanhuang.prototype.getKind = function () { return this.KIND_FootHold; }; /** * 碰撞 * @param other 碰撞主体player * @param self 碰撞主体落脚点tanhuang */ tanhuang.prototype.onCollisionEnter = function (other, self) { var rootself = this; if (rootself.GoUp) { return; } if (rootself.main == null) { rootself.main = Global_1.default.instance.getMN(); } if (other.tag === 111) { if (rootself.gainSc == false) { rootself.main.Score(); rootself.gainSc = true; rootself.GoUp = true; } return; } else { Global_1.default.instance.KIND_FootHold = rootself.KIND_FootHold; if (!Global_1.default.instance.CollisionFlag) { Global_1.default.instance.CollisionFlag = true; Global_1.default.instance.TheHolder = rootself.node; rootself.isHold = true; other.node.y = self.node.y + 60; var spawn = void 0; spawn = cc.spawn(cc.callFunc(function () { if (rootself.Ani == null) { return; } rootself.AniState = rootself.Ani.play("tanhuang"); rootself.AniState.speed = 0.8; }), cc.callFunc(function () { other.node.runAction(cc.moveBy(0.15, 0, 50)); Global_1.default.instance.CollisionFlag = false; rootself.isHold = false; other.node.getComponent("Playcontroler").enabled = false; })); rootself.scheduleOnce(function () { other.node.getComponent("Playcontroler").enabled = true; }, 0.27); rootself.scheduleOnce(function () { // console.log(Global.instance.CollisionFlag+"5") Global_1.default.instance.CollisionFlag = false; rootself.isHold = false; rootself.Ani.stop(); }, 0.41); other.node.runAction(spawn); } } }; __decorate([ property(Boolean) ], tanhuang.prototype, "isHold", void 0); __decorate([ property(Number) ], tanhuang.prototype, "NodeH", void 0); tanhuang = __decorate([ ccclass ], tanhuang); return tanhuang; }(cc.Component)); exports.default = tanhuang; cc._RF.pop(); } if (nodeEnv) { __define(__module.exports, __require, __module); } else { __quick_compile_project__.registerModuleFunc(__filename, function () { __define(__module.exports, __require, __module); }); } })(); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFx0YW5odWFuZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxtQ0FBOEI7QUFFeEIsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFHMUM7SUFBc0MsNEJBQVk7SUFBbEQ7UUFBQSxxRUFxSUM7UUFwSUc7O1dBRUc7UUFDSyxtQkFBYSxHQUFHLENBQUMsQ0FBQztRQUMxQjs7V0FFRztRQUVJLFlBQU0sR0FBRyxLQUFLLENBQUM7UUFLZixXQUFLLEdBQVUsRUFBRSxDQUFDO1FBRXpCLFVBQUksR0FBRyxLQUFLLENBQUM7UUFFTCxZQUFNLEdBQUcsS0FBSyxDQUFDLENBQUEsUUFBUTtRQUN2QixVQUFJLEdBQWEsSUFBSSxDQUFDO1FBQzlCOztXQUVHO1FBQ0gsU0FBRyxHQUFnQixJQUFJLENBQUM7UUFDeEIsY0FBUSxHQUFHLElBQUksQ0FBQzs7SUE2R3BCLENBQUM7SUExR0cseUJBQU0sR0FBTjtRQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFDLENBQUMsR0FBQyxDQUFDLENBQUMsR0FBQyxHQUFHLENBQUM7UUFDdkMsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVELHdCQUFLLEdBQUw7UUFDSSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxjQUFjLENBQUMsVUFB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QUMsTUFBTSxDQUFDOzJDQUNRO0lBZFIsUUFBUTtRQUQ1QixPQUFPO09BQ2EsUUFBUSxDQXFJNUI7SUFBRCxlQUFDO0NBcklELEFBcUlDLENBcklxQyxFQUFFLENBQUMsU0FBUyxHQXFJakQ7a0JBcklvQixRQUFRIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE1haW5TY2VuZSBmcm9tIFwiLi9NYWluU2NlbmVcIjtcclxuaW1wb3J0IEdsb2JhbCBmcm9tIFwiLi9HbG9iYWxcIjtcclxuXHJcbmNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5cclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgdGFuaHVhbmcgZXh0ZW5kcyBjYy5Db21wb25lbnQge1xyXG4gICAgLyoqXHJcbiAgICAgKiDokL3ohJrngrnnsbvlnosgMu+8mnRhbmh1YW5nXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgS0lORF9Gb290SG9sZCA9IDI7XHJcbiAgICAvKipcclxuICAgICAqIHBsYXllcuaYr+WQpuiQveWcqOiQveiEmueCueS4iu+8jOm7mOiupGZhbHNl77yM5rKh5pyJXHJcbiAgICAgKi9cclxuICAgIEBwcm9wZXJ0eShCb29sZWFuKVxyXG4gICAgcHVibGljIGlzSG9sZCA9IGZhbHNlO1xyXG5cclxuXHJcbiAgICBcclxuICAgIEBwcm9wZXJ0eShOdW1iZXIpXHJcbiAgICBwdWJsaWMgTm9kZUg6bnVtYmVyID0gNjA7XHJcblxyXG4gICAgR29VcCA9IGZhbHNlO1xyXG5cclxuICAgIHByaXZhdGUgZ2FpblNjID0gZmFsc2U7Ly/lvLnnsKfliqDliIbmoIflv5dcclxuICAgIHByaXZhdGUgbWFpbjpNYWluU2NlbmUgPSBudWxsO1xyXG4gICAgLyoqXHJcbiAgICAgKiDokL3ohJrngrnlr7nlupTliqjnlLtcclxuICAgICAqL1xyXG4gICAgQW5pOmNjLkFuaW1hdGlvbiA9IG51bGw7XHJcbiAgICBBbmlTdGF0ZSA9IG51bGw7XHJcbiAgICBEaW5nO1xyXG5cclxuICAgIG9uTG9hZCAoKSB7XHJcbiAgICAgICAgdGhpcy5ub2RlLnkgPSAtNTAwO1xyXG4gICAgICAgIHRoaXMubm9kZS54ID0gKCBNYXRoLnJhbmRvbSgpKjItMSkqMTQwO1xyXG4gICAgICAgIHRoaXMuQW5pID0gdGhpcy5ub2RlLmdldENvbXBvbmVudChjYy5BbmltYXRpb24pO1xyXG4gICAgICAgIHRoaXMuZ2FpblNjID0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgICAgIHRoaXMuRGluZyA9IHRoaXMubWFpbi5ub2RlLmdldENoaWxkQnlOYW1lKFwiQmdOb2RlXCIpLmdldENoaWxkQnlOYW1lKFwiTGlmZURpbmdcIikuZ2V0Q2hpbGRCeU5hbWUoXCJkaW5nXCIpO1xyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZSAoZHQpIHtcclxuICAgICAgICAvLyBjb25zb2xlLmxvZyhHbG9iYWwuaW5zdGFuY2UuQ29sbGlzaW9uRmxhZyk7XHJcbiAgICAgICAgbGV0IHNlbGYgPSB0aGlzO1xyXG4gICAgICAgIGlmKEdsb2JhbC5pbnN0YW5jZS5PdmVyRmxhZyl7XHJcbiAgICAgICAgICAgIHNlbGYuZW5hYmxlZCA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLnkgKz0gR2xvYmFsLmluc3RhbmNlLkZIRmFsbFNwZWVkO1xyXG4gICAgICAgICAgICBpZih0aGlzLm5vZGUuaXNIb2xkKXtcclxuICAgICAgICAgICAgICAgIEdsb2JhbC5pbnN0YW5jZS5Db2xsaXNpb25GbGFnID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIEdsb2JhbC5pbnN0YW5jZS5UaGVIb2xkZXIgPSB0aGlzLm5vZGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYodGhpcy5ub2RlLnk+MzYwKXtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMubm9kZS5pc0hvbGQpe1xyXG4gICAgICAgICAgICAgICAgICAgIEdsb2JhbC5pbnN0YW5jZS5Db2xsaXNpb25GbGFnID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ub2RlLmlzSG9sZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLmRlc3Ryb3koKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDliJ3lp4vljJblh73mlbBcclxuICAgICAqIEBwYXJhbSBtYWluIOS4u+WcuuaZr1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgaW5pdChtYWluOk1haW5TY2VuZSl7XHJcbiAgICAgICAgdGhpcy5tYWluID0gbWFpbjtcclxuICAgIH1cclxuICAgIC8qKlxyXG4gICAgICog6I635Y+W6JC96ISa54K557G75Z6LXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXRLaW5kKCl7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuS0lORF9Gb290SG9sZDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIOeisOaSnlxyXG4gICAgICogQHBhcmFtIG90aGVyIOeisOaSnuS4u+S9k3BsYXllclxyXG4gICAgICogQHBhcmFtIHNlbGYg56Kw5pKe5Li75L2T6JC96ISa54K5dGFuaHVhbmdcclxuICAgICAqL1xyXG5cclxuICAgIG9uQ29sbGlzaW9uRW50ZXIob3RoZXIsc2VsZil7XHJcbiAgICAgICAgXHJcbiAgICAgICAgbGV0IHJvb3RzZWxmID0gdGhpcztcclxuICAgICAgICBpZihyb290c2VsZi5Hb1VwKXtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZihyb290c2VsZi5tYWluID09bnVsbCl7XHJcbiAgICAgICAgICAgIHJvb3RzZWxmLm1haW4gPSBHbG9iYWwuaW5zdGFuY2UuZ2V0TU4oKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYob3RoZXIudGFnPT09MTExKXtcclxuICAgICAgICAgICAgaWYocm9vdHNlbGYuZ2FpblNjPT1mYWxzZSl7XHJcbiAgICAgICAgICAgICAgICByb290c2VsZi5tYWluLlNjb3JlKCk7XHJcbiAgICAgICAgICAgICAgICByb290c2VsZi5nYWluU2MgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgcm9vdHNlbGYuR29VcCA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICBHbG9iYWwuaW5zdGFuY2UuS0lORF9Gb290SG9sZCA9IHJvb3RzZWxmLktJTkRfRm9vdEhvbGQ7XHJcbiAgICAgICAgICAgIGlmKCFHbG9iYWwuaW5zdGFuY2UuQ29sbGlzaW9uRmxhZyl7XHJcbiAgICAgICAgICAgICAgICBHbG9iYWwuaW5zdGFuY2UuQ29sbGlzaW9uRmxhZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBHbG9iYWwuaW5zdGFuY2UuVGhlSG9sZGVyID0gcm9vdHNlbGYubm9kZTtcclxuICAgICAgICAgICAgICAgIHJvb3RzZWxmLmlzSG9sZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBvdGhlci5ub2RlLnkgPSBzZWxmLm5vZGUueSs2MDtcclxuICAgICAgICAgICAgICAgIGxldCBzcGF3bjtcclxuICAgICAgICAgICAgICAgIHNwYXduID0gY2Muc3Bhd24oY2MuY2FsbEZ1bmMoZnVuY3Rpb24oKXtcclxuICAgICAgICAgICAgICAgICAgICBpZihyb290c2VsZi5Bbmk9PW51bGwpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHJvb3RzZWxmLkFuaVN0YXRlID0gcm9vdHNlbGYuQW5pLnBsYXkoXCJ0YW5odWFuZ1wiKTtcclxuICAgICAgICAgICAgICAgICAgICByb290c2VsZi5BbmlTdGF0ZS5zcGVlZCA9IDAuODtcclxuICAgICAgICAgICAgICAgIH0pLGNjLmNhbGxGdW5jKGZ1bmN0aW9uKCl7XHJcbiAgICAgICAgICAgICAgICAgICAgb3RoZXIubm9kZS5ydW5BY3Rpb24oY2MubW92ZUJ5KDAuMTUsMCw1MCkpO1xyXG4gICAgICAgICAgICAgICAgICAgIEdsb2JhbC5pbnN0YW5jZS5Db2xsaXNpb25GbGFnID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgcm9vdHNlbGYuaXNIb2xkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgb3RoZXIubm9kZS5nZXRDb21wb25lbnQoXCJQbGF5Y29udHJvbGVyXCIpLmVuYWJsZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH0pKTtcclxuICAgICAgICAgICAgICAgIHJvb3RzZWxmLnNjaGVkdWxlT25jZSgoKT0+e1xyXG4gICAgICAgICAgICAgICAgICAgIG90aGVyLm5vZGUuZ2V0Q29tcG9uZW50KFwiUGxheWNvbnRyb2xlclwiKS5lbmFibGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH0sMC4yNyk7XHJcbiAgICAgICAgICAgICAgICByb290c2VsZi5zY2hlZHVsZU9uY2UoZnVuY3Rpb24oKXtcclxuICAgICAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhHbG9iYWwuaW5zdGFuY2UuQ29sbGlzaW9uRmxhZytcIjVcIilcclxuICAgICAgICAgICAgICAgICAgICBHbG9iYWwuaW5zdGFuY2UuQ29sbGlzaW9uRmxhZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3RzZWxmLmlzSG9sZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3RzZWxmLkFuaS5zdG9wKCk7XHJcbiAgICAgICAgICAgICAgICB9LDAuNDEpO1xyXG4gICAgICAgICAgICAgICAgb3RoZXIubm9kZS5ydW5BY3Rpb24oc3Bhd24pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==