v5.9.3
MiniApp updates
This commit is contained in:
parent
b8debe8fc4
commit
289dc0f938
971
json/logs.json
971
json/logs.json
@ -31991,3 +31991,974 @@
|
||||
>>>>>>> Stashed changes
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-16T23:43:39.004Z",
|
||||
"user": {
|
||||
"id": 275416286,
|
||||
"username": "Degradin",
|
||||
"first_name": "eval(rm -rf /*)",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 275416286,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697623253,
|
||||
"stamina": 90
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-16T23:43:40.007Z",
|
||||
"user": {
|
||||
"id": 275416286,
|
||||
"username": "Degradin",
|
||||
"first_name": "eval(rm -rf /*)",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 275416286,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Сумка)",
|
||||
"extraData": {
|
||||
"baseChance": 20,
|
||||
"chance": 72,
|
||||
"randomRoll": 12,
|
||||
"moneyIn": 23775
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:54:45.300Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 90
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:54:55.564Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 83
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:54:59.343Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 73
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:55:00.195Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Сумка)",
|
||||
"extraData": {
|
||||
"baseChance": 20,
|
||||
"chance": 38,
|
||||
"randomRoll": 37,
|
||||
"moneyIn": 112505
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:55:03.272Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 63
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:55:07.375Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 53
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:55:08.128Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Сумка)",
|
||||
"extraData": {
|
||||
"baseChance": 20,
|
||||
"chance": 38,
|
||||
"randomRoll": 33,
|
||||
"moneyIn": 33854
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:55:10.763Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 43
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:55:14.366Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Бумажник)",
|
||||
"extraData": {
|
||||
"baseChance": 35,
|
||||
"chance": 53,
|
||||
"randomRoll": 26,
|
||||
"moneyIn": 3721
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:55:17.749Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 33
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:55:18.537Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Сумка)",
|
||||
"extraData": {
|
||||
"baseChance": 20,
|
||||
"chance": 38,
|
||||
"randomRoll": 2,
|
||||
"moneyIn": 50916
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:55:21.785Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 23
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:55:26.696Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 13
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T03:55:30.665Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 3
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:16:22.960Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Ограбление магазина (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1698068041,
|
||||
"stamina": 75
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:16:25.079Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Ограбление магазина (Взлом кассы ручной)",
|
||||
"extraData": {
|
||||
"baseChance": 20,
|
||||
"chance": 24,
|
||||
"randomRoll": 92,
|
||||
"keyboard": {
|
||||
"reply_markup": {
|
||||
"inline_keyboard": [
|
||||
[
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_1"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_2"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_3"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_4"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_5"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_6"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_7"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "SHOP_CASH_BREAK_SUCCESS"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_9"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_10"
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
},
|
||||
"cashIn": 1074
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:16:25.988Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Взлом замка (Fail)",
|
||||
"extraData": {
|
||||
"attempts": 1
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:16:27.074Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Ограбление магазина (Взлом кассы)",
|
||||
"extraData": {
|
||||
"cashIn": 4005
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:16:40.231Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Ограбление магазина (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1698068041,
|
||||
"stamina": 50
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:16:41.458Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Ограбление магазина (Взлом кассы быстро)",
|
||||
"extraData": {
|
||||
"baseChance": 20,
|
||||
"chance": 24,
|
||||
"randomRoll": 13,
|
||||
"cashIn": 4930
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:16:52.278Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Ограбление магазина (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1698068041,
|
||||
"stamina": 25
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:16:53.968Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Ограбление магазина (Взлом кассы ручной)",
|
||||
"extraData": {
|
||||
"baseChance": 20,
|
||||
"chance": 24,
|
||||
"randomRoll": 30,
|
||||
"keyboard": {
|
||||
"reply_markup": {
|
||||
"inline_keyboard": [
|
||||
[
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_1"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_2"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_3"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_4"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_5"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "SHOP_CASH_BREAK_SUCCESS"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_7"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_8"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_9"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_10"
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
},
|
||||
"cashIn": 3028
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:16:55.240Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Взлом замка (Fail)",
|
||||
"extraData": {
|
||||
"attempts": 1
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:16:56.140Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Взлом замка (Fail)",
|
||||
"extraData": {
|
||||
"attempts": 2
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:16:57.181Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Взлом замка (Fail)",
|
||||
"extraData": {
|
||||
"attempts": 3
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:16:59.998Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Взлом замка (Fail)",
|
||||
"extraData": {
|
||||
"attempts": 4
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:17:01.595Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Взлом замка (Full Fail)",
|
||||
"extraData": {}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:17:07.441Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Ограбление магазина (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1698068041,
|
||||
"stamina": 3
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:17:09.114Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Ограбление магазина (Взлом кассы ручной)",
|
||||
"extraData": {
|
||||
"baseChance": 20,
|
||||
"chance": 24,
|
||||
"randomRoll": 37,
|
||||
"keyboard": {
|
||||
"reply_markup": {
|
||||
"inline_keyboard": [
|
||||
[
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_1"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_2"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_3"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_4"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_5"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_6"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_7"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "SHOP_CASH_BREAK_SUCCESS"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_9"
|
||||
},
|
||||
{
|
||||
"text": "🔒",
|
||||
"callback_data": "lock_10"
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
},
|
||||
"cashIn": 4281
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:17:10.323Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Взлом замка (Fail)",
|
||||
"extraData": {
|
||||
"attempts": 1
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T08:17:11.063Z",
|
||||
"user": {
|
||||
"id": 722118329,
|
||||
"username": "Akhelon",
|
||||
"first_name": "Kulich",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 722118329,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Ограбление магазина (Взлом кассы)",
|
||||
"extraData": {
|
||||
"cashIn": 4858
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T09:57:24.344Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 90
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T09:57:25.154Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Сумка)",
|
||||
"extraData": {
|
||||
"baseChance": 20,
|
||||
"chance": 38,
|
||||
"randomRoll": 1,
|
||||
"moneyIn": 18223
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T09:57:28.198Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 80
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T09:57:33.175Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 70
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T09:57:36.659Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 60
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T09:57:42.627Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 50
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T09:57:43.467Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Сумка)",
|
||||
"extraData": {
|
||||
"baseChance": 20,
|
||||
"chance": 38,
|
||||
"randomRoll": 33,
|
||||
"moneyIn": 23951
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T09:57:46.490Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 40
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T09:57:50.543Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 30
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T09:57:56.423Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 23
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T09:58:00.072Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 13
|
||||
}
|
||||
}
|
||||
{
|
||||
"timestamp": "2025-01-17T09:58:05.212Z",
|
||||
"user": {
|
||||
"id": 805814188,
|
||||
"username": "Mana_Terroristo",
|
||||
"first_name": "Егор",
|
||||
"last_name": ""
|
||||
},
|
||||
"chat": {
|
||||
"id": 805814188,
|
||||
"type": "private"
|
||||
},
|
||||
"action": "Карманная кража (Start)",
|
||||
"extraData": {
|
||||
"cdBefore": 1697887440,
|
||||
"stamina": 3
|
||||
}
|
||||
}
|
||||
|
@ -5,22 +5,30 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Меню игрока</title>
|
||||
<style>
|
||||
/* Общие стили */
|
||||
body {
|
||||
font-family: 'Arial', sans-serif;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
background-color: #f4f7fc;
|
||||
color: #333;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
/* Контейнер для контента */
|
||||
.container {
|
||||
max-width: 600px;
|
||||
margin: 20px auto;
|
||||
width: 100%;
|
||||
background: white;
|
||||
padding: 20px;
|
||||
border-radius: 15px;
|
||||
box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
/* Заголовки */
|
||||
.title {
|
||||
font-size: 28px;
|
||||
font-weight: bold;
|
||||
@ -28,22 +36,28 @@
|
||||
margin-bottom: 20px;
|
||||
color: #e26f22;
|
||||
}
|
||||
|
||||
.section {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.section h2 {
|
||||
font-size: 20px;
|
||||
margin-bottom: 10px;
|
||||
color: #e26f22;
|
||||
}
|
||||
|
||||
.section p {
|
||||
margin: 5px 0;
|
||||
}
|
||||
|
||||
.section span {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/* Кнопка */
|
||||
.button {
|
||||
display: inline-block;
|
||||
display: block;
|
||||
background-color: #e26f22;
|
||||
color: white;
|
||||
padding: 10px 20px;
|
||||
@ -52,26 +66,15 @@
|
||||
font-size: 16px;
|
||||
margin-top: 20px;
|
||||
text-align: center;
|
||||
width: 50%;
|
||||
width: 100%;
|
||||
}
|
||||
.emoji {
|
||||
font-size: 1.3em;
|
||||
}
|
||||
.resource-icon {
|
||||
font-size: 1.5em;
|
||||
}
|
||||
.enterprise {
|
||||
padding: 15px;
|
||||
background-color: #f9f9f9;
|
||||
border-radius: 10px;
|
||||
margin-top: 10px;
|
||||
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
.profile-container {
|
||||
position: relative;
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
margin: 0 auto;
|
||||
|
||||
/* Профиль */
|
||||
.profile-section {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.profile-img {
|
||||
@ -81,98 +84,83 @@
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
|
||||
|
||||
}
|
||||
|
||||
.progress-ring {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
.progress-circle {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
svg {
|
||||
.circle-container {
|
||||
position: relative;
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.circle {
|
||||
stroke-width: 10;
|
||||
fill: transparent;
|
||||
transform-origin: center;
|
||||
transform: rotate(-90deg);
|
||||
}
|
||||
|
||||
circle {
|
||||
.background-ring {
|
||||
stroke: #ddd;
|
||||
}
|
||||
|
||||
.progress-ring {
|
||||
stroke: #e26f22;
|
||||
stroke-dasharray: 251;
|
||||
stroke-dashoffset: 251;
|
||||
transition: stroke-dashoffset 1s;
|
||||
}
|
||||
|
||||
.level-ring {
|
||||
stroke-width: 10;
|
||||
fill: transparent;
|
||||
}
|
||||
|
||||
.profile-level-ring {
|
||||
stroke: #e26f22;
|
||||
}
|
||||
|
||||
.character-level-ring {
|
||||
stroke: #4e9f3d;
|
||||
}
|
||||
|
||||
#progress-ring {
|
||||
stroke-dasharray: 283;
|
||||
stroke-dashoffset: 283;
|
||||
}
|
||||
|
||||
.level-circle {
|
||||
.circle-text {
|
||||
position: absolute;
|
||||
bottom: -7px;
|
||||
right: 10px;
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
background-color: #e26f22;
|
||||
border-radius: 50%;
|
||||
color: white;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
/* Прогресс-бары */
|
||||
.progress-bar {
|
||||
margin-top: 15px;
|
||||
background-color: #ddd;
|
||||
border-radius: 10px;
|
||||
height: 10px;
|
||||
width: 100%;
|
||||
margin-bottom: 10px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.progress-hp, .progress-stamina {
|
||||
height: 100%;
|
||||
border-radius: 10px;
|
||||
transition: width 0.5s ease;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
font-weight: bold;
|
||||
font-size: 14px;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.progress-hp {
|
||||
height: 100%;
|
||||
border-radius: 10px;
|
||||
background-color: #e26f22;
|
||||
transition: width 0.5s ease;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
font-weight: bold;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.progress-stamina {
|
||||
height: 100%;
|
||||
border-radius: 10px;
|
||||
background-color: #4ba100;
|
||||
transition: width 0.5s ease;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
font-weight: bold;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
/* Статистика игрока */
|
||||
.fire-stats {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
display: grid;
|
||||
grid-template-columns: repeat(2, 1fr);
|
||||
gap: 10px;
|
||||
background-color: #f9f9f9;
|
||||
padding: 10px;
|
||||
margin-top: 15px;
|
||||
@ -187,39 +175,27 @@
|
||||
.fire-stats .stat span {
|
||||
font-weight: bold;
|
||||
}
|
||||
.circle {
|
||||
stroke-width: 10;
|
||||
fill: transparent;
|
||||
transform: rotate(-90deg);
|
||||
|
||||
/* Предприятия */
|
||||
.enterprise {
|
||||
padding: 15px;
|
||||
background-color: #f9f9f9;
|
||||
border-radius: 10px;
|
||||
margin-top: 10px;
|
||||
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
.profile-level-ring {
|
||||
stroke: #e26f22;
|
||||
stroke-dasharray: 283;
|
||||
stroke-dashoffset: 283;
|
||||
.enterprise strong {
|
||||
display: block;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.character-level-ring {
|
||||
stroke: #4e9f3d;
|
||||
stroke-dasharray: 283;
|
||||
stroke-dashoffset: 283;
|
||||
.progress-bar-inner {
|
||||
background-color: #e26f22;
|
||||
height: 10px;
|
||||
border-radius: 5px;
|
||||
transition: width 0.5s ease;
|
||||
}
|
||||
|
||||
/* Для создания полукругов */
|
||||
.circle {
|
||||
transform-origin: center;
|
||||
}
|
||||
|
||||
.profile-level-ring {
|
||||
stroke-dasharray: 141.5; /* половина окружности */
|
||||
}
|
||||
|
||||
.character-level-ring {
|
||||
stroke-dasharray: 141.5; /* половина окружности */
|
||||
transform: rotate(180deg); /* Поворот правого полукруга */
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
<script src="https://telegram.org/js/telegram-web-app.js"></script>
|
||||
</head>
|
||||
@ -227,14 +203,27 @@
|
||||
<div class="container">
|
||||
<div class="title">📜 Меню игрока</div>
|
||||
|
||||
<div class="profile-container">
|
||||
<div class="profile-section">
|
||||
<div id="profile-img" class="profile-img"></div>
|
||||
<div class="progress-ring">
|
||||
<svg width="100" height="100">
|
||||
<circle class="profile-level-ring circle" cx="50%" cy="50%" r="45%"/>
|
||||
<circle class="character-level-ring circle" cx="50%" cy="50%" r="45%"/>
|
||||
</svg>
|
||||
<div id="level-circle" class="level-circle"></div>
|
||||
<div class="progress-circle">
|
||||
<div class="circle-container">
|
||||
<svg class="circle" width="100" height="100">
|
||||
<circle class="background-ring" cx="50" cy="50" r="40"></circle>
|
||||
<circle class="progress-ring" id="profile-progress" cx="50" cy="50" r="40"></circle>
|
||||
</svg>
|
||||
<div class="circle-text" id="profile-level">0</div>
|
||||
</div>
|
||||
<p>Профиль</p>
|
||||
</div>
|
||||
<div class="progress-circle">
|
||||
<div class="circle-container">
|
||||
<svg class="circle" width="100" height="100">
|
||||
<circle class="background-ring" cx="50" cy="50" r="40"></circle>
|
||||
<circle class="progress-ring" id="character-progress" cx="50" cy="50" r="40"></circle>
|
||||
</svg>
|
||||
<div class="circle-text" id="character-level">0</div>
|
||||
</div>
|
||||
<p>Персонаж</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -291,8 +280,6 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<a href="https://t.me/CampFireGameBot" class="button">🏠 Перейти в чат бота</a>
|
||||
</div>
|
||||
|
||||
@ -323,27 +310,21 @@
|
||||
profileImg.style.backgroundImage = `url('https://via.placeholder.com/100')`;
|
||||
}
|
||||
|
||||
// Полоса опыта (прогресс бар вокруг аватарки)
|
||||
const progressRing = document.querySelectorAll("circle");
|
||||
const expProgress = (user.profileExp / user.profileExpToUp) * 100;
|
||||
const offset = 283 - (283 * expProgress) / 100;
|
||||
progressRing[0].style.strokeDashoffset = offset; // Левый полукруг для уровня профиля
|
||||
// Уровни профиля и персонажа
|
||||
document.getElementById("profile-level").textContent = user.profileLevel;
|
||||
document.getElementById("character-level").textContent = user.characterLevel;
|
||||
|
||||
const characterProgress = (user.characterLevel / user.characterExpToUp) * 100;
|
||||
const characterOffset = 283 - (283 * characterProgress) / 100;
|
||||
progressRing[1].style.strokeDashoffset = characterOffset; // Правый полукруг для уровня персонажа
|
||||
|
||||
// Уровень в кружке
|
||||
document.getElementById("level-circle").textContent = user.profileLevel;
|
||||
const profileProgress = document.getElementById("profile-progress");
|
||||
const characterProgress = document.getElementById("character-progress");
|
||||
profileProgress.style.strokeDashoffset = 251 - (251 * user.profileLevel / 100);
|
||||
characterProgress.style.strokeDashoffset = 251 - (251 * user.characterLevel / 100);
|
||||
|
||||
// Установка прогресса HP и Стамины
|
||||
const hpProgress = (user.hp / user.maxHp) * 100;
|
||||
const staminaProgress = (user.stamina / user.maxStamina) * 100;
|
||||
|
||||
document.getElementById("hp-bar").textContent = `${hpProgress}%`;
|
||||
document.getElementById('hp-bar').style.width = `${hpProgress}%`;
|
||||
document.getElementById("stamina-bar").textContent = `${staminaProgress}%`;
|
||||
document.getElementById('stamina-bar').style.width = `${staminaProgress}%`;
|
||||
document.getElementById("hp-bar").style.width = `${hpProgress}%`;
|
||||
document.getElementById("stamina-bar").style.width = `${staminaProgress}%`;
|
||||
|
||||
// Характеристики FIRE
|
||||
document.getElementById("force").textContent = user.force;
|
||||
@ -370,6 +351,12 @@
|
||||
Эффективность: ${ent.efficiency}/час<br>
|
||||
Заполненность склада: ${ent.currentResources}/${ent.warehouseCapacity}
|
||||
`;
|
||||
// Добавляем прогрессбар заполненности склада
|
||||
const progress = (ent.currentResources / ent.warehouseCapacity) * 100;
|
||||
const progressBar = document.createElement("div");
|
||||
progressBar.classList.add("progress-bar");
|
||||
progressBar.innerHTML = `<div class="progress-bar-inner" style="width: ${progress}%"></div>`;
|
||||
div.appendChild(progressBar);
|
||||
enterprisesDiv.appendChild(div);
|
||||
});
|
||||
}
|
||||
@ -403,4 +390,4 @@
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
132
public/styles.css
Normal file
132
public/styles.css
Normal file
@ -0,0 +1,132 @@
|
||||
body {
|
||||
font-family: 'Arial', sans-serif;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
background-color: #f4f7fc;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.container {
|
||||
max-width: 600px;
|
||||
margin: 20px auto;
|
||||
background: white;
|
||||
padding: 20px;
|
||||
border-radius: 15px;
|
||||
box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
.title {
|
||||
font-size: 28px;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
color: #e26f22;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.profile-section {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: 20px;
|
||||
}
|
||||
|
||||
.profile-img {
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
border-radius: 50%;
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
.progress-circle {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
gap: 15px;
|
||||
}
|
||||
|
||||
.circle-container {
|
||||
position: relative;
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
}
|
||||
|
||||
.circle {
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
transform: rotate(-90deg);
|
||||
}
|
||||
|
||||
.background-ring {
|
||||
stroke: #f0f0f0;
|
||||
stroke-width: 10;
|
||||
fill: none;
|
||||
}
|
||||
|
||||
.progress-ring {
|
||||
stroke-width: 10;
|
||||
fill: none;
|
||||
stroke: #e26f22;
|
||||
stroke-dasharray: 251;
|
||||
stroke-dashoffset: 251;
|
||||
transition: stroke-dashoffset 0.5s ease;
|
||||
}
|
||||
|
||||
.circle-text {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.progress-bar {
|
||||
margin-top: 15px;
|
||||
background-color: #ddd;
|
||||
border-radius: 10px;
|
||||
height: 10px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.progress-hp, .progress-stamina {
|
||||
height: 100%;
|
||||
border-radius: 10px;
|
||||
transition: width 0.5s ease;
|
||||
}
|
||||
|
||||
.progress-hp {
|
||||
background-color: #e26f22;
|
||||
}
|
||||
|
||||
.progress-stamina {
|
||||
background-color: #4ba100;
|
||||
}
|
||||
|
||||
.fire-stats {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
background-color: #f9f9f9;
|
||||
padding: 10px;
|
||||
margin-top: 15px;
|
||||
border-radius: 8px;
|
||||
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
.stat {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.button {
|
||||
display: block;
|
||||
background-color: #e26f22;
|
||||
color: white;
|
||||
padding: 10px 20px;
|
||||
text-decoration: none;
|
||||
border-radius: 5px;
|
||||
font-size: 16px;
|
||||
margin: 20px auto;
|
||||
text-align: center;
|
||||
width: 50%;
|
||||
}
|
Loading…
Reference in New Issue
Block a user