0% found this document useful (0 votes)
5 views5 pages

Untitled Document

Uploaded by

ibisbibi6
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views5 pages

Untitled Document

Uploaded by

ibisbibi6
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 5

<!

DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Gelişmiş Şanslı Sayı Oyunu</title>
<style>
body {
font-family: Arial, sans-serif;
background-color: #1c1c1c;
color: white;
text-align: center;
padding: 20px;
}
#overlay, #yellowOverlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: black;
opacity: 0.9;
display: none;
align-items: center;
justify-content: center;
z-index: 1000;
}
#yellowOverlay {
background-color: yellow;
opacity: 0.7;
}
#revealButton {
padding: 10px 20px;
background-color: #4CAF50;
color: white;
border: none;
cursor: pointer;
font-size: 20px;
}
button {
padding: 10px 20px;
background-color: #4CAF50;
color: white;
border: none;
cursor: pointer;
margin-top: 20px;
}
button:hover {
background-color: #45a049;
}
.inventory, .leaderboard {
margin-top: 20px;
text-align: left;
font-size: 16px;
background-color: #333;
padding: 10px;
border-radius: 10px;
max-width: 400px;
margin: 20px auto;
}
</style>
</head>
<body>
<h1>Şanslı Sayıya Yaklaş!</h1>
<p>Rastgele sayılar ve nadirlik seviyeleriyle en şanslı ol!</p>

<input type="text" id="username" placeholder="Kullanıcı Adınızı Girin">


<button onclick="generateNumber()">Rastgele Sayı Üret</button>

<p id="result"></p>

<!-- Overlay ve Efektler -->


<div id="overlay">
<p id="overlayText" style="color: white; font-size: 24px;">Nadir Sayı
Çıktı!</p>
</div>
<div id="yellowOverlay">
<p id="overlayTextYellow" style="color: black; font-size: 24px;">Oldukça
Nadir Sayı Çıktı!</p>
</div>

<div class="inventory">
<h3>Envanteriniz</h3>
<ul id="inventoryList"></ul>
</div>

<div class="leaderboard">
<h3>Liderlik Tablosu</h3>
<ul id="leaderboardList"></ul>
</div>

<script>
let currentUser = localStorage.getItem('currentUser') || '';
if (currentUser) {
document.getElementById('username').value = currentUser;
}

function getUserName() {
currentUser = document.getElementById('username').value;
if (currentUser) {
localStorage.setItem('currentUser', currentUser);
}
}

function loadInventory() {
const inventory = JSON.parse(localStorage.getItem('inventory')) || [];
const inventoryList = document.getElementById('inventoryList');
inventoryList.innerHTML = '';
inventory.forEach(item => {
const li = document.createElement('li');
li.textContent = `Sayınız: ${item}`;
inventoryList.appendChild(li);
});
}

function loadLeaderboard() {
const leaderboard = JSON.parse(localStorage.getItem('leaderboard')) ||
[];
const leaderboardList = document.getElementById('leaderboardList');
leaderboardList.innerHTML = '';
leaderboard.forEach((entry, index) => {
const li = document.createElement('li');
li.textContent = `${index + 1}. ${entry.username} - $
{entry.rarestNumber}`;
leaderboardList.appendChild(li);
});
}

function generateNumber() {
getUserName();
if (!currentUser) {
alert("Lütfen bir kullanıcı adı girin!");
return;
}

let randomNumber = Math.floor(Math.random() * 100000); // 0 - 100000


arası
let rarity = getRarity(randomNumber);

let inventory = JSON.parse(localStorage.getItem('inventory')) || [];


inventory.push(randomNumber);
localStorage.setItem('inventory', JSON.stringify(inventory));

if (rarity === "rare") {


triggerOverlay("overlay", 2000, `Çok Nadir Sayı: ${randomNumber}`);
} else if (rarity === "superRare") {
triggerOverlay("overlay", 0, `Oldukça Nadir Sayı: ${randomNumber}`,
"revealButton");
} else if (rarity === "ultraRare") {
triggerOverlay("yellowOverlay", 3000, `İnanılmaz Nadir Sayı: $
{randomNumber}`);
} else {
document.getElementById('result').innerHTML = `Üretilen Sayı: $
{randomNumber}`;
}

loadInventory();
loadLeaderboard();
}

function getRarity(number) {
if (number === 2) return "common"; // %50 olasılık için
if (number === 1000) return "ultraRare"; // %0.1 olasılık için
if (number >= 100 && number < 1000) return "rare";
if (number >= 1000 && number < 25000) return "superRare";
if (number >= 25000 && number < 100000) return "ultraRare";
return "common";
}

function triggerOverlay(overlayId, duration, text, buttonId = null) {


const overlay = document.getElementById(overlayId);
const overlayText = overlay.querySelector("p");
overlayText.textContent = text;
overlay.style.display = "flex";

if (buttonId) {
const button = document.createElement("button");
button.id = buttonId;
button.textContent = "Göster";
button.onclick = () => overlay.style.display = "none";
overlay.appendChild(button);
}

if (duration > 0) {
setTimeout(() => {
overlay.style.display = "none";
if (buttonId) overlay.querySelector("button").remove();
}, duration);
}
}

function updateLeaderboard(rareNumber) {
let leaderboard = JSON.parse(localStorage.getItem('leaderboard')) ||
[];

let existingUser = leaderboard.find(entry => entry.username ===


currentUser);
if (existingUser) {
existingUser.rarestNumber = Math.max(existingUser.rarestNumber,
rareNumber);
} else {
leaderboard.push({ username: currentUser, rarestNumber:
rareNumber });
}

leaderboard.sort((a, b) => b.rarestNumber - a.rarestNumber);


localStorage.setItem('leaderboard', JSON.stringify(leaderboard.slice(0,
10)));
}

window.onload = function() {
loadInventory();
loadLeaderboard();
}
</script>
</body>
</html>

You might also like