Subversion Repository Public Repository

Nextrek

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
var Component_IntervalTimer,
  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; },
  hasProp = {}.hasOwnProperty;

Component_IntervalTimer = (function(superClass) {
  extend(Component_IntervalTimer, superClass);


  /**
  * A component which adds timing-features to a game object. The game object
  * will send an "elapsed" event everytime the time interval has been elapsed.
  *
  * @module gs
  * @class Component_IntervalTimer
  * @extends gs.Component
  * @memberof gs
   */

  function Component_IntervalTimer() {
    Component_IntervalTimer.__super__.constructor.call(this);

    /**
    * Indicates if the timer is running. 
    *
    * @property isRunning
    * @type boolean
    * @readOnly
     */
    this.isRunning = false;

    /**
    * @property frameCount
    * @type number
    * @private
     */
    this.frameCount = 0;

    /**
    * The interval at which the associated action will be executed.
    * @property interval
    * @type number
     */
    this.interval = 0;
  }


  /**
  * Starts the timer. 
  *
  * @method start
   */

  Component_IntervalTimer.prototype.start = function() {
    this.isRunning = true;
    return this.frameCount = 0;
  };


  /**
  * Stops the timer. 
  *
  * @method stop
   */

  Component_IntervalTimer.prototype.stop = function() {
    return this.isRunning = false;
  };


  /**
  * Resumes the timer. 
  *
  * @method resume
   */

  Component_IntervalTimer.prototype.resume = function() {
    return this.isRunning = true;
  };


  /**
  * Pauses the timer. 
  *
  * @method pause
   */

  Component_IntervalTimer.prototype.pause = function() {
    return this.isRunning = false;
  };


  /**
  * Updates the timer.
  *
  * @method update
   */

  Component_IntervalTimer.prototype.update = function() {
    if (this.isRunning) {
      this.frameCount++;
      if (this.frameCount >= this.interval) {
        this.object.events.emit("elapsed", this.object);
        return this.frameCount = 0;
      }
    }
  };

  return Component_IntervalTimer;

})(gs.Component);

gs.Component_IntervalTimer = Component_IntervalTimer;

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLElBQUEsdUJBQUE7RUFBQTs7O0FBQU07Ozs7QUFDRjs7Ozs7Ozs7OztFQVNhLGlDQUFBO0lBQ1QsdURBQUE7O0FBRUE7Ozs7Ozs7SUFPQSxJQUFDLENBQUEsU0FBRCxHQUFhOztBQUViOzs7OztJQUtBLElBQUMsQ0FBQSxVQUFELEdBQWM7O0FBRWQ7Ozs7O0lBS0EsSUFBQyxDQUFBLFFBQUQsR0FBWTtFQXhCSDs7O0FBMEJiOzs7Ozs7b0NBS0EsS0FBQSxHQUFPLFNBQUE7SUFDSCxJQUFDLENBQUEsU0FBRCxHQUFhO1dBQ2IsSUFBQyxDQUFBLFVBQUQsR0FBYztFQUZYOzs7QUFJUDs7Ozs7O29DQUtBLElBQUEsR0FBTSxTQUFBO1dBQUcsSUFBQyxDQUFBLFNBQUQsR0FBYTtFQUFoQjs7O0FBRU47Ozs7OztvQ0FLQSxNQUFBLEdBQVEsU0FBQTtXQUFHLElBQUMsQ0FBQSxTQUFELEdBQWE7RUFBaEI7OztBQUVSOzs7Ozs7b0NBS0EsS0FBQSxHQUFPLFNBQUE7V0FBRyxJQUFDLENBQUEsU0FBRCxHQUFhO0VBQWhCOzs7QUFFUDs7Ozs7O29DQUtBLE1BQUEsR0FBUSxTQUFBO0lBQ0osSUFBRyxJQUFDLENBQUEsU0FBSjtNQUNJLElBQUMsQ0FBQSxVQUFEO01BRUEsSUFBRyxJQUFDLENBQUEsVUFBRCxJQUFlLElBQUMsQ0FBQSxRQUFuQjtRQUNJLElBQUMsQ0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQWYsQ0FBb0IsU0FBcEIsRUFBK0IsSUFBQyxDQUFBLE1BQWhDO2VBQ0EsSUFBQyxDQUFBLFVBQUQsR0FBYyxFQUZsQjtPQUhKOztFQURJOzs7O0dBdkUwQixFQUFFLENBQUM7O0FBb0Z6QyxFQUFFLENBQUMsdUJBQUgsR0FBNkIiLCJzb3VyY2VzQ29udGVudCI6WyIjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiNcbiMgICBTY3JpcHQ6IENvbXBvbmVudF9JbnRlcnZhbFRpbWVyXG4jXG4jICAgJCRDT1BZUklHSFQkJFxuI1xuIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5jbGFzcyBDb21wb25lbnRfSW50ZXJ2YWxUaW1lciBleHRlbmRzIGdzLkNvbXBvbmVudFxuICAgICMjIypcbiAgICAqIEEgY29tcG9uZW50IHdoaWNoIGFkZHMgdGltaW5nLWZlYXR1cmVzIHRvIGEgZ2FtZSBvYmplY3QuIFRoZSBnYW1lIG9iamVjdFxuICAgICogd2lsbCBzZW5kIGFuIFwiZWxhcHNlZFwiIGV2ZW50IGV2ZXJ5dGltZSB0aGUgdGltZSBpbnRlcnZhbCBoYXMgYmVlbiBlbGFwc2VkLlxuICAgICpcbiAgICAqIEBtb2R1bGUgZ3NcbiAgICAqIEBjbGFzcyBDb21wb25lbnRfSW50ZXJ2YWxUaW1lclxuICAgICogQGV4dGVuZHMgZ3MuQ29tcG9uZW50XG4gICAgKiBAbWVtYmVyb2YgZ3NcbiAgICAjIyNcbiAgICBjb25zdHJ1Y3RvcjogLT5cbiAgICAgICAgc3VwZXIoKVxuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIEluZGljYXRlcyBpZiB0aGUgdGltZXIgaXMgcnVubmluZy4gXG4gICAgICAgICpcbiAgICAgICAgKiBAcHJvcGVydHkgaXNSdW5uaW5nXG4gICAgICAgICogQHR5cGUgYm9vbGVhblxuICAgICAgICAqIEByZWFkT25seVxuICAgICAgICAjIyNcbiAgICAgICAgQGlzUnVubmluZyA9IG5vXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogQHByb3BlcnR5IGZyYW1lQ291bnRcbiAgICAgICAgKiBAdHlwZSBudW1iZXJcbiAgICAgICAgKiBAcHJpdmF0ZVxuICAgICAgICAjIyNcbiAgICAgICAgQGZyYW1lQ291bnQgPSAwXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogVGhlIGludGVydmFsIGF0IHdoaWNoIHRoZSBhc3NvY2lhdGVkIGFjdGlvbiB3aWxsIGJlIGV4ZWN1dGVkLlxuICAgICAgICAqIEBwcm9wZXJ0eSBpbnRlcnZhbFxuICAgICAgICAqIEB0eXBlIG51bWJlclxuICAgICAgICAjIyNcbiAgICAgICAgQGludGVydmFsID0gMFxuICAgICAgICBcbiAgICAjIyMqXG4gICAgKiBTdGFydHMgdGhlIHRpbWVyLiBcbiAgICAqXG4gICAgKiBAbWV0aG9kIHN0YXJ0XG4gICAgIyMjXG4gICAgc3RhcnQ6IC0+IFxuICAgICAgICBAaXNSdW5uaW5nID0geWVzXG4gICAgICAgIEBmcmFtZUNvdW50ID0gMFxuICAgICBcbiAgICAjIyMqXG4gICAgKiBTdG9wcyB0aGUgdGltZXIuIFxuICAgICpcbiAgICAqIEBtZXRob2Qgc3RvcFxuICAgICMjIyAgIFxuICAgIHN0b3A6IC0+IEBpc1J1bm5pbmcgPSBub1xuICAgIFxuICAgICMjIypcbiAgICAqIFJlc3VtZXMgdGhlIHRpbWVyLiBcbiAgICAqXG4gICAgKiBAbWV0aG9kIHJlc3VtZVxuICAgICMjI1xuICAgIHJlc3VtZTogLT4gQGlzUnVubmluZyA9IHllc1xuICAgIFxuICAgICMjIypcbiAgICAqIFBhdXNlcyB0aGUgdGltZXIuIFxuICAgICpcbiAgICAqIEBtZXRob2QgcGF1c2VcbiAgICAjIyNcbiAgICBwYXVzZTogLT4gQGlzUnVubmluZyA9IG5vXG4gICAgICAgIFxuICAgICMjIypcbiAgICAqIFVwZGF0ZXMgdGhlIHRpbWVyLlxuICAgICpcbiAgICAqIEBtZXRob2QgdXBkYXRlXG4gICAgIyMjXG4gICAgdXBkYXRlOiAtPlxuICAgICAgICBpZiBAaXNSdW5uaW5nXG4gICAgICAgICAgICBAZnJhbWVDb3VudCsrXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGlmIEBmcmFtZUNvdW50ID49IEBpbnRlcnZhbFxuICAgICAgICAgICAgICAgIEBvYmplY3QuZXZlbnRzLmVtaXQoXCJlbGFwc2VkXCIsIEBvYmplY3QpXG4gICAgICAgICAgICAgICAgQGZyYW1lQ291bnQgPSAwXG4gICAgICAgICAgICBcbiAgICAgICAgXG4gICAgICAgICAgICBcblxuICAgICAgICBcbiBcbmdzLkNvbXBvbmVudF9JbnRlcnZhbFRpbWVyID0gQ29tcG9uZW50X0ludGVydmFsVGltZXIiXX0=
//# sourceURL=Component_IntervalTimer_174.js

Commits for Nextrek/s2s/development/Component_IntervalTimer_613817565CED434E2F3AF0808662C3BAEF91.js

Diff revisions: vs.
Revision Author Commited Message
1101 Diff Diff ASorrentino picture ASorrentino Wed 16 May, 2018 21:31:54 +0000
1096 Diff Diff ASorrentino picture ASorrentino Wed 16 May, 2018 13:01:21 +0000

Testi

1084 MOliva picture MOliva Fri 11 May, 2018 12:41:55 +0000