55import math
66from typing import Union
77from flask import Flask , render_template , redirect , url_for , request
8- from flask_migrate import Migrate , migrate
8+ from flask_migrate import Migrate as MigrateClass
99from flask_sqlalchemy import SQLAlchemy
1010from werkzeug .wrappers import Response
1111
1212app = Flask (__name__ )
1313app .config ["SQLALCHEMY_DATABASE_URI" ] = "sqlite:///users.db"
1414db = SQLAlchemy (app )
15- migrate = Migrate (app , db )
15+ migrate_instance = MigrateClass (app , db )
1616
1717
1818class User (db .Model ): # user class
@@ -31,15 +31,21 @@ class User(db.Model): # user class
3131 ) # user XP required
3232 total_xp : float = db .Column (
3333 db .Float , default = 0 , nullable = False ) # user total XP
34+ multiplier : int = db .Column (
35+ db .Integer , default = 1 , nullable = False
36+ ) # user multiplier
37+ last_item_clicked : int = db .Column (
38+ db .Integer , default = 0 , nullable = False
39+ ) # user last item clicked
3440 level : int = db .Column (db .Integer , default = 1 , nullable = False ) # user level
3541
3642 def add_xp (self , amount : float ) -> None : # add XP
3743 """
3844 Add XP (experience points) to the user.
3945 amount - the amount to add XP.
4046 """
41- self .xp += amount # add XP by amount
42- self .total_xp += amount # add total XP by amount
47+ self .xp += amount * self . multiplier # add XP by amount
48+ self .total_xp += amount * self . multiplier # add total XP by amount
4349 self .check_level_up () # check if user has leveled up
4450
4551 def check_level_up (self ) -> None : # check if user has leveled up
0 commit comments