34 lines
1.1 KiB
GDScript
34 lines
1.1 KiB
GDScript
extends HTTPRequest
|
|
class_name DragonSharing
|
|
|
|
|
|
signal on_dragon_received(dragon: DragonProperties)
|
|
|
|
|
|
func _ready() -> void:
|
|
request_completed.connect(_on_request_completed)
|
|
|
|
|
|
func _on_request_completed(result: int, response_code: int, headers: PackedStringArray, body: PackedByteArray):
|
|
if response_code != 200:
|
|
print("HTTP request returned error: ", response_code)
|
|
return
|
|
if body.size() != 0:
|
|
var json = JSON.parse_string(body.get_string_from_utf8())
|
|
var properties = DragonProperties.new(json['name'], json['origin'], json['color'], json['hat'], json['shirt'], json['decor'])
|
|
print(properties)
|
|
on_dragon_received.emit(properties)
|
|
|
|
|
|
func send(origin: String, name: String, color: int, shirt: int, hat: int, decor: int) -> void:
|
|
var url: String = 'http://torreta.gerardgascon.com/add/%s/%s/%s/%s/%s/%s/' % [origin, name, color, shirt, hat, decor]
|
|
var err = request(url)
|
|
if err != OK:
|
|
print("HTTP request failed: ", err)
|
|
|
|
|
|
func receive(origin: String) -> void:
|
|
var url: String = 'http://torreta.gerardgascon.com/get/%s/' % origin
|
|
var err = request(url)
|
|
if err != OK:
|
|
print("HTTP request failed: ", err)
|