Blame


1 f6d61b7b 2023-10-12 mazzurco. extends Node2D
2 f6d61b7b 2023-10-12 mazzurco.
3 f6d61b7b 2023-10-12 mazzurco. var _ids := 0
4 f6d61b7b 2023-10-12 mazzurco.
5 f6d61b7b 2023-10-12 mazzurco.
6 f6d61b7b 2023-10-12 mazzurco. remote func ping():
7 f6d61b7b 2023-10-12 mazzurco. var id := get_tree().get_rpc_sender_id()
8 f6d61b7b 2023-10-12 mazzurco. print("PING from ", id)
9 f6d61b7b 2023-10-12 mazzurco. rpc_id(id, "pong")
10 f6d61b7b 2023-10-12 mazzurco.
11 f6d61b7b 2023-10-12 mazzurco. remote func pong():
12 f6d61b7b 2023-10-12 mazzurco. var id := get_tree().get_rpc_sender_id()
13 f6d61b7b 2023-10-12 mazzurco. print("PONG from ", id)
14 f6d61b7b 2023-10-12 mazzurco.
15 f6d61b7b 2023-10-12 mazzurco. remote func move(id, x, y):
16 f6d61b7b 2023-10-12 mazzurco. print("id is ", id)
17 f6d61b7b 2023-10-12 mazzurco. for child in $"pieces".get_children():
18 f6d61b7b 2023-10-12 mazzurco. if child.id == id:
19 f6d61b7b 2023-10-12 mazzurco. child.position = Vector2(x, y)
20 f6d61b7b 2023-10-12 mazzurco. return
21 f6d61b7b 2023-10-12 mazzurco. print("piece ", id, " not found!")
22 f6d61b7b 2023-10-12 mazzurco.
23 f6d61b7b 2023-10-12 mazzurco.
24 f6d61b7b 2023-10-12 mazzurco. remote func setup() -> void:
25 f6d61b7b 2023-10-12 mazzurco. print("was ordered to set up!")
26 f6d61b7b 2023-10-12 mazzurco. _place(false)
27 f6d61b7b 2023-10-12 mazzurco.
28 f6d61b7b 2023-10-12 mazzurco.
29 f6d61b7b 2023-10-12 mazzurco. func _onmoving(id, x, y):
30 f6d61b7b 2023-10-12 mazzurco. rpc_unreliable("move", id, x, y)
31 f6d61b7b 2023-10-12 mazzurco.
32 f6d61b7b 2023-10-12 mazzurco.
33 f6d61b7b 2023-10-12 mazzurco. func _onmoved(id, x, y):
34 f6d61b7b 2023-10-12 mazzurco. rpc("move", id, x, y)
35 f6d61b7b 2023-10-12 mazzurco.
36 f6d61b7b 2023-10-12 mazzurco.
37 f6d61b7b 2023-10-12 mazzurco. func _addpiece(kind: String, black: bool, off: int) -> void:
38 f6d61b7b 2023-10-12 mazzurco. _ids += 1
39 f6d61b7b 2023-10-12 mazzurco. var piece := preload("res://src/piece/piece.tscn").instance()
40 f6d61b7b 2023-10-12 mazzurco. piece.setup(_ids, kind, black)
41 f6d61b7b 2023-10-12 mazzurco. piece.connect("moving", self, "_onmoving")
42 f6d61b7b 2023-10-12 mazzurco. piece.connect("moved", self, "_onmoved")
43 f6d61b7b 2023-10-12 mazzurco. $"pieces".add_child(piece)
44 f6d61b7b 2023-10-12 mazzurco. var y := 70
45 f6d61b7b 2023-10-12 mazzurco. if not black:
46 f6d61b7b 2023-10-12 mazzurco. y = 520
47 f6d61b7b 2023-10-12 mazzurco. if kind == "pawn":
48 f6d61b7b 2023-10-12 mazzurco. if not black:
49 f6d61b7b 2023-10-12 mazzurco. y -= 70
50 f6d61b7b 2023-10-12 mazzurco. else:
51 f6d61b7b 2023-10-12 mazzurco. y += 70
52 f6d61b7b 2023-10-12 mazzurco. piece.position = Vector2(off, y)
53 f6d61b7b 2023-10-12 mazzurco.
54 f6d61b7b 2023-10-12 mazzurco.
55 f6d61b7b 2023-10-12 mazzurco. func _on_setup_click() -> void:
56 f6d61b7b 2023-10-12 mazzurco. _place(true)
57 f6d61b7b 2023-10-12 mazzurco.
58 f6d61b7b 2023-10-12 mazzurco.
59 f6d61b7b 2023-10-12 mazzurco. func _place(send: bool) -> void:
60 f6d61b7b 2023-10-12 mazzurco. if send:
61 f6d61b7b 2023-10-12 mazzurco. rpc("setup")
62 f6d61b7b 2023-10-12 mazzurco.
63 f6d61b7b 2023-10-12 mazzurco. # remove and re-place (pun intended) all the pieces
64 f6d61b7b 2023-10-12 mazzurco. _ids = 0
65 f6d61b7b 2023-10-12 mazzurco. for child in $"pieces".get_children():
66 f6d61b7b 2023-10-12 mazzurco. $"pieces".remove_child(child)
67 f6d61b7b 2023-10-12 mazzurco. child.queue_free()
68 f6d61b7b 2023-10-12 mazzurco.
69 f6d61b7b 2023-10-12 mazzurco. var off := 300
70 f6d61b7b 2023-10-12 mazzurco. for i in 8: # the pawns
71 f6d61b7b 2023-10-12 mazzurco. _addpiece("pawn", true, off)
72 f6d61b7b 2023-10-12 mazzurco. _addpiece("pawn", false, off)
73 f6d61b7b 2023-10-12 mazzurco. off += 63
74 f6d61b7b 2023-10-12 mazzurco.
75 f6d61b7b 2023-10-12 mazzurco. var row := ["rook", "knight", "bishop", "queen", "king", "bishop", "knight", "rook"]
76 f6d61b7b 2023-10-12 mazzurco. off = 300
77 f6d61b7b 2023-10-12 mazzurco. for p in row:
78 f6d61b7b 2023-10-12 mazzurco. _addpiece(p, true, off)
79 f6d61b7b 2023-10-12 mazzurco. _addpiece(p, false, off)
80 f6d61b7b 2023-10-12 mazzurco. off += 63
81 f6d61b7b 2023-10-12 mazzurco.
82 f6d61b7b 2023-10-12 mazzurco.
83 f6d61b7b 2023-10-12 mazzurco. func _fai_cose() -> void:
84 f6d61b7b 2023-10-12 mazzurco. rpc("ping")
85 f6d61b7b 2023-10-12 mazzurco.
86 f6d61b7b 2023-10-12 mazzurco.
87 f6d61b7b 2023-10-12 mazzurco. func _on_dropqueen_pressed() -> void:
88 f6d61b7b 2023-10-12 mazzurco. pass