added firebase and rudimentary leaderboard support
This commit is contained in:
51
scripts/authentication.gd
Normal file
51
scripts/authentication.gd
Normal file
@@ -0,0 +1,51 @@
|
||||
extends Control
|
||||
|
||||
@onready var email_edit: LineEdit = $VBoxContainer/email_edit
|
||||
@onready var password_edit: LineEdit = $VBoxContainer/password_edit
|
||||
@onready var state_label: Label = %StateLabel
|
||||
|
||||
func _ready() -> void:
|
||||
Firebase.Auth.login_succeeded.connect(on_login_succeeded)
|
||||
Firebase.Auth.login_failed.connect(on_login_failed)
|
||||
Firebase.Auth.signup_succeeded.connect(on_signup_succeeded)
|
||||
Firebase.Auth.signup_failed.connect(on_signup_failed)
|
||||
|
||||
if Firebase.Auth.check_auth_file():
|
||||
state_label.text = "Logged in"
|
||||
|
||||
func _on_log_in_pressed() -> void:
|
||||
var email = email_edit.text
|
||||
var password = password_edit.text
|
||||
Firebase.Auth.login_with_email_and_password(email,password)
|
||||
|
||||
state_label.text = "Logging In"
|
||||
|
||||
|
||||
func _on_sign_up_pressed() -> void:
|
||||
var email = email_edit.text
|
||||
var password = password_edit.text
|
||||
Firebase.Auth.signup_with_email_and_password(email,password)
|
||||
|
||||
state_label.text = "Signing Up"
|
||||
|
||||
func on_login_succeeded(auth):
|
||||
print(auth)
|
||||
state_label.text = "Login Success!"
|
||||
Firebase.Auth.save_auth(auth)
|
||||
visible = false
|
||||
|
||||
func on_signup_succeeded(auth):
|
||||
print(auth)
|
||||
state_label.text = "Signup Success!"
|
||||
Firebase.Auth.save_auth(auth)
|
||||
visible = false
|
||||
|
||||
func on_login_failed(error_code,message):
|
||||
print(error_code)
|
||||
print(message)
|
||||
state_label.text = "Login failed. Error: %s" % message
|
||||
|
||||
func on_signup_failed(error_code,message):
|
||||
print(error_code)
|
||||
print(message)
|
||||
state_label.text = "Signup failed. Error: %s" % message
|
||||
Reference in New Issue
Block a user