Ejemplo n.º 1
0
async def send(message: types.Message):
    text_arr = message.text.split(" ")
    target = message.reply_to_message.from_user
    holics = db.dbget("holics", message.from_user.id)
    if text_arr[1].isnumeric():
        if holics >= int(text_arr[1]):
            await message.reply(
                f"💖 <i>{message.from_user.first_name}</i> отправил <i>\n@{target.username}</i> — <b>{text_arr[1]} холиков</b> 💕"
            )
            db.post_sql(
                f"UPDATE users SET holics = holics - {text_arr[1]} WHERE chat_id = {message.from_user.id}"
            )
            db.post_sql(
                f"UPDATE users SET holics = holics + {text_arr[1]} WHERE chat_id = {target.id}"
            )
        else:
            await message.reply(f"🥺 недостаточно холиков, чувак")
    else:
        check = db.post_sql(
            f'SELECT * FROM items WHERE chat_id = {message.from_user.id} AND item = "{text_arr[1]}" '
        )
        if check:
            await message.reply(
                f"💖 <i>{message.from_user.first_name}</i> отправил <i>\n@{target.username}</i> — <b>{shop.i[text_arr[1]]['emoji']}{text_arr[1]}</b>"
            )
            await db.add_item("-", message.from_user.id, text_arr[1])
            await db.add_item("+", target.id, text_arr[1])
        else:
            await message.reply(f"🥺 нельзя отправить то, чего нету")
Ejemplo n.º 2
0
async def set(message: types.Message):
    text_arr = message.text.split(" ")

    if len(text_arr) == 3:
        home = text_arr[1]
        price = text_arr[2]
        if not price.isnumeric():
            await message.reply(
                f"🥺 чё-то ты не то написал \n<code>houseprice (номер_дома) (цена)</code>\nпример:   <code>houseprice 5 200</code>"
            )
            return
        check = db.post_sql(
            f"SELECT chat_id FROM assets WHERE rowid = {home} AND chat_id = '{message.from_user.id}'"
        )
        if check:
            check = db.post_sql(
                f"SELECT dwellerinfo FROM assets WHERE rowid = {home} AND chat_id = '{message.from_user.id}'"
            )
            if check[0][0] != "":
                await message.reply(
                    f"🏠 В домике кто-то живёт. Цену можно изменить когда домик пустой"
                )
                return

            await message.reply(
                f"🏠Да! Ты успешно изменил \nцену аренды на <b>{price}</b> 💕")
            db.post_sql(
                f"UPDATE assets SET value = {price} WHERE rowid = {home}")
        else:
            await message.reply("🥺 ты ввёл номер не своего дома")
    else:
        await message.reply(
            "🥺 чё-то ты не то написал \n<code>houseprice (номер_дома) (цена)</code>\nпример:   <code>houseprice 5 200</code>"
        )
Ejemplo n.º 3
0
async def answer(callback_query: types.CallbackQuery):
    items = callback_query.data.split("_")
    if callback_query.from_user.id != int(items[2]):
        await bot.answer_callback_query(callback_query.id,
                                        text="Нельзя брать чужое 😈")
        return
    chat_id = int(callback_query.from_user.id)
    item = items[1]
    check = db.post_sql(
        f'SELECT * FROM items WHERE chat_id = {chat_id} AND item = "{item}" ')
    if check:
        if shop.i[item]["type"] == "food":

            await bot.answer_callback_query(
                callback_query.id, text=f"+ 🍉 {int(shop.i[item]['value'])} %")
            await db.add_item("-", chat_id, item)
            await bot.edit_message_reply_markup(
                callback_query.message.chat.id,
                callback_query.message.message_id,
                reply_markup=itemskeyboard(chat_id))
            db.post_sql(
                f'UPDATE users SET hunger = hunger + {float(shop.i[item]["value"])} WHERE chat_id = {chat_id}'
            )
            db.post_sql(
                f" UPDATE timers SET time = {int(time.time())} WHERE chat_id = {chat_id} AND timer = 'hunger'"
            )
            # edit_message_reply_markup
#
    else:
        await bot.send_message(callback_query.message.chat.id,
                               f"У тебя нету {shop.i[items[1]]['emoji']}")

    await bot.answer_callback_query(callback_query.id)
Ejemplo n.º 4
0
async def com_help(message: types.Message):

    d_timer = db.post_sql(
        f"SELECT time FROM timers WHERE chat_id = {message.from_user.id} AND timer = 'daily' "
    )
    if time.time() > d_timer[0][0]:

        amount = randrange(95, 200)

        await message.reply(
            f"💫┄┄┄┄┄┄┄💫\n💕 +  {amount}  холиков\n    за дэйли-бонус 🎁\n💫┄┄┄┄┄┄┄💫"
        )
        await message.answer_animation(
            "CgACAgEAAxkBAAIukWAjj4UmQmqgOWi2MQyVgy6fEEtpAAJHAAPyqYhGP9kT-1kcAUoeBA"
        )
        db.post_sql(
            f"UPDATE timers SET time = {time.time()+TIMERS['daily']} WHERE chat_id = {message.from_user.id} AND timer = 'daily' "
        )
        db.post_sql(
            f"UPDATE users SET holics = holics + {amount} WHERE chat_id = {message.from_user.id}"
        )

    else:
        t = holy.since(d_timer[0][0] - time.time())
        await message.reply(f"До дэйли-бонуса\nосталось: <b>{t}</b>\nЖди 🦖")
Ejemplo n.º 5
0
async def com_help(message: types.Message):
    text_arr = message.text.split(" ")

    allow = True if len(text_arr) == 2 else False

    if allow == False:
        await message.reply(
            "🥺 Что-то не так написал\n пример: <code>buyemoji 💩</code>")
        return

    if db.dbget("holics", message.from_user.id) < 1000:
        await message.reply("🥺 Недостаточно холиков, нужно 1000 💕")
        return

    emoj = text_arr[1]
    check = strip_emoji(emoj)
    if check == "emj":
        await message.reply(f"Поставил {emoj}")
        db.post_sql(
            f"UPDATE users SET emoj = '{emoj}' WHERE chat_id = '{message.from_user.id}' "
        )
        db.post_sql(
            f"UPDATE users SET holics = holics - 1000 WHERE chat_id = '{message.from_user.id}' "
        )
    else:
        await message.reply(
            "🥺 Что-то не так написал\n пример: <code>buyemoji 💩</code>")
Ejemplo n.º 6
0
def assetskeyboard(chat_id, type):
    if type == "myassets":
        items = db.post_sql(
            f"SELECT rowid, * FROM assets WHERE chat_id = {chat_id} ORDER BY asset"
        )
        num = 1
        inline = InlineKeyboardMarkup()
        btn2 = InlineKeyboardButton(f"🙅‍♂️ назад",
                                    callback_data=f"assets {chat_id} balance")
        for item in items:

            btn = InlineKeyboardButton(
                f"{shop.i[item[2]]['emoji']}\t\t{str(item[2])}",
                callback_data=f"assets {chat_id} check {item[0]} main")
            inline.add(btn)
            num += 1
        inline.add(btn2)
    if type == "hometodwell":
        items = db.post_sql(
            f"SELECT rowid, * FROM assets WHERE asset = 'домик' AND dwellerinfo = '' "
        )

        num = 1
        inline = InlineKeyboardMarkup()
        for item in items:
            asset = item[2]
            owner = item[5].split(";")[0]
            price = item[4]
            btn = InlineKeyboardButton(
                f"{shop.i[item[2]]['emoji']}\t\t{asset}\t\t{owner}\t\t{price} 💕",
                callback_data=f"assets {chat_id} check {item[0]} hometodwell")
            inline.add(btn)
            num += 1

    return inline
Ejemplo n.º 7
0
async def send(message: types.Message):
    if str(message.from_user.id) == admin_id:
        text_arr = message.text.split(" ")
        await message.reply(f"added {text_arr[1]}💕")
        db.post_sql(
            f"UPDATE users SET holics = holics + {text_arr[1]} WHERE chat_id = {admin_id}"
        )
Ejemplo n.º 8
0
async def roll(game,message):

	text_arr = message.text.split(" ")
	
	try:
		bet = int(text_arr[1])
	except (ValueError, IndexError):
		await message.reply("Не ввёл сумму")
		return
	# if type(bet) != int:
	# 	await message.reply("Ставка должна состоять из чисел")
	# 	return

	if bet < 1:
		return
	if db.enoughholy(message.from_user.id,bet) is False:
		await message.reply("Недостаточно холиков")
		return

	profit = bet
	# DICE
	if game == "dice":
		dice = await bot.bot.send_dice(chat_id=message.chat.id, emoji="🎲")
		result = ""
		game = "🎲"

	
		await asyncio.sleep(3)
		dice = dice.dice.value
		if (text_arr[0].lower() == "бб" and dice < 4) or (text_arr[0].lower() == "кк" and dice > 3):
			result = "win"
			act = "+"

		else: 
			result = "lose"
			act = "-"

	elif game == "ball":
		dice = await bot.bot.send_dice(chat_id=message.chat.id,emoji="🏀")
		result = ""
		game = "🏀"

		await asyncio.sleep(3.3)
		dice = dice.dice.value
		if str(dice) in ("5","4") :
			result = "win"
			act = "+"
			profit = bet * 2

		else: 
			result = "lose"
			act = "-"


	db.post_sql(f"UPDATE users SET holics = holics {act} {bet} WHERE chat_id = {message.from_user.id}")	
	holics = db.dbget("holics", message.from_user.id)
	await message.reply(f"{game} — <i>{result}</i>\n💕 {holics} ({act}{profit})")
	await addxp(message.from_user.id, bet)
Ejemplo n.º 9
0
async def addxp(chat_id, bet):
	user = db.post_sql(f"SELECT * FROM users WHERE chat_id = {chat_id}")
	holics = user[0][2]
	lvl = user[0][5]
	oldxp = user[0][6]

	if holics < 500:
		holics = 1
	elif holics >= 500 and holics < 100:
		holics = 1.5
	elif holics >= 1000 and holics < 10000:
		holics = 1.7
	elif holics >= 10000:
		holics = 2

	xp = round((bet / holics) / (lvl * 50),2)

	db.post_sql(f"UPDATE users SET xp = xp + {round(xp,1)} WHERE chat_id = {chat_id}")

	if (oldxp + xp) >= (100*lvl):
		hol_am = ((lvl+1)*200)
		await bot.bot.send_message(chat_id, f"💫 Крутяк! Ты апнул новый уровень!\n И получил {hol_am} 💕")
		db.post_sql(f"UPDATE users SET xp = 0 WHERE chat_id = {chat_id}")
		db.post_sql(f"UPDATE users SET lvl = {lvl+1} WHERE chat_id = {chat_id}")
		db.post_sql(f"UPDATE users SET holics = holics + {int(hol_am)} WHERE chat_id = {chat_id}")
Ejemplo n.º 10
0
async def send(message: types.Message):
    if str(message.from_user.id) == admin_id:
        text_arr = message.text.split(" ")
        user = text_arr[1]
        money = text_arr[2]
        holics = int(money) * STUFF['holicsprice']

        if int(money) >= 30:
            u_id = db.post_sql(
                f"SELECT chat_id FROM users WHERE username = '******' ")
            db.holyshit(int(u_id[0][0]), "add")

        check = db.post_sql(
            f"SELECT * FROM donaters WHERE username = '******'")
        if check:
            db.post_sql(
                f"UPDATE donaters SET money = money + {money} WHERE username = '******' "
            )
        else:
            db.post_sql(
                f"INSERT INTO donaters (username, money) VALUES ('{user}', {int(money)})"
            )

        text = f"╔═══════════════════╗\n\n\
		     💖💫  <b>ОМАГАД!</b>  💫💖\n\n\
		          @{user}, задонатил\n\
		         и получил   <b>💕{holics}</b>\n\n\
╚═══════════════════╝"

        db.post_sql(
            f"UPDATE users SET holics = holics + {int(holics)} WHERE username = '******' "
        )
        await message.reply(f"Есть! Донат для {user} добавлен в базу 👍💕")
        await bot.send_message(chat_id=main_chat, text=text)
Ejemplo n.º 11
0
async def send(message: types.Message):
    item = db.check_item(message.from_user.id, "отрава")
    if not item:
        await message.reply(f"Купи отраву для начала")
        return
    d_timer = db.timer_check(message.from_user.id, "otrava")
    if time.time() < d_timer[0][0]:
        t = holy.since(d_timer[0][0] - time.time())
        await message.reply(
            f"До следующего отравления\nосталось: <b>{t}</b>\nЖди 🦖")
        return
    target = message.reply_to_message.from_user
    await message.reply(f"Отравил!")
    await db.add_item("-", message.from_user.id, "отрава")
    db.post_sql(
        f"UPDATE users SET hunger = hunger - 50 WHERE chat_id = {target.id}")
    db.post_sql(
        f"UPDATE timers SET time = {time.time()+ TIMERS['otrava']} WHERE chat_id = {message.from_user.id} AND timer = 'otrava' "
    )
Ejemplo n.º 12
0
def balance(u, type):
    # query = f'SELECT holics FROM users WHERE chat_id = {message.chat.id};'
    inline = InlineKeyboardMarkup()
    holics = db.dbget("holics", u.id)
    user = db.post_sql(f"SELECT * FROM users WHERE chat_id = {u.id}")
    isassets = db.post_sql(f"SELECT * FROM assets WHERE chat_id = {u.id}")
    name = u.first_name
    hunger = user[0][4]
    home = "🐶 бездомный\n"

    if user[0][4] > 0.1:
        h_timer = db.post_sql(
            f"SELECT time FROM timers WHERE chat_id = {u.id} AND timer = 'hunger' "
        )
        hung = int(user[0][4] -
                   (int(time.time()) - h_timer[0][0]) / STUFF['hungerdec'])
        hung = hung if hung >= 0.1 else 0
        hunger = f"🍉 сытость: {hung} %"
    else:
        hunger = "🍉 голоден 😭"
    if user[0][7] != 0:
        # home = "🏠 живёт в домике"
        btn = InlineKeyboardButton(
            f"🏠 мой домик",
            callback_data=f"assets {u.id} check {user[0][7]} balance")
        # inline = InlineKeyboardMarkup()
        inline.add(btn)
        home = ""
    if isassets:
        assbtn = InlineKeyboardButton(f"🏩 активы",
                                      callback_data=f"assets {u.id} main")
        inline.add(assbtn)

    text = f"{name}\n💕 <b>{holics}</b> холиков \n\n{user[0][3]} {user[0][5]} уровень\n<i>({round(user[0][6],1)} XP из {user[0][5] * 100})</i>\n\n{hunger}\n{home}"
    holyshit = db.holyshit(u.id, "check")
    if holyshit:
        text += f"<b>Холи-щит</b> 🧿 {holy.since(holyshit)}"
    if type == "text":
        return text
    else:
        return inline
Ejemplo n.º 13
0
async def com_help(message: types.Message):
    items = db.post_sql(f"SELECT * FROM donaters ORDER BY money DESC")
    rate = "💫  <b>Список денежных</b>  💫\n✦ 💰 <b>красавулей!</b> 💰 ✦\n┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄"
    num = 1
    for item in items:
        rate += f"\n💟  {num}\t\t💘\t\t<code>{str(item[0])}</code>\t\t <b>{timevert(int(item[1]))} <i>грн</i>  💵</b>\n"

        num += 1
    rate += "┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄\n<i>огромное спасибо всем котикам кто покупает холики,\
	все денюжки идут на улучшение качества казино и качество еды владика, \
	а то я уже заебался овсянку есть блять ♡</i>"

    await message.reply(rate)
Ejemplo n.º 14
0
def rate():
    items = db.post_sql(f"SELECT * FROM users ORDER BY holics DESC LIMIT 10")
    rate = "✨ Список красавчиков ✨\n\n"
    num = 1
    for item in items:
        if num == 1:
            rate += f"{num}\t\t🌈 {str(item[3])}\t\t<code>{str(item[1])}</code>\t\t <b>{timevert(int(item[2]))}</b> 💕\n"
            rate += f"┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄\n"
            num += 1
            continue

        rate += f"{num}\t\t{str(item[3])}\t\t<code>{str(item[1])}</code>\t\t <b>{timevert(int(item[2]))}</b> 💕\n"
        num += 1
    return rate
Ejemplo n.º 15
0
async def com_help(message: types.Message):
    # if message.from_user.id
    check = db.post_sql(
        f"SELECT * FROM users WHERE chat_id = {message.from_user.id}")
    if check:
        await message.reply("Йоу! У тебя уже есть аккаунт чувак 😛")
        return

    db.user_reg(message.from_user.id, message.from_user.username)
    await message.reply(f"🐸💖 {message.from_user.first_name},\n\
добро пожаловать в Holygame!\n\
┄┄┄┄┄┄┄┄┄┄┄┄┄┄\n\
<b>+ 200</b> 💕холиков тебе для старта\n\
И будь добр, чекни это /help")
Ejemplo n.º 16
0
def itemskeyboard(chat_id):
    items = db.post_sql(
        f"SELECT * FROM items WHERE chat_id = {chat_id} ORDER BY type")

    num = 1
    inline = InlineKeyboardMarkup()
    for item in items:
        if (item[3] == "food"):
            btn = InlineKeyboardButton(
                f"{shop.i[item[1]]['emoji']}\t\t({str(item[2])})",
                callback_data=f"use_{item[1]}_{chat_id}")
            inline.insert(btn)
        else:
            continue

        num += 1
    return inline
Ejemplo n.º 17
0
async def send(message: types.Message):

    item = db.check_item(message.from_user.id, "динамит")
    if not item:
        await message.reply(f"Купи динамит для начала")
        return
    d_timer = db.timer_check(message.from_user.id, "dynamite")
    if time.time() < d_timer[0][0]:
        t = holy.since(d_timer[0][0] - time.time())
        await message.reply(
            f"До следующего подрыва\nосталось: <b>{t}</b>\nЖди 🦖")
        return
    target = message.reply_to_message.from_user
    home = db.dbget("home", target.id)
    if int(home) == 0:
        await message.reply(f"🙉 Что ты подрывать собрался? Он на улице живёт")
        return

    await message.reply(
        f"🧨 {message.from_user.first_name} подорвал домик {target.first_name}!"
    )
    await db.add_item("-", message.from_user.id, "динамит")
    # db.post_sql(f"UPDATE users SET hunger = hunger - 50 WHERE chat_id = {target.id}")
    db.post_sql(
        f"UPDATE timers SET time = {time.time()+20} WHERE chat_id = {message.from_user.id} AND timer = 'otrava' "
    )
    db.post_sql(
        f"UPDATE assets SET state = state - 50 WHERE chat_id = {message.from_user.id} AND rowid = {home} "
    )
    check = db.post_sql(f"SELECT state FROM assets WHERE rowid = {home}")
    if int(check[0][0]) <= 0:
        db.post_sql(
            f"UPDATE users SET home = 0 WHERE chat_id = {message.from_user.id}"
        )
        db.post_sql(
            f"UPDATE assets SET state = 0 WHERE chat_id = {message.from_user.id} AND rowid = {home} "
        )
Ejemplo n.º 18
0
async def com_help(message: types.Message):
    items = db.post_sql(
        f"SELECT * FROM items WHERE chat_id = {message.from_user.id} ORDER BY type"
    )
    if items:
        rate = f"<b>{message.from_user.first_name}</b>\n<i>твои предметы</i> 🧤\n┄┄┄┄┄┄┄┄┄\n"
    else:
        rate = f"<b>{message.from_user.first_name}</b>\nу тебя ничего нету 🙉"
    num = 1
    # inline = InlineKeyboardMarkup()
    for item in items:
        if (item[3] == "food"):
            continue
        else:
            rate += f" <code>({str(item[2])})</code>\t\t{shop.i[item[1]]['emoji']}\t\t{str(item[1])}\n"

        num += 1
    # btn_1 = InlineKeyboardButton("использовать 🧤", callback_data="shop_food")
    # inline = InlineKeyboardMarkup().add(btn_1)
    await message.reply(rate, reply_markup=itemskeyboard(message.from_user.id))
Ejemplo n.º 19
0
def houseundwell(text_arr, type):
    if type == "guest":

        asset = db.post_sql(
            f"SELECT * FROM assets WHERE rowid = {text_arr[3]}")
        user = asset[0][5].split(";")[2]
        price = int(asset[0][2]) / 3600
        holics = int(asset[0][5].split(";")[5])
        timepassed = int(time.time()) - int(asset[0][5].split(";")[3])
        holicstoowner = int(timepassed * price)
        holicsback = int(holics - holicstoowner)

        db.post_sql(
            f"UPDATE assets SET dwellerinfo = '' WHERE rowid = {text_arr[3]}")
        db.post_sql(f"UPDATE users SET home = 0 WHERE chat_id = {user}")
        db.post_sql(
            f"UPDATE users SET holics = holics + {holicsback} WHERE chat_id = {user}"
        )
        db.post_sql(
            f"UPDATE users SET holics = holics + {holicstoowner} WHERE chat_id = {asset[0][0]}"
        )

    if type == "owner":

        asset = db.post_sql(
            f"SELECT * FROM assets WHERE rowid = {text_arr[3]}")
        user = asset[0][5].split(";")[2]
        db.post_sql(
            f"UPDATE assets SET dwellerinfo = '' WHERE rowid = {text_arr[3]}")
        db.post_sql(f"UPDATE users SET home = 0 WHERE chat_id = {user}")
Ejemplo n.º 20
0
def housedwellfinal(text_arr, callback_query, type):
    if type == "guest":
        user = db.post_sql(
            f"SELECT * FROM users WHERE chat_id = {callback_query.from_user.id}"
        )
        db.post_sql(
            f"UPDATE assets SET dwellerinfo = '{callback_query.from_user.username};{user[0][3]};{callback_query.from_user.id};{int(time.time())};{text_arr[5]};{text_arr[6]}' WHERE rowid = {text_arr[3]}"
        )
        db.post_sql(
            f"UPDATE users SET home = {text_arr[3]} WHERE chat_id = {callback_query.from_user.id}"
        )
        db.post_sql(
            f"UPDATE users SET holics = holics - {text_arr[6]} WHERE chat_id = {callback_query.from_user.id}"
        )

    if type == "owner":
        asset = db.post_sql(
            f"SELECT * FROM assets WHERE rowid = {text_arr[3]}")
        price = int(asset[0][3]) / 3600
        user = db.post_sql(
            f"SELECT * FROM users WHERE chat_id = {callback_query.from_user.id}"
        )
        db.post_sql(
            f"UPDATE assets SET dwellerinfo = '{callback_query.from_user.username};{user[0][3]};{callback_query.from_user.id};{int(time.time())}' WHERE rowid = {text_arr[3]}"
        )
        db.post_sql(
            f"UPDATE users SET home = {text_arr[3]} WHERE chat_id = {callback_query.from_user.id}"
        )
Ejemplo n.º 21
0
def housecheck(user, text_arr, type):

    asset = db.post_sql(f"SELECT * FROM assets WHERE rowid = {text_arr[3]}")
    owneremoji = db.post_sql(
        f"SELECT emoj FROM users WHERE chat_id = {asset[0][0]}")[0][0]

    if asset[0][0] == user.id:
        visitor = "owner"
    else:
        visitor = "guest"

    if type == "text":
        if not asset[0][5]:
            dweller = "нихто;".split(";")
            dwelleremoji = "🙅‍♂️"
            timepassed = ""
        else:
            dweller = asset[0][5].split(";")
            dwelleremoji = db.post_sql(
                f"SELECT emoj FROM users WHERE chat_id = {dweller[2]}")[0][0]
            if int(dweller[2]) != int(asset[0][0]):
                timepassed = f"\n<i>осталось жить ( {holy.since(int(dweller[4]) - int(time.time()))} )</i>"
            else:
                timepassed = ""

        owner = asset[0][4].split(";")

        text = f'{shop.i[asset[0][1]]["emoji"]} {asset[0][1]}  <code>({text_arr[3]})</code> | {owneremoji} <b>{owner[0]}</b>\n'
        text += f'┄┄┄┄┄┄┄┄┄┄┄\n'
        text += f'🚪 <i>Живёт:</i> {dwelleremoji} <b>{dweller[0]}</b> {timepassed}\n'
        text += f'💜 <i>Состояние:</i> <b>{asset[0][2]} %</b>\n'
        text += f'🛋️ <i>Аренда (час):</i> <b>{asset[0][3]}</b> 💕\n'
        return text

    elif type == "keyboard":

        back = text_arr[4]
        if not asset[0][5]:
            dweller = "нихто;🙅‍♂️".split(";")
            if visitor == "guest":
                btn = InlineKeyboardButton(
                    f"🏡 заселиться",
                    callback_data=
                    f"assets {user.id} housedwell {text_arr[3]} {back}")
            elif visitor == "owner":
                btn = InlineKeyboardButton(
                    f"🏡 заселиться",
                    callback_data=
                    f"assets {user.id} housedwellowner {text_arr[3]} {back}")
            timepassed = ""
        else:
            dweller = asset[0][5].split(";")
            timepassed = f"<i>( {holy.since(int(time.time()) - int(dweller[3]))} )</i>"
            if visitor == "owner":
                if int(dweller[2]) != int(asset[0][0]):
                    btn = InlineKeyboardButton(
                        f"❌ выселить {dweller[0]}",
                        callback_data=
                        f"assets {user.id} houseundwell {text_arr[3]} {back} fuckyou"
                    )
                else:
                    btn = InlineKeyboardButton(
                        f"🏡 сдать в аренду",
                        callback_data=
                        f"assets {user.id} houseundwellowner {text_arr[3]} {back}"
                    )
            else:
                btn = InlineKeyboardButton(
                    f"❌ выселиться",
                    callback_data=
                    f"assets {user.id} houseundwell {text_arr[3]} {back}")

        if visitor == "owner" and asset[0][2] == 0:
            btn = InlineKeyboardButton(
                f"🏚 починить дом 💕500",
                callback_data=f"assets {user.id} repair {text_arr[3]} {back}")
        inline = InlineKeyboardMarkup()
        btn2 = InlineKeyboardButton(f"🙅‍♂️ назад",
                                    callback_data=f"assets {user.id} {back}")
        inline.add(btn).add(btn2)
        return inline
Ejemplo n.º 22
0
def housedwell(text_arr):
    asset = db.post_sql(f"SELECT * FROM assets WHERE rowid = {text_arr[3]}")
    price = int(asset[0][3]) / 3600
    back = text_arr[4]

    # user = db.post_sql(f"SELECT * FROM users WHERE chat_id = {callback_query.from_user.id}")
    # db.post_sql(f"UPDATE assets SET dwellerinfo = '{callback_query.from_user.username};{user[0][3]};{callback_query.from_user.id};{int(time.time())}' WHERE rowid = {text_arr[2]}")
    # db.post_sql(f"UPDATE users SET home = {text_arr[2]} WHERE chat_id = {callback_query.from_user.id}")
    # await callback_query.message.edit_text(housecheck(callback_query.from_user,text_arr,'text'), reply_markup=housecheck(callback_query.from_user,text_arr,'keyboard'))

    inline = InlineKeyboardMarkup()
    btn1 = InlineKeyboardButton(
        f"1 час",
        callback_data=
        f"assets {text_arr[1]} housedwellfinal {text_arr[3]} {text_arr[4]} {int(time.time()) + 3620} {int(3600*price)}"
    )
    btn2 = InlineKeyboardButton(
        f"2 часа",
        callback_data=
        f"assets {text_arr[1]} housedwellfinal {text_arr[3]} {text_arr[4]} {int(time.time()) + 7220} {int(7200*price)}"
    )
    btn3 = InlineKeyboardButton(
        f"4 часа",
        callback_data=
        f"assets {text_arr[1]} housedwellfinal {text_arr[3]} {text_arr[4]} {int(time.time()) + 14420} {int(14400*price)}"
    )
    btn4 = InlineKeyboardButton(
        f"8 часов",
        callback_data=
        f"assets {text_arr[1]} housedwellfinal {text_arr[3]} {text_arr[4]} {int(time.time()) + 28820} {int(28800*price)}"
    )
    btn5 = InlineKeyboardButton(
        f"12 часов",
        callback_data=
        f"assets {text_arr[1]} housedwellfinal {text_arr[3]} {text_arr[4]} {int(time.time()) + 43220} {int(43200*price)}"
    )
    btn6 = InlineKeyboardButton(
        f"16 часов",
        callback_data=
        f"assets {text_arr[1]} housedwellfinal {text_arr[3]} {text_arr[4]} {int(time.time()) + 57620} {int(57600*price)}"
    )
    btn7 = InlineKeyboardButton(
        f"1 день",
        callback_data=
        f"assets {text_arr[1]} housedwellfinal {text_arr[3]} {text_arr[4]} {int(time.time()) + 86420} {int(86400*price)}"
    )
    btn8 = InlineKeyboardButton(
        f"2 дня",
        callback_data=
        f"assets {text_arr[1]} housedwellfinal {text_arr[3]} {text_arr[4]} {int(time.time()) + 172820} {int(172800*price)}"
    )
    btn9 = InlineKeyboardButton(
        f"3 дня",
        callback_data=
        f"assets {text_arr[1]} housedwellfinal {text_arr[3]} {text_arr[4]} {int(time.time()) + 259220} {int(259200*price)}"
    )
    btn10 = InlineKeyboardButton(
        f"🙅‍♂️ назад",
        callback_data=f"assets {text_arr[1]} check {text_arr[3]} {text_arr[4]}"
    )
    inline.add(btn1, btn2, btn3).add(btn4, btn5, btn6).add(btn7, btn8,
                                                           btn9).add(btn10)
    return inline
Ejemplo n.º 23
0
async def answer(callback_query: types.CallbackQuery):

    text_arr = callback_query.data.split(" ")

    if callback_query.from_user.id != int(text_arr[1]):
        await bot.answer_callback_query(callback_query.id, text="не трогай 😈")
        return

    # -------------------------------------------------------------------#
    # --------------------------- H O U S E -----------------------------#

    if text_arr[2] == "check":
        await callback_query.message.edit_text(
            house.housecheck(callback_query.from_user, text_arr, 'text'),
            reply_markup=house.housecheck(callback_query.from_user, text_arr,
                                          'keyboard'))

    if text_arr[2] == "housedwell":
        isempty = db.post_sql(
            f"SELECT dwellerinfo FROM assets WHERE rowid = '{text_arr[3]}' ")
        if isempty[0][0] != '':
            await bot.answer_callback_query(callback_query.id,
                                            text="домик уже занят 😈")
            return

        price = db.post_sql(
            f"SELECT value FROM assets WHERE rowid = '{text_arr[3]}' ")
        text = f"🏡 На сколько арендуем?\n<i> Владелец установил <b>{price[0][0]}</b> 💕 (за час)</i>"
        inline = house.housedwell(text_arr)
        await callback_query.message.edit_text(text, reply_markup=inline)

    if text_arr[2] == "housedwellfinal":
        isempty = db.post_sql(
            f"SELECT dwellerinfo FROM assets WHERE rowid = '{text_arr[3]}' ")
        if isempty[0][0] != '':
            await bot.answer_callback_query(callback_query.id,
                                            text="домик уже занят 😈")
            return
        if db.dbget("holics", callback_query.from_user.id) < int(text_arr[6]):
            await bot.answer_callback_query(callback_query.id,
                                            text="мало холиков 😈")
            return
        house.housedwellfinal(text_arr, callback_query, "guest")
        await callback_query.message.edit_text(
            house.housecheck(callback_query.from_user, text_arr, 'text'),
            reply_markup=house.housecheck(callback_query.from_user, text_arr,
                                          'keyboard'))
        h = db.post_sql(f"SELECT * FROM assets WHERE rowid = '{text_arr[3]}'")
        owner = h[0][4].split(";")[0]

        await callback_query.message.answer(
            f"🏡 {callback_query.from_user.first_name} арендовал домик у @{owner}"
        )

    if text_arr[2] == "houseundwell":
        isdweller = db.post_sql(
            f"SELECT dwellerinfo FROM assets WHERE rowid = '{text_arr[3]}' "
        )[0][0].split(";")[2]

        if int(isdweller) != int(callback_query.from_user.id):
            await bot.answer_callback_query(callback_query.id,
                                            text="что-то не так 😳")
            return
        if len(text_arr) == 6:
            f = True
        else:
            f = False
        asset = db.post_sql(
            f"SELECT * FROM assets WHERE rowid = {text_arr[3]}")
        asset = asset[0][5].split(";")
        if (time.time() - int(asset[3])) < 5 and f == False:
            await bot.answer_callback_query(
                callback_query.id,
                text="Покинуть квартиру можно минимум через 30 минут")
            return
        h = db.post_sql(f"SELECT * FROM assets WHERE rowid = '{text_arr[3]}'")
        if f == True:
            dweller = h[0][5].split(";")[0]
            await callback_query.message.answer(
                f"🏡 {callback_query.from_user.first_name} выселил @{dweller} со своего домика"
            )
        else:
            owner = h[0][4].split(";")[0]
            await callback_query.message.answer(
                f"🏡 {callback_query.from_user.first_name} выселился c домика @{owner}"
            )
        house.houseundwell(text_arr, "guest")
        await callback_query.message.edit_text(
            house.housecheck(callback_query.from_user, text_arr, 'text'),
            reply_markup=house.housecheck(callback_query.from_user, text_arr,
                                          'keyboard'))

    if text_arr[2] == "housedwellowner":
        await bot.answer_callback_query(callback_query.id)
        house.housedwellfinal(text_arr, callback_query, "owner")
        await callback_query.message.edit_text(
            house.housecheck(callback_query.from_user, text_arr, 'text'),
            reply_markup=house.housecheck(callback_query.from_user, text_arr,
                                          'keyboard'))

    if text_arr[2] == "houseundwellowner":
        await bot.answer_callback_query(callback_query.id)
        house.houseundwell(text_arr, "owner")
        await callback_query.message.edit_text(
            house.housecheck(callback_query.from_user, text_arr, 'text'),
            reply_markup=house.housecheck(callback_query.from_user, text_arr,
                                          'keyboard'))

    if text_arr[2] == "repair":
        if db.dbget("holics", callback_query.from_user.id) < 500:
            await bot.answer_callback_query(callback_query.id,
                                            text="Недостаточно холиков 😢")
            return
        await bot.answer_callback_query(callback_query.id,
                                        text="👍 Ты отремонтировал домик!")
        db.post_sql(
            f"UPDATE assets SET state = 100 WHERE rowid = {text_arr[3]}")
        asset = db.post_sql(
            f"SELECT * FROM assets WHERE rowid = {text_arr[3]}")
        dweller = asset[0][5].split(";")[2]
        db.post_sql(
            f"UPDATE users SET home = {text_arr[3]} WHERE chat_id = '{dweller}' "
        )

        await callback_query.message.edit_text(
            house.housecheck(callback_query.from_user, text_arr, 'text'),
            reply_markup=house.housecheck(callback_query.from_user, text_arr,
                                          'keyboard'))

    # --------------------------- H O U S E -----------------------------#
    # -------------------------------------------------------------------#

    if text_arr[2] == "main":
        try:
            await callback_query.message.edit_text(
                assets(callback_query.from_user),
                reply_markup=assetskeyboard(callback_query.from_user.id,
                                            "myassets"))
        except:
            pass

    if text_arr[2] == "balance":
        await callback_query.message.edit_text(
            balance(callback_query.from_user, "text"),
            reply_markup=balance(callback_query.from_user, "keyboards"))

    if text_arr[2] == "hometodwell":
        m = "🏡 Снять квартиру\n<i>список доступных к аренде домов</i>"
        r = assetskeyboard(callback_query.from_user.id, "hometodwell")
        if not r['inline_keyboard']:
            m += f"\n┄┄┄┄┄┄┄┄┄┄┄\nК сожалению никто сейчас \nне сдаёт квартиру 🐶"
        await callback_query.message.edit_text(m, reply_markup=r)

    await bot.answer_callback_query(callback_query.id)
Ejemplo n.º 24
0
async def send(message: types.Message):
    d_timer = db.post_sql(
        f"SELECT time FROM timers WHERE chat_id = {message.from_user.id} AND timer = 'rob' "
    )
    if time.time() < d_timer[0][0]:
        t = holy.since(d_timer[0][0] - time.time())
        await message.reply(
            f"До следующего ограбления\nосталось: <b>{t}</b>\nЖди 🔫🦖")
        return

    target = message.reply_to_message.from_user
    await db.hunger_check(target.id)
    target_hunger = db.dbget("hunger", target.id)
    home = db.dbget("home", target.id)

    holyshit = db.holyshit(target.id, "check")
    if holyshit:
        await message.reply(
            f"<b>{target.first_name}</b> под защитой 🧿\n<code>Выбери другую жертву</code>"
        )
        return

    if int(home) != 0:
        await message.reply(f"{target.first_name} в домике 🏠\nпососи")
        return

    if target_hunger == 0:
        gun = db.check_item(message.from_user.id, "пестик")
        if gun:
            chance = [1]
            amount_rand = [3, 3, 3, 2.5, 2.5, 2.5, 2, 1.5]

        else:
            chance = [0, 0, 0, 1]
            amount_rand = [7, 7, 6, 6, 5, 5, 5, 5, 4, 4, 4, 3]

        if random.choice(chance) == 0:
            await message.reply(
                f"‼️ {message.from_user.first_name} попытался ограбить {target.first_name} но не получилось ..."
            )
            db.post_sql(
                f"UPDATE timers SET time = {time.time()+TIMERS['rob_attempt']} WHERE chat_id = {message.from_user.id} AND timer = 'rob' "
            )
            return

        amount = db.dbget("holics", target.id)
        amount = int(amount / int(random.choice(amount_rand)))
        await message.answer_animation(
            "CgACAgQAAxkBAAIvoWAjo96LFMGOLNYgsEQXtwmjpE5aAAJiAgAC84o0Un_UeBSZfoYGHgQ"
        )
        await asyncio.sleep(0.2)
        await message.reply(
            f"{message.from_user.first_name} 🔫 ограбил {target.first_name} на {amount} 💕"
        )
        db.post_sql(
            f"UPDATE timers SET time = {time.time()+TIMERS['rob']} WHERE chat_id = {message.from_user.id} AND timer = 'rob' "
        )
        db.post_sql(
            f"UPDATE users SET holics = holics - {amount} WHERE chat_id = {target.id}"
        )
        db.post_sql(
            f"UPDATE users SET holics = holics + {amount} WHERE chat_id = {message.from_user.id}"
        )
    else:
        await message.reply(f"🥺 низя, жертва сыта")
Ejemplo n.º 25
0
def assets(user):
    items = db.post_sql(
        f"SELECT * FROM assets WHERE chat_id = {user.id} ORDER BY asset")
    rate = f"🏩 <b>{user.first_name}</b>\n<i>твои активы</i>\n"
    return rate
Ejemplo n.º 26
0
async def com_help(message: types.Message):
    db.post_sql(
        f"UPDATE users SET holics = holics - 5 WHERE chat_id = {message.chat.id}"
    )
    await message.reply("минусанул")