Subversion Repository Public Repository

Nextrek

1
{"uid":"697FC39AK0958A420CS9073ED0E1B997C3EA","isLoaded":true,"lastModificationTime":0,"items":{"name":"Object_Hotspot","type":"game_script","order":2,"content":"# ===================================================================\n#\n#   Script: Object_Hotspot\n#\n#   $$COPYRIGHT$$\n#\n# ===================================================================\nclass Object_Hotspot extends ui.Object_UIElement\n    Object.defineProperty(Object_Hotspot.prototype, \"selected\",\n        set: (v) -> @behavior.selected = v\n        get: -> @behavior.selected\n    )\n    \n    ###*\n    * A hotspot object to define an area on the screen which can respond\n    * to user-actions like mouse/touch actions. A hotspot can have multiple\n    * images for different states like hovered, selected, etc.\n    *\n    * @module ui\n    * @class Object_Hotspot\n    * @extends ui.Object_UIElement\n    * @memberof ui\n    * @constructor\n    ### \n    constructor: (imageName, imageHandling, flipX) ->\n        super\n        \n        ###*\n        * The UI object's source rectangle on screen.\n        * @property srcRect\n        * @type gs.Rect\n        ###\n        @srcRect = null\n        \n        ###*\n        * The UI object's visual-component to display the game object on screen.\n        * @property visual\n        * @type gs.Component_Frame\n        ###\n        @visual = new gs.Component_Sprite()\n        \n        ###*\n        * The object's image-handling.\n        * @property imageHandling\n        * @type gs.ImageHandling\n        ###\n        @imageHandling = imageHandling ? 1\n        \n        ###*\n        * A behavior-component to hotspot-specific behavior to the object.\n        * @property behavior\n        * @type gs.Component_HotspotBehavior\n        ###\n        @behavior = new gs.Component_HotspotBehavior()\n        @behavior.imageHandling = @imageHandling\n        \n        ###*\n        * The UI object's bitmap used for visual presentation.\n        * @property bitmap\n        * @type gs.Bitmap\n        ###\n        @bitmap = ResourceManager.getBitmap(\"Graphics/Pictures/#{imageName}\")\n        \n        if @bitmap?\n            if @imageHandling == 1\n                @srcRect = new Rect(0, @bitmap.height / 2, @bitmap.width, @bitmap.height / 2)\n            else\n                @srcRect = new Rect(0, 0, @bitmap.width || 1, @bitmap.height || 1)\n            @dstRect.set(0, 0, @srcRect.width || 1, @srcRect.height || 1)\n        else\n            @srcRect = new Rect(0, 0, 1, 1)\n            @dstRect.set(0, 0,  1,  1)\n            \n        if flipX\n            @visual.mirror = yes\n  \n        @addComponent(@behavior)\n        @addComponent(@visual)\n        \nui.Object_Hotspot = Object_Hotspot","parentId":"4F9670D7KD392A494FS953DE4377B04AA7A6","folder":false,"compiledContent":"var Object_Hotspot,\n  extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n  hasProp = {}.hasOwnProperty;\n\nObject_Hotspot = (function(superClass) {\n  extend(Object_Hotspot, superClass);\n\n  Object.defineProperty(Object_Hotspot.prototype, \"selected\", {\n    set: function(v) {\n      return this.behavior.selected = v;\n    },\n    get: function() {\n      return this.behavior.selected;\n    }\n  });\n\n\n  /**\n  * A hotspot object to define an area on the screen which can respond\n  * to user-actions like mouse/touch actions. A hotspot can have multiple\n  * images for different states like hovered, selected, etc.\n  *\n  * @module ui\n  * @class Object_Hotspot\n  * @extends ui.Object_UIElement\n  * @memberof ui\n  * @constructor\n   */\n\n  function Object_Hotspot(imageName, imageHandling, flipX) {\n    Object_Hotspot.__super__.constructor.apply(this, arguments);\n\n    /**\n    * The UI object's source rectangle on screen.\n    * @property srcRect\n    * @type gs.Rect\n     */\n    this.srcRect = null;\n\n    /**\n    * The UI object's visual-component to display the game object on screen.\n    * @property visual\n    * @type gs.Component_Frame\n     */\n    this.visual = new gs.Component_Sprite();\n\n    /**\n    * The object's image-handling.\n    * @property imageHandling\n    * @type gs.ImageHandling\n     */\n    this.imageHandling = imageHandling != null ? imageHandling : 1;\n\n    /**\n    * A behavior-component to hotspot-specific behavior to the object.\n    * @property behavior\n    * @type gs.Component_HotspotBehavior\n     */\n    this.behavior = new gs.Component_HotspotBehavior();\n    this.behavior.imageHandling = this.imageHandling;\n\n    /**\n    * The UI object's bitmap used for visual presentation.\n    * @property bitmap\n    * @type gs.Bitmap\n     */\n    this.bitmap = ResourceManager.getBitmap(\"Graphics/Pictures/\" + imageName);\n    if (this.bitmap != null) {\n      if (this.imageHandling === 1) {\n        this.srcRect = new Rect(0, this.bitmap.height / 2, this.bitmap.width, this.bitmap.height / 2);\n      } else {\n        this.srcRect = new Rect(0, 0, this.bitmap.width || 1, this.bitmap.height || 1);\n      }\n      this.dstRect.set(0, 0, this.srcRect.width || 1, this.srcRect.height || 1);\n    } else {\n      this.srcRect = new Rect(0, 0, 1, 1);\n      this.dstRect.set(0, 0, 1, 1);\n    }\n    if (flipX) {\n      this.visual.mirror = true;\n    }\n    this.addComponent(this.behavior);\n    this.addComponent(this.visual);\n  }\n\n  return Object_Hotspot;\n\n})(ui.Object_UIElement);\n\nui.Object_Hotspot = Object_Hotspot;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLElBQUEsY0FBQTtFQUFBOzs7QUFBTTs7O0VBQ0YsTUFBTSxDQUFDLGNBQVAsQ0FBc0IsY0FBYyxDQUFDLFNBQXJDLEVBQWdELFVBQWhELEVBQ0k7SUFBQSxHQUFBLEVBQUssU0FBQyxDQUFEO2FBQU8sSUFBQyxDQUFBLFFBQVEsQ0FBQyxRQUFWLEdBQXFCO0lBQTVCLENBQUw7SUFDQSxHQUFBLEVBQUssU0FBQTthQUFHLElBQUMsQ0FBQSxRQUFRLENBQUM7SUFBYixDQURMO0dBREo7OztBQUtBOzs7Ozs7Ozs7Ozs7RUFXYSx3QkFBQyxTQUFELEVBQVksYUFBWixFQUEyQixLQUEzQjtJQUNULGlEQUFBLFNBQUE7O0FBRUE7Ozs7O0lBS0EsSUFBQyxDQUFBLE9BQUQsR0FBVzs7QUFFWDs7Ozs7SUFLQSxJQUFDLENBQUEsTUFBRCxHQUFjLElBQUEsRUFBRSxDQUFDLGdCQUFILENBQUE7O0FBRWQ7Ozs7O0lBS0EsSUFBQyxDQUFBLGFBQUQsMkJBQWlCLGdCQUFnQjs7QUFFakM7Ozs7O0lBS0EsSUFBQyxDQUFBLFFBQUQsR0FBZ0IsSUFBQSxFQUFFLENBQUMseUJBQUgsQ0FBQTtJQUNoQixJQUFDLENBQUEsUUFBUSxDQUFDLGFBQVYsR0FBMEIsSUFBQyxDQUFBOztBQUUzQjs7Ozs7SUFLQSxJQUFDLENBQUEsTUFBRCxHQUFVLGVBQWUsQ0FBQyxTQUFoQixDQUEwQixvQkFBQSxHQUFxQixTQUEvQztJQUVWLElBQUcsbUJBQUg7TUFDSSxJQUFHLElBQUMsQ0FBQSxhQUFELEtBQWtCLENBQXJCO1FBQ0ksSUFBQyxDQUFBLE9BQUQsR0FBZSxJQUFBLElBQUEsQ0FBSyxDQUFMLEVBQVEsSUFBQyxDQUFBLE1BQU0sQ0FBQyxNQUFSLEdBQWlCLENBQXpCLEVBQTRCLElBQUMsQ0FBQSxNQUFNLENBQUMsS0FBcEMsRUFBMkMsSUFBQyxDQUFBLE1BQU0sQ0FBQyxNQUFSLEdBQWlCLENBQTVELEVBRG5CO09BQUEsTUFBQTtRQUdJLElBQUMsQ0FBQSxPQUFELEdBQWUsSUFBQSxJQUFBLENBQUssQ0FBTCxFQUFRLENBQVIsRUFBVyxJQUFDLENBQUEsTUFBTSxDQUFDLEtBQVIsSUFBaUIsQ0FBNUIsRUFBK0IsSUFBQyxDQUFBLE1BQU0sQ0FBQyxNQUFSLElBQWtCLENBQWpELEVBSG5COztNQUlBLElBQUMsQ0FBQSxPQUFPLENBQUMsR0FBVCxDQUFhLENBQWIsRUFBZ0IsQ0FBaEIsRUFBbUIsSUFBQyxDQUFBLE9BQU8sQ0FBQyxLQUFULElBQWtCLENBQXJDLEVBQXdDLElBQUMsQ0FBQSxPQUFPLENBQUMsTUFBVCxJQUFtQixDQUEzRCxFQUxKO0tBQUEsTUFBQTtNQU9JLElBQUMsQ0FBQSxPQUFELEdBQWUsSUFBQSxJQUFBLENBQUssQ0FBTCxFQUFRLENBQVIsRUFBVyxDQUFYLEVBQWMsQ0FBZDtNQUNmLElBQUMsQ0FBQSxPQUFPLENBQUMsR0FBVCxDQUFhLENBQWIsRUFBZ0IsQ0FBaEIsRUFBb0IsQ0FBcEIsRUFBd0IsQ0FBeEIsRUFSSjs7SUFVQSxJQUFHLEtBQUg7TUFDSSxJQUFDLENBQUEsTUFBTSxDQUFDLE1BQVIsR0FBaUIsS0FEckI7O0lBR0EsSUFBQyxDQUFBLFlBQUQsQ0FBYyxJQUFDLENBQUEsUUFBZjtJQUNBLElBQUMsQ0FBQSxZQUFELENBQWMsSUFBQyxDQUFBLE1BQWY7RUFyRFM7Ozs7R0FqQlksRUFBRSxDQUFDOztBQXdFaEMsRUFBRSxDQUFDLGNBQUgsR0FBb0IiLCJzb3VyY2VzQ29udGVudCI6WyIjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiNcbiMgICBTY3JpcHQ6IE9iamVjdF9Ib3RzcG90XG4jXG4jICAgJCRDT1BZUklHSFQkJFxuI1xuIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5jbGFzcyBPYmplY3RfSG90c3BvdCBleHRlbmRzIHVpLk9iamVjdF9VSUVsZW1lbnRcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoT2JqZWN0X0hvdHNwb3QucHJvdG90eXBlLCBcInNlbGVjdGVkXCIsXG4gICAgICAgIHNldDogKHYpIC0+IEBiZWhhdmlvci5zZWxlY3RlZCA9IHZcbiAgICAgICAgZ2V0OiAtPiBAYmVoYXZpb3Iuc2VsZWN0ZWRcbiAgICApXG4gICAgXG4gICAgIyMjKlxuICAgICogQSBob3RzcG90IG9iamVjdCB0byBkZWZpbmUgYW4gYXJlYSBvbiB0aGUgc2NyZWVuIHdoaWNoIGNhbiByZXNwb25kXG4gICAgKiB0byB1c2VyLWFjdGlvbnMgbGlrZSBtb3VzZS90b3VjaCBhY3Rpb25zLiBBIGhvdHNwb3QgY2FuIGhhdmUgbXVsdGlwbGVcbiAgICAqIGltYWdlcyBmb3IgZGlmZmVyZW50IHN0YXRlcyBsaWtlIGhvdmVyZWQsIHNlbGVjdGVkLCBldGMuXG4gICAgKlxuICAgICogQG1vZHVsZSB1aVxuICAgICogQGNsYXNzIE9iamVjdF9Ib3RzcG90XG4gICAgKiBAZXh0ZW5kcyB1aS5PYmplY3RfVUlFbGVtZW50XG4gICAgKiBAbWVtYmVyb2YgdWlcbiAgICAqIEBjb25zdHJ1Y3RvclxuICAgICMjIyBcbiAgICBjb25zdHJ1Y3RvcjogKGltYWdlTmFtZSwgaW1hZ2VIYW5kbGluZywgZmxpcFgpIC0+XG4gICAgICAgIHN1cGVyXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogVGhlIFVJIG9iamVjdCdzIHNvdXJjZSByZWN0YW5nbGUgb24gc2NyZWVuLlxuICAgICAgICAqIEBwcm9wZXJ0eSBzcmNSZWN0XG4gICAgICAgICogQHR5cGUgZ3MuUmVjdFxuICAgICAgICAjIyNcbiAgICAgICAgQHNyY1JlY3QgPSBudWxsXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogVGhlIFVJIG9iamVjdCdzIHZpc3VhbC1jb21wb25lbnQgdG8gZGlzcGxheSB0aGUgZ2FtZSBvYmplY3Qgb24gc2NyZWVuLlxuICAgICAgICAqIEBwcm9wZXJ0eSB2aXN1YWxcbiAgICAgICAgKiBAdHlwZSBncy5Db21wb25lbnRfRnJhbWVcbiAgICAgICAgIyMjXG4gICAgICAgIEB2aXN1YWwgPSBuZXcgZ3MuQ29tcG9uZW50X1Nwcml0ZSgpXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogVGhlIG9iamVjdCdzIGltYWdlLWhhbmRsaW5nLlxuICAgICAgICAqIEBwcm9wZXJ0eSBpbWFnZUhhbmRsaW5nXG4gICAgICAgICogQHR5cGUgZ3MuSW1hZ2VIYW5kbGluZ1xuICAgICAgICAjIyNcbiAgICAgICAgQGltYWdlSGFuZGxpbmcgPSBpbWFnZUhhbmRsaW5nID8gMVxuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIEEgYmVoYXZpb3ItY29tcG9uZW50IHRvIGhvdHNwb3Qtc3BlY2lmaWMgYmVoYXZpb3IgdG8gdGhlIG9iamVjdC5cbiAgICAgICAgKiBAcHJvcGVydHkgYmVoYXZpb3JcbiAgICAgICAgKiBAdHlwZSBncy5Db21wb25lbnRfSG90c3BvdEJlaGF2aW9yXG4gICAgICAgICMjI1xuICAgICAgICBAYmVoYXZpb3IgPSBuZXcgZ3MuQ29tcG9uZW50X0hvdHNwb3RCZWhhdmlvcigpXG4gICAgICAgIEBiZWhhdmlvci5pbWFnZUhhbmRsaW5nID0gQGltYWdlSGFuZGxpbmdcbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBUaGUgVUkgb2JqZWN0J3MgYml0bWFwIHVzZWQgZm9yIHZpc3VhbCBwcmVzZW50YXRpb24uXG4gICAgICAgICogQHByb3BlcnR5IGJpdG1hcFxuICAgICAgICAqIEB0eXBlIGdzLkJpdG1hcFxuICAgICAgICAjIyNcbiAgICAgICAgQGJpdG1hcCA9IFJlc291cmNlTWFuYWdlci5nZXRCaXRtYXAoXCJHcmFwaGljcy9QaWN0dXJlcy8je2ltYWdlTmFtZX1cIilcbiAgICAgICAgXG4gICAgICAgIGlmIEBiaXRtYXA/XG4gICAgICAgICAgICBpZiBAaW1hZ2VIYW5kbGluZyA9PSAxXG4gICAgICAgICAgICAgICAgQHNyY1JlY3QgPSBuZXcgUmVjdCgwLCBAYml0bWFwLmhlaWdodCAvIDIsIEBiaXRtYXAud2lkdGgsIEBiaXRtYXAuaGVpZ2h0IC8gMilcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBAc3JjUmVjdCA9IG5ldyBSZWN0KDAsIDAsIEBiaXRtYXAud2lkdGggfHwgMSwgQGJpdG1hcC5oZWlnaHQgfHwgMSlcbiAgICAgICAgICAgIEBkc3RSZWN0LnNldCgwLCAwLCBAc3JjUmVjdC53aWR0aCB8fCAxLCBAc3JjUmVjdC5oZWlnaHQgfHwgMSlcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgQHNyY1JlY3QgPSBuZXcgUmVjdCgwLCAwLCAxLCAxKVxuICAgICAgICAgICAgQGRzdFJlY3Quc2V0KDAsIDAsICAxLCAgMSlcbiAgICAgICAgICAgIFxuICAgICAgICBpZiBmbGlwWFxuICAgICAgICAgICAgQHZpc3VhbC5taXJyb3IgPSB5ZXNcbiAgXG4gICAgICAgIEBhZGRDb21wb25lbnQoQGJlaGF2aW9yKVxuICAgICAgICBAYWRkQ29tcG9uZW50KEB2aXN1YWwpXG4gICAgICAgIFxudWkuT2JqZWN0X0hvdHNwb3QgPSBPYmplY3RfSG90c3BvdCJdfQ==\n//# sourceURL=Object_Hotspot_34.js"},"summary":["name","type","order"]}

Commits for Nextrek/s2s/data/697FC39AK0958A420CS9073ED0E1B997C3EA.json

Diff revisions: vs.
Revision Author Commited Message
1084 MOliva picture MOliva Fri 11 May, 2018 12:41:55 +0000