Inherit LocalPlayer from Player

main
copygirl 5 years ago
parent b6f62633e6
commit d302a56855
  1. 7
      scene/GameScene.tscn
  2. 10
      scene/LocalPlayer.tscn
  3. 15
      scene/OtherPlayer.tscn
  4. 9
      scene/Player.tscn
  5. 9
      src/Network.cs

@ -1,13 +1,14 @@
[gd_scene load_steps=9 format=2] [gd_scene load_steps=10 format=2]
[ext_resource path="res://scene/EscapeMenu.tscn" type="PackedScene" id=1] [ext_resource path="res://scene/EscapeMenu.tscn" type="PackedScene" id=1]
[ext_resource path="res://src/Cursor.cs" type="Script" id=2] [ext_resource path="res://src/Cursor.cs" type="Script" id=2]
[ext_resource path="res://src/Game.cs" type="Script" id=3] [ext_resource path="res://src/Game.cs" type="Script" id=3]
[ext_resource path="res://gfx/cursor.png" type="Texture" id=4] [ext_resource path="res://gfx/cursor.png" type="Texture" id=4]
[ext_resource path="res://scene/Player.tscn" type="PackedScene" id=5] [ext_resource path="res://scene/LocalPlayer.tscn" type="PackedScene" id=5]
[ext_resource path="res://scene/Block.tscn" type="PackedScene" id=6] [ext_resource path="res://scene/Block.tscn" type="PackedScene" id=6]
[ext_resource path="res://src/Viewport.cs" type="Script" id=7] [ext_resource path="res://src/Viewport.cs" type="Script" id=7]
[ext_resource path="res://src/Network.cs" type="Script" id=8] [ext_resource path="res://src/Network.cs" type="Script" id=8]
[ext_resource path="res://scene/Player.tscn" type="PackedScene" id=9]
[node name="Game" type="Node"] [node name="Game" type="Node"]
script = ExtResource( 3 ) script = ExtResource( 3 )
@ -19,6 +20,8 @@ script = ExtResource( 7 )
[node name="Network" type="Node" parent="."] [node name="Network" type="Node" parent="."]
script = ExtResource( 8 ) script = ExtResource( 8 )
PlayerContainerPath = NodePath("..")
OtherPlayer = ExtResource( 9 )
[node name="HUD" type="CanvasLayer" parent="."] [node name="HUD" type="CanvasLayer" parent="."]

@ -0,0 +1,10 @@
[gd_scene load_steps=3 format=2]
[ext_resource path="res://scene/Player.tscn" type="PackedScene" id=1]
[ext_resource path="res://src/Player.cs" type="Script" id=3]
[node name="Player" instance=ExtResource( 1 )]
script = ExtResource( 3 )
[node name="Camera2D" type="Camera2D" parent="." index="0"]
current = true

@ -1,15 +0,0 @@
[gd_scene load_steps=3 format=2]
[ext_resource path="res://gfx/player.png" type="Texture" id=2]
[sub_resource type="CircleShape2D" id=1]
radius = 8.0
[node name="OtherPlayer" type="KinematicBody2D"]
collision_layer = 0
[node name="CircleShape" type="CollisionShape2D" parent="."]
shape = SubResource( 1 )
[node name="Sprite" type="Sprite" parent="."]
texture = ExtResource( 2 )

@ -1,19 +1,12 @@
[gd_scene load_steps=5 format=2] [gd_scene load_steps=3 format=2]
[ext_resource path="res://src/Camera.cs" type="Script" id=1]
[ext_resource path="res://gfx/player.png" type="Texture" id=2] [ext_resource path="res://gfx/player.png" type="Texture" id=2]
[ext_resource path="res://src/Player.cs" type="Script" id=3]
[sub_resource type="CircleShape2D" id=1] [sub_resource type="CircleShape2D" id=1]
radius = 8.0 radius = 8.0
[node name="Player" type="KinematicBody2D"] [node name="Player" type="KinematicBody2D"]
collision_layer = 0 collision_layer = 0
script = ExtResource( 3 )
[node name="Camera2D" type="Camera2D" parent="."]
current = true
script = ExtResource( 1 )
[node name="CircleShape" type="CollisionShape2D" parent="."] [node name="CircleShape" type="CollisionShape2D" parent="."]
shape = SubResource( 1 ) shape = SubResource( 1 )

@ -16,17 +16,18 @@ public class Network : Node
[Export] public ushort DefaultPort { get; set; } = 42005; [Export] public ushort DefaultPort { get; set; } = 42005;
[Export] public string DefaultAddress { get; set; } = "localhost"; [Export] public string DefaultAddress { get; set; } = "localhost";
[Export] public NodePath PlayerContainerPath { get; set; }
[Export] public PackedScene OtherPlayer { get; set; }
public Node PlayerContainer { get; private set; } public Node PlayerContainer { get; private set; }
public Player OwnPlayer { get; private set; }
public PackedScene OtherPlayer { get; private set; }
public Player OwnPlayer { get; private set; }
public Status CurrentStatus { get; private set; } = Status.NoConnection; public Status CurrentStatus { get; private set; } = Status.NoConnection;
[Signal] public delegate void StatusChanged(Status status); [Signal] public delegate void StatusChanged(Status status);
public override void _Ready() public override void _Ready()
{ {
OtherPlayer = GD.Load<PackedScene>("res://scene/OtherPlayer.tscn"); PlayerContainer = GetNode(PlayerContainerPath);
PlayerContainer = GetParent();
GetTree().Connect("connected_to_server", this, "OnClientConnected"); GetTree().Connect("connected_to_server", this, "OnClientConnected");
GetTree().Connect("connection_failed", this, "DisconnectFromServer"); GetTree().Connect("connection_failed", this, "DisconnectFromServer");

Loading…
Cancel
Save