From 58b1db4f0921f2ed92a957fd5604fe8f8bb0619b Mon Sep 17 00:00:00 2001 From: Atlante45 Date: Thu, 18 Sep 2014 16:49:13 -0700 Subject: [PATCH] Added JS hooks for new Player options --- examples/Recorder.js | 13 ++++++++++--- libraries/avatars/src/AvatarData.cpp | 24 ++++++++++++++++++++++++ libraries/avatars/src/AvatarData.h | 4 ++++ 3 files changed, 38 insertions(+), 3 deletions(-) diff --git a/examples/Recorder.js b/examples/Recorder.js index 657e2d5206..8efa9408a9 100644 --- a/examples/Recorder.js +++ b/examples/Recorder.js @@ -12,7 +12,14 @@ Script.include("toolBars.js"); var recordingFile = "recording.rec"; -var playFromCurrentLocation = true; + +function setPlayerOptions() { + MyAvatar.setPlayFromCurrentLocation(true); + MyAvatar.setPlayerUseDisplayName(false); + MyAvatar.setPlayerUseAttachments(false); + MyAvatar.setPlayerUseHeadModel(false); + MyAvatar.setPlayerUseSkeletonModel(false); +} var windowDimensions = Controller.getViewportDimensions(); var TOOL_ICON_URL = "http://s3-us-west-1.amazonaws.com/highfidelity-public/images/tools/"; @@ -186,7 +193,7 @@ function mousePressEvent(event) { toolBar.setAlpha(ALPHA_ON, saveIcon); toolBar.setAlpha(ALPHA_ON, loadIcon); } else if (MyAvatar.playerLength() > 0) { - MyAvatar.setPlayFromCurrentLocation(playFromCurrentLocation); + setPlayerOptions(); MyAvatar.setPlayerLoop(false); MyAvatar.startPlaying(); toolBar.setAlpha(ALPHA_OFF, recordIcon); @@ -201,7 +208,7 @@ function mousePressEvent(event) { toolBar.setAlpha(ALPHA_ON, saveIcon); toolBar.setAlpha(ALPHA_ON, loadIcon); } else if (MyAvatar.playerLength() > 0) { - MyAvatar.setPlayFromCurrentLocation(playFromCurrentLocation); + setPlayerOptions(); MyAvatar.setPlayerLoop(true); MyAvatar.startPlaying(); toolBar.setAlpha(ALPHA_OFF, recordIcon); diff --git a/libraries/avatars/src/AvatarData.cpp b/libraries/avatars/src/AvatarData.cpp index 200a6af6c7..5ac0c69864 100644 --- a/libraries/avatars/src/AvatarData.cpp +++ b/libraries/avatars/src/AvatarData.cpp @@ -661,6 +661,30 @@ void AvatarData::setPlayerLoop(bool loop) { } } +void AvatarData::setPlayerUseDisplayName(bool useDisplayName) { + if(_player) { + _player->useDisplayName(useDisplayName); + } +} + +void AvatarData::setPlayerUseAttachments(bool useAttachments) { + if(_player) { + _player->useAttachements(useAttachments); + } +} + +void AvatarData::setPlayerUseHeadModel(bool useHeadModel) { + if(_player) { + _player->useHeadModel(useHeadModel); + } +} + +void AvatarData::setPlayerUseSkeletonModel(bool useSkeletonModel) { + if(_player) { + _player->useSkeletonModel(useSkeletonModel); + } +} + void AvatarData::play() { if (isPlaying()) { if (QThread::currentThread() != thread()) { diff --git a/libraries/avatars/src/AvatarData.h b/libraries/avatars/src/AvatarData.h index 3c373a0eda..bc68103ca6 100755 --- a/libraries/avatars/src/AvatarData.h +++ b/libraries/avatars/src/AvatarData.h @@ -302,6 +302,10 @@ public slots: void startPlaying(); void setPlayFromCurrentLocation(bool playFromCurrentLocation); void setPlayerLoop(bool loop); + void setPlayerUseDisplayName(bool useDisplayName); + void setPlayerUseAttachments(bool useAttachments); + void setPlayerUseHeadModel(bool useHeadModel); + void setPlayerUseSkeletonModel(bool useSkeletonModel); void play(); void stopPlaying();