This commit is contained in:
James B. Pollack 2016-04-13 14:33:23 -07:00
parent 0767f4eef0
commit 4c9c5a10f6

View file

@ -10,6 +10,8 @@
// //
(function() { (function() {
var FAN_SOUND_ENTITY_NAME ="home_sfx_ceiling_fan"
var SEARCH_RADIUS = 100; var SEARCH_RADIUS = 100;
var _this; var _this;
var utilitiesScript = Script.resolvePath('../utils.js'); var utilitiesScript = Script.resolvePath('../utils.js');
@ -18,7 +20,7 @@
_this = this; _this = this;
this.switchSound = SoundCache.getSound("atp:/switches/lamp_switch_2.wav"); this.switchSound = SoundCache.getSound("atp:/switches/lamp_switch_2.wav");
_this.FAN_VOLUME = 0.1; _this.FAN_VOLUME = 0.1;
_this.FAN_SOUND_ENTITY_NAME = "home_sfx_ceiling_fan";
}; };
Switch.prototype = { Switch.prototype = {
@ -68,16 +70,20 @@
}, },
fanSoundOff: function() { fanSoundOff: function() {
print('HOME FAN OFF 1')
if (!_this.fanSoundEntity) { if (!_this.fanSoundEntity) {
return; return;
} }
print('HOME FAN OFF 2')
var soundUserData = getEntityCustomData("soundKey", _this.fanSoundEntity); var soundUserData = getEntityCustomData("soundKey", _this.fanSoundEntity);
if (!soundUserData) { if (!soundUserData) {
print("NO SOUND USER DATA! RETURNING."); print("NO SOUND USER DATA! RETURNING.");
return; return;
} }
print('HOME FAN OFF 3')
soundUserData.volume = 0.0; soundUserData.volume = 0.0;
setEntityCustomData("soundKey", _this.fanSoundEntity, soundUserData); setEntityCustomData("soundKey", _this.fanSoundEntity, soundUserData);
print('HOME FAN OFF 4')
}, },
findFan: function() { findFan: function() {
@ -93,20 +99,28 @@
}, },
findFanSoundEntity: function() { findFanSoundEntity: function() {
var entities = Entities.findEntities(_this.position, SEARCH_RADIUS);
for (var i = 0; i < entities.length; i++) {
var name = Entities.getEntityProperties(entities[i], "name").name;
if (name === _this.FAN_SOUND_ENTITY_NAME) {
return entities[i];
}
}
return null; var myProps = Entities.getEntityProperties(this.entityID);
var entities = Entities.findEntities(myProps.position, SEARCH_RADIUS);
var fan = null;
print('HOME LOOKING FOR A FAN')
print('HOME TOTAL ENTITIES:: ' +entities.length)
entities.forEach(function(entity) {
var props = Entities.getEntityProperties(entity);
if (props.name === FAN_SOUND_ENTITY_NAME) {
print('HOME FAN FOUND:: ' + props.id)
fan = entity;
}
});
return fan;
}, },
toggle: function() { toggle: function() {
this.fan = this.findFan(); this.fan = this.findFan();
_this.fanSoundEntity = _this.findFanSoundEntity(); _this.fanSoundEntity = _this.findFanSoundEntity();
this._switch = getEntityCustomData('home-switch', this.entityID, { this._switch = getEntityCustomData('home-switch', this.entityID, {
state: 'off' state: 'off'
}); });