v0.0.60
This commit is contained in:
parent
5b2a2b3ff9
commit
a9c5e6b966
318
index.js
318
index.js
@ -217,24 +217,21 @@ bot.hears('🎁 Бонус', async (ctx) => {
|
|||||||
user.bonustime = cooldown.endTime
|
user.bonustime = cooldown.endTime
|
||||||
let world = await WorldModel.findByPk(1)
|
let world = await WorldModel.findByPk(1)
|
||||||
let text = ``;
|
let text = ``;
|
||||||
let count = rand(2, 3)
|
let money = [100, 200, 300, 400, 500, 1000].random();
|
||||||
for (i = 0; i < count; i++) {
|
if (user.level >= 5) {
|
||||||
let money = [100, 200, 300, 400, 500, 1000].random();
|
money += money;
|
||||||
if (user.level >= 1) {
|
|
||||||
money += money;
|
|
||||||
}
|
|
||||||
let r = rand(1, 2);
|
|
||||||
if (r == 1) {
|
|
||||||
user.money += money;
|
|
||||||
world.balance -= money
|
|
||||||
text += `⏩ ¤${money}\n`;
|
|
||||||
}
|
|
||||||
if (r == 2) {
|
|
||||||
user.money += money * 2;
|
|
||||||
world.balance -= money * 2
|
|
||||||
text += `⏩ ¤${money*2}\n`;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
let r = rand(1, 2);
|
||||||
|
let x = rand(2, 7);
|
||||||
|
if (r == 1) {
|
||||||
|
text += `⏩ ¤${money}\n`;
|
||||||
|
}
|
||||||
|
if (r == 2) {
|
||||||
|
money = money*x
|
||||||
|
text += `⏩ ¤${money}\n`;
|
||||||
|
}
|
||||||
|
user.money += money;
|
||||||
|
world.balance -= money
|
||||||
if (user.business.id == 0){
|
if (user.business.id == 0){
|
||||||
await user.save();
|
await user.save();
|
||||||
await world.save();
|
await world.save();
|
||||||
@ -322,17 +319,130 @@ bot.hears('📞 Пригласить', async (ctx) => {
|
|||||||
|
|
||||||
bot.hears('📢 Вакансии', async (ctx) => {
|
bot.hears('📢 Вакансии', async (ctx) => {
|
||||||
return await ctx.reply('Список работы', Markup
|
return await ctx.reply('Список работы', Markup
|
||||||
.keyboard([
|
.inlineKeyboard([
|
||||||
['Дворник', 'Промоутер'], // Row1 with 2 buttons
|
[{
|
||||||
['Официант', 'Бармен'], // Row2 with 2 buttons
|
text: `Дворник [1 уровень]`,
|
||||||
['Кассир', 'ПВЗ Дикие Ягоды', 'Слесарь'],
|
callback_data: 'job_1'
|
||||||
['💤 Уволиться', '▶️ Меню'] // Row3 with 3 buttons
|
}, {
|
||||||
|
text: `Промоутер [1 уровень]`,
|
||||||
|
callback_data: 'job_2'
|
||||||
|
}], [{
|
||||||
|
text: `Официант [2 уровень]`,
|
||||||
|
callback_data: 'job_3'
|
||||||
|
}, {
|
||||||
|
text: `Бармен [3 уровень]`,
|
||||||
|
callback_data: 'job_4'
|
||||||
|
}], [{
|
||||||
|
text: `Кассир [4 уровень] `,
|
||||||
|
callback_data: 'job_5'
|
||||||
|
}, {
|
||||||
|
text: `ПВЗ Дикие Ягоды [4 уровень]`,
|
||||||
|
callback_data: 'job_6'
|
||||||
|
}], [{
|
||||||
|
text: `Слесарь [5 уровень]`,
|
||||||
|
callback_data: 'job_7'
|
||||||
|
}], [{
|
||||||
|
text: `💤 Уволиться`,
|
||||||
|
callback_data: 'job_leave'
|
||||||
|
}]
|
||||||
])
|
])
|
||||||
.oneTime()
|
.oneTime()
|
||||||
.resize()
|
.resize()
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
bot.action(/job_(1|2|3|4|5|6|7|leave)/, async (ctx) => {
|
||||||
|
let data = ctx.update.callback_query.data;
|
||||||
|
let user = await UserModel.findByPk(ctx.from.id);
|
||||||
|
let job = null
|
||||||
|
switch(data){
|
||||||
|
case `job_1`:
|
||||||
|
job = await JobModel.findByPk(1);
|
||||||
|
if (user.level < job.level) {
|
||||||
|
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
||||||
|
}
|
||||||
|
if (user.job == 0) {
|
||||||
|
user.job = 1
|
||||||
|
user.save()
|
||||||
|
return await ctx.reply(`Вы устроились на работу дворником. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
||||||
|
}
|
||||||
|
return await ctx.reply(`Вы уже устроены на другую работу`)
|
||||||
|
case `job_2`:
|
||||||
|
job = await JobModel.findByPk(2);
|
||||||
|
if (user.level < job.level) {
|
||||||
|
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
||||||
|
}
|
||||||
|
if (user.job == 0) {
|
||||||
|
user.job = 2
|
||||||
|
user.save()
|
||||||
|
return await ctx.reply(`Вы устроились на работу промоутером. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
||||||
|
}
|
||||||
|
return await ctx.reply(`Вы уже устроены на другую работу`)
|
||||||
|
case `job_3`:
|
||||||
|
job = await JobModel.findByPk(3);
|
||||||
|
if (user.level < job.level) {
|
||||||
|
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
||||||
|
}
|
||||||
|
if (user.job == 0) {
|
||||||
|
user.job = 3
|
||||||
|
user.save()
|
||||||
|
return await ctx.reply(`Вы устроились на работу официантом. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
||||||
|
}
|
||||||
|
return await ctx.reply(`Вы уже устроены на другую работу`)
|
||||||
|
case `job_4`:
|
||||||
|
job = await JobModel.findByPk(4);
|
||||||
|
if (user.level < job.level) {
|
||||||
|
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
||||||
|
}
|
||||||
|
if (user.job == 0) {
|
||||||
|
user.job = 4
|
||||||
|
user.save()
|
||||||
|
return await ctx.reply(`Вы устроились на работу барменом. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
||||||
|
}
|
||||||
|
return await ctx.reply(`Вы уже устроены на другую работу`)
|
||||||
|
case `job_5`:
|
||||||
|
job = await JobModel.findByPk(5);
|
||||||
|
if (user.level < job.level) {
|
||||||
|
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
||||||
|
}
|
||||||
|
if (user.job == 0) {
|
||||||
|
user.job = 5
|
||||||
|
user.save()
|
||||||
|
return await ctx.reply(`Вы устроились на работу кассир. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
||||||
|
}
|
||||||
|
return await ctx.reply(`Вы уже устроены на другую работу`)
|
||||||
|
case `job_6`:
|
||||||
|
job = await JobModel.findByPk(6);
|
||||||
|
if (user.level < job.level) {
|
||||||
|
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
||||||
|
}
|
||||||
|
if (user.job == 0) {
|
||||||
|
user.job = 6
|
||||||
|
user.save()
|
||||||
|
return await ctx.reply(`Вы устроились на работу в ПВЗ Дикие Ягоды. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
||||||
|
}
|
||||||
|
return await ctx.reply(`Вы уже устроены на другую работу`)
|
||||||
|
case `job_7`:
|
||||||
|
job = await JobModel.findByPk(7);
|
||||||
|
if (user.level < job.level) {
|
||||||
|
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
||||||
|
}
|
||||||
|
if (user.job == 0) {
|
||||||
|
user.job = 7
|
||||||
|
user.save()
|
||||||
|
return await ctx.reply(`Вы устроились на работу слесарем. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
||||||
|
}
|
||||||
|
return await ctx.reply(`Вы уже устроены на другую работу`)
|
||||||
|
case `job_leave`:
|
||||||
|
if (user.job != 0) {
|
||||||
|
user.job = 0
|
||||||
|
user.save()
|
||||||
|
return await ctx.reply(`Теперь вы безработный.`)
|
||||||
|
}
|
||||||
|
return await ctx.reply(`Вы итак безработный.`)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
bot.hears('🏯 Казино', async (ctx) => {
|
bot.hears('🏯 Казино', async (ctx) => {
|
||||||
return await ctx.reply('Добро пожаловать в казино "杜明"\n', Markup
|
return await ctx.reply('Добро пожаловать в казино "杜明"\n', Markup
|
||||||
.keyboard([
|
.keyboard([
|
||||||
@ -344,103 +454,6 @@ bot.hears('🏯 Казино', async (ctx) => {
|
|||||||
)
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
bot.hears('Дворник', async (ctx) => {
|
|
||||||
let user = await UserModel.findByPk(ctx.from.id);
|
|
||||||
let job = await JobModel.findByPk(1);
|
|
||||||
if (user.level < job.level) {
|
|
||||||
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
|
||||||
}
|
|
||||||
if (user.job == 0) {
|
|
||||||
user.job = 1
|
|
||||||
user.save()
|
|
||||||
return await ctx.reply(`Вы устроились на работу дворником. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
|
||||||
}
|
|
||||||
return await ctx.reply(`Вы уже устроены на другую работу`)
|
|
||||||
})
|
|
||||||
bot.hears('Промоутер', async (ctx) => {
|
|
||||||
let user = await UserModel.findByPk(ctx.from.id);
|
|
||||||
let job = await JobModel.findByPk(2);
|
|
||||||
if (user.level < job.level) {
|
|
||||||
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
|
||||||
}
|
|
||||||
if (user.job == 0) {
|
|
||||||
user.job = 2
|
|
||||||
user.save()
|
|
||||||
return await ctx.reply(`Вы устроились на работу промоутером. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
|
||||||
}
|
|
||||||
return await ctx.reply(`Вы уже устроены на другую работу`)
|
|
||||||
})
|
|
||||||
|
|
||||||
bot.hears('Официант', async (ctx) => {
|
|
||||||
let user = await UserModel.findByPk(ctx.from.id);
|
|
||||||
let job = await JobModel.findByPk(3);
|
|
||||||
if (user.level < job.level) {
|
|
||||||
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
|
||||||
}
|
|
||||||
if (user.job == 0) {
|
|
||||||
user.job = 3
|
|
||||||
user.save()
|
|
||||||
return await ctx.reply(`Вы устроились на работу официантом. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
|
||||||
}
|
|
||||||
return await ctx.reply(`Вы уже устроены на другую работу`)
|
|
||||||
})
|
|
||||||
|
|
||||||
bot.hears('Бармен', async (ctx) => {
|
|
||||||
let user = await UserModel.findByPk(ctx.from.id);
|
|
||||||
let job = await JobModel.findByPk(4);
|
|
||||||
if (user.level < job.level) {
|
|
||||||
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
|
||||||
}
|
|
||||||
if (user.job == 0) {
|
|
||||||
user.job = 4
|
|
||||||
user.save()
|
|
||||||
return await ctx.reply(`Вы устроились на работу барменом. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
|
||||||
}
|
|
||||||
return await ctx.reply(`Вы уже устроены на другую работу`)
|
|
||||||
})
|
|
||||||
|
|
||||||
bot.hears('Слесарь', async (ctx) => {
|
|
||||||
let user = await UserModel.findByPk(ctx.from.id);
|
|
||||||
let job = await JobModel.findByPk(7);
|
|
||||||
if (user.level < job.level) {
|
|
||||||
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
|
||||||
}
|
|
||||||
if (user.job == 0) {
|
|
||||||
user.job = 7
|
|
||||||
user.save()
|
|
||||||
return await ctx.reply(`Вы устроились на работу слесарем. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
|
||||||
}
|
|
||||||
return await ctx.reply(`Вы уже устроены на другую работу`)
|
|
||||||
})
|
|
||||||
|
|
||||||
bot.hears('Кассир', async (ctx) => {
|
|
||||||
let user = await UserModel.findByPk(ctx.from.id);
|
|
||||||
let job = await JobModel.findByPk(5);
|
|
||||||
if (user.level < job.level) {
|
|
||||||
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
|
||||||
}
|
|
||||||
if (user.job == 0) {
|
|
||||||
user.job = 5
|
|
||||||
user.save()
|
|
||||||
return await ctx.reply(`Вы устроились на работу кассир. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
|
||||||
}
|
|
||||||
return await ctx.reply(`Вы уже устроены на другую работу`)
|
|
||||||
})
|
|
||||||
|
|
||||||
bot.hears('ПВЗ Дикие Ягоды', async (ctx) => {
|
|
||||||
let user = await UserModel.findByPk(ctx.from.id);
|
|
||||||
let job = await JobModel.findByPk(6);
|
|
||||||
if (user.level < job.level) {
|
|
||||||
return await ctx.reply(`У вас не хватает уровня для этой работы.`)
|
|
||||||
}
|
|
||||||
if (user.job == 0) {
|
|
||||||
user.job = 6
|
|
||||||
user.save()
|
|
||||||
return await ctx.reply(`Вы устроились на работу в ПВЗ Дикие Ягоды. \nВаш оклад: ¤${job.salary}\nПриступайте к работе командой "Работать"`)
|
|
||||||
}
|
|
||||||
return await ctx.reply(`Вы уже устроены на другую работу`)
|
|
||||||
})
|
|
||||||
|
|
||||||
bot.hears('🗄️ Работать', async (ctx) => {
|
bot.hears('🗄️ Работать', async (ctx) => {
|
||||||
let user = await UserModel.findByPk(ctx.from.id);
|
let user = await UserModel.findByPk(ctx.from.id);
|
||||||
let job = await JobModel.findByPk(user.job);
|
let job = await JobModel.findByPk(user.job);
|
||||||
@ -736,6 +749,7 @@ bot.command('buy', async (ctx) => {
|
|||||||
}
|
}
|
||||||
if (ctx.args[1] == "car") {
|
if (ctx.args[1] == "car") {
|
||||||
if (user.money < cars[ctx.args[2]].price) return await ctx.reply(`У вас недостаточно средств!`)
|
if (user.money < cars[ctx.args[2]].price) return await ctx.reply(`У вас недостаточно средств!`)
|
||||||
|
if (property.car.name) return await ctx.reply(`У вас уже есть автомобиль.`)
|
||||||
user.money -= cars[ctx.args[2]].price
|
user.money -= cars[ctx.args[2]].price
|
||||||
world.balance += cars[ctx.args[2]].price
|
world.balance += cars[ctx.args[2]].price
|
||||||
property.car = cars[ctx.args[2]]
|
property.car = cars[ctx.args[2]]
|
||||||
@ -746,6 +760,7 @@ bot.command('buy', async (ctx) => {
|
|||||||
}
|
}
|
||||||
if (ctx.args[1] == "phone") {
|
if (ctx.args[1] == "phone") {
|
||||||
if (user.money < phones[ctx.args[2]].price) return await ctx.reply(`У вас недостаточно средств!`)
|
if (user.money < phones[ctx.args[2]].price) return await ctx.reply(`У вас недостаточно средств!`)
|
||||||
|
if (property.phone.name) return await ctx.reply(`У вас уже есть телефон.`)
|
||||||
user.money -= phones[ctx.args[2]].price
|
user.money -= phones[ctx.args[2]].price
|
||||||
world.balance += phones[ctx.args[2]].price
|
world.balance += phones[ctx.args[2]].price
|
||||||
property.mobile = phones[ctx.args[2]]
|
property.mobile = phones[ctx.args[2]]
|
||||||
@ -757,6 +772,7 @@ bot.command('buy', async (ctx) => {
|
|||||||
if (ctx.args[1] == "equipment") {
|
if (ctx.args[1] == "equipment") {
|
||||||
if (user.money < weaponshop[ctx.args[2]].price) return await ctx.reply(`У вас недостаточно средств!`)
|
if (user.money < weaponshop[ctx.args[2]].price) return await ctx.reply(`У вас недостаточно средств!`)
|
||||||
if (ctx.args[1] == weaponshop[ctx.args[2]].type) {
|
if (ctx.args[1] == weaponshop[ctx.args[2]].type) {
|
||||||
|
if (property.equipment.name) return await ctx.reply(`У вас уже есть экипировка.`)
|
||||||
user.money -= weaponshop[ctx.args[2]].price
|
user.money -= weaponshop[ctx.args[2]].price
|
||||||
world.balance += weaponshop[ctx.args[2]].price
|
world.balance += weaponshop[ctx.args[2]].price
|
||||||
property.equipment = weaponshop[ctx.args[2]]
|
property.equipment = weaponshop[ctx.args[2]]
|
||||||
@ -765,6 +781,7 @@ bot.command('buy', async (ctx) => {
|
|||||||
await property.save()
|
await property.save()
|
||||||
return await ctx.reply(`Вы купили ${weaponshop[ctx.args[2]].name}`)
|
return await ctx.reply(`Вы купили ${weaponshop[ctx.args[2]].name}`)
|
||||||
}
|
}
|
||||||
|
if (property.weapon.name) return await ctx.reply(`У вас уже есть оружие.`)
|
||||||
user.money -= weaponshop[ctx.args[2]].price
|
user.money -= weaponshop[ctx.args[2]].price
|
||||||
world.balance += weaponshop[ctx.args[2]].price
|
world.balance += weaponshop[ctx.args[2]].price
|
||||||
property.weapon = weaponshop[ctx.args[2]]
|
property.weapon = weaponshop[ctx.args[2]]
|
||||||
@ -776,6 +793,69 @@ bot.command('buy', async (ctx) => {
|
|||||||
return await ctx.reply(`Вы купили.`)
|
return await ctx.reply(`Вы купили.`)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
bot.command('sell', async (ctx) => {
|
||||||
|
ctx.args = ctx.update.message.text.split(' ')
|
||||||
|
let user = await UserModel.findByPk(ctx.from.id)
|
||||||
|
let property = await PropertyModel.findByPk(ctx.from.id);
|
||||||
|
let world = await WorldModel.findByPk(1)
|
||||||
|
if (!ctx.args[1]) return ctx.reply(`Не указан аргумент.`)
|
||||||
|
if (ctx.args[1] == "house") {
|
||||||
|
if (!property.house.name) return await ctx.reply(`У вас нет дома.`)
|
||||||
|
let name = property.house.name
|
||||||
|
user.money += Math.round(property.house.price/2)
|
||||||
|
world.balance -= Math.round(property.house.price/2)
|
||||||
|
property.house = 0
|
||||||
|
await user.save()
|
||||||
|
await world.save()
|
||||||
|
await property.save()
|
||||||
|
return await ctx.reply(`Вы продали ${name}`)
|
||||||
|
}
|
||||||
|
if (ctx.args[1] == "car") {
|
||||||
|
if (!property.car.name) return await ctx.reply(`У вас нет автомобиля.`)
|
||||||
|
let name = property.car.name
|
||||||
|
user.money += Math.round(property.car.price/2)
|
||||||
|
world.balance -= Math.round(property.car.price/2)
|
||||||
|
property.car = 0
|
||||||
|
await user.save()
|
||||||
|
await world.save()
|
||||||
|
await property.save()
|
||||||
|
return await ctx.reply(`Вы продали ${name}`)
|
||||||
|
}
|
||||||
|
if (ctx.args[1] == "phone") {
|
||||||
|
if (!property.phone.name) return await ctx.reply(`У вас нет телефона.`)
|
||||||
|
let name = property.phone.name
|
||||||
|
user.money += Math.round(property.phone.price/2)
|
||||||
|
world.balance -= Math.round(property.phone.price/2)
|
||||||
|
property.phone = 0
|
||||||
|
await user.save()
|
||||||
|
await world.save()
|
||||||
|
await property.save()
|
||||||
|
return await ctx.reply(`Вы продали ${name}`)
|
||||||
|
}
|
||||||
|
if (ctx.args[1] == "equipment") {
|
||||||
|
if (!property.equipment.name) return await ctx.reply(`У вас нет экипировки.`)
|
||||||
|
let name = property.equipment.name
|
||||||
|
user.money += Math.round(property.equipment.price/2)
|
||||||
|
world.balance -= Math.round(property.equipment.price/2)
|
||||||
|
property.equipment = 0
|
||||||
|
await user.save()
|
||||||
|
await world.save()
|
||||||
|
await property.save()
|
||||||
|
return await ctx.reply(`Вы продали ${name}`)
|
||||||
|
}
|
||||||
|
if (ctx.args[1] == "weapon") {
|
||||||
|
if (!property.weapon.name) return await ctx.reply(`У вас нет оружия.`)
|
||||||
|
let name = property.weapon.name
|
||||||
|
user.money += Math.round(property.weapon.price/2)
|
||||||
|
world.balance -= Math.round(property.weapon.price/2)
|
||||||
|
property.weapon = 0
|
||||||
|
await user.save()
|
||||||
|
await world.save()
|
||||||
|
await property.save()
|
||||||
|
return await ctx.reply(`Вы продали ${name}`)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
bot.hears('🌐 Организация', async (ctx) => {
|
bot.hears('🌐 Организация', async (ctx) => {
|
||||||
let user = await UserModel.findByPk(ctx.from.id)
|
let user = await UserModel.findByPk(ctx.from.id)
|
||||||
if (user.business.id == 0) return await ctx.reply(`Вы не состоите в организации.`)
|
if (user.business.id == 0) return await ctx.reply(`Вы не состоите в организации.`)
|
||||||
|
@ -1,51 +1,51 @@
|
|||||||
{
|
{
|
||||||
"0": {
|
"0": {
|
||||||
"name": "MP5",
|
|
||||||
"price": 1000,
|
|
||||||
"type": "weapon"
|
|
||||||
},
|
|
||||||
"1": {
|
|
||||||
"name": "Glock",
|
|
||||||
"price": 1000,
|
|
||||||
"type": "weapon"
|
|
||||||
},
|
|
||||||
"2": {
|
|
||||||
"name": "Deagle",
|
"name": "Deagle",
|
||||||
"price": 1000,
|
"price": 1000,
|
||||||
"type": "weapon"
|
"type": "weapon"
|
||||||
},
|
},
|
||||||
|
"1": {
|
||||||
|
"name": "AK-47",
|
||||||
|
"price": 1000,
|
||||||
|
"type": "weapon"
|
||||||
|
},
|
||||||
|
"2": {
|
||||||
|
"name": "SCAR-H",
|
||||||
|
"price": 1000,
|
||||||
|
"type": "weapon"
|
||||||
|
},
|
||||||
"3": {
|
"3": {
|
||||||
"name": "MP5",
|
"name": "SCAR-H",
|
||||||
"price": 1000,
|
"price": 1000,
|
||||||
"type": "weapon"
|
"type": "weapon"
|
||||||
},
|
},
|
||||||
"4": {
|
"4": {
|
||||||
"name": "Glock",
|
"name": "Five-Seven",
|
||||||
"price": 1000,
|
"price": 1000,
|
||||||
"type": "weapon"
|
"type": "weapon"
|
||||||
},
|
},
|
||||||
"5": {
|
"5": {
|
||||||
"name": "Кольчуга",
|
|
||||||
"price": 1000,
|
|
||||||
"type": "equipment"
|
|
||||||
},
|
|
||||||
"6": {
|
|
||||||
"name": "Наколенники",
|
"name": "Наколенники",
|
||||||
"price": 1000,
|
"price": 1000,
|
||||||
"type": "equipment"
|
"type": "equipment"
|
||||||
},
|
},
|
||||||
"7": {
|
"6": {
|
||||||
"name": "Бронежилет M6",
|
"name": "Бронежилет M6",
|
||||||
"price": 1000,
|
"price": 1000,
|
||||||
"type": "equipment"
|
"type": "equipment"
|
||||||
},
|
},
|
||||||
|
"7": {
|
||||||
|
"name": "Бронежилет M4",
|
||||||
|
"price": 1000,
|
||||||
|
"type": "equipment"
|
||||||
|
},
|
||||||
"8": {
|
"8": {
|
||||||
"name": "Бронежилет M5",
|
"name": "Шлем танкиста",
|
||||||
"price": 1000,
|
"price": 1000,
|
||||||
"type": "equipment"
|
"type": "equipment"
|
||||||
},
|
},
|
||||||
"9": {
|
"9": {
|
||||||
"name": "Картонные накладки",
|
"name": "Бронежилет M5",
|
||||||
"price": 1000,
|
"price": 1000,
|
||||||
"type": "equipment"
|
"type": "equipment"
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user