const tips_of_the_day = [
`The Revolver deals locational damage.
A headshot deals 2x damage and a limbshot deals 1.5x damage.`,
`Dash: Fully invincible, costs stamina
Slide: Greater distance, no invincibility
Jump: Quickly out of melee range, less control`,
`Shotgun parries: A point-blank Shotgun shot to the torso right before an enemy attack lands will deal massive damage.`,
`Attack sound cues allow you to keep track of enemies who are off screen.`,
`Some enemies make idle sounds to make them easier to track.`,
`Use the ATTRACTOR NAILGUN's magnets to form concentrated orbs of nails that can be moved around using the pull force of other magnets.`,
`Enemies can hurt other enemy types. With quick thinking and positioning, powerful enemies can turn into powerful weapons.`,
`The ATTRACTOR NAILGUN's magnets can be attached to enemies to make mobile targets easy to hit with nails.`,
`Enemies scream when falling from a fatal height.`,
`SLAM BOUNCING: Jump immediately after landing from a ground slam to jump higher. The longer the ground slam fall, the higher the bounce.`,
`RAILCANNON variations all share the same cooldown. Choose wisely which variation best fits the situation.`,
`SLIDING will retain previous momentum for a short amount of time. Chaining quick SLIDE JUMPS after a DASH JUMP will give you incredible sustained speed.`,
`Environmental hazards such as harmful liquids will hurt enemies as well.`,
`If you're having trouble keeping up with a tough enemy, stand back and observe. Every enemy has its tells and patterns and learning those can be your key to victory.`,
`HITSCAN weapons can be used to hit the shotgun's CORE EJECT in mid-air to increase its damage and blast radius.`,
`POWER-UPS can be stacked.`,
`Hitting an enemy with only the edge of an explosion will launch them without dealing much damage, making it a risky but effective tool against Stalkers.`,
`Airborne coins can be shot with any hitscan weapon.`,
`Falling underwater is slow, but a ground slam allows for a quick return to the ground.`,
`Sliding onto water will cause one to skip across its surface.`,
`If an enemy is blessed by an Idol, a direct visible connection is formed between the two, allowing one to easily track down and destroy the protector.`,
`Explosions deflect projectiles.
If an explosion is caused right from where an enemy shoots a projectile, it can backfire and hit them instead.`,
`The space of a large arena can be used to one's advantage. Using the environment to break line-of-sight with enemies allows for some breathing room and time to consider target prioritization.`,
`DON'T WASTE STAMINA! Dashing needlessly while fighting very aggressive foes will quickly cause one to have none left when it is most needed.`,
`Homing projectiles may be more difficult to dodge, but their tracking and slower speed makes them much easier to parry.`,
`Mannequins can be hard to hit due to their speed, but they lose air control when launched or shot down from a surface, making them unable to move for a short moment.`,
`The Knuckleblaster's blast wave is also capable of breaking a Gutterman's shield, and is much easier to land in a chaotic scenario.`,
`A direct hit from the Knuckleblaster has extremely powerful knockback, making it extremely powerful for launching enemies into pits and other environmental hazards.`,
`Didn't expect me, huh?`,
`Magenta colored attacks can not be dashed through and must be avoided entirely.`,
`Blood Puppets do not grant kills or style points, but their blood can still heal.`,
`When facing down a difficult foe, it may be beneficial to first get rid of the fodder to reduce distractions.`,
`Sometimes it may be more beneficial to stay at a distance and wait for an opening before getting close.`,
`If you're having trouble with a specific encounter, take a moment to weigh your options.
There may be some trick, tool or alternative prioritization that will tip the scales in your favor.`,
`ENEMY STEP: Jump while in mid-air near an enemy to jump off the enemy. This resets the amount of available walljumps without needing to land.`,
`Parries can be used as a powerful healing tool.
Parrying any enemy projectile or melee attack will fully replenish your health up to the hard damage limit.`,
`H a v e f u n .`,
`If blown too far off the arena, PUMP CHARGE's overcharge is a good way to get back.`,
`CHEATS can be enabled in other levels by inputting 🡡 🡡 🡣 🡣 🡠🡢 🡠🡢 B A Enabling cheats will disable ranks`,
`You can pick up the cut weapons on the second floor.`
]
var click = new Audio('/static/content/smileos/SmileOS2Click.ogx');
document.getElementById("smileos-about").addEventListener("click", function() {
click.play();
document.getElementById("smileos-window-title").innerHTML = "About";
document.getElementById("smileos-window-content").innerHTML = `
SmileOS: is the operating system found on most digital interfaces found throughout
Hell. SmileOS 1.0 is employed on pannels despite its poor user and developer experience to conserve
blood after the war, while SmileOS 2.0 is used for terminals requireing higher blood consumption.
`;
});
document.getElementById("smileos-snake").addEventListener("click", function() {
click.play();
document.getElementById("smileos-window-title").innerHTML = "Snake";
document.getElementById("smileos-window-content").innerHTML = `
`;
});
document.getElementById("smileos-leaderboard").addEventListener("click", function() {
click.play();
document.getElementById("smileos-window-title").innerHTML = "Leaderboard";
document.getElementById("smileos-window-content").innerHTML = `
`;
});
document.getElementById("smileos-tip").addEventListener("click", function() {
click.play();
document.getElementById("smileos-window-title").innerHTML = "Tip of the Day";
document.getElementById("smileos-window-content").innerHTML = tips_of_the_day[Math.floor(Math.random() * tips_of_the_day.length)];
});
async function playAudio(url) {
return new Promise((resolve) => {
const audio = new Audio(url);
audio.addEventListener('ended', resolve); // Resolve the promise when audio ends
audio.play();
});
}
document.addEventListener("DOMContentLoaded", async function() {
document.getElementById("smileos-window-title").innerHTML = "Tip of the Day";
document.getElementById("smileos-window-content").innerHTML = tips_of_the_day[Math.floor(Math.random() * tips_of_the_day.length)];
await playAudio('/static/content/smileos/SmileOS2Startup.ogx');
var music = new Audio('/static/content/smileos/Shopmusic.ogx');
music.loop = true;
music.play();
});
document.getElementById("smileos-restart-music").addEventListener("click", async function() {
await playAudio('/static/content/smileos/SmileOS2Startup.ogx');
var music = new Audio('/static/content/smileos/Shopmusic.ogx');
music.loop = true;
music.play();
});