1
2extends Control
3
4onready var alert = get_node("alert")
5
6func _ready():
7	iap.set_auto_consume(false)
8	iap.connect("purchase_success", self, "on_purchase_success")
9	iap.connect("purchase_fail", self, "on_purchase_fail")
10	iap.connect("purchase_cancel", self, "on_purchase_cancel")
11	iap.connect("purchase_owned", self, "on_purchase_owned")
12	iap.connect("has_purchased", self, "on_has_purchased")
13	iap.connect("consume_success", self, "on_consume_success")
14	iap.connect("consume_fail", self, "on_consume_fail")
15	iap.connect("sku_details_complete", self, "on_sku_details_complete")
16
17	get_node("purchase").connect("pressed", self, "button_purchase")
18	get_node("consume").connect("pressed", self, "button_consume")
19	get_node("request").connect("pressed", self, "button_request")
20	get_node("query").connect("pressed", self, "button_query")
21
22
23func on_purchase_success(item_name):
24	alert.set_text("Purchase success : "+item_name)
25	alert.popup()
26
27func on_purchase_fail():
28	alert.set_text("Purchase fail")
29	alert.popup()
30
31func on_purchase_cancel():
32	alert.set_text("Purchase cancel")
33	alert.popup()
34
35func on_purchase_owned(item_name):
36	alert.set_text("Purchase owned : "+item_name)
37	alert.popup()
38
39func on_has_purchased(item_name):
40	if item_name == null:
41		alert.set_text("Don't have purchased item")
42	else:
43		alert.set_text("Has purchased : "+item_name)
44	alert.popup()
45
46func on_consume_success(item_name):
47	alert.set_text("Consume success : "+item_name)
48	alert.popup()
49
50func on_consume_fail():
51	alert.set_text("Try to request purchased first")
52	alert.popup()
53
54func on_sku_details_complete():
55	alert.set_text("Got detail info : "+iap.sku_details["item_test_a"].to_json())
56	alert.popup()
57
58
59func button_purchase():
60	iap.purchase("item_tess")
61
62func button_consume():
63	iap.consume("item_tess")
64
65func button_request():
66	iap.request_purchased()
67
68func button_query():
69	iap.sku_details_query(["item_test_a", "item_test_b"])
70
71