From c27153868e58d71f836a8674ce00378f6a841f00 Mon Sep 17 00:00:00 2001 From: Adonis Stavridis <adonis-ioannis.stavridis@etu.unistra.fr> Date: Wed, 18 Mar 2020 17:11:41 +0100 Subject: [PATCH] #107 implemented basic camera --- client/autoloads/gamestate.gd | 5 ++++- client/entities/characters/camera.tscn | 5 +++++ client/entities/characters/hp.gd | 3 ++- client/entities/characters/pseudo.gd | 3 +-- client/levels/test/game.tscn | 4 ---- server/autoloads/gamestate.gd | 2 +- 6 files changed, 13 insertions(+), 9 deletions(-) create mode 100644 client/entities/characters/camera.tscn diff --git a/client/autoloads/gamestate.gd b/client/autoloads/gamestate.gd index 86ce275..d8f9910 100644 --- a/client/autoloads/gamestate.gd +++ b/client/autoloads/gamestate.gd @@ -59,4 +59,7 @@ puppet func startGame(): i+=1 var playerArrow:Node = preload("res://entities/characters/playerArrow.tscn").instance() - get_node(GAMEPATH+str(get_tree().get_network_unique_id())).add_child(playerArrow) \ No newline at end of file + var playerCamera:Node = preload("res://entities/characters/camera.tscn").instance() + + get_node(GAMEPATH+str(get_tree().get_network_unique_id())).add_child(playerArrow) + get_node(GAMEPATH+str(get_tree().get_network_unique_id())).add_child(playerCamera) diff --git a/client/entities/characters/camera.tscn b/client/entities/characters/camera.tscn new file mode 100644 index 0000000..9997358 --- /dev/null +++ b/client/entities/characters/camera.tscn @@ -0,0 +1,5 @@ +[gd_scene format=2] + +[node name="Camera" type="Camera"] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 25 ) +fov = 30.0 diff --git a/client/entities/characters/hp.gd b/client/entities/characters/hp.gd index c6f0776..2448e00 100644 --- a/client/entities/characters/hp.gd +++ b/client/entities/characters/hp.gd @@ -1,4 +1,5 @@ extends Label + const GAMEPATH = "/root/game/" var hp:int @@ -16,7 +17,7 @@ func _ready(): func _process(_delta): - var cam = get_tree().get_root().get_camera() + var cam = get_viewport().get_camera() posPv.x = player.get_global_transform().origin.x - 0.2 posPv.y = player.get_global_transform().origin.y + 2 var labelIdpos = cam.unproject_position(posPv) diff --git a/client/entities/characters/pseudo.gd b/client/entities/characters/pseudo.gd index 8748498..d285575 100644 --- a/client/entities/characters/pseudo.gd +++ b/client/entities/characters/pseudo.gd @@ -4,10 +4,8 @@ const GAMEPATH = "/root/game/" var posId var player -var cam func _ready(): - cam = get_tree().get_root().get_camera() posId = Vector3(0,0,0) player = get_node("../../") var my_id = get_tree().get_network_unique_id() @@ -17,6 +15,7 @@ func _ready(): func _process(_delta): + var cam = get_viewport().get_camera() posId.x = player.get_global_transform().origin.x - 0.75 posId.y = player.get_global_transform().origin.y + 2.5 var labelIdpos = cam.unproject_position(posId) diff --git a/client/levels/test/game.tscn b/client/levels/test/game.tscn index 2c2e41c..6d5fc47 100644 --- a/client/levels/test/game.tscn +++ b/client/levels/test/game.tscn @@ -7,10 +7,6 @@ [node name="game" type="Spatial"] script = ExtResource( 1 ) -[node name="camera" type="Camera" parent="."] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.08, 22.8061 ) -fov = 30.0 - [node name="structure" type="Spatial" parent="."] [node name="bloc" parent="structure" instance=ExtResource( 2 )] diff --git a/server/autoloads/gamestate.gd b/server/autoloads/gamestate.gd index 86335ac..12fa5c5 100644 --- a/server/autoloads/gamestate.gd +++ b/server/autoloads/gamestate.gd @@ -3,7 +3,7 @@ extends Node const GAMEPATH = "/root/game/" const PORT = 10001 -const MAX_CLIENTS = 2 +const MAX_CLIENTS = 1 var players = {} -- GitLab