This repository has been archived on 2026-05-18. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
moonlight-skulk/moonlight/src/Light.js
Andrew Kesterson adab130d17 Breaking out source into separate files
Get rid of backup files

Refactored source out into multiple files
2014-06-22 10:12:40 -07:00

40 lines
1.7 KiB
JavaScript

// Create torch objects
// Light constructor
var Light = function(game, x, y, key, frame, radius, fade, color_start, color_stop, flicker, always_render, light_meter) {
color_start = ( typeof color_start == undefined ? color_start : 'rgba(255, 255, 255, 1.0)');
color_stop = ( typeof color_stop == undefined ? color_stop : 'rgba(255, 255, 255, 0.0)');
fade = ( typeof fade == undefined ? fade : 0.25);
radius = ( typeof radius == undefined ? radius : 64);
flicker = ( typeof flicker == undefined ? flicker : false);
always_render = ( typeof always_render == undefined ? always_render : false);
light_meter = ( typeof light_meter == undefined ? light_meter : 1.0 );
Phaser.Sprite.call(this, game, x, y, null);
// Set the pivot point for this sprite to the center
this.anchor.setTo(0.5, 0.5);
this.color_start = color_start;
this.color_stop = color_stop;
this.radius = radius;
this.rendered_radius = radius;
this.fade = radius * fade
this.light_meter = light_meter;
this.always_render = always_render
this.rect = positiveRectangle(this.x - radius, this.y - radius, radius * 2, radius * 2)
this.flicker = flicker;
};
// Lightes are a type of Phaser.Sprite
Light.prototype = Object.create(Phaser.Sprite.prototype);
Light.prototype.constructor = Light;
Light.prototype.update_new_values = function() {
this.light_meter = Number(this.light_meter);
this.radius = parseInt(this.radius);
this.fade = this.radius * Number(this.fade);
this.flicker = parseBoolean(this.flicker);
this.always_render = parseBoolean(this.always_render);
this.rect = positiveRectangle(this.x - this.radius, this.y - this.radius, this.radius * 2, this.radius * 2)
}