mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2025-05-01 00:15:00 -04:00
More zazz for home page code language selection.
This commit is contained in:
parent
666c020389
commit
1e9b403ce5
4 changed files with 29 additions and 4 deletions
app
assets/images/pages/home
styles
templates
views
BIN
app/assets/images/pages/home/language_logo_javascript.png
Normal file
BIN
app/assets/images/pages/home/language_logo_javascript.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 3.7 KiB |
|
@ -32,6 +32,7 @@
|
||||||
img
|
img
|
||||||
display: block
|
display: block
|
||||||
margin: 0 auto
|
margin: 0 auto
|
||||||
|
@include transition(box-shadow .50s ease-in-out)
|
||||||
|
|
||||||
text-shadow: 2px 2px 5px black
|
text-shadow: 2px 2px 5px black
|
||||||
|
|
||||||
|
@ -58,14 +59,27 @@
|
||||||
color: $yellow
|
color: $yellow
|
||||||
font-size: 90px
|
font-size: 90px
|
||||||
font-family: Bangers
|
font-family: Bangers
|
||||||
@include transition(color .10s linear)
|
@include transition(color .25s ease-in-out)
|
||||||
|
|
||||||
&:hover div
|
&:hover div, &.hovered div
|
||||||
color: lighten($yellow, 20%)
|
color: lighten($yellow, 20%)
|
||||||
&:hover img
|
&:hover img, &.hovered img
|
||||||
filter: brightness(1.2)
|
filter: brightness(1.2)
|
||||||
-webkit-filter: brightness(1.2)
|
-webkit-filter: brightness(1.2)
|
||||||
box-shadow: 0 0 5px black
|
box-shadow: 0 0 15px black
|
||||||
|
|
||||||
|
.code-language-logo
|
||||||
|
background-color: transparent
|
||||||
|
background-repeat: no-repeat
|
||||||
|
position: absolute
|
||||||
|
right: 35px
|
||||||
|
top: 15px
|
||||||
|
width: 50px
|
||||||
|
height: 50px
|
||||||
|
|
||||||
|
&.inverted
|
||||||
|
filter: invert(100%)
|
||||||
|
-webkit-filter: invert(100%)
|
||||||
|
|
||||||
.code-languages
|
.code-languages
|
||||||
margin: 10px 0 30px 0
|
margin: 10px 0 30px 0
|
||||||
|
|
|
@ -74,6 +74,7 @@ block content
|
||||||
h3(data-i18n="home.campaign") Campaign
|
h3(data-i18n="home.campaign") Campaign
|
||||||
h4(data-i18n="home.for_beginners") For Beginners
|
h4(data-i18n="home.for_beginners") For Beginners
|
||||||
.play-text(data-i18n="home.play") Play
|
.play-text(data-i18n="home.play") Play
|
||||||
|
.code-language-logo
|
||||||
|
|
||||||
a#multiplayer(href="/play/ladder")
|
a#multiplayer(href="/play/ladder")
|
||||||
div.game-mode-wrapper
|
div.game-mode-wrapper
|
||||||
|
@ -84,5 +85,6 @@ block content
|
||||||
h3(data-i18n="home.multiplayer") Multiplayer
|
h3(data-i18n="home.multiplayer") Multiplayer
|
||||||
h4(data-i18n="home.for_developers") For Developers
|
h4(data-i18n="home.for_developers") For Developers
|
||||||
.play-text(data-i18n="home.play") Play
|
.play-text(data-i18n="home.play") Play
|
||||||
|
.code-language-logo
|
||||||
|
|
||||||
.clearfix
|
.clearfix
|
||||||
|
|
|
@ -49,6 +49,10 @@ module.exports = class HomeView extends View
|
||||||
|
|
||||||
codeLanguage = (me.get('aceConfig') ? {}).language or 'javascript'
|
codeLanguage = (me.get('aceConfig') ? {}).language or 'javascript'
|
||||||
@$el.find(".code-language[data-code-language=#{codeLanguage}]").addClass 'selected-language'
|
@$el.find(".code-language[data-code-language=#{codeLanguage}]").addClass 'selected-language'
|
||||||
|
@updateLanguageLogos codeLanguage
|
||||||
|
|
||||||
|
updateLanguageLogos: (codeLanguage) ->
|
||||||
|
@$el.find('.game-mode-wrapper .code-language-logo').css('background-image', "url(/images/pages/home/language_logo_#{codeLanguage}.png)").toggleClass 'inverted', (codeLanguage in ['io', 'coffeescript'])
|
||||||
|
|
||||||
onCodeLanguageSelected: (e) ->
|
onCodeLanguageSelected: (e) ->
|
||||||
target = $(e.target).closest('.code-language')
|
target = $(e.target).closest('.code-language')
|
||||||
|
@ -60,3 +64,8 @@ module.exports = class HomeView extends View
|
||||||
aceConfig.language = codeLanguage
|
aceConfig.language = codeLanguage
|
||||||
me.set 'aceConfig', aceConfig
|
me.set 'aceConfig', aceConfig
|
||||||
me.save() # me.patch() doesn't work if aceConfig previously existed and we switched just once
|
me.save() # me.patch() doesn't work if aceConfig previously existed and we switched just once
|
||||||
|
|
||||||
|
firstButton = @$el.find('#beginner-campaign .game-mode-wrapper').delay(500).addClass('hovered', 500).delay(500).removeClass('hovered', 500)
|
||||||
|
lastButton = @$el.find('#multiplayer .game-mode-wrapper').delay(1000).addClass('hovered', 500).delay(500).removeClass('hovered', 500)
|
||||||
|
$('#page-container').animate {scrollTop: firstButton.offset().top - 100, easing: 'easeInOutCubic'}, 500
|
||||||
|
@updateLanguageLogos codeLanguage
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue