Коммит f1cac625 создал по автору magcourier's avatar magcourier
Просмотр файлов

#56 при запущеном Godot-сервере целостность измен.

владелец 184282eb
......@@ -10,6 +10,7 @@ data = PoolVector3Array( -7.3119, 9.9064, -6.9309, -4.1019, 10.928, -6.797, -5.2
script = ExtResource( 1 )
[node name="StaticBody" type="StaticBody" parent="ast_1" index="0"]
collision_mask = 0
[node name="CollisionShape" type="CollisionShape" parent="ast_1/StaticBody" index="0"]
shape = SubResource( 1 )
Это отличие свёрнуто
Это отличие свёрнуто
Это отличие свёрнуто
Это отличие свёрнуто
Это отличие свёрнуто
Это отличие свёрнуто
......@@ -2,7 +2,7 @@ extends Spatial
var uuid
var integreco
var integreco # целостность объекта
var potenco
var objekto
var objekto # вся структура, пришедшая с сервера по данному объекту
var distance = 0 # дистанция до корабля игрока
......@@ -244,7 +244,10 @@ func kubo_json(id=0):
'id': '%s' % id,
'payload':{ 'query': 'subscription ($kuboj:[Int]!, $realeco:Int!)'+
'{ universoObjektoEventoj (kuboj: $kuboj, realeco:$realeco) { evento '+
' objekto { uuid koordinatoX koordinatoY koordinatoZ} '+
' objekto { uuid koordinatoX koordinatoY koordinatoZ '+
" stato{objId potenco integreco statoAntaua {integreco} "+
" statoSekva{integreco}} integreco" +
' rotaciaX rotaciaY rotaciaZ } '+
' projekto {uuid kategorio {edges {node {objId }}}} '+
' tasko { uuid komKoordinatoX komKoordinatoY '+
" objekto{uuid nomo {enhavo}} " +
......
......@@ -46,32 +46,19 @@ func _ready():
subscribtion_kubo()
# тест на отправку сервером данных
if Global.server:
var celo = Transform(Basis.IDENTITY, Vector3(50000, 100,100))
Global.fenestro_itinero.okazigi_itinero(
'', '', celo.origin.x, celo.origin.y, celo.origin.z,
celo, -1, Net.kategorio_movado, true
)
# отправляем закрытие задачи выстрела
func _on_data():
var i_data_server = 0
var q = QueryObject.new()
for on_data in Net.data_server:
# print('on_data=', on_data)
# print('on_data[id] =',on_data['id'],' id_projekto_direkt_del=',id_projekto_direkt_del)
var index = id_projekto_direkt_del.find(int(on_data['id']))
# print('index=',index,' ::: ', typeof(index), " == ", typeof(on_data['id']))
var index_net = id_net.find(int(on_data['id']))
var index_pafo = id_pafo.find(int(on_data['id']))
# print('====on_data=',on_data)
if index_net > -1: # находится в списке отправленных запросов
# удаляем из списка
id_net.remove(index_net)
Net.data_server.remove(i_data_server)
elif index > -1: # находится в списке удаляемых объектов
# print('=== Удалили проект управляемого объекта')
# удаляем из списка
var idx_prj = 0 #индекс массива для удаления
for prj in Global.direktebla_objekto[Global.realeco-2]['projekto']['edges']:
......@@ -81,7 +68,6 @@ func _on_data():
id_projekto_direkt_del.remove(index)
Net.data_server.remove(i_data_server)
elif index_pafo > -1: # находится в списке выстрелов, закрываем задачу
# print('закрываем задачу стрельбы = ',on_data['payload']['data']['redaktuUniversoTaskoj']['universoTaskoj']['uuid'])
# пользователь не может закрыть, т.к. владелец лазера объект, а не пользователь
var id = Net.get_current_query_id()
Global.fenestro_kosmo.id_net.push_back(id)
......@@ -89,14 +75,13 @@ func _on_data():
id_pafo.remove(index_pafo)
Net.data_server.remove(i_data_server)
elif int(on_data['id']) == subscription_id:
# пришло сообщение, по какому объекту, в каком проекте, какая задача изменена
sxangxi_tasko(on_data['payload']['data'])
if on_data['payload']['data']['universoObjektoEventoj']['evento']=='kubo_tasko':
# пришло сообщение, по какому объекту, в каком проекте, какая задача изменена
sxangxi_tasko(on_data['payload']['data'])
elif on_data['payload']['data']['universoObjektoEventoj']['evento']=='kubo_objekto':
# изменение по объекту
sxangxi_objekto(on_data['payload']['data'])
Net.data_server.remove(i_data_server)
# else:
# print('on_data else=', on_data)
# elif on_data['payload']['data'].get('filteredUniversoObjekto'):
# pass
# Net.data_server.remove(i_data_server)
i_data_server += 1
......@@ -127,6 +112,9 @@ func sercxo_objekto_uuid(uuid):
func sxangxi_tasko(on_data):
# пометка о нахождении нужного объекта
var objekto = false
# если эти изменения не по задаче
if not on_data['universoObjektoEventoj']['tasko']:
return
var uuid = on_data['universoObjektoEventoj']['tasko']['posedanto']['edges'].front()['node']['posedantoObjekto']['uuid']
for ch in get_children(): # проходим по всем созданным объектам (кроме управляемого корабля) в поисках нужного
if ch.is_in_group('create') and ('objekto' in ch):
......@@ -147,8 +135,19 @@ func sxangxi_tasko(on_data):
pass
objekto = true
if !objekto: # если объект не найден, то нужно его добавить (если он не часть своего корабля)
print('===найден новый объект!!! uuid=',uuid,'===on_data=',on_data)
pass
if sercxado_uuid(uuid,$ship):
print('часть управляемого корабля')
else:
print('===найден новый объект!!! uuid=',uuid,' ===on_data=',on_data)
# изменяем характеристики объекта
func sxangxi_objekto(on_data):
print('пора менять характеристики объекта = ',on_data['universoObjektoEventoj']['objekto']['uuid'])
var uuid = on_data['universoObjektoEventoj']['objekto']['uuid']
var objekt = sercxo_objekto_uuid(uuid)
if objekt:
print('нашли объект uuid=',uuid)
# подписка на действие в кубе нахождения
......@@ -186,7 +185,6 @@ func _on_http_tasko_request_completed(result, response_code, headers, body):
var resp = body.get_string_from_utf8()
var parsed_resp = parse_json(resp)
var simpled_data = parsed_resp['data']['redaktuUniversoTaskoj']['universoTaskoj']
# print('===_on_http_tasko_request_completed===',parsed_resp)
# получаем uuid задачи и помещаем в itinero
Global.itineroj[0]['uuid_tasko']=simpled_data['uuid']
......@@ -230,7 +228,10 @@ const sxipo = preload("res://blokoj/kosmosxipoj/scenoj/sxipo_fremdulo.tscn")
const sxipo_modulo = preload("res://blokoj/kosmosxipoj/skriptoj/moduloj/sxipo.gd")
const base_ship = preload("res://blokoj/kosmosxipoj/scenoj/base_ship.tscn")
const espero = preload("res://blokoj/kosmostacioj/espero/espero_ekster.tscn")
const asteroido = preload("res://blokoj/asteroidoj/ast_1.tscn")
const ast_1 = preload("res://blokoj/asteroidoj/ast_1.tscn")
const ast_1_cr = preload("res://blokoj/asteroidoj/ast_1_cr.tscn")
const ast_shards_0 = preload("res://blokoj/asteroidoj/ast_shards_0.tscn")
const ast_shards_2 = preload("res://blokoj/asteroidoj/ast_shards_2.tscn")
const AnalizoProjekto = preload("res://blokoj/kosmosxipoj/skriptoj/itineroj.gd")
......@@ -259,7 +260,6 @@ func create_ship(objecto):
func _on_space_load_objektoj():
Title.get_node("CanvasLayer/UI/Objektoj/Window").distance_to($ship.translation)
# и теперь по uuid нужно найти проект и задачу
var projektoj = Global.direktebla_objekto[Global.realeco-2]['projekto']['edges']
var analizo = AnalizoProjekto.new()
......@@ -295,12 +295,24 @@ func _on_space_load_objektoj():
s.add_to_group('create')
s.add_to_group('enemies')
elif (item['resurso']['objId'] == 7)and(item['koordinatoX']):# тип - астероид
var ast = asteroido.instance()
# подгружаем в зависимости от состояния модификации астероида грузим картинку
var ast
if item['stato']['objId']==1:
ast = ast_1.instance()
elif item['stato']['objId']==2:
ast = ast_1_cr.instance()
elif item['stato']['objId']==3:
ast = ast_shards_0.instance()
else:
# if item['stato']['objId']==4:
ast = ast_shards_2.instance()
ast.translation=Vector3(item['koordinatoX'],
item['koordinatoY'], item['koordinatoZ'])
ast.rotation=Vector3(item['rotaciaX'],
item['rotaciaY'], item['rotaciaZ'])
ast.uuid = item['uuid']
ast.integreco = item['integreco']
ast.objekto = item.duplicate(true)
add_child(ast)
ast.add_to_group('create')
......
......@@ -19,7 +19,12 @@ var target_rot = null #положение корабля, которое над
var speed_rotation = 1
var middle_mouse_pressed = false
var docking_rotation
var uuid #uuid активного корабля игрока
#var objekto
var integreco # целостность объекта
var potenco # мощность ресурса
# взятые в прицел, массив объектов, взятых в прицел
var pafado_uuid # uuid проекта ведения огня
var pafado_id # id запроса на создание проекта ведения огня
......
extends Spatial
var uuid #нужно для идентификации конкретного модуля
var objekto_modulo
var integreco # целостность объекта
var potenco # мощность ресурса
export (float) var beam_length = 1000
export (float) var speed_rotation = 3
......@@ -95,19 +98,9 @@ func _physics_process(delta):
# print('цель задана')
var length_to_end=beam_length
var can_shoot = false
# if !target.empty():
rotate_gun(delta)
if $laser.is_colliding():
# var uuid = ""
# if $laser.get_collider().get('uuid'):
# uuid = $laser.get_collider().uuid
# else: # для станции идём по восходящим родителям до нахождения uuid
## print('ищем uuid')
# uuid = get_uuid($laser.get_collider().get_parent())
if sercxado_uuid(target.uuid,$laser.get_collider()):
# if uuid == target.uuid:
# print('стреляем = ',uuid)
# print($laser.get_collider().name) #тут можно обработать в кого мы попали и вызвать повреждения.
length_to_end = get_global_transform().origin.distance_to($laser.get_collision_point())
......@@ -116,7 +109,7 @@ func _physics_process(delta):
can_shoot = true
$laser/end_point.visible = true
$laser/beam.visible = true
if !livero: #livero == 0 - только начали стрелять
if !livero: # только начали стрелять
livero = 1 # начало стрельбы после всех проверок
else:
$laser/end_point.visible = false
......@@ -145,11 +138,35 @@ func _physics_process(delta):
#Это должно быть только на управляемом корабле, а не на оружии всех
if (sxipo)and(sxipo == Global.fenestro_kosmo.get_node('ship')):
sxipo.pafo_server(self, target)
# сервер отвечает за повреждения объектов
# отправляем на сервер повреждение от выстрела
if Global.server:
integreco_shanghi(potenco)
livero = 2
if livero == 10: # производим разрушение объекта цели
pass
if livero > malfruo:
livero = 0
target = new_target # меняем цель, если за время выстрели цель поменяли или сняли
const QueryObject = preload("queries.gd")
# отправляем на сервер повреждение от выстрела
func integreco_shanghi(nombro):
# print('===target.integreco-potenco=',target.integreco-potenco)
if Global.server:
var q = QueryObject.new()
var id = Net.get_current_query_id()
Global.fenestro_kosmo.id_net.append(id)
Net.send_json(q.integreco_shanghi(
target.uuid,
-nombro,
id
))
func set_target(targeto):
if target: # при отмене стрельбы или смена цели
new_target = targeto
......
......@@ -5,3 +5,4 @@ extends Spatial
var uuid = ""
var integreco = 100
var potenco
var objekto_modulo
extends Node
# ТОЛЬКО ДЛЯ СЕРВЕРА
# повреждение от выстрела / изменение целостности объекта
func integreco_shanghi(uuid, integreco, id=0):
if !id:
id = Net.get_current_query_id()
return JSON.print({
'type': 'start',
'id': '%s' % id,
'payload':{ 'query': 'mutation ($uuid:UUID, '+
' $integreco:Int, )'+
'{ redaktuUniversoObjektoIntegreco (uuid: $uuid, '+
' integreco:$integreco) { status '+
' message universoObjektoj { uuid } } '+
'}',
'variables': {"uuid": uuid, "integreco":integreco } }})
......@@ -39,6 +39,8 @@ func create_sxipo(sxipo, objecto):
# cabine.get_node("cabine").translation.z = 2 # назад
# cabine.get_node("cabine").rotate_y(deg2rad(90))
# sxipo.get_node("CollisionShape").add_child(cabine)
cabine.integreco = modulo['node']['ligilo']['integreco']
cabine.objekto_modulo = modulo['node']['ligilo'].duplicate(true)
sxipo.add_child(cabine)
elif modulo['node']['ligilo']['resurso']['objId'] == 5: #"Vostok Грузовой Модуль" "Базовый грузовой модуль кораблей Vostok"
cargo = base_cargo.instance()
......@@ -46,9 +48,11 @@ func create_sxipo(sxipo, objecto):
cargo.translation.y = 2
cargo.translation.z = 7
cargo.rotate_y(deg2rad(90))
# cargo.get_node("Cargo").translation.y = 2
# cargo.get_node("Cargo").translation.z = 8
# cargo.get_node("Cargo").rotate_y(deg2rad(90))
# cargo.get_node("Cargo").translation.y = 2
# cargo.get_node("Cargo").translation.z = 8
# cargo.get_node("Cargo").rotate_y(deg2rad(90))
cargo.integreco = modulo['node']['ligilo']['integreco']
cargo.objekto_modulo = modulo['node']['ligilo'].duplicate(true)
sxipo.add_child(cargo)
elif modulo['node']['ligilo']['resurso']['objId'] == 6: #"Vostok Двигатель" "Базовый двигатель кораблей Vostok"
engine = base_engine.instance()
......@@ -65,6 +69,8 @@ func create_sxipo(sxipo, objecto):
engine.translation.y = 1
engine.translation.z = 10
engine.rotate_y(deg2rad(90))
engine.integreco = modulo['node']['ligilo']['integreco']
engine.objekto_modulo = modulo['node']['ligilo'].duplicate(true)
sxipo.add_child(engine)
enganes = !enganes
elif modulo['node']['ligilo']['resurso']['objId'] == 11: #Универсальный лазер
......@@ -76,16 +82,13 @@ func create_sxipo(sxipo, objecto):
moduloj.get_node("Platform").translation.z = 0.1
moduloj.get_node("laser").translation.y = 4.7
moduloj.get_node("laser").translation.z = 0.1
moduloj.get_node("gun_body").translation.y = 4.2
moduloj.get_node("gun_body").translation.z = -0.4
# moduloj.get_node("laser").translation.y = 4.2
# moduloj.get_node("laser").translation.z = 0.6
# print("modulo['node']['ligilo']=",modulo['node']['ligilo']['uuid'])
moduloj.potenco = modulo['node']['ligilo']['stato']['potenco']
moduloj.integreco = modulo['node']['ligilo']['integreco']
moduloj.objekto_modulo = modulo['node']['ligilo'].duplicate(true)
# moduloj.get_node("laser/gun_stem").translation.y = 4.2
moduloj.get_node("laser/gun_stem").translation.z = -0.6
......
......@@ -6,7 +6,7 @@ extends KinematicBody
var uuid = ""
var objekto
var distance = 0 # дистанция до корабля игрока
var integreco = 100
var integreco = 100 # целостность объекта
var potenco
var acceleration = 1 # для расчета движения корабля
......
......@@ -149,8 +149,6 @@ func eniri_server():
var password = config.get_value("aliro_server", "password")
var login = config.get_value("aliro_server", "uzanto")
print('login=',login)
print('password=',password)
Global.kubo = config.get_value("kosmo", "kubo",1)
Global.realeco = config.get_value("kosmo", "realeco",2)
# Создаём объект HTTP запроса
......
......@@ -31,17 +31,11 @@ func _ready():
func go_realeco():
if Global.realeco == 2:
# print('айда в коммир')
Global.realeco=1 # в функции идёт проверка на реальность - должна быть другая
_on_com_pressed()
on_com()
elif Global.realeco == 1:
# print('посидим в реальном мире')
Global.realeco=2
_on_real_pressed()
on_real()
elif Global.realeco == 3:
# print('капитализм нынче рулит')
Global.realeco=1
_on_cap_pressed()
on_cap()
# Обработчик сигнала "connection_succeeded"
......@@ -96,7 +90,7 @@ func _on_data_start():
Net.connect("input_data", self, "_on_data")
Global.objektoj.clear()
load_objektoj()
if Global.server or Global.autoload:
if (Global.server or Global.autoload) and Global.realeco!=1:
go_realeco()
i += 1
......@@ -163,82 +157,89 @@ func reloadWindow():
Global.objektoj.clear()
load_objektoj()
func on_cap():
var mezo_cap = preload("res://kerno/menuo/resursoj/icons/tab4_3.png")
$CanvasLayer/UI/mezo_regions.icon = mezo_cap
$CanvasLayer/UI/real/real_cap_rect.set_visible(true)
$CanvasLayer/UI/real/real_com_rect.set_visible(false)
$CanvasLayer/UI/com/com_cap_rect.set_visible(true)
$CanvasLayer/UI/com/com_real_rect.set_visible(false)
$CanvasLayer/UI/cap/cap_com_rect.set_visible(false)
$CanvasLayer/UI/cap/cap_real_rect.set_visible(false)
$CanvasLayer/UI/Lbar.color = Color(0, 0.407843, 0.407843, 0.862745)
$CanvasLayer/UI/Lbar2.color = Color(0, 0.407843, 0.407843, 0.862745)
$CanvasLayer/UI/Lbar3.self_modulate = Color(0, 0.407843, 0.407843, 0.862745)
$CanvasLayer/UI/real/realLabel.set_visible(false)
$CanvasLayer/UI/com/comLabel.set_visible(false)
$CanvasLayer/UI/cap/capLabel.set_visible(true)
$CanvasLayer/UI/romb.color = Color(0, 0.407843, 0.407843, 0.862745)
# если объекта не будет в космосе, то загружать станцию
if Global.direktebla_objekto[Global.realeco-2]['kosmo']:
# warning-ignore:return_value_discarded
get_tree().change_scene('res://blokoj/kosmo/scenoj/space.tscn')
else:
# warning-ignore:return_value_discarded
get_tree().change_scene('res://blokoj/kosmostacioj/CapKosmostacio.tscn')
func _on_cap_pressed():
if Global.loading: #здесь вызывать задержку надо
var reload = false
if Global.realeco!=3:
var mezo_cap = preload("res://kerno/menuo/resursoj/icons/tab4_3.png")
$CanvasLayer/UI/mezo_regions.icon = mezo_cap
$CanvasLayer/UI/real/real_cap_rect.set_visible(true)
$CanvasLayer/UI/real/real_com_rect.set_visible(false)
$CanvasLayer/UI/com/com_cap_rect.set_visible(true)
$CanvasLayer/UI/com/com_real_rect.set_visible(false)
$CanvasLayer/UI/cap/cap_com_rect.set_visible(false)
$CanvasLayer/UI/cap/cap_real_rect.set_visible(false)
$CanvasLayer/UI/Lbar.color = Color(0, 0.407843, 0.407843, 0.862745)
$CanvasLayer/UI/Lbar2.color = Color(0, 0.407843, 0.407843, 0.862745)
$CanvasLayer/UI/Lbar3.self_modulate = Color(0, 0.407843, 0.407843, 0.862745)
$CanvasLayer/UI/real/realLabel.set_visible(false)
$CanvasLayer/UI/com/comLabel.set_visible(false)
$CanvasLayer/UI/cap/capLabel.set_visible(true)
$CanvasLayer/UI/romb.color = Color(0, 0.407843, 0.407843, 0.862745)
Global.realeco = 3
reload = true
# при переключении миров закрываем окна ресурсов, объектов, т.к. они расчитаны на конкретный мир
CloseWindow()
# если объекта не будет в космосе, то загружать станцию
if Global.direktebla_objekto[Global.realeco-2]['kosmo']:
# warning-ignore:return_value_discarded
get_tree().change_scene('res://blokoj/kosmo/scenoj/space.tscn')
else:
# warning-ignore:return_value_discarded
get_tree().change_scene('res://blokoj/kosmostacioj/CapKosmostacio.tscn')
on_cap()
if reload:
reloadWindow()
else:
print('Ещё не загружено')
func on_com():
var mezo_com = preload("res://kerno/menuo/resursoj/icons/tab4_1.png")
$CanvasLayer/UI/mezo_regions.icon = mezo_com
$CanvasLayer/UI/real/real_cap_rect.set_visible(false)
$CanvasLayer/UI/real/real_com_rect.set_visible(true)
$CanvasLayer/UI/com/com_cap_rect.set_visible(false)
$CanvasLayer/UI/com/com_real_rect.set_visible(false)
$CanvasLayer/UI/cap/cap_com_rect.set_visible(true)
$CanvasLayer/UI/cap/cap_real_rect.set_visible(false)
$CanvasLayer/UI/Lbar.color = Color(0.333333, 0, 0.066667, 0.862745)
$CanvasLayer/UI/Lbar2.color = Color(0.333333, 0, 0.066667, 0.862745)
$CanvasLayer/UI/Lbar3.self_modulate = Color(0.333333, 0, 0.066667, 0.862745)
$CanvasLayer/UI/real/realLabel.set_visible(false)
$CanvasLayer/UI/com/comLabel.set_visible(true)
$CanvasLayer/UI/cap/capLabel.set_visible(false)
$CanvasLayer/UI/romb.color = Color(0.333333, 0, 0.066667, 0.862745)
# если объекта не будет в космосе, то загружать станцию
if Global.direktebla_objekto[Global.realeco-2]['kosmo']:
# warning-ignore:return_value_discarded
get_tree().change_scene('res://blokoj/kosmo/scenoj/space.tscn')
else:
# warning-ignore:return_value_discarded
get_tree().change_scene('res://blokoj/kosmostacioj/CapKosmostacio.tscn')
# get_tree().change_scene("res://blokoj/kosmostacioj/ComKosmostacio.tscn")
func _on_com_pressed():
if Global.loading: #здесь вызывать задержку надо
var reload = false
if Global.realeco!=2:
var mezo_com = preload("res://kerno/menuo/resursoj/icons/tab4_1.png")
$CanvasLayer/UI/mezo_regions.icon = mezo_com
$CanvasLayer/UI/real/real_cap_rect.set_visible(false)
$CanvasLayer/UI/real/real_com_rect.set_visible(true)
$CanvasLayer/UI/com/com_cap_rect.set_visible(false)
$CanvasLayer/UI/com/com_real_rect.set_visible(false)
$CanvasLayer/UI/cap/cap_com_rect.set_visible(true)
$CanvasLayer/UI/cap/cap_real_rect.set_visible(false)
$CanvasLayer/UI/Lbar.color = Color(0.333333, 0, 0.066667, 0.862745)
$CanvasLayer/UI/Lbar2.color = Color(0.333333, 0, 0.066667, 0.862745)
$CanvasLayer/UI/Lbar3.self_modulate = Color(0.333333, 0, 0.066667, 0.862745)
$CanvasLayer/UI/real/realLabel.set_visible(false)
$CanvasLayer/UI/com/comLabel.set_visible(true)
$CanvasLayer/UI/cap/capLabel.set_visible(false)
$CanvasLayer/UI/romb.color = Color(0.333333, 0, 0.066667, 0.862745)
Global.realeco = 2
reload = true
# при переключении миров закрываем окна ресурсов, объектов, т.к. они расчитаны на конкретный мир
CloseWindow()
# если объекта не будет в космосе, то загружать станцию
if Global.direktebla_objekto[Global.realeco-2]['kosmo']:
# warning-ignore:return_value_discarded
get_tree().change_scene('res://blokoj/kosmo/scenoj/space.tscn')
else:
# warning-ignore:return_value_discarded
get_tree().change_scene('res://blokoj/kosmostacioj/CapKosmostacio.tscn')
# get_tree().change_scene("res://blokoj/kosmostacioj/ComKosmostacio.tscn")
on_com()
if reload:
reloadWindow()
else:
print('Ещё не загружено')
func _on_real_pressed():
func on_real():
var mezo_real = preload("res://kerno/menuo/resursoj/icons/tab4_2.png")
$CanvasLayer/UI/mezo_regions.icon = mezo_real
$CanvasLayer/UI/real/real_cap_rect.set_visible(false)
......@@ -254,15 +255,18 @@ func _on_real_pressed():
$CanvasLayer/UI/com/comLabel.set_visible(false)
$CanvasLayer/UI/cap/capLabel.set_visible(false)
$CanvasLayer/UI/romb.color = Color(0.4, 0.6, 1, 0.862745)
get_tree().change_scene("res://blokoj/kosmostacioj/Kosmostacio.tscn")
func _on_real_pressed():
var reload = false
if Global.realeco!=1:
Global.realeco = 1
reload = true
# при переключении миров закрываем окна ресурсов, объектов, т.к. они расчитаны на конкретный мир
CloseWindow()
on_real()
# warning-ignore:return_value_discarded
get_tree().change_scene("res://blokoj/kosmostacioj/Kosmostacio.tscn")
if reload:
reloadWindow()
......@@ -274,7 +278,6 @@ func komenci_request_complete(result, response_code, headers, body):
var resp = body.get_string_from_utf8()
# warning-ignore:unused_variable
var parsed_resp = parse_json(resp)
$request.disconnect('request_completed', self, 'komenci_request_complete')
if $"/root".get_node_or_null('space'):
......
......@@ -22,7 +22,7 @@ func get_direktebla_json(statusoId, tipoId, id=0):
"{ universoObjekto (" +
" universoobjektouzanto_Isnull:false,"+
" universoobjektouzanto_Autoro_SiriusoUzanto_Id:$UzantoId," +
") { edges { node { uuid " +
") { edges { node { uuid integreco" +
" projekto (statuso_Id: $statusoId, tipo_Id: $tipoId){ "+
" edges { node { uuid "+
" kategorio {edges {node {objId nomo{enhavo}}}}" +
......@@ -30,7 +30,7 @@ func get_direktebla_json(statusoId, tipoId, id=0):
" uuid finKoordinatoX finKoordinatoY finKoordinatoZ "+
" objekto{uuid nomo {enhavo}} " +
" kategorio {edges {node {objId nomo{enhavo}}}}" +
" pozicio statuso {objId} } } } } } } "+
" pozicio statuso {objId } } } } } } } "+
" nomo { enhavo } priskribo { enhavo } "+
" resurso { objId nomo { enhavo } priskribo { enhavo } "+
" tipo { objId nomo { enhavo } } "+
......@@ -38,11 +38,15 @@ func get_direktebla_json(statusoId, tipoId, id=0):
" koordinatoX koordinatoY koordinatoZ "+
' posedantoObjekto '+
' { uuid } '+
" stato{objId potenco statoAntaua {integreco} "+
" statoSekva{integreco}} integreco" +
" ligiloLigilo{edges{node{uuid "+
" posedanto{ kubo {objId} koordinatoX koordinatoY koordinatoZ }}}}" +
" ligilo{edges{node{ "+
" konektiloPosedanto konektiloLigilo tipo{objId}"+
" ligilo{ uuid nomo{enhavo} integreco resurso{objId} "+
" ligilo{ uuid integreco nomo{enhavo} integreco resurso{objId} "+
" stato{objId potenco statoAntaua {integreco} "+
" statoSekva{integreco}}" +
" ligilo{edges{node{" +
" konektiloPosedanto konektiloLigilo tipo{objId} " +
" ligilo{ uuid integreco resurso{objId} }}}}}" +
......@@ -144,6 +148,7 @@ func get_objekto_json(statusoId, tipoId, kuboId=Global.kubo, id=0, after=""):
" koordinatoX_Isnull:false, koordinatoY_Isnull:false, koordinatoZ_Isnull:false," +
" first:"+count_objekto+', after: "'+after+'" ' +
" ) { pageInfo { hasNextPage endCursor } edges { node { uuid posedantoId "+
" integreco" +
# проект стрельбы с задачами прицеливания и ведения огня
# проект движени
......@@ -164,10 +169,13 @@ func get_objekto_json(statusoId, tipoId, kuboId=Global.kubo, id=0, after=""):
" koordinatoX koordinatoY koordinatoZ "+
' posedantoObjekto '+
' { uuid } '+
" nomo{enhavo}" +
" stato{objId potenco statoAntaua {integreco} "+
" statoSekva{integreco}} integreco" +
" ligilo{edges{node{ "+
" konektiloPosedanto konektiloLigilo tipo{objId}"+
" ligilo{ uuid nomo{enhavo} integreco resurso{objId} "+
" ligilo{ uuid integreco nomo{enhavo} integreco resurso{objId} "+
" stato{objId potenco statoAntaua {integreco} "+
" statoSekva{integreco}}" +
" ligilo{edges{node{" +
" konektiloPosedanto konektiloLigilo tipo{objId} " +
" ligilo{ uuid integreco resurso{objId} }}}}}" +
......
......@@ -118,7 +118,6 @@ func send_data(data, id=0): # если id==0 то используем current_q
'id': '%s' % id,
'payload': data
})
print('===',query)
_client.get_peer(1).put_packet(query.to_utf8())
return id
......@@ -136,7 +135,6 @@ func connect_to_server():
print("Unable to connect = ", err)
else:
_client.get_peer(1).set_write_mode(WebSocketPeer.WRITE_MODE_TEXT)
# print('===OK=')
return err
......
Поддерживает Markdown
0% или .
You are about to add 0 people to the discussion. Proceed with caution.
Сначала завершите редактирование этого сообщения!
Пожалуйста, зарегистрируйтесь или чтобы прокомментировать