mirror of
https://github.com/overte-org/overte.git
synced 2025-08-09 15:29:32 +02:00
two sounds
This commit is contained in:
parent
20d1ba11c3
commit
93220c3b01
2 changed files with 39 additions and 17 deletions
|
@ -25,7 +25,9 @@ EntityViewer.setKeyholeRadius(60000);
|
||||||
EntityViewer.queryOctree();
|
EntityViewer.queryOctree();
|
||||||
Entities.setPacketsPerSecond(6000);
|
Entities.setPacketsPerSecond(6000);
|
||||||
|
|
||||||
Script.setInterval(function() {
|
Script.setInterval(searchForSoundEntities, 1000);
|
||||||
|
|
||||||
|
function searchForSoundEntities() {
|
||||||
var entities = Entities.findEntities({
|
var entities = Entities.findEntities({
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
@ -33,13 +35,12 @@ Script.setInterval(function() {
|
||||||
}, 16000)
|
}, 16000)
|
||||||
print("EBL ENTITIES FOUND " + entities.length);
|
print("EBL ENTITIES FOUND " + entities.length);
|
||||||
entities.forEach(function(entity) {
|
entities.forEach(function(entity) {
|
||||||
var soundData = getEntityCustomData(SOUND_KEY, entity);
|
var soundData = getEntityCustomData(SOUND_DATA_KEY, entity);
|
||||||
if (soundData && soundData.url) {
|
if (soundData && soundData.url) {
|
||||||
playSound(soundData);
|
playSound(soundData);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
}
|
||||||
}, 1000);
|
|
||||||
|
|
||||||
function playSound(soundData) {
|
function playSound(soundData) {
|
||||||
var sound = SoundCache.getSound(soundData.url);
|
var sound = SoundCache.getSound(soundData.url);
|
||||||
|
@ -52,7 +53,7 @@ function playSound(soundData) {
|
||||||
z: 0
|
z: 0
|
||||||
},
|
},
|
||||||
volume: 1.0,
|
volume: 1.0,
|
||||||
loop: true
|
loop: false
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
// Created by Eric Levin 2/2/2016
|
// Created by Eric Levin 2/2/2016
|
||||||
// Copyright 2016 High Fidelity, Inc.
|
// Copyright 2016 High Fidelity, Inc.
|
||||||
|
|
||||||
// This is a client script which spawns entities with a field in userdata compatible with the AcAudioSearchAndInject script
|
// This is a client script which spawns entities with a field in userData compatible with the AcAudioSearchAndInject script
|
||||||
// These entities specify data about the sound they want to play, such as url, volume, and whether to loop or not
|
// These entities specify data about the sound they want to play, such as url, volume, and whether to loop or not
|
||||||
// The position of the entity determines the position from which the sound plays from
|
// The position of the entity determines the position from which the sound plays from
|
||||||
//
|
//
|
||||||
|
@ -17,20 +17,41 @@ Script.include("../../libraries/utils.js");
|
||||||
|
|
||||||
var SOUND_DATA_KEY = "soundKey";
|
var SOUND_DATA_KEY = "soundKey";
|
||||||
|
|
||||||
var soundEntity = Entities.addEntity({
|
var userData = {
|
||||||
|
soundKey: {
|
||||||
|
url: "http://hifi-public.s3.amazonaws.com/ryan/Water_Lap_River_Edge_Gentle.L.wav"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var entityProps = {
|
||||||
type: "Box",
|
type: "Box",
|
||||||
position: {x: 0, y: 0, z: 0},
|
position: {
|
||||||
color: {red: 200, green: 10, blue: 200},
|
x: 0,
|
||||||
dimensions: {x: .1, y: .1, z: .1},
|
y: 0,
|
||||||
userData: JSON.stringify({
|
z: 0
|
||||||
soundKey: {
|
},
|
||||||
url: "http://hifi-public.s3.amazonaws.com/ryan/demo/0619_Fireplace__Tree_B.L.wav"
|
color: {
|
||||||
}
|
red: 200,
|
||||||
})
|
green: 10,
|
||||||
});
|
blue: 200
|
||||||
|
},
|
||||||
|
dimensions: {
|
||||||
|
x: .1,
|
||||||
|
y: .1,
|
||||||
|
z: .1
|
||||||
|
},
|
||||||
|
userData: JSON.stringify(userData)
|
||||||
|
}
|
||||||
|
var soundEntity1 = Entities.addEntity(entityProps);
|
||||||
|
|
||||||
|
userData.soundKey.url = "http://hifi-public.s3.amazonaws.com/ryan/demo/0619_Fireplace__Tree_B.L.wav";
|
||||||
|
entityProps.userData = JSON.stringify(userData);
|
||||||
|
entityProps.position.x += 0.3
|
||||||
|
var soundEntity2 = Entities.addEntity(entityProps);
|
||||||
|
|
||||||
function cleanup() {
|
function cleanup() {
|
||||||
Entities.deleteEntity(soundEntity);
|
Entities.deleteEntity(soundEntity1);
|
||||||
|
Entities.deleteEntity(soundEntity2);
|
||||||
}
|
}
|
||||||
|
|
||||||
Script.scriptEnding.connect(cleanup);
|
Script.scriptEnding.connect(cleanup);
|
Loading…
Reference in a new issue