API-XX commited on
Commit
f68baec
Β·
verified Β·
1 Parent(s): 3151f19

Upload case.js

Browse files
Files changed (1) hide show
  1. case.js +121 -13
case.js CHANGED
@@ -126,9 +126,7 @@ module.exports = async (conn, dev, chatUpdate, store) => {
126
  budy,
127
  content,
128
  body
129
- } = dev
130
- let gameFile = './database/game.json';
131
-
132
  const isGroup = m.key.remoteJid.endsWith('@g.us');
133
  const prefixFile = './database/prefix.json';
134
  let prefix = '.';
@@ -972,7 +970,9 @@ module.exports = async (conn, dev, chatUpdate, store) => {
972
 
973
  > β”€γ€Ž \`πŒπ„πƒπˆπ€ πƒπŽπ–ππ‹πŽπ€πƒπ’\` 』
974
  > ${sign} ${prefix}startgame
975
-
 
 
976
  > ─────────────❐
977
 
978
  > β”€γ€Ž \`π…πˆπ‹π„ πƒπŽπ–ππ‹πŽπ€πƒπ’\` 』
@@ -3241,33 +3241,141 @@ case 'scan': {
3241
  }
3242
  case 'startgame': {
3243
  let user = m.sender;
 
3244
  let gameData = fs.existsSync(gameFile) ? JSON.parse(fs.readFileSync(gameFile, 'utf8')) : {};
3245
 
 
 
 
 
3246
  if (gameData[user]) {
3247
  return conn.sendMessage(m.chat, {
3248
- image: { url: "https://huggingface.co/spaces/API-XX/TEST/resolve/main/Links/images.jpeg" },
3249
- caption: fontx(`βš”οΈ *You are already in the game!*\n\nπŸ’° *Balance:* $${gameData[user].money}\nπŸŽ–οΈ *Level:* ${gameData[user].level}\nπŸ”Ή *XP:* ${gameData[user].xp}\nπŸ›’ *Inventory:* ${gameData[user].inventory.length > 0 ? gameData[user].inventory.join(", ") : "Empty"}\n\nπŸͺ Visit the *weapon store* to buy your first weapon!`)
3250
  });
3251
  }
3252
 
 
3253
  gameData[user] = {
3254
- money: 1000,
3255
- level: 1,
3256
- xp: 0,
3257
- inventory: ["Wooden Sword"]
 
 
3258
  };
3259
 
3260
- fs.writeFileSync(gameFile, JSON.stringify(gameData, null, 2));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3261
 
3262
  conn.sendMessage(m.chat, {
3263
- image: { url: "https://i.imgur.com/QTqCHLy.jpg" },
3264
- caption: fontx(`πŸ”₯ *Welcome to the World of Legends!*\n\nπŸ’° *Starting Balance:* $1000\nπŸŽ–οΈ *Level:* 1\nπŸ”Ή *XP:* 0\nπŸ›‘οΈ *Starting Weapon:* Wooden Sword\n\nβš”οΈ *Prepare for battle, warrior!* Visit the weapon store and upgrade your gear!`)
3265
  });
3266
 
3267
  break;
3268
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3269
 
 
3270
 
 
 
 
 
 
 
 
3271
 
3272
 
3273
 
 
126
  budy,
127
  content,
128
  body
129
+ } = dev
 
 
130
  const isGroup = m.key.remoteJid.endsWith('@g.us');
131
  const prefixFile = './database/prefix.json';
132
  let prefix = '.';
 
970
 
971
  > β”€γ€Ž \`πŒπ„πƒπˆπ€ πƒπŽπ–ππ‹πŽπ€πƒπ’\` 』
972
  > ${sign} ${prefix}startgame
973
+ > ${sign} ${prefix}store
974
+ > ${sign} ${prefix}buy
975
+ > ${sign} ${prefix}rank
976
  > ─────────────❐
977
 
978
  > β”€γ€Ž \`π…πˆπ‹π„ πƒπŽπ–ππ‹πŽπ€πƒπ’\` 』
 
3241
  }
3242
  case 'startgame': {
3243
  let user = m.sender;
3244
+ let gameFile = './database/gameData.json';
3245
  let gameData = fs.existsSync(gameFile) ? JSON.parse(fs.readFileSync(gameFile, 'utf8')) : {};
3246
 
3247
+ if (typeof gameData !== 'object' || Array.isArray(gameData)) {
3248
+ gameData = {};
3249
+ }
3250
+
3251
  if (gameData[user]) {
3252
  return conn.sendMessage(m.chat, {
3253
+ image: { url: "https://huggingface.co/spaces/API-XX/TEST/resolve/main/Links/images.jpeg" },
3254
+ caption: fontx(`βš”οΈ *You're already in the game!*\n\nπŸ’° *Balance:* $${gameData[user].money}\nπŸŽ–οΈ *Level:* ${gameData[user].level}\nπŸ›‘οΈ *Rank:* ${gameData[user].rank}\nπŸ›’ *Inventory:* ${gameData[user].inventory.length > 0 ? gameData[user].inventory.join(", ") : "Empty"}\n\nπŸͺ Visit the *store* to buy powerful weapons! Type *!store* to see available items.`)
3255
  });
3256
  }
3257
 
3258
+ let startingRank = "E-Rank";
3259
  gameData[user] = {
3260
+ money: 1000,
3261
+ level: 1,
3262
+ xp: 0,
3263
+ rank: startingRank,
3264
+ inventory: ["Rusty Dagger βš”οΈ"],
3265
+ power: 10 // Hidden Power Level
3266
  };
3267
 
3268
+ try {
3269
+ fs.writeFileSync(gameFile, JSON.stringify(gameData, null, 2));
3270
+ } catch (error) {
3271
+ console.error("❌ Error saving game data:", error);
3272
+ return conn.sendMessage(m.chat, { text: "❌ An error occurred while saving your game data. Please try again." });
3273
+ }
3274
+
3275
+ conn.sendMessage(m.chat, {
3276
+ image: { url: "https://huggingface.co/spaces/API-XX/TEST/resolve/main/Links/images.jpeg" },
3277
+ caption: fontx(`πŸ”₯ *Welcome to the Solo Leveling Universe!*\n\nπŸ’° *Starting Balance:* $1000\nπŸŽ–οΈ *Level:* 1\nπŸ›‘οΈ *Rank:* ${startingRank}\nβš”οΈ *Starting Weapon:* Rusty Dagger\n\nβš”οΈ *Train, fight, and rise to S-Rank!*\n\nπŸͺ Type *!store* to buy better weapons!`)
3278
+ });
3279
+
3280
+ break;
3281
+ }
3282
+ case 'store': {
3283
+ let storeItems = [
3284
+ { name: "Baruka’s Dagger", price: 1200, emoji: "πŸ”ͺ", power: 50 },
3285
+ { name: "Demon King’s Longsword", price: 2500, emoji: "πŸ—‘οΈ", power: 100 },
3286
+ { name: "Kamish’s Wrath", price: 5000, emoji: "πŸ”₯", power: 200 },
3287
+ { name: "Dagger of the Monarchs", price: 7000, emoji: "πŸ‘‘", power: 250 },
3288
+ { name: "Elixir of Immortality", price: 3000, emoji: "πŸ§ͺ", power: 0 },
3289
+ { name: "Heavenly Fang", price: 8500, emoji: "🌩️", power: 300 },
3290
+ { name: "Sun God’s Spear", price: 12_000, emoji: "β˜€οΈ", power: 500 },
3291
+ { name: "Celestial Bow", price: 15_000, emoji: "🏹", power: 600 },
3292
+ { name: "Shadow Assassin Daggers", price: 18_000, emoji: "βš”οΈ", power: 700 },
3293
+ { name: "Nightmare Blade", price: 20_000, emoji: "πŸŒ™", power: 800 },
3294
+ { name: "Ragnarok Cleaver", price: 25_000, emoji: "πŸ”¨", power: 1000 },
3295
+ { name: "Infinity Gauntlet", price: 30_000, emoji: "πŸ–οΈ", power: 1200 },
3296
+ { name: "Hellfire Whip", price: 35_000, emoji: "πŸ”₯", power: 1500 },
3297
+ { name: "Demonic Reaper Scythe", price: 40_000, emoji: "☠️", power: 1800 },
3298
+ { name: "Celestial Wrath", price: 50_000, emoji: "⚑", power: 2000 },
3299
+ { name: "Dragon Lord’s Katana", price: 65_000, emoji: "πŸ‰", power: 2500 },
3300
+ { name: "Blue Oracle", price: 80_000, emoji: "πŸ”·", power: 5000 }
3301
+ ];
3302
+
3303
+ let storeMessage = "πŸͺ *Welcome to the Hunter’s Store!*\n\n";
3304
+ storeItems.forEach((item, index) => {
3305
+ storeMessage += `${item.emoji} *${item.name}* - πŸ’° $${item.price}\n`;
3306
+ });
3307
+
3308
+ storeMessage += "\nπŸ’° Type *!buy <weapon>* to purchase.";
3309
 
3310
  conn.sendMessage(m.chat, {
3311
+ image: { url: "https://huggingface.co/spaces/API-XX/TEST/resolve/main/Links/images.jpeg" },
3312
+ caption: fontx(storeMessage)
3313
  });
3314
 
3315
  break;
3316
  }
3317
+ case 'buy': {
3318
+ let user = m.sender;
3319
+ let gameFile = './database/gameData.json';
3320
+ let gameData = fs.existsSync(gameFile) ? JSON.parse(fs.readFileSync(gameFile, 'utf8')) : {};
3321
+
3322
+ if (!gameData[user]) return reply("⚠️ You haven't started your journey yet! Type *!startgame* to begin.");
3323
+
3324
+ let storeItems = {
3325
+ "baruka’s dagger": { price: 1200, emoji: "πŸ”ͺ", power: 50 },
3326
+ "demon king’s longsword": { price: 2500, emoji: "πŸ—‘οΈ", power: 100 },
3327
+ "kamish’s wrath": { price: 5000, emoji: "πŸ”₯", power: 200 },
3328
+ "dagger of the monarchs": { price: 7000, emoji: "πŸ‘‘", power: 250 },
3329
+ "elixir of immortality": { price: 3000, emoji: "πŸ§ͺ", power: 0 },
3330
+ "heavenly fang": { price: 8500, emoji: "🌩️", power: 300 },
3331
+ "sun god’s spear": { price: 12000, emoji: "β˜€οΈ", power: 500 },
3332
+ "celestial bow": { price: 15000, emoji: "🏹", power: 600 },
3333
+ "shadow assassin daggers": { price: 18000, emoji: "βš”οΈ", power: 700 },
3334
+ "nightmare blade": { price: 20000, emoji: "πŸŒ™", power: 800 },
3335
+ "ragnarok cleaver": { price: 25000, emoji: "πŸ”¨", power: 1000 },
3336
+ "infinity gauntlet": { price: 30000, emoji: "πŸ–οΈ", power: 1200 },
3337
+ "hellfire whip": { price: 35000, emoji: "πŸ”₯", power: 1500 },
3338
+ "demonic reaper scythe": { price: 40000, emoji: "☠️", power: 1800 },
3339
+ "celestial wrath": { price: 50000, emoji: "⚑", power: 2000 },
3340
+ "dragon lord’s katana": { price: 65000, emoji: "πŸ‰", power: 2500 },
3341
+ "blue oracle": { price: 80000, emoji: "πŸ”·", power: 5000 }
3342
+ };
3343
+
3344
+ let itemName = q.toLowerCase();
3345
+ if (!storeItems[itemName]) return reply("⚠️ This item is not available in the store!");
3346
+
3347
+ let item = storeItems[itemName];
3348
+
3349
+ if (gameData[user].money < item.price) {
3350
+ return reply(`❌ You don't have enough money! You need πŸ’° $${item.price - gameData[user].money} more.`);
3351
+ }
3352
+
3353
+ gameData[user].money -= item.price;
3354
+ gameData[user].inventory.push(`${item.emoji} ${itemName}`);
3355
+ gameData[user].power += item.power;
3356
+
3357
+ fs.writeFileSync(gameFile, JSON.stringify(gameData, null, 2));
3358
+
3359
+ reply(`βœ… You successfully purchased *${item.emoji} ${itemName}*!\nπŸ’° Remaining Balance: $${gameData[user].money}`);
3360
+
3361
+ break;
3362
+ }
3363
+ case 'rank': {
3364
+ let user = m.sender;
3365
+ let gameFile = './database/gameData.json';
3366
+ let gameData = fs.existsSync(gameFile) ? JSON.parse(fs.readFileSync(gameFile, 'utf8')) : {};
3367
+
3368
+ if (!gameData[user]) return reply("⚠️ You haven't started your journey yet! Type *!startgame* to begin.");
3369
 
3370
+ let rankMessage = `πŸ”₯ *Hunter Profile*\n\nπŸ’° *Balance:* $${gameData[user].money}\nπŸŽ–οΈ *Level:* ${gameData[user].level}\nπŸ”Ή *XP:* ${gameData[user].xp}\nπŸ›‘οΈ *Rank:* ${gameData[user].rank}\nπŸ›’ *Inventory:* ${gameData[user].inventory.length > 0 ? gameData[user].inventory.join(", ") : "Empty"}\n\nβš”οΈ Keep training to rank up!`;
3371
 
3372
+ conn.sendMessage(m.chat, {
3373
+ image: { url: "https://huggingface.co/spaces/API-XX/TEST/resolve/main/Links/images.jpeg" },
3374
+ caption: fontx(rankMessage)
3375
+ });
3376
+
3377
+ break;
3378
+ }
3379
 
3380
 
3381