alexrsworld 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Apps/30dollarwebsite.html +403 -0
- package/Apps/emulatorjs.html +258 -0
- package/Apps/ruffle.html +93 -0
- package/Apps/soundboard.html +4 -0
- package/Games/WAflash/connect4.html +87 -0
- package/Games/WAflash/dealornodeal.html +89 -0
- package/Games/WAflash/escapingtheprison.html +87 -0
- package/Games/WAflash/fancypants2.html +86 -0
- package/Games/WAflash/freegear.html +87 -0
- package/Games/WAflash/learntoflyidle.html +87 -0
- package/Games/WAflash/papascoop.html +88 -0
- package/Games/WAflash/papashotdog.html +88 -0
- package/Games/WAflash/papaspancake.html +89 -0
- package/Games/WAflash/papaswingeria.html +87 -0
- package/Games/WAflash/pottyracers3.html +86 -0
- package/Games/WAflash/run.html +88 -0
- package/Games/WAflash/run2.html +88 -0
- package/Games/WAflash/shoppingcarthero2.html +88 -0
- package/Games/WAflash/sonicultimate.html +87 -0
- package/Games/WAflash/sugarsugar.html +91 -0
- package/Games/WAflash/vex.html +91 -0
- package/Games/WAflash/worldshardestgame3.html +89 -0
- package/Games/emulated/GBA/emeraldversion.html +30 -0
- package/Games/emulated/GBA/fireredversion.html +30 -0
- package/Games/emulated/GBA/leafgreenversion.html +30 -0
- package/Games/emulated/GBA/rubyversion.html +30 -0
- package/Games/emulated/GBA/sapphireversion.html +30 -0
- package/Games/emulated/N64/mariokart64.html +27 -0
- package/Games/emulated/N64/supermario64.html +30 -0
- package/Games/emulated/SNES/earthbound.html +31 -0
- package/Games/ruffle/MahjongTower.html +40 -0
- package/Games/ruffle/QWOP.html +41 -0
- package/Games/ruffle/achievementunlocked.html +41 -0
- package/Games/ruffle/achievementunlocked2.html +41 -0
- package/Games/ruffle/achievementunlocked3.html +41 -0
- package/Games/ruffle/ageofdefense.html +41 -0
- package/Games/ruffle/ageofwar.html +41 -0
- package/Games/ruffle/ageofwar2.html +41 -0
- package/Games/ruffle/airship.html +41 -0
- package/Games/ruffle/alien.html +41 -0
- package/Games/ruffle/angrybirdshalloween.html +40 -0
- package/Games/ruffle/appleshooter.html +41 -0
- package/Games/ruffle/axisfootballleague.html +40 -0
- package/Games/ruffle/badpiggies.html +41 -0
- package/Games/ruffle/bejeweledtwist.html +41 -0
- package/Games/ruffle/blinding.html +40 -0
- package/Games/ruffle/bloons.html +41 -0
- package/Games/ruffle/bloonsupermonkey.html +40 -0
- package/Games/ruffle/bloxorz.html +40 -0
- package/Games/ruffle/bobtherobber.html +41 -0
- package/Games/ruffle/bowling.html +40 -0
- package/Games/ruffle/breakingthebank.html +40 -0
- package/Games/ruffle/btd.html +40 -0
- package/Games/ruffle/btd2.html +40 -0
- package/Games/ruffle/btd3.html +41 -0
- package/Games/ruffle/btd4.html +41 -0
- package/Games/ruffle/btd4expansion.html +41 -0
- package/Games/ruffle/btd5.html +41 -0
- package/Games/ruffle/bubbleshooter.html +41 -0
- package/Games/ruffle/burgerrun.html +41 -0
- package/Games/ruffle/burritobisonrevenge.html +41 -0
- package/Games/ruffle/crimsonroom.html +41 -0
- package/Games/ruffle/cubefield.html +40 -0
- package/Games/ruffle/curveball.html +41 -0
- package/Games/ruffle/deadzed2.html +40 -0
- package/Games/ruffle/dinerdash.html +41 -0
- package/Games/ruffle/donkeykong.html +40 -0
- package/Games/ruffle/douchebagworkout.html +40 -0
- package/Games/ruffle/douchebagworkout2.html +40 -0
- package/Games/ruffle/ducklife.html +40 -0
- package/Games/ruffle/ducklife2.html +40 -0
- package/Games/ruffle/ducklife3.html +40 -0
- package/Games/ruffle/ducklife4.html +40 -0
- package/Games/ruffle/electricman.html +41 -0
- package/Games/ruffle/electricman2.html +41 -0
- package/Games/ruffle/factoryballs.html +42 -0
- package/Games/ruffle/factoryballs2.html +42 -0
- package/Games/ruffle/factoryballs3.html +41 -0
- package/Games/ruffle/factoryballs4.html +41 -0
- package/Games/ruffle/fancypants.html +41 -0
- package/Games/ruffle/fancypants3.html +41 -0
- package/Games/ruffle/fleeingthecomplex.html +41 -0
- package/Games/ruffle/fltron.html +40 -0
- package/Games/ruffle/foresttemple.html +40 -0
- package/Games/ruffle/frogger.html +40 -0
- package/Games/ruffle/frontlinedefense.html +40 -0
- package/Games/ruffle/galagaflash.html +41 -0
- package/Games/ruffle/gravitee.html +41 -0
- package/Games/ruffle/gravitee2.html +41 -0
- package/Games/ruffle/growcube.html +41 -0
- package/Games/ruffle/growisland.html +41 -0
- package/Games/ruffle/growvalley.html +41 -0
- package/Games/ruffle/impossiblequiz.html +41 -0
- package/Games/ruffle/impossiblequiz2.html +41 -0
- package/Games/ruffle/injustice.html +41 -0
- package/Games/ruffle/isoball.html +41 -0
- package/Games/ruffle/johnnyupgrade.html +41 -0
- package/Games/ruffle/jumpingfinn.html +40 -0
- package/Games/ruffle/kaboomz.html +40 -0
- package/Games/ruffle/leaguebowling.html +41 -0
- package/Games/ruffle/learntofly.html +40 -0
- package/Games/ruffle/learntofly2.html +40 -0
- package/Games/ruffle/learntofly3.html +40 -0
- package/Games/ruffle/lemonade.html +40 -0
- package/Games/ruffle/madness.html +40 -0
- package/Games/ruffle/madnessa.html +40 -0
- package/Games/ruffle/mahjonggardens.html +40 -0
- package/Games/ruffle/mahjongtitans.html +40 -0
- package/Games/ruffle/mariocombat.html +40 -0
- package/Games/ruffle/minecrafttowerdefense.html +41 -0
- package/Games/ruffle/minecrafttowerdefense2.html +41 -0
- package/Games/ruffle/motherload.html +40 -0
- package/Games/ruffle/murder.html +41 -0
- package/Games/ruffle/myfriendpedro.html +40 -0
- package/Games/ruffle/neonrider.html +41 -0
- package/Games/ruffle/nyancatlostinspace.html +40 -0
- package/Games/ruffle/pacman.html +40 -0
- package/Games/ruffle/pacxon.html +41 -0
- package/Games/ruffle/pacxondeluxe.html +41 -0
- package/Games/ruffle/pandemic2.html +41 -0
- package/Games/ruffle/papas sushi.html +40 -0
- package/Games/ruffle/papasbake.html +40 -0
- package/Games/ruffle/papasburgeria.html +41 -0
- package/Games/ruffle/papascheese.html +40 -0
- package/Games/ruffle/papascupcake.html +40 -0
- package/Games/ruffle/papasdonut.html +40 -0
- package/Games/ruffle/papaspasta.html +42 -0
- package/Games/ruffle/papaspizza.html +41 -0
- package/Games/ruffle/papastaco.html +42 -0
- package/Games/ruffle/plantsvszombies.html +41 -0
- package/Games/ruffle/poppit.html +42 -0
- package/Games/ruffle/portaltheflashversion.html +42 -0
- package/Games/ruffle/pottyracers.html +40 -0
- package/Games/ruffle/pottyracers2.html +40 -0
- package/Games/ruffle/raftwars.html +40 -0
- package/Games/ruffle/redball.html +42 -0
- package/Games/ruffle/redball2.html +41 -0
- package/Games/ruffle/redball3.html +41 -0
- package/Games/ruffle/riddleschool.html +41 -0
- package/Games/ruffle/riddleschool2.html +41 -0
- package/Games/ruffle/riddleschool3.html +41 -0
- package/Games/ruffle/riddleschool4.html +41 -0
- package/Games/ruffle/riddleschool5.html +41 -0
- package/Games/ruffle/riddletransfer.html +41 -0
- package/Games/ruffle/riddletransfer2.html +41 -0
- package/Games/ruffle/rollercoaster.html +41 -0
- package/Games/ruffle/shoppingcarthero.html +41 -0
- package/Games/ruffle/spaceiskey.html +41 -0
- package/Games/ruffle/spaceiskey2.html +41 -0
- package/Games/ruffle/sprinter.html +41 -0
- package/Games/ruffle/stealingthediamond.html +41 -0
- package/Games/ruffle/stickwar.html +41 -0
- package/Games/ruffle/strikeforceheros.html +40 -0
- package/Games/ruffle/strikeforceheros2.html +40 -0
- package/Games/ruffle/strikeforcekitty.html +41 -0
- package/Games/ruffle/sugarsugar2.html +41 -0
- package/Games/ruffle/superfighters.html +41 -0
- package/Games/ruffle/supermarioflash.html +41 -0
- package/Games/ruffle/supermarioflash2.html +41 -0
- package/Games/ruffle/supermarioflash3.html +41 -0
- package/Games/ruffle/supersmashflash.html +41 -0
- package/Games/ruffle/tactical.html +41 -0
- package/Games/ruffle/tactical2.html +41 -0
- package/Games/ruffle/tacticaloriginal.html +41 -0
- package/Games/ruffle/territorywar.html +41 -0
- package/Games/ruffle/tetrix2.html +41 -0
- package/Games/ruffle/thefightforglorton.html +41 -0
- package/Games/ruffle/thinice.html +41 -0
- package/Games/ruffle/treasurehunt.html +40 -0
- package/Games/ruffle/unfairmario.html +40 -0
- package/Games/ruffle/vex2.html +41 -0
- package/Games/ruffle/whenpizzaattacks.html +41 -0
- package/Games/ruffle/whg.html +40 -0
- package/Games/ruffle/whg2.html +40 -0
- package/Games/ruffle/whg4.html +40 -0
- package/Games/ruffle/yahootennis.html +40 -0
- package/Games/ruffle/zombocalypse.html +41 -0
- package/Games/singlefile.html +67 -0
- package/Games/sonic-games/sonicthehedgehog.html +29 -0
- package/Games/sonic-games/sonicthehedgehog2.html +31 -0
- package/Games/sonic-games/sonicthehedgehog3.html +23 -0
- package/Games/standalone/10minutestilldawn.html +85 -0
- package/Games/standalone/1v1lol.html +299 -0
- package/Games/standalone/2048.html +129 -0
- package/Games/standalone/2048cupcakes.html +135 -0
- package/Games/standalone/Angry Birds.html +20 -0
- package/Games/standalone/BlockPost.html +36 -0
- package/Games/standalone/BuildNow.gg.html +136 -0
- package/Games/standalone/Flappy Dunk.html +169 -0
- package/Games/standalone/Granny 2.html +202 -0
- package/Games/standalone/Time Shooter 2.html +94 -0
- package/Games/standalone/adventure.html +128 -0
- package/Games/standalone/angrybirdsshowdown.html +24 -0
- package/Games/standalone/badicecream.html +163 -0
- package/Games/standalone/badicecream2.html +165 -0
- package/Games/standalone/badicecream3.html +165 -0
- package/Games/standalone/badtime.html +145 -0
- package/Games/standalone/baldi.html +26 -0
- package/Games/standalone/basketrandom.html +46 -0
- package/Games/standalone/bigtower.html +65 -0
- package/Games/standalone/bigtower2.html +20 -0
- package/Games/standalone/bitlife.html +22 -0
- package/Games/standalone/blockblast.html +94 -0
- package/Games/standalone/blockthepig.html +142 -0
- package/Games/standalone/bowmasters.html +27 -0
- package/Games/standalone/boxingrandom.html +0 -0
- package/Games/standalone/candycrush.html +67 -0
- package/Games/standalone/carssimulator.html +40 -0
- package/Games/standalone/caseclicker.html +310 -0
- package/Games/standalone/cellmachine.html +24 -0
- package/Games/standalone/choppyorc.html +210 -0
- package/Games/standalone/circleo.html +99 -0
- package/Games/standalone/clusterrush.html +47 -0
- package/Games/standalone/colorswitch.html +224 -0
- package/Games/standalone/colortunnel.html +24 -0
- package/Games/standalone/cookieclicker.html +150 -0
- package/Games/standalone/crazycattle3d.html +246 -0
- package/Games/standalone/crossyroad.html +23 -0
- package/Games/standalone/cyberpunkracing.html +37 -0
- package/Games/standalone/dadish.html +46 -0
- package/Games/standalone/dadish2.html +72 -0
- package/Games/standalone/deathrun3d.html +69 -0
- package/Games/standalone/dogeminer.html +996 -0
- package/Games/standalone/dragonvsbricks.html +48 -0
- package/Games/standalone/driftboss.html +146 -0
- package/Games/standalone/drifthunters.html +123 -0
- package/Games/standalone/drivemad.html +41 -0
- package/Games/standalone/ducklifebattle.html +131 -0
- package/Games/standalone/ducklifespace.html +93 -0
- package/Games/standalone/earntodie.html +117 -0
- package/Games/standalone/economical.html +77 -0
- package/Games/standalone/fireandice.html +22 -0
- package/Games/standalone/flappybird.html +137 -0
- package/Games/standalone/fnaf.html +115 -0
- package/Games/standalone/fnaf2.html +34 -0
- package/Games/standalone/fnaf3.html +337 -0
- package/Games/standalone/fnaf4.html +338 -0
- package/Games/standalone/fnaf4halloween.html +34 -0
- package/Games/standalone/fridaynightfunkin.html +76 -0
- package/Games/standalone/fruitninja.html +99 -0
- package/Games/standalone/galaga.html +216 -0
- package/Games/standalone/gdlite.html +255 -0
- package/Games/standalone/gladihoppers.html +36 -0
- package/Games/standalone/googlefeud.html +1163 -0
- package/Games/standalone/granny.html +233 -0
- package/Games/standalone/grindcraft.html +44 -0
- package/Games/standalone/happywheels.html +19 -0
- package/Games/standalone/helixjump.html +30 -0
- package/Games/standalone/holeio.html +53 -0
- package/Games/standalone/idlebreakout.html +95 -0
- package/Games/standalone/jetpack.html +21 -0
- package/Games/standalone/magictiles3.html +111 -0
- package/Games/standalone/monkeymart.html +365 -0
- package/Games/standalone/motox3m.html +1 -0
- package/Games/standalone/motox3mpoolparty.html +18 -0
- package/Games/standalone/motox3mspookyland.html +68 -0
- package/Games/standalone/ngon.html +577 -0
- package/Games/standalone/omnombounce.html +82 -0
- package/Games/standalone/pacmanoriginal.html +30 -0
- package/Games/standalone/papasfreezeria.html +348 -0
- package/Games/standalone/paperio2.html +54 -0
- package/Games/standalone/parkingfury.html +45 -0
- package/Games/standalone/polytrack.html +40 -0
- package/Games/standalone/pou.html +73 -0
- package/Games/standalone/retrobowl.html +119 -0
- package/Games/standalone/retrobowlcollege.html +179 -0
- package/Games/standalone/rocketsoccer.html +39 -0
- package/Games/standalone/run3.html +64 -0
- package/Games/standalone/slender.html +40 -0
- package/Games/standalone/slope.html +59 -0
- package/Games/standalone/snowrider3d.html +27 -0
- package/Games/standalone/soccerrandom.html +0 -0
- package/Games/standalone/solitaire.html +32 -0
- package/Games/standalone/sonicroboblast2.html +2169 -0
- package/Games/standalone/spacewaves.html +239 -0
- package/Games/standalone/stack.html +639 -0
- package/Games/standalone/station141.html +27 -0
- package/Games/standalone/stickmangolf.html +22 -0
- package/Games/standalone/stickmanhook.html +39 -0
- package/Games/standalone/stuntcars3.html +26 -0
- package/Games/standalone/subwaysurfers.html +55 -0
- package/Games/standalone/superhot.html +35 -0
- package/Games/standalone/superliquidsoccer.html +311 -0
- package/Games/standalone/templerun2.html +38 -0
- package/Games/standalone/timeshooter.html +99 -0
- package/Games/standalone/tinyfishing.html +139 -0
- package/Games/standalone/tombofthemask.html +14 -0
- package/Games/standalone/triviacrack.html +24 -0
- package/Games/standalone/tubejumpers.html +20 -0
- package/Games/standalone/ultimatecustomnight.html +34 -0
- package/Games/standalone/undertheredsky.html +46 -0
- package/Games/standalone/vex3.html +42 -0
- package/Games/standalone/vex4.html +38 -0
- package/Games/standalone/vex5.html +43 -0
- package/Games/standalone/vex6.html +56 -0
- package/Games/standalone/vex7.html +53 -0
- package/Games/standalone/vex8.html +46 -0
- package/Games/standalone/wordle.html +27 -0
- package/Games/standalone/worldtour.html +95 -0
- package/backup.html +2016 -0
- package/games.json +2373 -0
- package/index.html +2302 -0
- package/new logo.png +0 -0
- package/package.json +21 -0
- package/port.html +0 -0
- package/readme.md +1 -0
- package/singlefilegames.json +2266 -0
- package/sounds/ambience.mp3 +0 -0
- package/sounds/click.mp3 +0 -0
- package/sounds/close.mp3 +0 -0
- package/sounds/hover.mp3 +0 -0
- package/sounds/select.mp3 +0 -0
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<base href="https://cdn.jsdelivr.net/gh/dskjfoisjfsjio/dskjfoisjfsjio.github.io@main/4.2.1/">
|
|
5
|
+
|
|
6
|
+
<title>EmulatorJS</title>
|
|
7
|
+
<link rel=icon href="/new logo.png" sizes = "16x16 32x32 48x48 64x64" type = image/vnd.microsoft.icon>
|
|
8
|
+
<meta name = viewport content = "width = device-width, initial-scale = 1">
|
|
9
|
+
<style>
|
|
10
|
+
body, html {
|
|
11
|
+
height: 100%;
|
|
12
|
+
background-color: black;
|
|
13
|
+
color: white;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
body {
|
|
17
|
+
margin: 0;
|
|
18
|
+
overflow: hidden;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
body, #box, #top {
|
|
22
|
+
display: flex;
|
|
23
|
+
align-items: center;
|
|
24
|
+
justify-content: center;
|
|
25
|
+
flex-direction: column;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
#box {
|
|
29
|
+
color: #aaa;
|
|
30
|
+
height: 20em;
|
|
31
|
+
width: 30em;
|
|
32
|
+
max-width: 80%;
|
|
33
|
+
max-height: 80%;
|
|
34
|
+
background-color: #333;
|
|
35
|
+
border-radius: 0.4em;
|
|
36
|
+
border: 2px solid #555;
|
|
37
|
+
position: relative;
|
|
38
|
+
flex-direction: column;
|
|
39
|
+
transition-duration: 0.2s;
|
|
40
|
+
overflow: hidden;
|
|
41
|
+
font-family: monospace;
|
|
42
|
+
font-weight: bold;
|
|
43
|
+
font-size: 20px;
|
|
44
|
+
margin: 5px;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
#box:hover, #box[drag] {
|
|
48
|
+
border-color: #38f;
|
|
49
|
+
color: #ddd
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
#input {
|
|
53
|
+
cursor: pointer;
|
|
54
|
+
position: absolute;
|
|
55
|
+
left: 0;
|
|
56
|
+
top: 0;
|
|
57
|
+
width: 100%;
|
|
58
|
+
height: 100%;
|
|
59
|
+
opacity: 0
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
#display {
|
|
63
|
+
width: 100%;
|
|
64
|
+
height: 100%
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
select, button {
|
|
68
|
+
padding: 0.6em 0.4em;
|
|
69
|
+
margin: 0.5em;
|
|
70
|
+
width: 15em;
|
|
71
|
+
max-width: 100%;
|
|
72
|
+
font-family: monospace;
|
|
73
|
+
font-weight: bold;
|
|
74
|
+
font-size: 16px;
|
|
75
|
+
background-color: #444;
|
|
76
|
+
color: #aaa;
|
|
77
|
+
border-radius: 0.4em;
|
|
78
|
+
border: 1px solid #555;
|
|
79
|
+
cursor: pointer;
|
|
80
|
+
transition-duration: 0.2s
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
select:hover, button:hover {
|
|
84
|
+
background-color: #666;
|
|
85
|
+
color: #ddd
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
.logo {
|
|
89
|
+
width: 130px;
|
|
90
|
+
height: 130px;
|
|
91
|
+
filter: drop-shadow(0 0 10px white);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
#top {
|
|
95
|
+
margin: 5px;
|
|
96
|
+
}
|
|
97
|
+
</style>
|
|
98
|
+
</head>
|
|
99
|
+
|
|
100
|
+
<body>
|
|
101
|
+
<div id="top">
|
|
102
|
+
<h1>EmulatorJS Demo</h1>
|
|
103
|
+
<img src="docs/Logo-light.png" alt="Logo" class="logo">
|
|
104
|
+
</div>
|
|
105
|
+
<div id = box>
|
|
106
|
+
<input type = file id = input>
|
|
107
|
+
Drag ROM file or click here
|
|
108
|
+
</div>
|
|
109
|
+
|
|
110
|
+
<script>
|
|
111
|
+
let enableDebug = false;
|
|
112
|
+
let enableThreads = false;
|
|
113
|
+
const queryString = window.location.search;
|
|
114
|
+
const urlParams = new URLSearchParams(queryString);
|
|
115
|
+
if (urlParams.get('debug') == 1) {
|
|
116
|
+
enableDebug = true;
|
|
117
|
+
console.log("Debug is enabled");
|
|
118
|
+
} else {
|
|
119
|
+
console.log("Debug is disabled");
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
if (urlParams.get('threads') == 1) {
|
|
123
|
+
if (window.SharedArrayBuffer) {
|
|
124
|
+
enableThreads = true;
|
|
125
|
+
console.log("Threads are enabled");
|
|
126
|
+
} else {
|
|
127
|
+
console.warn("Threads are disabled as SharedArrayBuffer is not available. Threads requires two headers to be set when sending you html page. See https://stackoverflow.com/a/68630724");
|
|
128
|
+
console.log("Threads are disabled");
|
|
129
|
+
}
|
|
130
|
+
} else {
|
|
131
|
+
console.log("Threads are disabled");
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
input.onchange = async () => {
|
|
135
|
+
const url = input.files[0]
|
|
136
|
+
const parts = input.files[0].name.split(".")
|
|
137
|
+
|
|
138
|
+
const core = await (async (ext) => {
|
|
139
|
+
if (["fds", "nes", "unif", "unf"].includes(ext))
|
|
140
|
+
return "nes"
|
|
141
|
+
|
|
142
|
+
if (["smc", "fig", "sfc", "gd3", "gd7", "dx2", "bsx", "swc"].includes(ext))
|
|
143
|
+
return "snes"
|
|
144
|
+
|
|
145
|
+
if (["z64", "n64"].includes(ext))
|
|
146
|
+
return "n64"
|
|
147
|
+
|
|
148
|
+
if (["pce"].includes(ext))
|
|
149
|
+
return "pce"
|
|
150
|
+
|
|
151
|
+
if (["ngp", "ngc"].includes(ext))
|
|
152
|
+
return "ngp"
|
|
153
|
+
|
|
154
|
+
if (["ws", "wsc"].includes(ext))
|
|
155
|
+
return "ws"
|
|
156
|
+
|
|
157
|
+
if (["col", "cv"].includes(ext))
|
|
158
|
+
return "coleco"
|
|
159
|
+
|
|
160
|
+
if (["d64"].includes(ext))
|
|
161
|
+
return "vice_x64sc"
|
|
162
|
+
|
|
163
|
+
if (["nds", "gba", "gb", "z64", "n64"].includes(ext))
|
|
164
|
+
return ext
|
|
165
|
+
|
|
166
|
+
return await new Promise(resolve => {
|
|
167
|
+
var coreValues = {
|
|
168
|
+
"Nintendo 64": "n64",
|
|
169
|
+
"Nintendo Game Boy": "gb",
|
|
170
|
+
"Nintendo Game Boy Advance": "gba",
|
|
171
|
+
"Nintendo DS": "nds",
|
|
172
|
+
"Nintendo Entertainment System": "nes",
|
|
173
|
+
"Super Nintendo Entertainment System": "snes",
|
|
174
|
+
"PlayStation": "psx",
|
|
175
|
+
"Virtual Boy": "vb",
|
|
176
|
+
"Sega Mega Drive": "segaMD",
|
|
177
|
+
"Sega Master System": "segaMS",
|
|
178
|
+
"Sega CD": "segaCD",
|
|
179
|
+
"Atari Lynx": "lynx",
|
|
180
|
+
"Sega 32X": "sega32x",
|
|
181
|
+
"Atari Jaguar": "jaguar",
|
|
182
|
+
"Sega Game Gear": "segaGG",
|
|
183
|
+
"Sega Saturn": "segaSaturn",
|
|
184
|
+
"Atari 7800": "atari7800",
|
|
185
|
+
"Atari 2600": "atari2600",
|
|
186
|
+
"Arcade": "arcade",
|
|
187
|
+
"NEC TurboGrafx-16/SuperGrafx/PC Engine": "pce",
|
|
188
|
+
"NEC PC-FX": "pcfx",
|
|
189
|
+
"SNK NeoGeo Pocket (Color)": "ngp",
|
|
190
|
+
"Bandai WonderSwan (Color)": "ws",
|
|
191
|
+
"ColecoVision": "coleco",
|
|
192
|
+
"Commodore 64": "vice_x64sc",
|
|
193
|
+
"Commodore 128": "vice_x128",
|
|
194
|
+
"Commodore VIC20": "vice_xvic",
|
|
195
|
+
"Commodore Plus/4": "vice_xplus4",
|
|
196
|
+
"Commodore PET": "vice_xpet"
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
const cores = Object.keys(coreValues).sort().reduce(
|
|
200
|
+
(obj, key) => {
|
|
201
|
+
obj[key] = coreValues[key];
|
|
202
|
+
return obj;
|
|
203
|
+
},
|
|
204
|
+
{}
|
|
205
|
+
);
|
|
206
|
+
|
|
207
|
+
const button = document.createElement("button")
|
|
208
|
+
const select = document.createElement("select")
|
|
209
|
+
|
|
210
|
+
for (const type in cores) {
|
|
211
|
+
const option = document.createElement("option")
|
|
212
|
+
|
|
213
|
+
option.value = cores[type]
|
|
214
|
+
option.textContent = type
|
|
215
|
+
select.appendChild(option)
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
button.onclick = () => resolve(select[select.selectedIndex].value)
|
|
219
|
+
button.textContent = "Load game"
|
|
220
|
+
box.innerHTML = ""
|
|
221
|
+
|
|
222
|
+
box.appendChild(select)
|
|
223
|
+
box.appendChild(button)
|
|
224
|
+
})
|
|
225
|
+
})(parts.pop())
|
|
226
|
+
|
|
227
|
+
const div = document.createElement("div")
|
|
228
|
+
const sub = document.createElement("div")
|
|
229
|
+
const script = document.createElement("script")
|
|
230
|
+
|
|
231
|
+
sub.id = "game"
|
|
232
|
+
div.id = "display"
|
|
233
|
+
|
|
234
|
+
const top = document.getElementById("top");
|
|
235
|
+
top.remove();
|
|
236
|
+
box.remove()
|
|
237
|
+
div.appendChild(sub)
|
|
238
|
+
document.body.appendChild(div)
|
|
239
|
+
|
|
240
|
+
window.EJS_player = "#game";
|
|
241
|
+
window.EJS_gameName = parts.shift();
|
|
242
|
+
window.EJS_biosUrl = "";
|
|
243
|
+
window.EJS_gameUrl = url;
|
|
244
|
+
window.EJS_core = core;
|
|
245
|
+
window.EJS_pathtodata = "data/";
|
|
246
|
+
window.EJS_startOnLoaded = true;
|
|
247
|
+
window.EJS_DEBUG_XX = enableDebug;
|
|
248
|
+
window.EJS_disableDatabases = true;
|
|
249
|
+
window.EJS_threads = enableThreads;
|
|
250
|
+
|
|
251
|
+
script.src = "data/loader.js";
|
|
252
|
+
document.body.appendChild(script);
|
|
253
|
+
}
|
|
254
|
+
box.ondragover = () => box.setAttribute("drag", true);
|
|
255
|
+
box.ondragleave = () => box.removeAttribute("drag");
|
|
256
|
+
</script>
|
|
257
|
+
</body>
|
|
258
|
+
</html>
|
package/Apps/ruffle.html
ADDED
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
|
|
2
|
+
<!DOCTYPE html>
|
|
3
|
+
<html data-ruffle-optout>
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="utf-8" />
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
7
|
+
<title>Ruffle</title>
|
|
8
|
+
<base href="https://cdn.jsdelivr.net/gh/dskjfoisjfsjio/dskjfoisjfsjio.github.io@main/Apps/ruffle/">/
|
|
9
|
+
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato" />
|
|
10
|
+
<link rel="icon" href="/new logo.png">
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
</head>
|
|
14
|
+
<body>
|
|
15
|
+
<div id="nav">
|
|
16
|
+
<div id="title">
|
|
17
|
+
<a href="#">
|
|
18
|
+
<img src="logo.svg" alt="Ruffle" data-canonical-src="logo.svg" />
|
|
19
|
+
</a>
|
|
20
|
+
</div>
|
|
21
|
+
<div id="file-picker">
|
|
22
|
+
<div id="local-file-container">
|
|
23
|
+
<span id="local-file-static-label">Local SWF:</span>
|
|
24
|
+
<input type="file" accept=".swf,.spl" id="local-file" aria-describedby="local-file-static-label" />
|
|
25
|
+
<label for="local-file" id="local-file-label">Select File</label>
|
|
26
|
+
<span id="local-file-name">No file selected.</span>
|
|
27
|
+
</div>
|
|
28
|
+
<div id="sample-swfs-container" class="hidden">
|
|
29
|
+
<span id="sample-swfs-label">Sample SWF:</span>
|
|
30
|
+
<select id="sample-swfs" aria-describedby="sample-swfs-label">
|
|
31
|
+
<optgroup id="anim-optgroup" label="Animations"></optgroup>
|
|
32
|
+
<optgroup id="games-optgroup" label="Games"></optgroup>
|
|
33
|
+
</select>
|
|
34
|
+
<div id="author-container" class="hidden"><span>Author: </span><a href="#" target="_blank" id="author"></a></div>
|
|
35
|
+
</div>
|
|
36
|
+
 
|
|
37
|
+
<svg width="20px" id="open-modal" viewBox="0 0 416.979 416.979">
|
|
38
|
+
<path
|
|
39
|
+
fill="white"
|
|
40
|
+
d="M356.004 61.156c-81.37-81.47-213.377-81.551-294.848-.182-81.47 81.371-81.552 213.379-.181 294.85 81.369 81.47 213.378 81.551 294.849.181 81.469-81.369 81.551-213.379.18-294.849zM237.6 340.786a5.821 5.821 0 0 1-5.822 5.822h-46.576a5.821 5.821 0 0 1-5.822-5.822V167.885a5.821 5.821 0 0 1 5.822-5.822h46.576a5.82 5.82 0 0 1 5.822 5.822v172.901zm-29.11-202.885c-18.618 0-33.766-15.146-33.766-33.765 0-18.617 15.147-33.766 33.766-33.766s33.766 15.148 33.766 33.766c0 18.619-15.149 33.765-33.766 33.765z"
|
|
41
|
+
/>
|
|
42
|
+
</svg>
|
|
43
|
+
</div>
|
|
44
|
+
</div>
|
|
45
|
+
<div id="main" aria-label="Select a demo or drag an SWF">
|
|
46
|
+
<div id="overlay" class="hidden"></div>
|
|
47
|
+
</div>
|
|
48
|
+
<div id="metadata-modal" class="modal">
|
|
49
|
+
<div class="modal-content">
|
|
50
|
+
<span class="close" id="close-modal">×</span>
|
|
51
|
+
<table id="metadata">
|
|
52
|
+
<tr>
|
|
53
|
+
<td>Uncompressed Length</td>
|
|
54
|
+
<td><span class="metadata" id="uncompressedLength">Loading</span></td>
|
|
55
|
+
</tr>
|
|
56
|
+
<tr>
|
|
57
|
+
<td>SWF Version</td>
|
|
58
|
+
<td><span class="metadata" id="swfVersion">Loading</span></td>
|
|
59
|
+
</tr>
|
|
60
|
+
<tr>
|
|
61
|
+
<td>FP Version</td>
|
|
62
|
+
<td><span class="metadata" id="flashVersion">Loading</span></td>
|
|
63
|
+
</tr>
|
|
64
|
+
<tr>
|
|
65
|
+
<td>ActionScript 3</td>
|
|
66
|
+
<td><span class="metadata" id="isActionScript3">Loading</span></td>
|
|
67
|
+
</tr>
|
|
68
|
+
<tr>
|
|
69
|
+
<td>Total Frames</td>
|
|
70
|
+
<td><span class="metadata" id="numFrames">Loading</span></td>
|
|
71
|
+
</tr>
|
|
72
|
+
<tr>
|
|
73
|
+
<td>Frame Rate</td>
|
|
74
|
+
<td><span class="metadata" id="frameRate">Loading</span></td>
|
|
75
|
+
</tr>
|
|
76
|
+
<tr>
|
|
77
|
+
<td>SWF Width</td>
|
|
78
|
+
<td><span class="metadata" id="width">Loading</span></td>
|
|
79
|
+
</tr>
|
|
80
|
+
<tr>
|
|
81
|
+
<td>SWF Height</td>
|
|
82
|
+
<td><span class="metadata" id="height">Loading</span></td>
|
|
83
|
+
</tr>
|
|
84
|
+
<tr>
|
|
85
|
+
<td>SWF Background Color</td>
|
|
86
|
+
<td><input class="metadata" type="color" id="backgroundColor" disabled value="#FFFFFF" /></td>
|
|
87
|
+
</tr>
|
|
88
|
+
</table>
|
|
89
|
+
</div>
|
|
90
|
+
</div>
|
|
91
|
+
<script src="index.js"></script>
|
|
92
|
+
</body>
|
|
93
|
+
</html>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
<base href="https://cdn.jsdelivr.net/gh/dskjfoisjfsjio/dskjfoisjfsjio.github.io@main/Apps/soundboard-main/">
|
|
2
|
+
<!--an unminifed version is at og.html-->
|
|
3
|
+
<!DOCTYPE html><html>
|
|
4
|
+
<head> <link rel="stylesheet" href="css/styles.css"/> <link rel="icon" href="/new logo.png"/> <link rel="shortcut icon" href="img/mlg-favicon.png" type="image/x-icon"/> <link rel="apple-touch-icon" href="img/mlg-favicon.png" type="image/x-icon"/> <title>Online Soundboard</title> <meta name="viewport" content="width=device-width, initial-scale=1.0"/> <meta name="title" content="Online Soundboard"/> <meta name="description" content="A collection of sounds to play out of context. Perfect for school! Just play it when your teacher is talking and I bet they will love it!"/> <meta name="robots" content="index, follow"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <link rel="manifest" href="./manifest.json"/> <link rel="stylesheet" href="css/spinner.css"/> <script>if ("serviceWorker" in navigator){navigator.serviceWorker .register("/sw.js") .then(function (registration){console.log("Service worker registered:", registration);}) .catch(function (error){console.log("Service worker registration failed:", error);});}</script> </head> <body> <h1>Online Soundboard</h1> <h2> Just click on the colorful buttons to play the sound.<br/> <a href="https://forms.gle/hoiTBEZ4p14iupXH6">Click here to submit a sound to be added!</a><br/> </h2> <div class="control"> Audio Controls <button class="woah" onclick="javascript:playAll()">Provoke Chaos</button> <button class="woah" onclick="javascript:stopAll()">Stop Everything</button> </div><div class="soundboard-container"> <div class="flex-container"> <div class="spinner"></div></div></div><p id="footer">3kh0 © 2023</p><script type="application/javascript" src="loader.js"></script> </body></html>
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
|
|
2
|
+
<!doctype html>
|
|
3
|
+
<html lang="en">
|
|
4
|
+
<html>
|
|
5
|
+
<head>
|
|
6
|
+
<title>Connect 4</title>
|
|
7
|
+
<base href="https://cdn.jsdelivr.net/gh/dskjfoisjfsjio/dskjfoisjfsjio.github.io@main/Games/WAflash/">
|
|
8
|
+
<link rel="icon" href="/new logo.png">
|
|
9
|
+
<link rel="stylesheet" href="js/style.css">
|
|
10
|
+
<script>
|
|
11
|
+
var gameConfig = {
|
|
12
|
+
swfUrl: "https://raw.githubusercontent.com/dskjfoisjfsjio/dskjfoisjfsjio.github.io/main/Games/ruffle/SWF/connect-4.swf"
|
|
13
|
+
}
|
|
14
|
+
</script>
|
|
15
|
+
</head>
|
|
16
|
+
<body>
|
|
17
|
+
<div id="waflashContainer">
|
|
18
|
+
<canvas class="waflashCanvas" id="canvas" tabindex="1"></canvas>
|
|
19
|
+
<div id="waflashStatus" style="display: none;">Playing...</div>
|
|
20
|
+
<script>
|
|
21
|
+
var ua = navigator.userAgent.toLowerCase();
|
|
22
|
+
if ( (navigator.appName == 'Netscape' && ua.indexOf('trident') != -1) || (ua.indexOf("msie") != -1)) {
|
|
23
|
+
var waf = document.getElementById('waflashStatus');
|
|
24
|
+
waf.style.display = 'block';
|
|
25
|
+
waf.innerText = 'ì¸í„°ë„· ìµìŠ¤í”Œë¡œì–´(IE) ì—서는 ê²Œìž„ì´ ì‹¤í–‰ë˜ì§€ 않습니다 !\ní¬ë¡¬, ì—£ì§€ë“±ì˜ ë‹¤ë¥¸ 브ë¼ìš°ì €ë¥¼ ì´ìš©í•´ì£¼ì„¸ìš”.';
|
|
26
|
+
gtag('event', 'connect_from_ie', {'event_category': 'error', 'event_label': ua });
|
|
27
|
+
}
|
|
28
|
+
</script>
|
|
29
|
+
<script type="module" crossorigin="anonymous">
|
|
30
|
+
let is_mobile = /Mobi/i.test(window.navigator.userAgent);
|
|
31
|
+
if (is_mobile) {
|
|
32
|
+
function scrollToSubject() {
|
|
33
|
+
try {
|
|
34
|
+
window.scrollTo({
|
|
35
|
+
top: 100,
|
|
36
|
+
left: 0,
|
|
37
|
+
behavior: 'smooth'
|
|
38
|
+
});
|
|
39
|
+
} catch (e) {}
|
|
40
|
+
}
|
|
41
|
+
scrollToSubject();
|
|
42
|
+
window.addEventListener("orientationchange", function() {
|
|
43
|
+
setTimeout(scrollToSubject, 100);
|
|
44
|
+
});
|
|
45
|
+
} else {
|
|
46
|
+
document.getElementById('canvas').focus();
|
|
47
|
+
}
|
|
48
|
+
document.getElementById('canvas').addEventListener("keydown", function(ev) {
|
|
49
|
+
ev.preventDefault();
|
|
50
|
+
ev.stopPropagation();
|
|
51
|
+
});
|
|
52
|
+
document.getElementById('canvas').addEventListener("click", function() {
|
|
53
|
+
document.getElementById('canvas').focus();
|
|
54
|
+
});
|
|
55
|
+
document.addEventListener("mousedown", (function() {
|
|
56
|
+
const canvasElement = document.getElementById('canvas');
|
|
57
|
+
let focused = false;
|
|
58
|
+
return function(ev) {
|
|
59
|
+
if (ev.target == canvasElement) {
|
|
60
|
+
if (!focused) {
|
|
61
|
+
canvasElement.focus();
|
|
62
|
+
focused = true;
|
|
63
|
+
}
|
|
64
|
+
} else {
|
|
65
|
+
if (focused) {
|
|
66
|
+
focused = false;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return true;
|
|
70
|
+
}
|
|
71
|
+
})());
|
|
72
|
+
|
|
73
|
+
var golddate=Date;
|
|
74
|
+
Date.now=function(){
|
|
75
|
+
var a=new golddate();
|
|
76
|
+
a.setFullYear('2022'); a.setMonth('06'); a.setDate('01');
|
|
77
|
+
return a.getTime();
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
import {
|
|
81
|
+
createWaflash
|
|
82
|
+
} from './js/waflash-player.min.js?15';
|
|
83
|
+
createWaflash(gameConfig.swfUrl, window.wafOptions || {});
|
|
84
|
+
</script>
|
|
85
|
+
</div>
|
|
86
|
+
</body>
|
|
87
|
+
</html>
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
<!doctype html>
|
|
4
|
+
<html lang="en">
|
|
5
|
+
<html>
|
|
6
|
+
<head>
|
|
7
|
+
<title>Deal or no Deal</title>
|
|
8
|
+
<base href="https://cdn.jsdelivr.net/gh/dskjfoisjfsjio/dskjfoisjfsjio.github.io@main/Games/WAflash/">
|
|
9
|
+
<link rel="icon" href="/new logo.png">
|
|
10
|
+
|
|
11
|
+
<link rel="stylesheet" href="js/style.css">
|
|
12
|
+
<script>
|
|
13
|
+
var gameConfig = {
|
|
14
|
+
swfUrl: "https://raw.githubusercontent.com/dskjfoisjfsjio/dskjfoisjfsjio.github.io/main/Games/ruffle/SWF/dealornodeal.swf"
|
|
15
|
+
}
|
|
16
|
+
</script>
|
|
17
|
+
</head>
|
|
18
|
+
<body>
|
|
19
|
+
<div id="waflashContainer">
|
|
20
|
+
<canvas class="waflashCanvas" id="canvas" tabindex="1"></canvas>
|
|
21
|
+
<div id="waflashStatus" style="display: none;">Playing...</div>
|
|
22
|
+
<script>
|
|
23
|
+
var ua = navigator.userAgent.toLowerCase();
|
|
24
|
+
if ( (navigator.appName == 'Netscape' && ua.indexOf('trident') != -1) || (ua.indexOf("msie") != -1)) {
|
|
25
|
+
var waf = document.getElementById('waflashStatus');
|
|
26
|
+
waf.style.display = 'block';
|
|
27
|
+
waf.innerText = 'ì¸í„°ë„· ìµìŠ¤í”Œë¡œì–´(IE) ì—서는 ê²Œìž„ì´ ì‹¤í–‰ë˜ì§€ 않습니다 !\ní¬ë¡¬, ì—£ì§€ë“±ì˜ ë‹¤ë¥¸ 브ë¼ìš°ì €ë¥¼ ì´ìš©í•´ì£¼ì„¸ìš”.';
|
|
28
|
+
gtag('event', 'connect_from_ie', {'event_category': 'error', 'event_label': ua });
|
|
29
|
+
}
|
|
30
|
+
</script>
|
|
31
|
+
<script type="module" crossorigin="anonymous">
|
|
32
|
+
let is_mobile = /Mobi/i.test(window.navigator.userAgent);
|
|
33
|
+
if (is_mobile) {
|
|
34
|
+
function scrollToSubject() {
|
|
35
|
+
try {
|
|
36
|
+
window.scrollTo({
|
|
37
|
+
top: 100,
|
|
38
|
+
left: 0,
|
|
39
|
+
behavior: 'smooth'
|
|
40
|
+
});
|
|
41
|
+
} catch (e) {}
|
|
42
|
+
}
|
|
43
|
+
scrollToSubject();
|
|
44
|
+
window.addEventListener("orientationchange", function() {
|
|
45
|
+
setTimeout(scrollToSubject, 100);
|
|
46
|
+
});
|
|
47
|
+
} else {
|
|
48
|
+
document.getElementById('canvas').focus();
|
|
49
|
+
}
|
|
50
|
+
document.getElementById('canvas').addEventListener("keydown", function(ev) {
|
|
51
|
+
ev.preventDefault();
|
|
52
|
+
ev.stopPropagation();
|
|
53
|
+
});
|
|
54
|
+
document.getElementById('canvas').addEventListener("click", function() {
|
|
55
|
+
document.getElementById('canvas').focus();
|
|
56
|
+
});
|
|
57
|
+
document.addEventListener("mousedown", (function() {
|
|
58
|
+
const canvasElement = document.getElementById('canvas');
|
|
59
|
+
let focused = false;
|
|
60
|
+
return function(ev) {
|
|
61
|
+
if (ev.target == canvasElement) {
|
|
62
|
+
if (!focused) {
|
|
63
|
+
canvasElement.focus();
|
|
64
|
+
focused = true;
|
|
65
|
+
}
|
|
66
|
+
} else {
|
|
67
|
+
if (focused) {
|
|
68
|
+
focused = false;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return true;
|
|
72
|
+
}
|
|
73
|
+
})());
|
|
74
|
+
|
|
75
|
+
var golddate=Date;
|
|
76
|
+
Date.now=function(){
|
|
77
|
+
var a=new golddate();
|
|
78
|
+
a.setFullYear('2022'); a.setMonth('06'); a.setDate('01');
|
|
79
|
+
return a.getTime();
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
import {
|
|
83
|
+
createWaflash
|
|
84
|
+
} from './js/waflash-player.min.js?15';
|
|
85
|
+
createWaflash(gameConfig.swfUrl, window.wafOptions || {});
|
|
86
|
+
</script>
|
|
87
|
+
</div>
|
|
88
|
+
</body>
|
|
89
|
+
</html>
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
|
|
2
|
+
<!doctype html>
|
|
3
|
+
<html lang="en">
|
|
4
|
+
<html>
|
|
5
|
+
<head>
|
|
6
|
+
<title>Escaping the Prison</title>
|
|
7
|
+
<base href="https://cdn.jsdelivr.net/gh/dskjfoisjfsjio/dskjfoisjfsjio.github.io@main/Games/WAflash/">
|
|
8
|
+
<link rel="icon" href="/new logo.png">
|
|
9
|
+
<link rel="stylesheet" href="js/style.css">
|
|
10
|
+
<script>
|
|
11
|
+
var gameConfig = {
|
|
12
|
+
swfUrl: "https://raw.githubusercontent.com/dskjfoisjfsjio/dskjfoisjfsjio.github.io/main/Games/ruffle/SWF/escapingtheprison.swf"
|
|
13
|
+
}
|
|
14
|
+
</script>
|
|
15
|
+
</head>
|
|
16
|
+
<body>
|
|
17
|
+
<div id="waflashContainer">
|
|
18
|
+
<canvas class="waflashCanvas" id="canvas" tabindex="1"></canvas>
|
|
19
|
+
<div id="waflashStatus" style="display: none;">Playing...</div>
|
|
20
|
+
<script>
|
|
21
|
+
var ua = navigator.userAgent.toLowerCase();
|
|
22
|
+
if ( (navigator.appName == 'Netscape' && ua.indexOf('trident') != -1) || (ua.indexOf("msie") != -1)) {
|
|
23
|
+
var waf = document.getElementById('waflashStatus');
|
|
24
|
+
waf.style.display = 'block';
|
|
25
|
+
waf.innerText = 'ì¸í„°ë„· ìµìŠ¤í”Œë¡œì–´(IE) ì—서는 ê²Œìž„ì´ ì‹¤í–‰ë˜ì§€ 않습니다 !\ní¬ë¡¬, ì—£ì§€ë“±ì˜ ë‹¤ë¥¸ 브ë¼ìš°ì €ë¥¼ ì´ìš©í•´ì£¼ì„¸ìš”.';
|
|
26
|
+
gtag('event', 'connect_from_ie', {'event_category': 'error', 'event_label': ua });
|
|
27
|
+
}
|
|
28
|
+
</script>
|
|
29
|
+
<script type="module" crossorigin="anonymous">
|
|
30
|
+
let is_mobile = /Mobi/i.test(window.navigator.userAgent);
|
|
31
|
+
if (is_mobile) {
|
|
32
|
+
function scrollToSubject() {
|
|
33
|
+
try {
|
|
34
|
+
window.scrollTo({
|
|
35
|
+
top: 100,
|
|
36
|
+
left: 0,
|
|
37
|
+
behavior: 'smooth'
|
|
38
|
+
});
|
|
39
|
+
} catch (e) {}
|
|
40
|
+
}
|
|
41
|
+
scrollToSubject();
|
|
42
|
+
window.addEventListener("orientationchange", function() {
|
|
43
|
+
setTimeout(scrollToSubject, 100);
|
|
44
|
+
});
|
|
45
|
+
} else {
|
|
46
|
+
document.getElementById('canvas').focus();
|
|
47
|
+
}
|
|
48
|
+
document.getElementById('canvas').addEventListener("keydown", function(ev) {
|
|
49
|
+
ev.preventDefault();
|
|
50
|
+
ev.stopPropagation();
|
|
51
|
+
});
|
|
52
|
+
document.getElementById('canvas').addEventListener("click", function() {
|
|
53
|
+
document.getElementById('canvas').focus();
|
|
54
|
+
});
|
|
55
|
+
document.addEventListener("mousedown", (function() {
|
|
56
|
+
const canvasElement = document.getElementById('canvas');
|
|
57
|
+
let focused = false;
|
|
58
|
+
return function(ev) {
|
|
59
|
+
if (ev.target == canvasElement) {
|
|
60
|
+
if (!focused) {
|
|
61
|
+
canvasElement.focus();
|
|
62
|
+
focused = true;
|
|
63
|
+
}
|
|
64
|
+
} else {
|
|
65
|
+
if (focused) {
|
|
66
|
+
focused = false;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return true;
|
|
70
|
+
}
|
|
71
|
+
})());
|
|
72
|
+
|
|
73
|
+
var golddate=Date;
|
|
74
|
+
Date.now=function(){
|
|
75
|
+
var a=new golddate();
|
|
76
|
+
a.setFullYear('2022'); a.setMonth('06'); a.setDate('01');
|
|
77
|
+
return a.getTime();
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
import {
|
|
81
|
+
createWaflash
|
|
82
|
+
} from './js/waflash-player.min.js?15';
|
|
83
|
+
createWaflash(gameConfig.swfUrl, window.wafOptions || {});
|
|
84
|
+
</script>
|
|
85
|
+
</div>
|
|
86
|
+
</body>
|
|
87
|
+
</html>
|