Merge pull request #181 from hillc/gh-pages

Added option to press s or down key to speed up bars dropping (addresses #127)
This commit is contained in:
Michael Yang 2018-02-15 17:17:56 -05:00 committed by GitHub
commit e60671ca9f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 59 additions and 272 deletions

View file

@ -1,14 +1,14 @@
Hextris Hextris
========== ==========
Contributors: By:
- Logan Engstrom (@meadowstream) - Logan Engstrom (@lengstrom)
- Garrett Finucane (@garrettdreyfus) - Garrett Finucane (@garrettdreyfus)
- Noah Moroze (@nmoroze) - Noah Moroze (@nmoroze)
- Michael Yang (@themichaelyang) - Michael Yang (@themichaelyang)
#Conribtions # Contributions
Please submit pull requests to clay-improvemnets Please submit pull requests to clay-improvements
# Releases # Releases
#### iOS: https://itunes.apple.com/us/app/hextris/id903769553?mt=8 #### iOS: https://itunes.apple.com/us/app/hextris/id903769553?mt=8
@ -26,4 +26,4 @@ http://hextris.github.io/presskit/info.html
## License ## License
This work is under a GPL v3 license. This work is under a GPL v3 license.

View file

@ -64,6 +64,7 @@ function initialize(a) {
blockHeight: 20, blockHeight: 20,
rows: 7, rows: 7,
speedModifier: 0.73, speedModifier: 0.73,
speedUpKeyHeld: false,
creationSpeedModifier: 0.73, creationSpeedModifier: 0.73,
comboTime: 310 comboTime: 310
}; };
@ -82,6 +83,7 @@ function initialize(a) {
blockHeight: 15, blockHeight: 15,
rows: 8, rows: 8,
speedModifier: 0.65, speedModifier: 0.65,
speedUpKeyHeld: false,
creationSpeedModifier: 0.65, creationSpeedModifier: 0.65,
comboTime: 310 comboTime: 310
}; };

View file

@ -16,6 +16,29 @@ function addKeyListeners() {
} }
} }
}); });
keypress.register_combo({
keys: "down",
on_keydown: function() {
var tempSpeed = settings.speedModifier;
if (MainHex && gameState !== 0){
//speed up block temporarily
if(settings.speedUpKeyHeld == false){
settings.speedUpKeyHeld = true;
window.rush *=4;
}
}
//settings.speedModifier = tempSpeed;
},
on_keyup:function(){
if (MainHex && gameState !== 0){
//speed up block temporarily
window.rush /=4;
settings.speedUpKeyHeld = false;
}
}
});
keypress.register_combo({ keypress.register_combo({
keys: "a", keys: "a",
on_keydown: function() { on_keydown: function() {
@ -33,7 +56,29 @@ function addKeyListeners() {
} }
} }
}); });
keypress.register_combo({
keys: "s",
on_keydown: function() {
var tempSpeed = settings.speedModifier;
if (MainHex && gameState !== 0){
//speed up block temporarily
if(settings.speedUpKeyHeld == false){
settings.speedUpKeyHeld = true;
window.rush *=4;
}
}
//settings.speedModifier = tempSpeed;
},
on_keyup:function(){
if (MainHex && gameState !== 0){
//speed up block temporarily
window.rush /=4;
settings.speedUpKeyHeld = false;
}
}
});
keypress.register_combo({ keypress.register_combo({
keys: "p", keys: "p",
on_keydown: function(){pause();} on_keydown: function(){pause();}

View file

@ -362,7 +362,7 @@ function showHelp() {
} }
} }
$("#inst_main_body").html("<div id = 'instructions_head'>HOW TO PLAY</div><p>The goal of Hextris is to stop blocks from leaving the inside of the outer gray hexagon.</p><p>" + (settings.platform != 'mobile' ? 'Press the right and left arrow keys' : 'Tap the left and right sides of the screen') + " to rotate the Hexagon</p><p>Clear blocks and get points by making 3 or more blocks of the same color touch.</p><p>Time left before your combo streak disappears is indicated by <span style='color:#f1c40f;'>the</span> <span style='color:#e74c3c'>colored</span> <span style='color:#3498db'>lines</span> <span style='color:#2ecc71'>on</span> the outer hexagon</p> <hr> <p id = 'afterhr'></p> By <a href='http://loganengstrom.com' target='_blank'>Logan Engstrom</a> & <a href='http://github.com/garrettdreyfus' target='_blank'>Garrett Finucane</a><br>Find Hextris on <a href = 'https://itunes.apple.com/us/app/id903769553?mt=8' target='_blank'>iOS</a> & <a href ='https://play.google.com/store/apps/details?id=com.hextris.hextris' target='_blank'>Android</a><br>More @ the <a href ='http://hextris.github.io/' target='_blank'>Hextris Website</a>"); $("#inst_main_body").html("<div id = 'instructions_head'>HOW TO PLAY</div><p>The goal of Hextris is to stop blocks from leaving the inside of the outer gray hexagon.</p><p>" + (settings.platform != 'mobile' ? 'Press the right and left arrow keys' : 'Tap the left and right sides of the screen') + " to rotate the Hexagon." + (settings.platform != 'mobile' ? ' Press the down arrow to speed up the block falling': '') + " </p><p>Clear blocks and get points by making 3 or more blocks of the same color touch.</p><p>Time left before your combo streak disappears is indicated by <span style='color:#f1c40f;'>the</span> <span style='color:#e74c3c'>colored</span> <span style='color:#3498db'>lines</span> <span style='color:#2ecc71'>on</span> the outer hexagon</p> <hr> <p id = 'afterhr'></p> By <a href='http://loganengstrom.com' target='_blank'>Logan Engstrom</a> & <a href='http://github.com/garrettdreyfus' target='_blank'>Garrett Finucane</a><br>Find Hextris on <a href = 'https://itunes.apple.com/us/app/id903769553?mt=8' target='_blank'>iOS</a> & <a href ='https://play.google.com/store/apps/details?id=com.hextris.hextris' target='_blank'>Android</a><br>More @ the <a href ='http://hextris.github.io/' target='_blank'>Hextris Website</a>");
if (gameState == 1) { if (gameState == 1) {
pause(); pause();
} }

View file

@ -34,9 +34,9 @@ function drawScoreboard() {
} else if (scoreString.length == 9) { } else if (scoreString.length == 9) {
scoreSize = 27; scoreSize = 27;
} }
if (rush ==1){ //if (rush ==1){
var color = "rgb(236, 240, 241)"; var color = "rgb(236, 240, 241)";
} //}
var fontSize = settings.platform == 'mobile' ? 35 : 30; var fontSize = settings.platform == 'mobile' ? 35 : 30;
var h = trueCanvas.height / 2 + gdy + 100 * settings.scale; var h = trueCanvas.height / 2 + gdy + 100 * settings.scale;
if (gameState === 0) { if (gameState === 0) {

Binary file not shown.

View file

@ -446,18 +446,18 @@ body {
@font-face { @font-face {
font-family:Exo; font-family:Exo;
font-weight:light; font-weight:light;
src:url("./style/fonts/Exo2-ExtraLight.otf") format("opentype"); src:url("./fonts/Exo2-ExtraLight.otf") format("opentype");
} }
@font-face { @font-face {
font-family:Exo; font-family:Exo;
src:url("/style/fonts/Exo2-Regular.otf") format("opentype"); src:url("./fonts/Exo2-Regular.otf") format("opentype");
} }
@font-face { @font-face {
font-family:Exo; font-family:Exo;
font-weight:bold; font-weight:bold;
src:url("/style/fonts/Exo2-SemiBold.otf") format("opentype"); src:url("./fonts/Exo2-SemiBold.otf") format("opentype");
} }
.GOTitle { .GOTitle {

View file

@ -1,260 +0,0 @@
<html>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0, minimal-ui"/>
<head>
<link rel="stylesheet" href="style/rrssb.css" />
<style type="text/css">
body {
overflow: hidden;
padding: 0;
margin: 0;
}
@font-face {
font-family: Exo;
font-weight: light;
src:url("./style/fonts/Exo2-ExtraLight.otf") format("opentype");
}
@font-face {
font-family: Exo;
src:url("./style/fonts/Exo2-Regular.otf") format("opentype");
}
@font-face {
font-family: Exo;
font-weight: bold;
src:url("./style/fonts/Exo2-SemiBold.otf") format("opentype");
}
#container {
color: #232323;
position: absolute;
left:50%;
top:50%;
text-align: center;
transform: translate(-50%, -50%);
font-family: Exo;
-webkit-transform: translate(-50%, -50%);
-moz-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
}
.GOTitle {
font-weight: bold;
font-size: 24.2000px;
}
#gameOverBox {
}
.scoreNum {
font-weight: normal ! important;
}
#cScore {
font-size: 60.5000px;
font-weight:light;
margin-bottom: 5px;
margin-top: -10px;
}
#highScoresTitle {
margin-bottom: 2px;
}
.score {
font-weight: light;
line-height: 18px;
}
#restart {
bottom:0;
position: absolute;
left:calc(50% - 124px);
transform: translate(-50%, 0%);
-webkit-transform: translate(-50%, 0%);
-moz-transform: translate(-50%, 0%);
-ms-transform: translate(-50%, 0%);
margin-bottom: 10px;
}
#socialShare {
bottom: 0;
margin-bottom: 10px;
position: absolute;
left:calc(50% + 30px);
transform: translate(-50%, 0%);
-webkit-transform: translate(-50%, 0%);
-moz-transform: translate(-50%, 0%);
-ms-transform: translate(-50%, 0%);
}
#bottomContainer {
position: absolute;
left:8px;
width:100%;
bottom: 0;
}
#buttonCont {
position: absolute;
/*width:100%;*/
left: 50%;
width: 310px;
margin-left:-8px;
bottom:78px;
transform: translate(-50%, 0%);
-webkit-transform: translate(-50%, 0%);
-moz-transform: translate(-50%, 0%);
-ms-transform: translate(-50%, 0%);
/*width:300px;*/
}
#badges {
left: calc(50% - 3.5px);
top: calc(50% - 165px);
position: absolute;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
-moz-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
}
#androidBadge {
position: absolute;
left:calc(50% - 66px);
transform: translate(-50%, -1px);
-webkit-transform: translate(-50%, -1px);
-moz-transform: translate(-50%, -1px);
-ms-transform: translate(-50%, -1px);
}
#iOSBadge {
position: absolute;
left: calc(50% + 65px);
transform: translate(-50%, 0%);
-webkit-transform: translate(-50%, 0%);
-moz-transform: translate(-50%, 0%);
-ms-transform: translate(-50%, 0%);
}
</style>
</head>
<body>
<div id = "badges">
<div id = 'androidBadge'>
<a target = '_blank' href="https://play.google.com/store/apps/details?id=com.hextris.hextris">
<img height = '42px' src="./images/android.png"/>
</a>
</div>
<div id = 'iOSBadge'>
<a target = '_blank' href="https://itunes.apple.com/us/app/id903769553?mt=8">
<img src="./images/appstore.svg" height='40px'>
</a>
</div>
</div>
<div id = 'container'>
<div id = 'gameOverBox' class = 'GOTitle'>GAME OVER</div>
<div id = 'cScore'>1843</div>
<div id = 'highScoresTitle' class = 'GOTitle'>HIGH SCORES</div>
<div class = 'score'><span class = 'scoreNum'>1.</span> 1870</div>
<div class = 'score'><span class = 'scoreNum'>2.</span> 1540</div>
<div class = 'score'><span class = 'scoreNum'>3.</span> 1130</div>
<div class = 'score'><span class = 'scoreNum'>4.</span> 960</div>
</div>
<div id = 'bottomContainer'>
<img style="cursor:pointer; !important" id = 'restart' src = './images/btn_restart.svg' height = '57px'>
<div id = 'socialShare'>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="224.6377px" height="57px" viewBox="0 0 255 65" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<!-- Generator: Sketch 3.2.2 (9983) - http://www.bohemiancoding.com/sketch -->
<title>Share button</title>
<defs>
</defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<g id="Game-over-" sketch:type="MSArtboardGroup" transform="translate(-95.000000, -565.000000)">
<g id="Share-button" sketch:type="MSLayerGroup" transform="translate(95.000000, 565.000000)">
<a style="cursor:pointer;"class="popup" onclick="window.open('https://twitter.com/intent/tweet?text=Can you beat my score of points at&button_hashtag=hextris ? http://hextris.github.io/hextris @hextris','name','width=600,height=400')" ><polygon id="Score-hex-2" fill="#3498DB" sketch:type="MSShapeGroup" transform="translate(127.661316, 32.500000) rotate(-90.000000) translate(-127.661316, -32.500000) " points="127.661316 -94.814636 160.137269 -76.064636 160.137269 141.064636 127.661317 159.814636 95.185364 141.064636 95.1853635 -76.064636 "></polygon></a>
<text id="SHARE-MY-SCORE!" sketch:type="MSTextLayer" font-family="Exo" font-size="16" font-weight="420" fill="#FFFFFF">
<tspan x="67" y="39">SHARE MY SCORE!</tspan>
</text>
</g>
</g>
</g>
</svg>
</div>
<div id = 'buttonCont'>
<ul class="rrssb-buttons">
<li class="rrssb-facebook">
<!-- Replace with your URL. For best results, make sure you page has the proper FB Open Graph tags in header:
https://developers.facebook.com/docs/opengraph/howtos/maximizing-distribution-media-content/ -->
<a href="https://www.facebook.com/sharer/sharer.php?u=http://kurtnoble.com/labs/rrssb/index.html" class="popup">
<span class="rrssb-icon">
<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid" width="29" height="29" viewBox="0 0 29 29">
<path d="M26.4 0H2.6C1.714 0 0 1.715 0 2.6v23.8c0 .884 1.715 2.6 2.6 2.6h12.393V17.988h-3.996v-3.98h3.997v-3.062c0-3.746 2.835-5.97 6.177-5.97 1.6 0 2.444.173 2.845.226v3.792H21.18c-1.817 0-2.156.9-2.156 2.168v2.847h5.045l-.66 3.978h-4.386V29H26.4c.884 0 2.6-1.716 2.6-2.6V2.6c0-.885-1.716-2.6-2.6-2.6z"
class="cls-2" fill-rule="evenodd" />
</svg>
</span>
<span class="rrssb-text">facebook</span>
</a>
</li>
<li class="rrssb-twitter">
<!-- Replace href with your Meta and URL information -->
<a href="http://twitter.com/home?status=Ridiculously%20Responsive%20Social%20Sharing%20Buttons%20by%20%40dbox%20and%20%40joshuatuscan%3A%20http%3A%2F%2Fkurtnoble.com%2Flabs%2Frrssb%20%7C%20http%3A%2F%2Fkurtnoble.com%2Flabs%2Frrssb%2Fmedia%2Frrssb-preview.png"
class="popup">
<span class="rrssb-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="28" height="28" viewBox="0 0 28 28">
<path d="M24.253 8.756C24.69 17.08 18.297 24.182 9.97 24.62c-3.122.162-6.22-.646-8.86-2.32 2.702.18 5.375-.648 7.507-2.32-2.072-.248-3.818-1.662-4.49-3.64.802.13 1.62.077 2.4-.154-2.482-.466-4.312-2.586-4.412-5.11.688.276 1.426.408 2.168.387-2.135-1.65-2.73-4.62-1.394-6.965C5.574 7.816 9.54 9.84 13.802 10.07c-.842-2.738.694-5.64 3.434-6.48 2.018-.624 4.212.043 5.546 1.682 1.186-.213 2.318-.662 3.33-1.317-.386 1.256-1.248 2.312-2.4 2.942 1.048-.106 2.07-.394 3.02-.85-.458 1.182-1.343 2.15-2.48 2.71z"
/>
</svg>
</span>
<span class="rrssb-text">twitter</span>
</a>
</li>
<li class="rrssb-googleplus">
<!-- Replace href with your meta and URL information. -->
<a href="https://plus.google.com/share?url=Check%20out%20how%20ridiculously%20responsive%20these%20social%20buttons%20are%20http://kurtnoble.com/labs/rrssb/index.html" class="popup">
<span class="rrssb-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="28" height="28" viewBox="0 0 28 28">
<path d="M14.703 15.854l-1.22-.948c-.37-.308-.88-.715-.88-1.46 0-.747.51-1.222.95-1.662 1.42-1.12 2.84-2.31 2.84-4.817 0-2.58-1.62-3.937-2.4-4.58h2.098l2.203-1.384h-6.67c-1.83 0-4.467.433-6.398 2.027C3.768 4.287 3.06 6.018 3.06 7.576c0 2.634 2.02 5.328 5.603 5.328.34 0 .71-.033 1.083-.068-.167.408-.336.748-.336 1.324 0 1.04.55 1.685 1.01 2.297-1.523.104-4.37.273-6.466 1.562-1.998 1.187-2.605 2.915-2.605 4.136 0 2.512 2.357 4.84 7.288 4.84 5.822 0 8.904-3.223 8.904-6.41.008-2.327-1.36-3.49-2.83-4.73h-.01zM10.27 11.95c-2.913 0-4.232-3.764-4.232-6.036 0-.884.168-1.797.744-2.51.543-.68 1.49-1.12 2.372-1.12 2.807 0 4.256 3.797 4.256 6.24 0 .613-.067 1.695-.845 2.48-.537.55-1.438.947-2.295.95v-.003zm.032 13.66c-3.62 0-5.957-1.733-5.957-4.143 0-2.408 2.165-3.223 2.91-3.492 1.422-.48 3.25-.545 3.556-.545.34 0 .52 0 .767.034 2.574 1.838 3.706 2.757 3.706 4.48-.002 2.072-1.736 3.664-4.982 3.648l.002.017zM23.254 11.89V8.52H21.57v3.37H18.2v1.714h3.367v3.4h1.684v-3.4h3.4V11.89"
/>
</svg>
</span>
<span class="rrssb-text">google+</span>
</a>
</li>
<li class="rrssb-github">
<a href="https://github.com/kni-labs/rrssb">
<span class="rrssb-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="28" height="28" viewBox="0 0 28 28">
<path d="M13.97 1.57c-7.03 0-12.733 5.703-12.733 12.74 0 5.622 3.636 10.393 8.717 12.084.637.13.87-.277.87-.615 0-.302-.013-1.103-.02-2.165-3.54.77-4.29-1.707-4.29-1.707-.578-1.473-1.413-1.863-1.413-1.863-1.154-.79.09-.775.09-.775 1.276.104 1.96 1.316 1.96 1.312 1.135 1.936 2.99 1.393 3.712 1.06.116-.823.445-1.384.81-1.704-2.83-.32-5.802-1.414-5.802-6.293 0-1.39.496-2.527 1.312-3.418-.132-.322-.57-1.617.123-3.37 0 0 1.07-.343 3.508 1.305 1.016-.282 2.105-.424 3.188-.43 1.082 0 2.167.156 3.198.44 2.43-1.65 3.498-1.307 3.498-1.307.695 1.754.258 3.043.13 3.37.815.903 1.314 2.038 1.314 3.43 0 4.893-2.978 5.97-5.814 6.286.458.388.876 1.16.876 2.358 0 1.703-.016 3.076-.016 3.482 0 .334.232.748.877.61 5.056-1.687 8.7-6.456 8.7-12.08-.055-7.058-5.75-12.757-12.792-12.75z"
/>
</svg>
</span>
<span class="rrssb-text">github</span>
</a>
</li>
</ul>
</div>
</div>
<script type="text/javascript" src = 'vendor/jquery.js'></script>
<script type="text/javascript">
(function addRussianSocialShare(){
var lang = navigator.language || navigator.userLanguage;
// debugger;
if (lang.substr(0, 2) == 'ru') {
$('.rrssb-facebook').remove();
var n = $.parseHTML('<li class="rrssb-vk"> <a href="http://vk.com/share.php?url=http://kurtnoble.com/labs/rrssb/index.html" class="popup"> <span class="rrssb-icon"> <svg xmlns="http://www.w3.org/2000/svg" width="28" height="28" viewBox="70 70 378.7 378.7"><path d="M254.998 363.106h21.217s6.408-.706 9.684-4.23c3.01-3.24 2.914-9.32 2.914-9.32s-.415-28.47 12.796-32.663c13.03-4.133 29.755 27.515 47.482 39.685 13.407 9.206 23.594 7.19 23.594 7.19l47.407-.662s24.797-1.53 13.038-21.027c-.96-1.594-6.85-14.424-35.247-40.784-29.728-27.59-25.743-23.126 10.063-70.85 21.807-29.063 30.523-46.806 27.8-54.405-2.596-7.24-18.636-5.326-18.636-5.326l-53.375.33s-3.96-.54-6.892 1.216c-2.87 1.716-4.71 5.726-4.71 5.726s-8.452 22.49-19.714 41.618c-23.77 40.357-33.274 42.494-37.16 39.984-9.037-5.842-6.78-23.462-6.78-35.983 0-39.112 5.934-55.42-11.55-59.64-5.802-1.4-10.076-2.327-24.915-2.48-19.046-.192-35.162.06-44.29 4.53-6.072 2.975-10.757 9.6-7.902 9.98 3.528.47 11.516 2.158 15.75 7.92 5.472 7.444 5.28 24.154 5.28 24.154s3.145 46.04-7.34 51.758c-7.193 3.922-17.063-4.085-38.253-40.7-10.855-18.755-19.054-39.49-19.054-39.49s-1.578-3.873-4.398-5.947c-3.42-2.51-8.2-3.307-8.2-3.307l-50.722.33s-7.612.213-10.41 3.525c-2.488 2.947-.198 9.036-.198 9.036s39.707 92.902 84.672 139.72c41.234 42.93 88.048 40.112 88.048 40.112"/></svg> </span> <span class="rrssb-text">vk.com</span> </a> </li>');
$('.rrssb-buttons').prepend(n);
}
})()
</script>
<script type="text/javascript" src = 'vendor/rrssb.min.js'></script>
<script type="text/javascript" >
</script>
</div>
</body>
</html>