added firebase and rudimentary leaderboard support

This commit is contained in:
derek
2025-04-09 11:19:02 -05:00
parent ce08df66e6
commit 25eb9e725a
121 changed files with 4987 additions and 4 deletions

View File

@@ -0,0 +1,21 @@
class_name FacebookProvider
extends AuthProvider
func _init(client_id: String,client_secret: String):
randomize()
set_client_id(client_id)
set_client_secret(client_secret)
self.redirect_uri = "https://www.facebook.com/v13.0/dialog/oauth?"
self.access_token_uri = "https://graph.facebook.com/v13.0/oauth/access_token"
self.provider_id = "facebook.com"
self.params.scope = "public_profile"
self.params.state = str(randf_range(0, 1))
if Utilities.is_web():
self.should_exchange = false
self.params.response_type = "token"
else:
self.should_exchange = true
self.params.response_type = "code"

View File

@@ -0,0 +1 @@
uid://s5c12vma7ufy

View File

@@ -0,0 +1,14 @@
class_name GitHubProvider
extends AuthProvider
func _init(client_id: String,client_secret: String):
randomize()
set_client_id(client_id)
set_client_secret(client_secret)
self.should_exchange = true
self.redirect_uri = "https://github.com/login/oauth/authorize?"
self.access_token_uri = "https://github.com/login/oauth/access_token"
self.provider_id = "github.com"
self.params.scope = "user:read"
self.params.state = str(randf_range(0, 1))
self.params.response_type = "code"

View File

@@ -0,0 +1 @@
uid://gactahg7liyw

View File

@@ -0,0 +1,13 @@
class_name GoogleProvider
extends AuthProvider
func _init(client_id: String,client_secret: String):
set_client_id(client_id)
set_client_secret(client_secret)
self.should_exchange = true
self.redirect_uri = "https://accounts.google.com/o/oauth2/v2/auth?"
self.access_token_uri = "https://oauth2.googleapis.com/token"
self.provider_id = "google.com"
self.params.response_type = "code"
self.params.scope = "email openid profile"
self.params.response_type = "code"

View File

@@ -0,0 +1 @@
uid://dkl7y6dl8fg8s

View File

@@ -0,0 +1,39 @@
class_name TwitterProvider
extends AuthProvider
var request_token_endpoint: String = "https://api.twitter.com/oauth/access_token?oauth_callback="
var oauth_header: Dictionary = {
oauth_callback="",
oauth_consumer_key="",
oauth_nonce="",
oauth_signature="",
oauth_signature_method="HMAC-SHA1",
oauth_timestamp="",
oauth_version="1.0"
}
func _init(client_id: String,client_secret: String):
randomize()
set_client_id(client_id)
set_client_secret(client_secret)
self.oauth_header.oauth_consumer_key = client_id
self.oauth_header.oauth_nonce = Time.get_ticks_usec()
self.oauth_header.oauth_timestamp = Time.get_ticks_msec()
self.should_exchange = true
self.redirect_uri = "https://twitter.com/i/oauth2/authorize?"
self.access_token_uri = "https://api.twitter.com/2/oauth2/token"
self.provider_id = "twitter.com"
self.params.redirect_type = "redirect_uri"
self.params.response_type = "code"
self.params.scope = "users.read"
self.params.state = str(randf_range(0, 1))
func get_oauth_params() -> String:
var params: PackedStringArray = []
for key in self.oauth.keys():
params.append(key+"="+self.oauth.get(key))
return "&".join(params)

View File

@@ -0,0 +1 @@
uid://bwvku5unmemyb