summaryrefslogtreecommitdiff
path: root/network/network.gd
blob: 1e665a32e51dc63be88388d316e636a9f88b96e3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
extends Node


#class LoginServer:
	#var host: String
	#var port: int = 6900
	#var stream: PacketPeerStream = PacketPeerStream.new()
	#var peer: StreamPeerTCP = StreamPeerTCP.new()
	#
	#func _init(host: String, port: int = 6900) -> void:
		#self.host = host
		#self.port = port
		#
		#stream.stream_peer = peer
		#peer.connect_to_host(host, port)
		#peer.poll()

#class CharacterServer:
	#var host: String
	#var port: int = 6121
	#var stream: PacketPeerStream
	#var peer: StreamPeerTCP

#class MapServer:
	#var host: String
	#var port: int = 5121
	#var stream: PacketPeerStream
	#var peer: StreamPeerTCP

static var login_server: LoginServer
static var character_server: CharacterServer
static var map_server: MapServer


func _ready() -> void:
	login_server = LoginServer.new("127.0.0.1")
	
	#var login_server_login_packet = LoginServerLoginPacket.new()
	#login_server_login_packet.username = "dweipert"
	#login_server_login_packet.password = "ragnarok"
	#
	#peer.put_data(login_server_login_packet.to_bytes())
	#
	#var p = LoginServerLoginSuccessPacket.from_bytes_via_peer(peer)
	#var character_server_information: CharacterServerInformation = p.character_server_information[0]
	#print(inst_to_dict(p), inst_to_dict(character_server_information))
	#
	#
	#stream2 = PacketPeerStream.new()
	#peer2 = StreamPeerTCP.new()
	#stream2.stream_peer = peer2
	#
	#peer2.connect_to_host(character_server_information.get_server_ip(), character_server_information.server_port)
	#while peer2.get_status() != StreamPeerTCP.STATUS_CONNECTED:
		#print("status: ", peer2.get_status(), " polling: ", peer2.poll())
	#print("working status: ", peer2.get_status())
	#
	#var character_server_login_packet = CharacterServerLoginPacket.new()
	#character_server_login_packet.account_id = p.account_id
	#character_server_login_packet.login_id1 = p.login_id1
	#character_server_login_packet.login_id2 = p.login_id2
	#character_server_login_packet.gender = p.gender
	#
	#print(inst_to_dict(character_server_login_packet))
	#peer2.put_data(character_server_login_packet.to_bytes())
	#
	#var c = CharacterServerLoginSuccessPacket.from_bytes_via_peer(peer2)
	#print(inst_to_dict(c))
	#
	## get character list
	#var request_character_list_packet = RequestCharacterListPacket.new()
	#peer2.put_data(request_character_list_packet.to_bytes())
	#
	#var rcl = RequestCharacterListSuccessPacket.from_bytes_via_peer(peer2)
	#var character_information: CharacterInformation = rcl.character_information[0]
	#print(inst_to_dict(rcl), inst_to_dict(character_information))
	#
	## select character
	#var select_character_packet = SelectCharacterPacket.new()
	#select_character_packet.selected_slot = 0
	#peer2.put_data(select_character_packet.to_bytes())
	#
	#var css = CharacterSelectionSuccessPacket.from_bytes_via_peer(peer2)
	#print(inst_to_dict(css))
	#
	#
	#stream3 = PacketPeerStream.new()
	#peer3 = StreamPeerTCP.new()
	#stream3.stream_peer = peer3
	#
	#peer3.connect_to_host(css.get_map_server_ip(), css.map_server_port)
	#while peer3.get_status() != StreamPeerTCP.STATUS_CONNECTED:
		#print("status: ", peer3.get_status(), " polling: ", peer3.poll())
	#print("working status: ", peer3.get_status())
	#
	#var map_server_login_packet = MapServerLoginPacket.new()
	#map_server_login_packet.account_id = p.account_id
	#map_server_login_packet.character_id = css.character_id
	#map_server_login_packet.login_id1 = p.login_id1
	#map_server_login_packet.gender = p.gender
	#
	#peer3.put_data(map_server_login_packet.to_bytes())
	#
	#print(peer3.get_data(6))#in-between packet
	#print(peer3.get_data(4))#in-between packet
	#
	#var msls = MapServerLoginSuccessPacket.from_bytes_via_peer(peer3)
	#print(inst_to_dict(msls))
	#print(msls.get_position())
	
	var file = FileAccess.open("res://data/data.grf", FileAccess.READ)
	var header = GRF.Header.from_file(file)
	print(inst_to_dict(header))


func _process(_delta: float) -> void:
	if login_server:
		login_server.listen()
	
	if character_server:
		character_server.listen()
	
	if map_server:
		map_server.listen()