summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--public/assets/javascripts/rectangles/engine/rooms/_walls.js2
-rw-r--r--public/assets/javascripts/ui/editor/EditorToolbar.js10
-rw-r--r--public/assets/javascripts/ui/editor/EditorView.js1
-rw-r--r--public/assets/javascripts/ui/editor/HelpCursor.js13
-rw-r--r--public/assets/javascripts/ui/editor/WallpaperPicker.js42
-rwxr-xr-xpublic/assets/stylesheets/app.css15
-rw-r--r--views/controls/editor/wallpaper.ejs6
7 files changed, 73 insertions, 16 deletions
diff --git a/public/assets/javascripts/rectangles/engine/rooms/_walls.js b/public/assets/javascripts/rectangles/engine/rooms/_walls.js
index 653278c..25b1c58 100644
--- a/public/assets/javascripts/rectangles/engine/rooms/_walls.js
+++ b/public/assets/javascripts/rectangles/engine/rooms/_walls.js
@@ -157,7 +157,7 @@
wall.wallpaper(background, img)
})
}.bind(this)
- img.src = background.src
+ img.src = background.src.replace("url(","").replace(")","")
img.complete && img.onload()
},
floor: function(background){
diff --git a/public/assets/javascripts/ui/editor/EditorToolbar.js b/public/assets/javascripts/ui/editor/EditorToolbar.js
index dceae3c..3c75b95 100644
--- a/public/assets/javascripts/ui/editor/EditorToolbar.js
+++ b/public/assets/javascripts/ui/editor/EditorToolbar.js
@@ -4,6 +4,8 @@ var EditorToolbar = View.extend({
events: {
"mousedown": 'stopPropagation',
+ "mouseenter": 'mouseenter',
+ "mouseleave": 'mouseleave',
"click [data-role='undo']": 'undo',
"click [data-role='toggle-map-view']": 'toggleMap',
"click [data-role='toggle-project-settings']": 'toggleSettings',
@@ -157,6 +159,14 @@ var EditorToolbar = View.extend({
this.toggleMap(false)
this.parent.presets.toggle(state)
},
+
+ mouseenter: function(){
+ this.parent.cursor.hide()
+ },
+
+ mouseleave: function(){
+ this.parent.cursor.show()
+ },
})
var editor = new function(){
diff --git a/public/assets/javascripts/ui/editor/EditorView.js b/public/assets/javascripts/ui/editor/EditorView.js
index 9946feb..2872ab9 100644
--- a/public/assets/javascripts/ui/editor/EditorView.js
+++ b/public/assets/javascripts/ui/editor/EditorView.js
@@ -47,6 +47,7 @@ var EditorView = View.extend({
readyLayout: function(data){
data.isNew = true
+ $('#help-button').trigger("click")
this.ready(data)
},
diff --git a/public/assets/javascripts/ui/editor/HelpCursor.js b/public/assets/javascripts/ui/editor/HelpCursor.js
index d0e1825..de0ca01 100644
--- a/public/assets/javascripts/ui/editor/HelpCursor.js
+++ b/public/assets/javascripts/ui/editor/HelpCursor.js
@@ -16,7 +16,7 @@ var HelpCursor = View.extend({
},
initialize: function(){
- $('#help-button').click(this.toggle.bind(this));
+ $('#help-button').click(this.toggle.bind(this))
},
toggle: function(){
@@ -28,10 +28,6 @@ var HelpCursor = View.extend({
this.active = true
this.message('start')
this.$el.show()
-// $('body').chardinJs('start')
-// $(window).one("click", function(){
-// $('body').chardinJs('stop')
-// })
this.move({ pageX: -1000, pageY: -10000 })
this.moveFn = this.move.bind(this)
document.addEventListener("mousemove", this.moveFn)
@@ -52,7 +48,12 @@ var HelpCursor = View.extend({
},
show: function(name){
- this.showMessage(name)
+ if (this.active) {
+ this.$el.show()
+ }
+ },
+ hide: function(){
+ this.$el.hide()
},
message: function(name){
diff --git a/public/assets/javascripts/ui/editor/WallpaperPicker.js b/public/assets/javascripts/ui/editor/WallpaperPicker.js
index 6e0d5c6..20fdf85 100644
--- a/public/assets/javascripts/ui/editor/WallpaperPicker.js
+++ b/public/assets/javascripts/ui/editor/WallpaperPicker.js
@@ -7,11 +7,12 @@ var WallpaperPicker = UploadView.extend({
uploadAction: "/api/media/upload",
events: {
+ "contextmenu": 'contextmenu',
"mousedown": 'stopPropagation',
"click .swatch": 'pick',
"click .wallpaperRemove": 'remove',
"input [data-role='wallpaper-scale']": 'updateScale',
- "change .url": "tileWalls",
+ "change .url": "enterUrl",
"keydown .url": "enterSetUrl",
},
@@ -120,8 +121,22 @@ var WallpaperPicker = UploadView.extend({
$(".floatingSwatch").addClass("scissors")
}
},
+
+ contextmenu: function(e){
+ if (Scenery.nextWallpaper) {
+ e.preventDefault()
+ this.cancel()
+ }
+ },
+ cancel: function(){
+ if (Scenery.nextWallpaper) {
+ Scenery.nextWallpaper = null
+ app.tube('cancel-wallpaper')
+ }
+ },
follow: function(e, wallpaper, icon){
+ var base = this
icon = icon || wallpaper
var $floatingSwatch = $(".floatingSwatch")
@@ -130,6 +145,8 @@ var WallpaperPicker = UploadView.extend({
Scenery.nextWallpaper = wallpaper
+ $(".floodMessage").show()
+
setTimeout(function(){
function _followCursor(e) {
$floatingSwatch.css({
@@ -142,7 +159,12 @@ var WallpaperPicker = UploadView.extend({
// $(window).off('click', _hideCursor)
app.off('cancel-wallpaper', _hideCursor)
$floatingSwatch.removeClass("scissors").hide()
+ $(".floodMessage").hide()
+ }
+ function _floodRoom (e) {
+ base.flood()
}
+ $(window).on('keydown', _floodRoom)
$(window).on('mousemove', _followCursor)
// $(window).one('click', _hideCursor);
app.on('cancel-wallpaper', _hideCursor)
@@ -169,22 +191,26 @@ var WallpaperPicker = UploadView.extend({
this.wall.wallpaperPosition({ scale: scale })
},
- tileWalls: function(){
+ enterUrl: function(){
var url = this.$url.sanitize()
- if (url.length && url.indexOf("http") == 0) {
- Walls.setWallpaper.wall({ src: url })
- Walls.setWallpaper.floor({ src: url })
- Walls.setWallpaper.ceiling({ src: url })
- }
this.addUrl(url)
this.$url.val("")
},
enterSetUrl: function (e) {
e.stopPropagation()
if (e.keyCode == 13) {
- setTimeout(this.tileWalls.bind(this), 100)
+ setTimeout(this.enterUrl.bind(this), 100)
}
},
+
+ flood: function(url){
+ url = url || Scenery.nextWallpaper
+ if (! url) return
+ Walls.setWallpaper.wall({ src: url })
+ Walls.setWallpaper.floor({ src: url })
+ Walls.setWallpaper.ceiling({ src: url })
+ this.cancel()
+ },
initializePositionCursor: function(){
var base = this
diff --git a/public/assets/stylesheets/app.css b/public/assets/stylesheets/app.css
index 229b9c6..bc52d5a 100755
--- a/public/assets/stylesheets/app.css
+++ b/public/assets/stylesheets/app.css
@@ -1703,6 +1703,21 @@ input[type="range"]::-webkit-slider-thumb {
.wallpaperResizeControls span {
cursor: pointer;
}
+.floodMessage {
+ display: none;
+ animation: flicker 0.2s infinite;
+ color: black;
+ float: left;
+ margin: 10px 5px 5px 5px;
+ font-size: 13px;
+ font-weight: 300;
+ text-align: center;
+}
+@keyframes flicker {
+ 49% { color: black; }
+ 50% { color: red; }
+ 100% { color: red; }
+}
#color-picker {
position: relative;
diff --git a/views/controls/editor/wallpaper.ejs b/views/controls/editor/wallpaper.ejs
index 6d8f209..3168f1c 100644
--- a/views/controls/editor/wallpaper.ejs
+++ b/views/controls/editor/wallpaper.ejs
@@ -10,7 +10,7 @@
<span class="swatch" style="background-image:url(/assets/img/plainpattern2.png)"></span>
</span>
- <input type="text" class="url" placeholder="Enter image URL 2 Flood...!">
+ <input type="text" class="url" placeholder="Enter image URL">
<div class="wallpaperRemove toolButton">
<span class="ion-scissors"></span>
@@ -30,6 +30,10 @@
<input data-role="wallpaper-scale" type="range" min="-4" max="4" step="0.01" value="0.0">
</div>
+ <div class="floodMessage">
+ Hit Enter to Flood the room!
+ </div>
+
</div>
<div class="floatingSwatch"></div>