im not proud of this

This commit is contained in:
Shihaam Abdul Rahman 2024-11-16 17:47:22 +05:00
commit 527bf773d4
Signed by: shihaam
GPG Key ID: 6DA2E87EBC227636
56 changed files with 518 additions and 0 deletions

13
README.md Normal file
View File

@ -0,0 +1,13 @@
## Run with docker run command
```
docker run -d -p 8000:8000 git.shihaam.me/shihaam/911
```
## or with docker compose
```yaml
services:
nineeleven:
image: git.shihaam.me/shihaam/911
ports:
- "8000:8000"
```

BIN
assets/bird.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 282 B

BIN
assets/ceiling.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 B

BIN
assets/explosion.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
assets/font_big_0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 B

BIN
assets/font_big_1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 130 B

BIN
assets/font_big_2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 B

BIN
assets/font_big_3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 B

BIN
assets/font_big_4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 133 B

BIN
assets/font_big_5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 B

BIN
assets/font_big_6.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 B

BIN
assets/font_big_7.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 B

BIN
assets/font_big_8.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 B

BIN
assets/font_big_9.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 B

BIN
assets/font_small_0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 B

BIN
assets/font_small_1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 B

BIN
assets/font_small_2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 B

BIN
assets/font_small_3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 B

BIN
assets/font_small_4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 B

BIN
assets/font_small_5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 B

BIN
assets/font_small_6.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 B

BIN
assets/font_small_7.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 B

BIN
assets/font_small_8.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 B

BIN
assets/font_small_9.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 B

BIN
assets/land.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

BIN
assets/medal_bronze.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 354 B

BIN
assets/medal_gold.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 995 B

BIN
assets/medal_platinum.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 962 B

BIN
assets/medal_silver.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 340 B

BIN
assets/pipe-down.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
assets/pipe-up.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
assets/pipe.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

BIN
assets/plane.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
assets/replay.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 419 B

BIN
assets/scoreboard.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
assets/sky.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
assets/sounds/nasheed.mp3 Normal file

Binary file not shown.

BIN
assets/sounds/nasheed.ogg Normal file

Binary file not shown.

BIN
assets/sounds/sfx_die.mp3 Normal file

Binary file not shown.

BIN
assets/sounds/sfx_die.ogg Normal file

Binary file not shown.

BIN
assets/sounds/sfx_hit.mp3 Normal file

Binary file not shown.

BIN
assets/sounds/sfx_hit.ogg Normal file

Binary file not shown.

BIN
assets/sounds/sfx_point.mp3 Normal file

Binary file not shown.

BIN
assets/sounds/sfx_point.ogg Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
assets/sounds/sfx_wing.mp3 Normal file

Binary file not shown.

BIN
assets/sounds/sfx_wing.ogg Normal file

Binary file not shown.

BIN
assets/splash.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

BIN
assets/thumb.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

402
css/main.css Normal file
View File

@ -0,0 +1,402 @@
@-webkit-keyframes animLand {
0% { background-position: 0px 0px; }
100% { background-position: -335px 0px; }
}
@-moz-keyframes animLand {
0% { background-position: 0px 0px; }
100% { background-position: -335px 0px; }
}
@-o-keyframes animLand {
0% { background-position: 0px 0px; }
100% { background-position: -335px 0px; }
}
@keyframes animLand {
0% { background-position: 0px 0px; }
100% { background-position: -335px 0px; }
}
@-webkit-keyframes animSky {
0% { background-position: 0px 100%; }
100% { background-position: -275px 100%; }
}
@-moz-keyframes animSky {
0% { background-position: 0px 100%; }
100% { background-position: -275px 100%; }
}
@-o-keyframes animSky {
0% { background-position: 0px 100%; }
100% { background-position: -275px 100%; }
}
@keyframes animSky {
0% { background-position: 0px 100%; }
100% { background-position: -275px 100%; }
}
@-webkit-keyframes animBird {
from { background-position: 0px 0px; }
to { background-position: 0px -96px; }
}
@-moz-keyframes animBird {
from { background-position: 0px 0px; }
to { background-position: 0px -96px; }
}
@-o-keyframes animBird {
from { background-position: 0px 0px; }
to { background-position: 0px -96px; }
}
@keyframes animBird {
from { background-position: 0px 0px; }
to { background-position: 0px -96px; }
}
@-webkit-keyframes animPipe {
0% { left: 900px; }
100% { left: -100px; }
}
@-moz-keyframes animPipe {
0% { left: 900px; }
100% { left: -100px; }
}
@-o-keyframes animPipe {
0% { left: 900px; }
100% { left: -100px; }
}
@keyframes animPipe {
0% { left: 900px; }
100% { left: -100px; }
}
@-webkit-keyframes animCeiling {
0% { background-position: 0px 0px; }
100% { background-position: -63px 0px; }
}
@-moz-keyframes animCeiling {
0% { background-position: 0px 0px; }
100% { background-position: -63px 0px; }
}
@-o-keyframes animCeiling {
0% { background-position: 0px 0px; }
100% { background-position: -63px 0px; }
}
@keyframes animCeiling {
0% { background-position: 0px 0px; }
100% { background-position: -63px 0px; }
}
*,
*:before,
*:after
{
/* border box */
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
/* gpu acceleration */
-webkit-transition: translate3d(0,0,0);
/* select disable */
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
html,
body
{
height: 100%;
overflow: hidden;
font-family: monospace;
font-size: 12px;
color: #fff;
background:#111;
}
#gamecontainer
{
position: relative;
width: 100%;
height: 100%;
min-height: 525px;
}
@media (min-width: 1025px){
#gamecontainer
{
width:500px;
overflow:hidden;
margin:0 auto;
}
}
/*
Screen - Game
*/
#gamescreen
{
position: absolute;
width: 100%;
height: 100%;
}
#sky
{
position: absolute;
top: 0;
width: 100%;
height: 80%;
background-image: url('../assets/sky.png');
background-repeat: repeat-x;
background-position: 0px 100%;
background-color: #426dbd;
-webkit-animation: animSky 7s linear infinite;
animation: animSky 7s linear infinite;
}
#flyarea
{
position: absolute;
bottom: 0;
height: 420px;
width: 100%;
}
#ceiling
{
position: absolute;
top: -16px;
height: 16px;
width: 100%;
background-image: url('../assets/ceiling.png');
background-repeat: repeat-x;
-webkit-animation: animCeiling 481ms linear infinite;
animation: animCeiling 481ms linear infinite;
}
#land
{
position: absolute;
bottom: 0;
width: 100%;
height: 20%;
background-image: url('../assets/land.png');
background-repeat: repeat-x;
background-position: 0px 0px;
background-color: #0f2641;
-webkit-animation: animLand 2516ms linear infinite;
animation: animLand 2516ms linear infinite;
}
#bigscore
{
position: absolute;
top: 20px;
left: 50%;
margin-left:-20px;
z-index: 100;
}
#bigscore img
{
display: inline-block;
padding: 1px;
}
#splash
{
position: absolute;
opacity: 0;
top: 75px;
left: 50%;
margin-left:-94px;
width: 188px;
height: 170px;
background-image: url('../assets/splash.png');
background-repeat: no-repeat;
}
#scoreboard
{
position: absolute;
display: none;
opacity: 0;
top: 64px;
left: 50%;
margin-left:-119px;
width: 236px;
height: 280px;
background-image: url('../assets/scoreboard.png');
background-repeat: no-repeat;
z-index: 1000;
}
#medal
{
position: absolute;
opacity: 0;
top: 114px;
left: 32px;
width: 44px;
height: 44px;
}
#currentscore
{
position: absolute;
top: 105px;
left: 107px;
width: 104px;
height: 14px;
text-align: right;
}
#currentscore img
{
padding-left: 2px;
}
#highscore
{
position: absolute;
top: 147px;
left: 107px;
width: 104px;
height: 14px;
text-align: right;
}
#highscore img
{
padding-left: 2px;
}
#replay
{
position: absolute;
opacity: 0;
top: 205px;
left: 61px;
height: 115px;
width: 70px;
cursor: pointer;
}
.boundingbox
{
position: absolute;
display: none;
top: 0;
left: 0;
width: 0;
height: 0;
border: 1px solid red;
}
#player
{
left: 60px;
top: 200px;
}
.bird
{
position: absolute;
width: 93px;
height: 24px;
background-image: url('../assets/bird.png');
background-image: url('../assets/plane.png');
-webkit-animation: animBird 300ms steps(4) infinite;
animation: animBird 300ms steps(4) infinite;
}
.pipe
{
position: absolute;
left: -100px;
width: 52px;
height: 100%;
z-index: 10;
-webkit-animation: animPipe 7500ms linear;
animation: animPipe 7500ms linear;
}
.pipe_upper
{
position: absolute;
top: 0;
width: 52px;
background-image: url('../assets/pipe.png');
background-repeat: repeat-y;
background-position: center;
}
.pipe_upper:after
{
content: "";
position: absolute;
bottom: 0;
width: 52px;
height: 22px;
background-image: url('../assets/pipe-down.png');
}
.pipe_lower
{
position: absolute;
bottom: 0;
width: 52px;
background-image: url('../assets/pipe.png');
background-repeat: repeat-y;
background-position: center;
}
.pipe_lower:after
{
content: "";
position: absolute;
top: 0;
width: 52px;
height: 22px;
background-image: url('../assets/pipe-up.png');
}
#footer
{
position: absolute;
bottom: 3px;
left: 3px;
}
#footer a,
#footer a:link,
#footer a:visited,
#footer a:hover,
#footer a:active
{
display: block;
padding: 2px;
text-decoration: none;
color: #fff;
}
<style type="text/css">
body {
background: #000;
}
#explosion {
width: 188px;
height: 142px;
position : absolute;
margin-top:-50px;
background-image: url("../assets/explosion.png");
z-index:99;
}

2
css/reset.css Normal file
View File

@ -0,0 +1,2 @@
/* html5doctor.com Reset v1.6.1 - http://cssreset.com */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

80
index.html Normal file
View File

@ -0,0 +1,80 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Play flappy plane, September edition!</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="author" content="Anonymous troll" />
<meta name="description" content="Play flappy plane, September edition. Rated 11/9 by most Americans!" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
<!-- Open Graph tags -->
<meta property="og:title" content="Flappy Plane, September edition" />
<meta property="og:description" content="Play flappy plane, September edition. Rated 11/9 by most Americans!" />
<meta property="og:type" content="website" />
<meta property="og:image" content="https://terrorist.group/assets/thumb.png" />
<meta property="og:url" content="https://terrorist.group" />
<meta property="og:site_name" content="Flappy plane, September edition!" />
<!-- Style sheets -->
<link href="css/reset.css" rel="stylesheet">
<link href="css/main.css" rel="stylesheet">
<script type="text/javascript">var switchTo5x=true;</script>
<script type="text/javascript">stLight.options({publisher: "2ae97540-b48e-49c1-9d0f-e9e34df112fe", doNotHash: true, doNotCopy: true, hashAddressBar: false});</script>
</head>
<body>
<div id="gamecontainer">
<style type="text/css">
#legpad {display: none}
#smallpad {display: none}
#ip4ad {display: none}
#hdad { display: none }
#leftad {display: none; float: left; padding-left: 50px; padding-top:75px}
#rightad {display: none; float: right; padding-right: 50px; padding-top:75px}
.largetab { display: none }
@media (orientation: portrait) and (min-width: 319px) and (max-width: 459px) {#ip4ad {display: block} }
@media (orientation: portrait) and (min-width: 299px) and (max-width: 318px) {#smallpad {display: block} }
@media (orientation: portrait) and (min-width: 200px) and (max-width: 298px) {#legpad {display: block} }
@media (orientation: landscape) and (min-height: 600px) and (min-width: 1270px) { #leftad {display: block;} #rightad {display: block;} #hdad { display: block; } }
@media (orientation: portrait) and (min-width: 760px) { .largetab { display: inline-block } }
@media (orientation: portrait) and (min-width: 460px) and (max-width: 759px) { #hdad {display: block} }
</style>
<div id="gamescreen">
<div id="sky" class="animated">
<div id="flyarea">
<div id="ceiling" class="animated"></div>
<!-- This is the flying and pipe area container -->
<div id="player" class="bird animated"></div>
<div id="bigscore"></div>
<div id="splash"></div>
<div id="scoreboard">
<div id="medal"></div>
<div id="currentscore"></div>
<div id="highscore"></div>
<div id="replay"><img src="assets/replay.png" alt="replay"></div>
</div>
<!-- Pipes go here! -->
</div>
</div>
<div id="land" class="animated"><div id="debug"></div></div>
</div>
</div>
<div id="footer">
</div>
<div class="boundingbox" id="playerbox"></div>
<div class="boundingbox" id="pipebox"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="js/jquery.transit.min.js"></script>
<script src="js/buzz.min.js"></script>
<script src="js/main.min.js"></script>
</body>
</html>

11
js/buzz.min.js vendored Normal file

File diff suppressed because one or more lines are too long

9
js/jquery.transit.min.js vendored Normal file

File diff suppressed because one or more lines are too long

1
js/main.min.js vendored Normal file

File diff suppressed because one or more lines are too long