From 1051e44893a270619780866c0abb0b2eda73efb9 Mon Sep 17 00:00:00 2001 From: Degradin Date: Wed, 11 Oct 2023 11:35:25 +0300 Subject: [PATCH] dirtymoneyunstable --- bot.js | 74 ++++++-- commands/profile.js | 4 +- commands/property/hatkeisList.js | 24 ++- config/index.js | 5 +- json/weaponshop.json | 52 +++--- media/image.png | Bin 120358 -> 119287 bytes models/lobby.model.js | 12 ++ models/skills.model.js | 16 ++ models/user.model.js | 8 +- presets/weapons.json | 22 +++ scenes/crime.js | 67 ++++--- scenes/heist.js | 56 ------ scenes/index.js | 28 ++- scenes/pocketsteal.js | 154 ++++++++++++++++ scenes/pve.js | 138 +++++++++++++++ scenes/shop.js | 295 +++++++++++++++++++++++++++++++ 16 files changed, 809 insertions(+), 146 deletions(-) create mode 100644 models/lobby.model.js create mode 100644 models/skills.model.js delete mode 100644 scenes/heist.js create mode 100644 scenes/pocketsteal.js create mode 100644 scenes/pve.js create mode 100644 scenes/shop.js diff --git a/bot.js b/bot.js index babc871..9470767 100644 --- a/bot.js +++ b/bot.js @@ -24,6 +24,7 @@ const { ReportModel, BlockModel, PromocodeModel, + SkillsModel, mainChat, adminList, expToUp, @@ -67,7 +68,11 @@ const { fastblock, createPromo, genPromo, - organizationCreate + organizationCreate, + shot, + outmenu, + lobbyCreate, + lobbyMenu } = require('./commands') const { spaces, @@ -88,24 +93,42 @@ const { const { handleError } = require('./handlers') -const crimeScene = require("./scenes/crime"); -const heistScene = require("./scenes/heist"); -const sequelize = require('./db'); -const { Op } = require('sequelize'); -const fs = require('fs'); -const { createCanvas, loadImage } = require('canvas'); -const shortid = require('shortid'); -const voucher_codes = require('voucher-code-generator'); -const bot = new Telegraf(process.env.BOT_TOKEN) -const stage = new Scenes.Stage([crimeScene, heistScene]); + const sequelize = require('./db'); + const { Op } = require('sequelize'); + const fs = require('fs'); + const { createCanvas, loadImage } = require('canvas'); + const shortid = require('shortid'); + const voucher_codes = require('voucher-code-generator'); + const bot = new Telegraf(process.env.BOT_TOKEN) + const crime = require('./scenes/crime') + const pocketsteal = require('./scenes/pocketsteal') + const shop = require('./scenes/shop') + const pve = require('./scenes/pve') + const stage = new Scenes.Stage([crime, pocketsteal, shop, pve]); -const start = async () => { + const start = async () => { try { await sequelize.authenticate() await sequelize.sync() + } catch (e) { console.log('Подключение к бд сломалось', e) } + try { + await sequelize.authenticate() + await UserModel.sync({ alter: true }) + await WorldModel.sync({ alter: true }) + await JobModel.sync({ alter: true }) + await PropertyModel.sync({ alter: true }) + await BusinessModel.sync({ alter: true }) + await ReportModel.sync({ alter: true }) + await BlockModel.sync({ alter: true }) + await PromocodeModel.sync() + await SkillsModel.sync({ alter: true }) + console.log('Синхронизация завершена',) + } catch (error) { + console.log('Ошибка синхронизации', error) + } } bot.telegram.setMyCommands([{ @@ -134,8 +157,21 @@ bot.telegram.setMyCommands([{ } ]) -bot.use(session({ collectionName: 'sessions' })); bot.use(stage.middleware()) + +bot.use( + session({ + getSessionKey: (ctx) => { + if ((ctx.from && ctx.chat && ctx.chat.id === ctx.from.id) || (!ctx.chat && ctx.from)) { + return `user:${ctx.from.id}` + } else if (ctx.from && ctx.chat) { + return `${ctx.from.id}:${ctx.chat.id}` + } + return ctx.update.update_id + } + }) + ) + bot.use(stage) bot.use(stats) bot.use(async (ctx, next) => { @@ -156,6 +192,7 @@ bot.use(async (ctx, next) => { let user = await UserModel.findByPk(id); let block = await BlockModel.findByPk(id); let property = await PropertyModel.findByPk(id); + let skill = await SkillsModel.findByPk(ctx.from.id) if (!user) ctx.reply(`❕ Первичная регистрация профиля.`); if (user === null) { await UserModel.create({ @@ -172,7 +209,16 @@ bot.use(async (ctx, next) => { await PropertyModel.create({ telegram_id: id }) - } else {} + } + if (skill === null) { + await SkillsModel.create({ + telegram_id: id, + stealing: { + level: 1, + exp: 0 + } + }) + } //if (whitelist.includes(id) == false) return ctx.reply(`У вас пока нет доступа к боту. Следите за обновлениями в группе: t.me/CampFireGameBotNews`) if (block !== null) { if (block.isBlocked == true && block.time > Date.now() / 1000) return ctx.reply(`📛 У вас активная блокировка по причине: ${block.reason}.\n⏲️ Оставшееся время: ${Math.trunc((block.time - Date.now()/1000)/60)} мин.`) diff --git a/commands/profile.js b/commands/profile.js index dac1476..7d6ef3a 100644 --- a/commands/profile.js +++ b/commands/profile.js @@ -21,12 +21,14 @@ module.exports = async (ctx) => { 💰 Баланс ₽${spacesWithMarkdown(user.money)} + Ð${spacesWithMarkdown(user.dirtymoney)} + 💳: ${user.stealedcards} 🔵 Имущество 🏠 Жилье: ${property.house == 0 ? "Бездомный" : property.house.name} 🚗 Автомобиль: ${property.car == 0 ? "Пешком" : escape(property.car.name)} 📱 Телефон: ${property.mobile == 0 ? "Нет" : property.mobile.name} - 🔫 Оружие: ${property.weapon == 0 ? "Безоружный" : property.weapon.name} + 🔫 Оружие: ${property.weapon == 0 ? "Безоружный" : escape(property.weapon.name)} 🥼 Экипировка: ${property.equipment == 0 ? "Нет" : property.equipment.name} `); } \ No newline at end of file diff --git a/commands/property/hatkeisList.js b/commands/property/hatkeisList.js index b536b71..412ad89 100644 --- a/commands/property/hatkeisList.js +++ b/commands/property/hatkeisList.js @@ -1,3 +1,6 @@ +const { + Markup +} = require('telegraf') const { weaponshop } = require('/workspace/degradin/Dev/Telegram/CampFire Play/config') @@ -8,11 +11,22 @@ const { } = require('/workspace/degradin/Dev/Telegram/CampFire Play/utils') module.exports = async (ctx) => { - let text = `[Hatkeis Gunsmith](https://telegra.ph/Hatkeis-Gunsmith-09-27)` + let text = `[Hatkeis Gunsmith](https://telegra.ph/Hatkeis-Gunsmith-09-27)\n` let shop = `\n Вы подходите к зданию с вывеской "Ништяки Хаткейса".\n Вот ассортимент на сегодня\n` - for (i = 0; i < 10; i++) { - shop += `${i}. ${weaponshop[i].name} (₽${spaces(weaponshop[i].price)})\n` + let prodArray = [] + for (i in weaponshop) { + prodArray.push({text: i, callback_data: `{"action": "buy", "type": "equipment", "value": "${i}"}`}) + shop += `${i}. ${weaponshop[i].name} (¤${spaces(weaponshop[i].price)})\n` } - weaponShopUpdate() - return await ctx.replyWithMarkdownV2(text + escape(shop), {disable_web_page_preview: true}) + prodArray.push({text: `Назад`, callback_data: `shopmenu`}) + let rows = [] + while (prodArray.length > 0) { + rows.push(prodArray.splice(0, 5)) // разбиваем на подмассивы по 5 кнопок + } + return await ctx.replyWithMarkdownV2(text + escape(shop), + { + reply_markup: { + inline_keyboard: rows + }, + disable_web_page_preview: true}) } \ No newline at end of file diff --git a/config/index.js b/config/index.js index 3e8a5e5..5626216 100644 --- a/config/index.js +++ b/config/index.js @@ -1,5 +1,4 @@ module.exports = { - testScene : require("../scenes/test"), weaponshop : require('../json/weaponshop.json'), slots : require('../json/slots.json'), rarecars : require('../json/rarecars.json'), @@ -17,10 +16,10 @@ module.exports = { ReportModel : require('../models/report.model'), BlockModel : require('../models/block.model'), PromocodeModel : require('../models/promocode.model'), + SkillsModel: require('../models/skills.model'), + LobbyModel: require('../models/lobby.model'), mainChat : -1001895132127, adminList : [275416286], expToUp : [0, 10, 20, 40, 60, 100, 250, 370, 450, 575, 666, 777, 860, 999, 1000, 1177, 1234, 1350, 1488, 1515, 1610], topSym : ['🥇', '🥈', '🥉', '4️⃣', '5️⃣', '6️⃣', '7️⃣', '8️⃣', '9️⃣', '🔟'], - promoTopicId: 1807, - gameTopicId: 1808 } \ No newline at end of file diff --git a/json/weaponshop.json b/json/weaponshop.json index dea5b33..39e09fa 100644 --- a/json/weaponshop.json +++ b/json/weaponshop.json @@ -1,56 +1,56 @@ { "0": { - "name": "HK UMP", - "price": 33999, - "damage": 0.028, + "name": "G36C", + "price": 38999, + "damage": 0.035, "type": "weapon" }, "1": { - "name": "Glock 17", - "price": 7999, - "damage": 0.013, - "type": "weapon" - }, - "2": { - "name": "HK UMP", - "price": 33999, - "damage": 0.028, - "type": "weapon" - }, - "3": { - "name": "АКС74У", - "price": 34999, - "damage": 0.031, - "type": "weapon" - }, - "4": { "name": "M1911", "price": 13000, "damage": 0.018, "type": "weapon" }, + "2": { + "name": "АК101", + "price": 49999, + "damage": 0.04, + "type": "weapon" + }, + "3": { + "name": "ТТ", + "price": 12000, + "damage": 0.15, + "type": "weapon" + }, + "4": { + "name": "ПП19 `Бизон`", + "price": 24999, + "damage": 0.023, + "type": "weapon" + }, "5": { - "name": "Шлем танкиста", + "name": "Бронежилет M2", "price": 1000, "type": "equipment" }, "6": { - "name": "Бронежилет M5", + "name": "Бронежилет M6", "price": 1000, "type": "equipment" }, "7": { - "name": "Бронежилет M4", + "name": "Картонные накладки", "price": 1000, "type": "equipment" }, "8": { - "name": "Бронежилет M5", + "name": "Бронежилет M2", "price": 1000, "type": "equipment" }, "9": { - "name": "Кольчуга", + "name": "Бронежилет M5", "price": 1000, "type": "equipment" } diff --git a/media/image.png b/media/image.png index facd1160785adeb7dd3a4c94850720ece5e665b8..4e95ab3009a67026f6ac198bcd3db7ab7f553917 100644 GIT binary patch delta 65757 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

_(W|@RG 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͞MM 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 ZKVlP0-zq7o3@ZQt002ovPDHLkV1j~1jAQ@+ diff --git a/models/lobby.model.js b/models/lobby.model.js new file mode 100644 index 0000000..b862f83 --- /dev/null +++ b/models/lobby.model.js @@ -0,0 +1,12 @@ +const sequelize = require('../db'); +const {DataTypes} = require('sequelize'); + +const Lobby = sequelize.define('lobby', { + id: {type: DataTypes.INTEGER, primaryKey: true, unique: true, autoIncrement: true}, + name: {type: DataTypes.STRING, defaultValue: "Неидентифицированное лобби"}, + leader: {type: DataTypes.BIGINT, defaultValue: 0}, + bank: {type: DataTypes.INTEGER, defaultValue: 0}, + users: {type: DataTypes.ARRAY(DataTypes.BIGINT)} +}) + +module.exports = Lobby; diff --git a/models/skills.model.js b/models/skills.model.js new file mode 100644 index 0000000..44ac9a1 --- /dev/null +++ b/models/skills.model.js @@ -0,0 +1,16 @@ +const sequelize = require('../db'); +const {DataTypes} = require('sequelize'); + +const Skills = sequelize.define('skills', { + telegram_id: {type: DataTypes.BIGINT, primaryKey: true, unique: true}, + stealing: {type: DataTypes.JSON, defaultValue: { + level: 1, + exp: 0 + }}, + lockpick: {type: DataTypes.JSON, defaultValue: { + level: 1, + exp: 0 + }} +}) + +module.exports = Skills; diff --git a/models/user.model.js b/models/user.model.js index 0c08407..21b6cdb 100644 --- a/models/user.model.js +++ b/models/user.model.js @@ -7,8 +7,12 @@ const User = sequelize.define('user', { name: {type: DataTypes.STRING}, status: {type: DataTypes.STRING, defaultValue: 'user'}, level: {type: DataTypes.INTEGER, defaultValue: 1}, + hp: {type: DataTypes.INTEGER, defaultValue: 100}, + armor: {type: DataTypes.INTEGER, defaultValue: 0}, exp: {type: DataTypes.INTEGER, defaultValue: 0}, money: {type: DataTypes.INTEGER, defaultValue: 0}, + dirtymoney: {type: DataTypes.INTEGER, defaultValue: 0}, + stealedcards: {type: DataTypes.INTEGER, defaultValue: 0}, bonus: {type: DataTypes.INTEGER, defaultValue: 0}, bonustime: {type: DataTypes.INTEGER, defaultValue: 0}, job: {type: DataTypes.INTEGER, defaultValue: 0}, @@ -21,7 +25,9 @@ const User = sequelize.define('user', { } }, worktime: {type: DataTypes.INTEGER, defaultValue: 0}, - slottime: {type: DataTypes.INTEGER, defaultValue: 0} + slottime: {type: DataTypes.INTEGER, defaultValue: 0}, + shoprobcd: {type: DataTypes.INTEGER, defaultValue: 0}, + pocketstealcd: {type: DataTypes.INTEGER, defaultValue: 0} }) module.exports = User; diff --git a/presets/weapons.json b/presets/weapons.json index fc68af6..fd6b1be 100644 --- a/presets/weapons.json +++ b/presets/weapons.json @@ -2,81 +2,103 @@ "1": { "name": "ТТ", "price": 12000, + "damage": 0.15, "type": "weapon" }, "2": { "name": "Glock 17", "price": 7999, + "damage": 0.013, "type": "weapon" }, "3": { "name": "G36C", "price": 38999, + "damage": 0.035, "type": "weapon" }, "4": { "name": "M1911", "price": 13000, + "damage": 0.018, "type": "weapon" }, "5": { "name": "ПМ", "price": 13000, + "damage": 0.01, "type": "weapon" }, "6": { "name": "SIG MCX .300", "price": 133999, + "damage": 0.066, "type": "weapon" }, "7": { "name": "АК101", "price": 49999, + "damage": 0.04, "type": "weapon" }, "8": { "name": "HK UMP", "price": 33999, + "damage": 0.028, "type": "weapon" }, "9": { "name": "ПП19 `Бизон`", "price": 24999, + "damage": 0.023, "type": "weapon" }, "10": { "name": "АКС74У", "price": 34999, + "damage": 0.031, "type": "weapon" }, "11": { "name": "M4A1", "price": 56999, + "damage": 0.045, "type": "weapon" }, "12": { "name": "CheyTac M200 `Intervention`", "price": 1400000, + "damage": 0.1, "type": "weapon" }, "13": { "name": "SR25", "price": 259999, + "damage": 0.062, "type": "weapon" }, "14": { "name": "ВСС `Винторез`", "price": 120999, + "damage": 0.062, "type": "weapon" }, "15": { "name": "HK417", "price": 388999, + "damage": 0.087, "type": "weapon" }, "16": { "name": "СВД", "price": 199999, + "damage": 0.073, + "type": "weapon" + }, + "17": { + "name": "АКМ", + "price": 60000, + "damage": 0.05, "type": "weapon" } } \ No newline at end of file diff --git a/scenes/crime.js b/scenes/crime.js index 977a720..3738bc8 100644 --- a/scenes/crime.js +++ b/scenes/crime.js @@ -1,52 +1,49 @@ const { + Telegraf, Scenes, Markup } = require('telegraf') - +const bot = new Telegraf(process.env.BOT_TOKEN) +const { + slots, + phones, + UserModel, + WorldModel, + SkillsModel, + PropertyModel +} = require('/workspace/degradin/Dev/Telegram/CampFire Play/config') +const { + spaces, + getSlot, + giveExp, + rand, + random, + setCooldown +} = require('/workspace/degradin/Dev/Telegram/CampFire Play/utils'); const crime = new Scenes.BaseScene('Crime'); -crime.enter((ctx) => { +crime.enter( async (ctx) => { ctx.reply('Scene: Выберите ограбление', Markup.inlineKeyboard([ - [ - {text: 'Карманные кражи [SOLO]', callback_data: `POCKET_ACTION`}, - {text: 'Магазин', callback_data: `heist`}, - {text: 'Банкомат', callback_data: `heist`}, - {text: 'Банковское отделение', callback_data: `heist`}, - {text: 'Угон', callback_data: `heist`}, - {text: 'Ювелирка', callback_data: `heist`}, - {text: 'Банк', callback_data: `heist`} - ] + [{text: 'Карманные кражи [7 lvl.][SOLO]', callback_data: `POCKET_ACTION`}], + [{text: 'Магазин [8 lvl.][SOLO/DUO]', callback_data: `SHOP_ACTION`}], + [{text: 'Банкомат', callback_data: `WIP`}], + [{text: 'Банковское отделение', callback_data: `WIP`}], + [{text: 'Угон', callback_data: `WIP`}], + [{text: 'Ювелирка', callback_data: `WIP`}], + [{text: 'Банк', callback_data: `WIP`}] ])) }); -crime.action(`POCKET_ACTION`, (ctx) => { - ctx.editMessageText('Scene: Выберите объект', Markup.inlineKeyboard([ - [ - {text: 'Карман', callback_data: `POCKET_TARGET`}, - {text: 'Бумажник', callback_data: `heist`}, - {text: 'Сумка', callback_data: `heist`} - ] -])) +crime.action(`POCKET_ACTION`, async (ctx) => { + return ctx.scene.enter('POCKET_STEAL') }); -crime.action(`POCKET_TARGET`, (ctx) => { - if(Math.random() < 0.5) return ctx.editMessageText('Scene: Замечен'); - ctx.editMessageText('Scene: В кармане обнаружено', Markup.inlineKeyboard([ - [ - {text: 'Деньги', callback_data: `MONEY`}, - {text: 'Телефон', callback_data: `PHONE`} - ] -])) +crime.action(`SHOP_ACTION`, async (ctx) => { + return ctx.scene.enter('SHOP_ROBBERY') }); -crime.action(`MONEY`, (ctx) => { - if(Math.random() < 0.5) return ctx.editMessageText('Scene: Замечен'); - return ctx.editMessageText('Scene: Успех MONEY') -}); - -crime.action(`PHONE`, (ctx) => { - if(Math.random() < 0.5) return ctx.editMessageText('Scene: Замечен'); - return ctx.editMessageText('Scene: Успех PHONE') +crime.action(`WIP`, async (ctx) => { + ctx.reply(`Еще не доступно.`) }); crime.leave((ctx) => { diff --git a/scenes/heist.js b/scenes/heist.js deleted file mode 100644 index f119105..0000000 --- a/scenes/heist.js +++ /dev/null @@ -1,56 +0,0 @@ -const { - Scenes, - Markup -} = require('telegraf') - -const heist = new Scenes.BaseScene('HEIST'); - -heist.enter((ctx) => { - ctx.reply('Scene: Выберите ограбление', Markup.inlineKeyboard([ - [ - {text: 'Карманные кражи', callback_data: `POCKET_ACTION`}, - {text: 'Магазин', callback_data: `heist`}, - {text: 'Банкомат', callback_data: `heist`}, - {text: 'Банковское отделение', callback_data: `heist`}, - {text: 'Угон', callback_data: `heist`}, - {text: 'Ювелирка', callback_data: `heist`}, - {text: 'Банк', callback_data: `heist`} - ] - ])) -}); - -heist.action(`POCKET_ACTION`, (ctx) => { - ctx.editMessageText('Scene: Выберите объект', Markup.inlineKeyboard([ - [ - {text: 'Карман', callback_data: `POCKET_TARGET`}, - {text: 'Бумажник', callback_data: `heist`}, - {text: 'Сумка', callback_data: `heist`} - ] -])) -}); - -heist.action(`POCKET_TARGET`, (ctx) => { - if(Math.random() < 0.5) return ctx.editMessageText('Scene: Замечен'); - ctx.editMessageText('Scene: В кармане обнаружено', Markup.inlineKeyboard([ - [ - {text: 'Деньги', callback_data: `MONEY`}, - {text: 'Телефон', callback_data: `PHONE`} - ] -])) -}); - -heist.action(`MONEY`, (ctx) => { - if(Math.random() < 0.5) return ctx.editMessageText('Scene: Замечен'); - return ctx.editMessageText('Scene: Успех MONEY') -}); - -heist.action(`PHONE`, (ctx) => { - if(Math.random() < 0.5) return ctx.editMessageText('Scene: Замечен'); - return ctx.editMessageText('Scene: Успех PHONE') -}); - -heist.leave((ctx) => { - console.log('Завершено'); -}); - -module.exports = heist \ No newline at end of file diff --git a/scenes/index.js b/scenes/index.js index 0b16fe7..606ba89 100644 --- a/scenes/index.js +++ b/scenes/index.js @@ -6,12 +6,30 @@ const { Markup } = require('telegraf') -const heistStart = require('./heist') -const testStart = require('./test') +const crime = require('./crime') +console.log(crime) +const pocketsteal = require('./pocketsteal') +console.log(pocketsteal) +let test = [crime, pocketsteal] +console.log(test) -const stage = new Scenes.Stage( - [heistStart] - ) +const stage = new Scenes.Stage([ + crime, + pocketsteal +]) + +stage.use((ctx, next) => { + if (!ctx.session.scene) ctx.session.scene = {} + return next() +}) + +stage.hears(([ + 'Криминал' +]), async (ctx, next) => { + await ctx.scene.leave() + ctx.session.scene = null + await next() +}) module.exports = stage \ No newline at end of file diff --git a/scenes/pocketsteal.js b/scenes/pocketsteal.js new file mode 100644 index 0000000..d63043a --- /dev/null +++ b/scenes/pocketsteal.js @@ -0,0 +1,154 @@ +const { + Telegraf, + Scenes, + Markup +} = require('telegraf') +const bot = new Telegraf(process.env.BOT_TOKEN) +const { +slots, +phones, +UserModel, +WorldModel, +SkillsModel, +PropertyModel +} = require('/workspace/degradin/Dev/Telegram/CampFire Play/config') +const { +spaces, +getSlot, +giveExp, +rand, +random, +setCooldown +} = require('/workspace/degradin/Dev/Telegram/CampFire Play/utils'); +const steal = new Scenes.BaseScene('POCKET_STEAL'); + +steal.enter(async (ctx) => { + let user = await UserModel.findByPk(ctx.from.id) + let pocketsteal = user.pocketstealcd + if(user.level < 7) return ctx.editMessageText('Доступно с 7 уровня!') + let cooldown = setCooldown(user, 3600, pocketsteal) + if (user.pocketstealcd > cooldown.currentTime) return ctx.editMessageText(`📛 Данное действие будет доступно через ${cooldown.timeLeftInMinutes} мин.`); + user.pocketstealcd = cooldown.endTime + user.save() + ctx.editMessageText('Выберите объект', Markup.inlineKeyboard([ + [ + {text: 'Карман', callback_data: `POCKET_TARGET`}, + {text: 'Бумажник', callback_data: `POCKET_WALLET`}, + {text: 'Сумка', callback_data: `POCKET_BAG`} + ] +])) +}); + +steal.action(`POCKET_TARGET`, async (ctx) => { + ctx.editMessageText('В кармане обнаружено', Markup.inlineKeyboard([ + [ + {text: 'Деньги', callback_data: `MONEY_IN_POCKET`}, + {text: 'Телефон', callback_data: `PHONE`} + ] +])) +}); + +steal.action(`MONEY_IN_POCKET`, async (ctx) => { + let user = await UserModel.findByPk(ctx.from.id) + let skill = await SkillsModel.findByPk(ctx.from.id) + let chance = rand(0, 100) + chance += skill.stealing.level + if(chance < 20) return ctx.editMessageText('Вы были замечены во время кражи.'); + let moneyIn = rand(5, 1000) + user.dirtymoney += moneyIn + user.save() + return ctx.editMessageText(`Вы успешно украли Ð${spaces(moneyIn)} из кармана.`) +}); + +steal.action(`PHONE`, async (ctx) => { + let user = await UserModel.findByPk(ctx.from.id) + let property = await PropertyModel.findByPk(ctx.from.id); + let skill = await SkillsModel.findByPk(ctx.from.id) + let chance = rand(0, 100) + chance += skill.stealing.level + if(chance < 60) return ctx.editMessageText('Вы были замечены во время кражи.'); + let randPhone = rand(1,10) + if (property.mobile.name) { + let dirtyMoney = Math.round(phones[randPhone].price/100*70) + user.dirtymoney += dirtyMoney + return await ctx.reply(`Вы сбыли украденный ${phones[randPhone].name} за Ð${dirtyMoney}`) + } + property.mobile = phones[randPhone] + await user.save() + await property.save() + return ctx.editMessageText(`Вы успешно украли ${phones[randPhone].name} из кармана.`) +}); + +steal.action(`POCKET_WALLET`, async (ctx) => { + ctx.editMessageText('В бумажнике обнаружено', Markup.inlineKeyboard([ + [ + {text: 'Деньги', callback_data: `MONEY_IN_WALLET`}, + {text: 'Карточка', callback_data: `CARD_IN_WALLET`} + ] +])) +}); + +steal.action(`MONEY_IN_WALLET`, async (ctx) => { + let user = await UserModel.findByPk(ctx.from.id) + let skill = await SkillsModel.findByPk(ctx.from.id) + let chance = rand(0, 100) + chance += skill.stealing.level + if(chance < 40) return ctx.editMessageText('Вы были замечены во время кражи.'); + let moneyIn = rand(1000, 10000) + user.dirtymoney += moneyIn + user.save() + return ctx.editMessageText(`Вы успешно украли Ð${spaces(moneyIn)} из бумажника.`) +}); + +steal.action(`CARD_IN_WALLET`, async (ctx) => { + let user = await UserModel.findByPk(ctx.from.id) + let skill = await SkillsModel.findByPk(ctx.from.id) + let chance = rand(0, 100) + chance += skill.stealing.level + if(chance < 50) return ctx.editMessageText('Вы были замечены во время кражи.'); + user.stealedcards += 1 + user.save() + return ctx.editMessageText(`Вы успешно украли 💳 из бумажника.`) +}); + +steal.action(`POCKET_BAG`, async (ctx) => { + let user = await UserModel.findByPk(ctx.from.id) + let skill = await SkillsModel.findByPk(ctx.from.id) + let chance = rand(0, 100) + chance += skill.stealing.level + console.log(chance) + if(chance < 60) return ctx.editMessageText('Вы были замечены во время кражи.'); + let times = rand(2,20) + let moneyIn = 0 + let text = `` + let values = 0 + + for(i=1; i<=times; i++){ + switch(i) { + case 2: + values = rand(10000, 50000) + moneyIn += values + text += `+ Ð${spaces(values)}\n` + break; + case 7: + values = rand(10000, 100000) + moneyIn += values + text += `+ Ð${spaces(values)}\n` + break; + default: + values = rand(100, 3000) + moneyIn += values + text += `+ Ð${spaces(values)}\n` + break; + } + } + user.dirtymoney += moneyIn + user.save() + return ctx.editMessageText(`Вы успешно украли сумку и сбыли все ценности из нее:\n${text}\nОбщий куш: Ð${spaces(moneyIn)}`) +}); + +steal.leave((ctx) => { + console.log('Завершено'); +}); + +module.exports = steal \ No newline at end of file diff --git a/scenes/pve.js b/scenes/pve.js new file mode 100644 index 0000000..1c46ee6 --- /dev/null +++ b/scenes/pve.js @@ -0,0 +1,138 @@ +const { + Telegraf, + Scenes, + Markup +} = require('telegraf') +const bot = new Telegraf(process.env.BOT_TOKEN) +const { +slots, +phones, +UserModel, +WorldModel, +SkillsModel, +PropertyModel +} = require('/workspace/degradin/Dev/Telegram/CampFire Play/config') +const { +spaces, +getSlot, +giveExp, +rand, +random, +setCooldown +} = require('/workspace/degradin/Dev/Telegram/CampFire Play/utils'); +const pve = new Scenes.BaseScene('PVE'); + +pve.enter(async (ctx) => { + let property = await PropertyModel.findByPk(ctx.from.id) + ctx.reply(`Ваш противник:\n${ctx.session.enemy.name}\nЗдоровье: ${ctx.session.enemy.hp}\nБроня: ${ctx.session.enemy.armor}`, Markup.inlineKeyboard([ + [ + {text: `${property.weapon.name}`, callback_data: `attack`} + ] +])); +}); + +pve.action('attack', async (ctx) => { + let enemyHP = ctx.session.enemy.hp + let enemyArmor = ctx.session.enemy.armor + let property = await PropertyModel.findByPk(ctx.from.id) + let result = await ctx.replyWithDice({emoji: `🎯`}) + switch(result.dice.value){ + case 6: + enemyHP = enemyHP - (property.weapon.damage*1000)*10 + setTimeout(() => { + ctx.reply(`Enemy Head: HP:${enemyHP} Armor: ${enemyArmor}`) + }, 1900) + break; + case 5: + if(enemyArmor > 0){ + enemyArmor = enemyArmor - (property.weapon.damage*1000)*5 + if(enemyArmor < 0) enemyHP = enemyHP + enemyArmor + setTimeout(() => { + ctx.reply(`Enemy Chest: HP:${enemyHP} Armor: ${enemyArmor}`) + }, 1900) + }else{ + enemyHP = enemyHP - (property.weapon.damage*1000)*5 + setTimeout(() => { + ctx.reply(`Enemy Chest: HP:${enemyHP} Armor: ${enemyArmor}`) + }, 1900) + } + break; + case 4: + if(enemyArmor > 0){ + enemyArmor = enemyArmor - (property.weapon.damage*1000)*3 + if(enemyArmor < 0) enemyHP = enemyHP + enemyArmor + setTimeout(() => { + ctx.reply(`Enemy Stom: HP:${enemyHP} Armor: ${enemyArmor}`) + }, 1900) + }else{ + enemyHP = enemyHP - (property.weapon.damage*1000)*3 + setTimeout(() => { + ctx.reply(`Enemy Stom: HP:${enemyHP} Armor: ${enemyArmor}`) + }, 1900) + } + break; + case 3: + enemyHP = enemyHP - (property.weapon.damage*1000)/2 + setTimeout(() => { + ctx.reply(`Enemy Arms: HP:${enemyHP} Armor: ${enemyArmor}`) + }, 1900) + break; + case 2: + enemyHP = enemyHP - (property.weapon.damage*1000)/1.5 + setTimeout(() => { + ctx.reply(`Enemy Legs: HP:${enemyHP} Armor: ${enemyArmor}`) + }, 1900) + break; + case 1: + setTimeout(() => { + ctx.reply(`Промах, лох`) + }, 1900) + break; + } + ctx.session.enemy.hp = enemyHP + ctx.session.enemy.armor = enemyArmor + if (enemyHP <= 0) { + console.log(ctx.session) + switch(ctx.session.stage){ + case 'SHOP_KILL_CASHIER': case 'SHOP_GUARD_KILL': case 'SHOP_GUARD_STEALTH': + ctx.session.__scenes = { current: 'SHOP_ROBBERY', state: {} } + return ctx.sendMessage('Охранник обезврежен, вы подходите к кассиру:', Markup.inlineKeyboard([ + [{text: 'Убить кассира и забрать все из кассы', callback_data: `SHOP_KILL_CASHIER`}], + //[{text: 'Приказать кассиру сдать кассу [Угроза]', callback_data: `SHOP_THREAT`}], + //[{text: 'Приказать кассиру сдать кассу [Убеждение]', callback_data: `SHOP_CONVICTION`}] + ])) + case 'SHOP_CASH_SMASH': + ctx.session.__scenes = { current: 'SHOP_ROBBERY', state: {} } + return ctx.sendMessage('Вы завершили перестрелку с полицией, пора валить.', Markup.inlineKeyboard([ + [{text: 'Завершить ограбление', callback_data: `SHOP_END`}] + ])) + default: + return ctx.sendMessage('Ошибка выхода из сцены => DEBUG', Markup.inlineKeyboard([ + [{text: 'Завершить ограбление [Магазин]', callback_data: `SHOP_END`}] + ])) +} + } else { + // Противник еще жив, отправляем сообщение с обновленным HP и кнопкой для атаки + let enemyDmg = rand(0, 10) + ctx.session.user.hp -= enemyDmg + if(ctx.session.user.hp <= 0) { + ctx.editMessageText(`${ctx.session.enemy.name} наносит вам ${enemyDmg} урона.\n Осталось HP: ${ctx.session.user.hp}\nВы критически ранены!`, Markup.inlineKeyboard([ + [ + {text: 'Завершить ограбление', callback_data: `SHOP_END`} + ] + ])) + } + ctx.sendMessage(`${ctx.session.enemy.name} наносит вам ${enemyDmg} урона.\n Осталось HP: ${ctx.session.user.hp}`) + ctx.editMessageText(`Ваш противник:\n${ctx.session.enemy.name}\nЗдоровье: ${ctx.session.enemy.hp}\nБроня: ${ctx.session.enemy.armor}`, Markup.inlineKeyboard([ + [ + {text: `${property.weapon.name}`, callback_data: `attack`} + ] + ])); + } +}); + +pve.leave((ctx) => { + console.log('Завершено'); +}); + +module.exports = pve \ No newline at end of file diff --git a/scenes/shop.js b/scenes/shop.js new file mode 100644 index 0000000..786ab39 --- /dev/null +++ b/scenes/shop.js @@ -0,0 +1,295 @@ +const { + Telegraf, + Scenes, + Markup +} = require('telegraf') +const bot = new Telegraf(process.env.BOT_TOKEN) +const { +slots, +phones, +UserModel, +WorldModel, +SkillsModel, +PropertyModel +} = require('/workspace/degradin/Dev/Telegram/CampFire Play/config') +const { +spaces, +getSlot, +giveExp, +rand, +random, +setCooldown +} = require('/workspace/degradin/Dev/Telegram/CampFire Play/utils'); +const shop = new Scenes.BaseScene('SHOP_ROBBERY'); + +bot.on('callback_query', (ctx) => { + const buttonId = ctx.update.callback_query; + console.log(buttonId) +}); + +shop.enter(async (ctx) => { + let user = await UserModel.findByPk(ctx.from.id) + let property = await PropertyModel.findByPk(ctx.from.id); + if(user.level < 8) return ctx.editMessageText('Доступно с 8 уровня!') + if(property.weapon == 0) return ctx.editMessageText('Для данного задания нужен ствол.') + let shoprobcd = user.shoprobcd + let cooldown = setCooldown(user, 3600, shoprobcd) + if (user.shoprobcd > cooldown.currentTime) return ctx.editMessageText(`📛 Данное действие будет доступно через ${cooldown.timeLeftInMinutes} мин.`); + user.shoprobcd = cooldown.endTime + user.save() + ctx.editMessageText('Выберите режим', Markup.inlineKeyboard([ + [ + {text: 'SOLO', callback_data: `SHOP_SOLO`}, + {text: 'DUO', callback_data: `SHOP_DUO`}, + {text: 'GROUP', callback_data: `SHOP_GROUP`} + ] +])) +}); + +shop.action(`SHOP_DUO`, async (ctx) => { + ctx.reply(`Еще не доступно.`) +}); + +shop.action(`SHOP_GROUP`, async (ctx) => { + ctx.reply(`Еще не доступно.`) +}); + +shop.action(`SHOP_SOLO`, async (ctx) => { + let property = await PropertyModel.findByPk(ctx.from.id); + if(property.equipment != 0){ + ctx.session.user = { + hp: 100, + armor: property.equipment.armor + } + }else{ + ctx.session.user = { + hp: 100, + armor: 0 + } + } + + ctx.editMessageText('Стадии:', Markup.inlineKeyboard([ + [ + {text: 'Вход', callback_data: `SHOP_ENTER`}, + //{text: 'Охранник [DEV]', callback_data: `SHOP_ENTER`}, + //{text: 'Отчет', callback_data: `SHOP_CASH_BREAK_SUCCESS`} + ] +])) +}); + +shop.action(`SHOP_ENTER`, async (ctx) => { + let skill = await SkillsModel.findByPk(ctx.from.id) + let chance = rand(0, 100) + chance += skill.stealing.level + if(chance < 70) { + return ctx.editMessageText('Вы заметили охранника, с ним нужно что-то сделать...', Markup.inlineKeyboard([ + [{text: 'Избавиться от охранника [Скрытность]', callback_data: `SHOP_GUARD_STEALTH`}], + [{text: 'Убить охранника [Владение оружием]', callback_data: `SHOP_GUARD_KILL`}] + ])) + } + return ctx.editMessageText('Стадии:', Markup.inlineKeyboard([ + [{text: 'Убить кассира и забрать все из кассы', callback_data: `SHOP_KILL_CASHIER`}], + //[{text: 'Приказать кассиру сдать кассу [Угроза]', callback_data: `SHOP_THREAT`}], + //[{text: 'Приказать кассиру сдать кассу [Убеждение]', callback_data: `SHOP_CONVICTION`}] +])) +}); + +shop.action(`SHOP_GUARD`, async (ctx) => { + let skill = await SkillsModel.findByPk(ctx.from.id) + let chance = rand(0, 100) + chance += skill.stealing.level + return ctx.editMessageText('Стадии:', Markup.inlineKeyboard([ + [{text: 'Избавиться от охранника [Скрытность]', callback_data: `SHOP_GUARD_STEALTH`}], + [{text: 'Убить охранника [Владение оружием]', callback_data: `SHOP_GUARD_KILL`}] +])) +}); + +shop.action(`SHOP_GUARD_STEALTH`, async (ctx) => { + let skill = await SkillsModel.findByPk(ctx.from.id) + let chance = rand(0, 100) + chance += skill.stealing.level + if(chance < 40) { + ctx.session.stage = 'SHOP_GUARD_STEALTH' + ctx.reply(`Нападение!`) + ctx.session.enemy = { + name: 'Охранник', + hp: 100, + armor: 20 + } + return ctx.scene.enter('PVE') + } + return ctx.editMessageText('Охранник обезврежен, вы подходите к кассиру:', Markup.inlineKeyboard([ + [{text: 'Убить кассира и забрать все из кассы', callback_data: `SHOP_KILL_CASHIER`}], + //[{text: 'Приказать кассиру сдать кассу [Угроза]', callback_data: `SHOP_THREAT`}], + //[{text: 'Приказать кассиру сдать кассу [Убеждение]', callback_data: `SHOP_CONVICTION`}] +])) +}); + +shop.action(`SHOP_GUARD_KILL`, async (ctx) => { + let skill = await SkillsModel.findByPk(ctx.from.id) + let chance = rand(0, 100) + chance += skill.stealing.level + if(chance > 10) { + ctx.session.stage = 'SHOP_GUARD_KILL' + ctx.session.enemy = { + name: 'Охранник', + hp: 100, + armor: 20 + } + return ctx.scene.enter('PVE') + } + return ctx.editMessageText('Охранник обезврежен, вы подходите к кассиру:', Markup.inlineKeyboard([ + [{text: 'Убить кассира и забрать все из кассы', callback_data: `SHOP_KILL_CASHIER`}], + //[{text: 'Приказать кассиру сдать кассу [Угроза]', callback_data: `SHOP_THREAT`}], + //[{text: 'Приказать кассиру сдать кассу [Убеждение]', callback_data: `SHOP_CONVICTION`}] +])) +}); + +shop.action(`SHOP_KILL_CASHIER`, async (ctx) => { + let skill = await SkillsModel.findByPk(ctx.from.id) + let chance = rand(0, 100) + chance += skill.stealing.level + if(chance < 60 && !ctx.session.enemy) { + ctx.session.stage = 'SHOP_KILL_CASHIER' + ctx.editMessageText('Вы заметили охранника, с ним нужно что-то сделать...'); + ctx.session.enemy = { + name: 'Охранник', + hp: 100, + armor: 20 + } + return ctx.scene.enter('PVE') + } + return ctx.editMessageText('Стадии:', Markup.inlineKeyboard([ + [{text: 'Взлом кассы', callback_data: `SHOP_CASH_BREAK`}], + [{text: 'Разбить кассу', callback_data: `SHOP_CASH_SMASH`}] +])) +}); + +shop.action(`SHOP_CASH_BREAK`, async (ctx) => { + let user = await UserModel.findByPk(ctx.from.id) + let skill = await SkillsModel.findByPk(ctx.from.id) + let chance = rand(0, 100) + chance += skill.lockpick.level + let cashIn = rand(1000, 10000) + let timer = 1000 + if(chance < 99) { + const keyboard = generateKeyboard(); + ctx.deleteMessage() + return ctx.reply('Взлом замка:', keyboard); + //ctx.editMessageText('Вы начали взлом кассы.'); + //return ctx.scene.enter('LOCKPICK') + } + for(i=0; i { + cashIn += rand(1000, 10000) + ctx.editMessageText(`⏏️ Вы достали из кассы: Ð${cashIn}`) + }, timer) + timer += 500 + } +setTimeout(() => { +user.dirtymoney += cashIn +user.save() +return ctx.editMessageText(`Вы достали из кассы Ð${cashIn}, пора валить.`, Markup.inlineKeyboard([ + [{text: 'Завершить ограбление', callback_data: `SHOP_END`}] +])) +}, timer+300) +}); + +shop.action(`SHOP_CASH_SMASH`, async (ctx) => { + let user = await UserModel.findByPk(ctx.from.id) + let skill = await SkillsModel.findByPk(ctx.from.id) + let chance = rand(0, 100) + if(chance < 50) { + ctx.editMessageText('Вы разбили кассовый аппарат, и сработала сигнализация.') + ctx.session.stage = 'SHOP_CASH_SMASH' + ctx.session.enemy = { + name: 'Полицейский', + hp: 100, + armor: 100 + } + return ctx.scene.enter('PVE') + } + return ctx.editMessageText('Вы разбили кассовый аппарат и достали кэш, пора валить.', Markup.inlineKeyboard([ + [{text: 'Завершить ограбление', callback_data: `SHOP_END`}] +])) +}); + +shop.action(`SHOP_CASH_BREAK_SUCCESS`, async (ctx) => { + let user = await UserModel.findByPk(ctx.from.id) + let cashIn = rand(1000, 10000) + let timer = 100 + for(i=0; i { + cashIn += rand(1000, 10000) + ctx.editMessageText(`⏏️ Вы достали из кассы: Ð${cashIn}`) + }, timer) + timer += 500 + } + setTimeout(() => { + user.dirtymoney += cashIn + user.save() + return ctx.editMessageText(`Вы достали из кассы Ð${cashIn}, пора валить.`, Markup.inlineKeyboard([ + [{text: 'Завершить ограбление', callback_data: `SHOP_END`}] +])) +}, timer+300) +}); + +shop.action(`SHOP_END`, async (ctx) => { + ctx.editMessageText('Ограбление завершено!') + return ctx.scene.leave(); +}); + +shop.action(/lock_*/, (ctx) => { + const buttonId = ctx.update.callback_query.data; + ctx.answerCbQuery(`Штифт не сдвинулся.`); + removeButton(ctx, buttonId); +}); + +function generateKeyboard() { + const buttonsCount = 10; + const buttons = []; + const winButton = rand(1, 10) + + for (let i = 1; i <= buttonsCount; i++) { + if(i == winButton){ + buttons.push({ text: `🔒`, callback_data: `SHOP_CASH_BREAK_SUCCESS` }) + }else{ + buttons.push({ text: `🔒`, callback_data: `lock_${i}` }) + } + } + let rows = [] + while (buttons.length > 0) { + rows.push(buttons.splice(0, 5)) // разбиваем на подмассивы по 5 кнопок + } + return { + reply_markup: { + inline_keyboard: rows, + }, + }; +} + +shop.leave((ctx) => { + console.log('Завершено'); +}); + +function removeButton(ctx, buttonId) { + const keyboard = ctx.update.callback_query.message.reply_markup.inline_keyboard; + + for (let row of keyboard) { + for (let i = 0; i < row.length; i++) { + if (row[i].callback_data === buttonId) { + row[i].text = `🔓` + break; + } + } + } + + if (keyboard.flat().length === 0) { + console.log(`Lockpick completed`) + } else { + console.log(keyboard) + ctx.editMessageText('Взлом замка:', Markup.inlineKeyboard(keyboard)); + } +} + +module.exports = shop \ No newline at end of file